Collections

Collections let you take payment from customers in supported currencies. After a successful payment, funds are credited according to your product and wallet setup.

Integration pattern

Hosted checkout follows this flow:

  1. Initialize payment — Create a session using the initialize API (see ).
  2. Keep references — Store your reference and the returned transactionRef for support and reconciliation.
  3. Webhook — Listen for status updates on the URL you configure for your API key ().
  4. Verify (optional) — Poll or query status if you need a server-side check beyond webhooks ().

For flows where you need payment instructions in API responses instead of redirecting to a hosted page, use the path together with as documented there (createaccept).


Collection methods

MethodDescriptionCurrencies (examples)
Cards with 3-D Secure where requiredNGN, USD, and others as enabled
Mobile money across supported marketsGHS, KES, UGX, TZS, and others as enabled
Stablecoin on-chain collectionUSD-equivalent stablecoins as enabled

Availability depends on your account and environment. Use the discovery endpoints below instead of hardcoding rails or currency lists in your app.


Discovering what is available

Corridors and methods can change with configuration and rollout. Before you build UI or validation:

  • GET /api/v1/client/currencies — active currencies and related metadata.
  • GET /api/v1/client/banks?currency=<CODE> — bank or network identifiers for that currency, where applicable.

For API-first deposit flows, the documentation and describe how to request and accept deposit quotes.


Authentication

Collection routes use business API keys and signed requests. Follow for headers and signing—do not embed secrets in mobile or browser clients.


Next steps