Skip to main content

Welcome to Manastore API

The Manastore API provides endpoints for managing orders, products, and wallets. Build powerful applications with our comprehensive REST API.

OpenAPI Specification

View the complete, always up to date OpenAPI specification

Authentication

All API endpoints require a Bearer token, which must be included in the Authorization header of every request:

How to Generate Your API Key

1

Login to Manastore

Login to your Manastore account.
2

Navigate to API Key Settings

Go to Account Settings → API Key.
3

Generate API Key

Click on Generate API Key to create your Bearer token.

Request Headers

All requests must include the following header:

API Base URL

Response Format

All successful responses return JSON data with the following structure:
  • Paginated Responses: Include data, links, and meta objects
  • Error Responses: Include message and optional errors object for validation errors
  • Single Resources: Return the resource object inside a data key

Money Values

Every amount in the API (order totals, line prices, face values, wallet balances, transaction amounts) is returned as the same object:
amount is a string in the currency’s minor units (cents), so "10249" means $102.49. Use decimal if you want the value in major units. Don’t treat amount as dollars, or your figures will be 100 times too high.
Amounts that take money out of a wallet (order payments, debit adjustments) are negative in the transactions endpoint.

Currency Conversion

Conversion fees applied to orders in a currency different from the base currency are calculated using live exchange rates from ExchangeRate-API.

Endpoints Overview

The API is organized into four main categories:
  • Orders: Manage customer orders, download invoices and digital codes
  • Products: Browse products, search, and retrieve product details
  • Wallets: Manage user wallets and check balances
  • Transactions: Your full wallet ledger (deposits, order payments, refunds and adjustments) for reconciliation

Reconciling Your Account

To match a period against your own records:
  1. Pull the period’s wallet movements from List Transactions with start_date, end_date and sort=asc. Every deposit, order payment, refund and adjustment is there, with the balance after each one.
  2. Pull the same period from List Orders with the same filters for per-line product detail.
  3. Join them on transaction_id: each order’s transaction_id is the id of the transaction that paid for it.
Always use sort=asc when paging through a period. With the default newest-first order, orders placed while you are paging push earlier rows onto the next page, so some get skipped or repeated.