Endpoint
Checking whether it is offered
USSD only appears for orders whose currency supports it and on accounts where it is enabled. The authoritative source is the create-order response:USSD is absent, don’t offer it.
Payload (before encryption)
The common fields are the same as every other method:The USSD-specific object — most likely a bank selection, mirroring
bank transfer’s
BankTransfer.bankcode — is
not documented by the provider. Confirm the exact shape with Reeple before implementing.Listing USSD banks
ussdBankCode — that, rather than bankCode, is the value a
USSD flow needs. See List banks.
An empty
data array means no banks are currently enabled for USSD on your account. Treat that
as “don’t offer USSD” rather than an error.What to expect
Once submitted, the response follows the same shape as every other method — a pending status you poll to completion.1
Display the dial string
The customer dials it on the phone number registered with their bank.
2
They authorise on their handset
Their bank prompts them to confirm and enter a PIN.
3
Poll for status
Get order status until
isFinalStatus is true.
USSD typically settles in minutes.Alternatives
Bank transfer
Also needs no card, and is fully documented today.
Card
The most widely available method across currencies.