Download OpenAPI specification:
REST API for business-to-business integrations with the Zappie platform.
Use this API to authenticate with your API credentials and programmatically initiate payouts, query payout status, resolve bank account names, and retrieve the list of supported banks.
Exchange your API key and secret key for a short-lived bearer token.
The token expires after expiresIn seconds (currently 3 600 seconds / 1 hour).
| apiKey required | string Your business API key. |
| secretKey required | string Your business secret key. |
{- "apiKey": "pk_live_abc123",
- "secretKey": "sk_live_xyz789"
}{- "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
- "expiresIn": 3600
}Submit a new payout transfer. The reference field acts as an idempotency
key — submitting the same reference twice will not create a duplicate transfer.
| reference required | string Your unique reference for this payout. Used for idempotency. |
| amount required | integer Amount to pay out in the smallest currency unit (e.g. kobo). |
| bankSlug required | string Slug identifier for the destination bank (from |
| accountNumber required | string Destination bank account number. |
| accountName required | string Name of the destination account holder. |
| narration | string or null Optional transfer narration shown on the recipient's statement. |
{- "reference": "payout-ref-001",
- "amount": 500000,
- "bankSlug": "access-bank",
- "accountNumber": "0123456789",
- "accountName": "John Doe",
- "narration": "Vendor payment - April 2026"
}{- "reference": "payout-ref-001",
- "status": "PENDING",
- "amount": 500000,
- "fee": 5000
}Retrieve the current status and details of a payout by its reference.
| reference required | string Example: payout-ref-001 The unique reference of the payout. |
{- "reference": "payout-ref-001",
- "status": "PENDING",
- "amount": 500000,
- "fee": 5000
}Verify a bank account number and retrieve the account holder's name before initiating a payout.
| accountNumber required | string Example: accountNumber=0123456789 The bank account number to resolve. |
| bankSlug required | string Example: bankSlug=access-bank Slug of the bank that holds the account. |
{- "accountName": "John Doe"
}