Skip to main content
POST
Request a payment (beta)

Authorizations

Authorization
string
header
required

Your secret API key: sk_live_… (real money) or sk_test_… (test mode).

Body

application/json
service
string<uuid>
required

The code of the service that collects.

Example:

"019a8f2e-4c1b-7d3a-9e55-2b6f0c1d8a47"

amount
string
required

The value of the goods, as a string. Respect the decimals of the operator.

Example:

"1000"

currency
string
required
Example:

"XAF"

phone_number
string
required

Mobile money number with the country code. Spaces, dashes and + are removed.

Example:

"237670000000"

reference
string
required

Your own unique reference (1 to 100 letters, digits, . _ : -). Makes the call safe to retry.

Example:

"order-2026-10-29-0001"

country
string

Optional check. Refused if the operator is in another country.

Example:

"CMR"

operator
string

Operator code (MTN_CMR). Optional — guessed from the phone number when missing.

Example:

"MTN_CMR"

fee_bearer
enum<string>

Default: the setting of the service.

Available options:
merchant,
customer
description
string

Shown to your customer on the payment prompt. 4 to 22 letters, digits or spaces.

Example:

"Afroyamo Premium"

metadata
object

Up to 10 keys with text values. Returned in the webhooks.

Example:
webhook_url
string<uri>

https. Takes priority over the webhook_url of the service for this payment.

callback_url
string<uri>

Takes priority over the callback_url of the service for this payment.

Response

Same reference sent again — the existing payment, unchanged

success
boolean
Example:

true

data
object
meta
object