Skip to main content
Every order and quote carries a recipient object. Its required fields depend on the payout currency and method.

Methods per currency

MOBILE: KES, GHS, UGX

string
required
Recipient’s name as you know it. Used on the payout record.
string
required
Local format 0XXXXXXXXX. International formats (+254712345678, 254712345678) are accepted and normalised.
string
required
The recipient’s mobile money network:

BUY_GOODS: KES tills

string
required
M-Pesa till number, 5–7 digits.

PAYBILL: KES paybills

string
required
Paybill business number, 5–7 digits.
string
required
The account reference the paybill expects (meter number, invoice, phone, etc.).

BANK_TRANSFER: KES banks

string
required
Bank account number.
string
required
Kenyan bank code.
string
Display name for the bank. Optional.

NGN bank transfer

NGN recipients have no method field. All NGN payouts are bank transfers.
string
required
The recipient bank’s institution code (bank_code is accepted as an alias). For example GTBINGLA for Guaranty Trust Bank, or OPAYNGPC for OPay.Fetch the full list of 171 codes from GET /api/offramp/institutions and populate a picker from it. The codes are not derivable from a bank’s name, and a wrong one fails at order creation.
string
required
NUBAN account number.

Validation

Minisend validates every recipient before creating an order. An invalid account returns 422 and nothing is created.
  • Bank accounts (KES and NGN) are hard-validated: the account must exist and resolve to a registered name.
  • Mobile, till, and paybill lookups are best-effort: the registered name is returned when available, but a missing name does not block the order.
Use POST /api/offramp/validate-account to check an account and show the registered name on a confirmation screen before creating the order.