Skip to main content

Disbursement API Documentation

Overview

The Disbursement API provides endpoints for managing bulk disbursements to multiple recipients, supporting both bank transfers and wallet-to-wallet transfers.

Base URL

/api/v1/disbursement

Authentication

All endpoints require authentication using an API key in the request headers:
  • X-API-KEY: Your API key

Endpoints

Create Disbursement

Creates a new disbursement to multiple recipients. Endpoint: POST /register Headers:
  • X-API-KEY (optional): API key for authentication
Request Body:
Response:

Get Disbursements

Retrieves a list of disbursements with optional filtering and pagination. Endpoint: GET / Headers:
  • X-API-KEY (optional): API key for authentication
Query Parameters:
  • tenantId: Tenant ID
  • disbursementReference: Disbursement reference
  • status: Transaction status (PENDING|APPROVED|FAILED)
  • accountId: Account ID
  • currency: Currency code
  • channel: Disbursement channel (BANK|WALLET)
  • recipientName: Recipient name
  • recipientAccountNumber: Recipient account number
  • page: Page number (default: 0)
  • size: Page size (default: 20)
  • sort: Sort field and direction (e.g., “createdAt,desc”)
Response:

Error Responses

All endpoints may return the following error responses: 401 Unauthorized
404 Not Found
409 Conflict
403 Forbidden

Notes

  • All timestamps are in ISO-8601 format
  • Disbursement channels can be either BANK or WALLET
  • For BANK channel, the recipient account number and bank code are required
  • For WALLET channel, the recipient account number should be a valid wallet account ID
  • The system will validate account balance before processing disbursements
  • Failed disbursements can be retried through a separate process
  • Only tenant admins and platform admins can view disbursements
  • Each disbursement must have a unique reference per tenant