Overview
The Collections API handles money coming in to your platform. It’s the opposite of Payments, which handles money going out. When a customer wants to pay you, you use the Collections API to:- Create a collection reference (a payment link or account number) for the customer.
- The customer sends money to that reference from any bank in Nigeria.
- The platform credits your virtual account and fires a webhook to notify you instantly.
- You query the Collections API to reconcile and confirm the credit.
Base URL
Authentication
How Collections Work
Endpoints
Create Collection Intent
POST /v1/collections/intent
Generate a unique payment reference for a customer to send you money. You can set an exact expected amount (for invoices) or leave it open (for top-ups).
What you send:
What you get back:
Example request:
Get Collection Status
GET /v1/collections/{collection_id}
Check whether a payment has been received for a specific collection intent.
Status values:
What you get back:
List Collections
GET /v1/collections
Returns all collection intents for your business, with filtering options.
Query parameters:
Cancel Collection Intent
DELETE /v1/collections/{collection_id}
Cancel an outstanding collection intent. Once cancelled, any payment arriving with this reference will be rejected and returned to the sender.
Webhooks for Collections
The fastest way to know a payment arrived is via a webhook. When a collection intent is paid, the platform immediately sends acollection.paid event to your webhook URL.
Webhook payload example:
Simulating Payments in Sandbox
In the sandbox environment, incoming payments do not arrive automatically. Use the simulation endpoint to trigger a test credit:POST /v1/collections/{collection_id}/simulate-payment
What you send:
This triggers the full webhook flow as if a real payment arrived. Useful for testing your webhook handler end-to-end.
Error Codes
Full API Reference
Open API Playground
Try Collections endpoints live in the browser

