Create a payout
Sends money from your wallet in currency to a recipient. The amount plus fee is reserved immediately.
Always send an Idempotency-Key: retrying with the same key returns the original payout instead of paying twice.
Listen for the PAYOUT_COMPLETED / PAYOUT_FAILED webhooks for the final result.
API key scope: payouts:write
Authorizations
Secret API key from Dashboard → Developers: kp_sandbox_… for Sandbox, kp_live_… for Production. Server-side only.
Headers
Unique key (a UUID is ideal) for this operation. Retrying with the same key returns the original result instead of creating a duplicate.
128Body
Decimal amount with up to 8 fractional digits, e.g. "1500" or "1500.75"
^\d+(\.\d{1,8})?$ISO currency code (fiat) or stablecoin ticker.
XOF, XAF, NGN, GHS, CDF, EUR, USD, USDC, USDT Payment network. See Networks & currencies for countries and limits.
MTN_BJ, MTN_CI, MTN_CM, ORANGE_CI, ORANGE_SN, ORANGE_ML, ORANGE_BF, ORANGE_CM, MOOV_BJ, MOOV_TG, MOOV_CI, MOOV_BF, WAVE_CI, WAVE_SN, FREE_SN, TMONEY_TG, MOBICASH_ML, MOBICASH_BF, DJAMO_CI, MIXX_SN, MTN_CG, AIRTEL_CG, ORANGE_CD, AIRTEL_CD, VODACOM_CD, AFRICELL_CD, AIRTEL_GA, MOMO_NG, AIRTEL_NG, OPAY_NG, MTN_GH, VODAFONE_GH, AIRTELTIGO_GH, BANK_XOF, BANK_XAF, BANK_NGN, BANK_GHS, BANK_CDF, BANK_EUR, BANK_USD, ETH, POLYGON, TRON Which fields are required depends on network: mobile money networks require msisdn; BANK_NGN requires accountNumber and bankCode; crypto networks (ETH/POLYGON/TRON) require address. Every other bank rail (BANK_XOF, BANK_XAF, BANK_GHS, BANK_CDF, BANK_EUR, BANK_USD) is settled manually by KryptaPay today, so at least one recipient identifier is required but no specific field is enforced yet.
500Free-form label for your reporting (e.g. salaries, suppliers).
50