Introduction
The MigraPay API lets your business hold multi-currency balances, pay recipients across borders and collect payments from customers.
What you can build
Send payouts
Pay saved bank, mobile money and local-rail recipients from your wallets, with the currency conversion built in.
Collect payments
Create payment requests with account details or a hosted checkout link your customer pays into.
Track balances
Read wallet balances and the full transaction history behind them.
Quote rates
Show live exchange rates and exact payout estimates before you send.
How the API works
Your server sends JSON requests over HTTPS to the MigraPay API, authenticated with a secret API key. MigraPay moves the money through its payment network and reports changes back to you with signed webhooks.
- Base URL:
https://business-api.migrapay.com/v1/api. Every path in these docs is relative to it. - JSON everywhere. Send
Content-Type: application/jsononPOSTrequests. Field names are camelCase. - Amounts are decimal numbers in major units.
250.75means 250 dollars and 75 cents, not 25,075 cents. - Currencies are three-letter ISO 4217 codes such as
CAD,USDorNGN. - Timestamps are ISO 8601 strings in UTC, for example
2026-08-01T10:15:30.000Z.
Every response uses the same { status, message, data } envelope; see the API reference.
Core concepts
- Wallets hold your balance in each currency your business is enabled for.
- Recipients are the people and businesses you pay, with the account details for one payout method.
- Payouts move money from a wallet to a recipient, converting currency when needed.
- Collections are payment requests your customers pay into; settled funds land in your wallet.
- Transactions are the ledger entries behind every movement of money.
- Environments. Sandbox and Live are separate, fully isolated data sets, selected by your API key. See Environments.