API Reference

Provisioning API

Dynamically provision merchants under your platform using the Orchestrator provisioning endpoint.

POST /api/v1/provision

Creates a child merchant under the authenticated parent merchant's account.

Request Body
{
  "name": "My Sub Merchant",
  "provisionMode": "sub_account" | "direct_keys",
  "environment": "sandbox" | "live",
  "moolreCredentials": {
    "apiUser": "moolre_user_id",
    "apiKey": "...",
    "apiPublicKey": "...",
    "accountNumber": "..."
  },
}

Fields

FieldTypeDescription
namestringDisplay name for the new merchant (min 3 chars)
provisionModesub_account | direct_keysWhether to create a sub-account (shared credentials) or a standalone tenant (own keys)
environmentsandbox | liveTarget Moolre environment (defaults to sandbox)
moolreCredentialsobject (optional)Required for direct_keys mode. Contains apiUser, apiKey, apiPublicKey

Provisioning Modes

Sub-Account Mode

The child merchant operates under the parent's Moolre credentials and tenant. The parent manages all API keys and settlement. Best for platforms that fully manage payments on behalf of sub-merchants.

Shared CredentialsSame Tenant

Direct Keys Mode

A new isolated tenant is created with its own Moolre credentials. The sub-merchant manages their own API keys and settlement wallets. Best for platforms that want each merchant to own their own account.

Isolated TenantOwn Credentials

Response

On success, returns the new merchant ID and a generated API key:

{
  "merchantId": "...",
  "apiKey": "mkr_..."
}

Regulatory Notice

When provisioning merchants with direct_keys mode, you are responsible for ensuring the merchant has agreed to Moolre's terms of service. Store proof of consent in your own systems. The Orchestrator does not manage KYC/AML compliance — verify merchant identity before provisioning live credentials.