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.
{
"name": "My Sub Merchant",
"provisionMode": "sub_account" | "direct_keys",
"environment": "sandbox" | "live",
"moolreCredentials": {
"apiUser": "moolre_user_id",
"apiKey": "...",
"apiPublicKey": "...",
"accountNumber": "..."
},
}Fields
| Field | Type | Description |
|---|---|---|
| name | string | Display name for the new merchant (min 3 chars) |
| provisionMode | sub_account | direct_keys | Whether to create a sub-account (shared credentials) or a standalone tenant (own keys) |
| environment | sandbox | live | Target Moolre environment (defaults to sandbox) |
| moolreCredentials | object (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.
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.
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.