Zappie
Zappie API docs

Zappie B2B API (1.0.0)

Download OpenAPI specification:

Zappie Support: support@zappie.ai

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.

Authentication

Obtain a short-lived bearer token using your API key and secret.

Authenticate

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).

Request Body schema: application/json
required
apiKey
required
string

Your business API key.

secretKey
required
string

Your business secret key.

Responses

Request samples

Content type
application/json
{
  • "apiKey": "pk_live_abc123",
  • "secretKey": "sk_live_xyz789"
}

Response samples

Content type
application/json
{
  • "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
  • "expiresIn": 3600
}

Payouts

Initiate and query payout transfers.

Initiate a payout

Submit a new payout transfer. The reference field acts as an idempotency key — submitting the same reference twice will not create a duplicate transfer.

Authorizations:
BearerAuth
Request Body schema: application/json
required
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 GET /v1/payouts/banks).

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.

Responses

Request samples

Content type
application/json
{
  • "reference": "payout-ref-001",
  • "amount": 500000,
  • "bankSlug": "access-bank",
  • "accountNumber": "0123456789",
  • "accountName": "John Doe",
  • "narration": "Vendor payment - April 2026"
}

Response samples

Content type
application/json
{
  • "reference": "payout-ref-001",
  • "status": "PENDING",
  • "amount": 500000,
  • "fee": 5000
}

Get a payout

Retrieve the current status and details of a payout by its reference.

Authorizations:
BearerAuth
path Parameters
reference
required
string
Example: payout-ref-001

The unique reference of the payout.

Responses

Response samples

Content type
application/json
{
  • "reference": "payout-ref-001",
  • "status": "PENDING",
  • "amount": 500000,
  • "fee": 5000
}

Banks

Look up supported banks and resolve account names.

List supported banks

Returns the list of all active banks that can be used as payout destinations.

Authorizations:
BearerAuth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Resolve account name

Verify a bank account number and retrieve the account holder's name before initiating a payout.

Authorizations:
BearerAuth
query Parameters
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.

Responses

Response samples

Content type
application/json
{
  • "accountName": "John Doe"
}