Skip to main content
POST
Initiate mobile money transfer

Authorizations

x-api-key
string
header
required

Merchant API key (e.g., sk_live_xxx or sk_test_xxx)

Body

application/json
amount
number
required

Transfer amount

Required range: x >= 0.01
Example:

250

reference
string
required

Unique client reference

Pattern: ^[a-zA-Z0-9._-]+$
Example:

"mobile-transfer-001"

phone
string
required

Recipient phone number

Example:

"0977433571"

operator
enum<string>
required

Mobile money operator

Available options:
airtel,
mtn,
zamtel,
vodacom
Example:

"airtel"

country
enum<string>
required

Country code

Available options:
zm,
ng
Example:

"zm"

narration
string

Transfer narration

Maximum string length: 100
Example:

"Mobile money payout"

walletId
string<uuid>

Source wallet ID to debit (defaults to main wallet if omitted)

Example:

"68f11209-451f-4a15-bfcd-d916eb8b09f4"

recipientName
string

Recipient name for the transaction record

Maximum string length: 100
Example:

"Jane Doe"

Response

Transfer initiated successfully

status
boolean
required

Request success status

Example:

true

message
string
required

Response message

Example:

"Operation completed successfully"

data
object