Skip to main content
POST
Create a payin

Authorizations

Authorization
string
header
required

Secret API key from Dashboard → Developers: kp_sandbox_… for Sandbox, kp_live_… for Production. Server-side only.

Body

application/json
amount
string
required

Decimal amount with up to 8 fractional digits, e.g. "1500" or "1500.75"

Pattern: ^\d+(\.\d{1,8})?$
currency
enum<string>
required

ISO currency code (fiat) or stablecoin ticker.

Available options:
XOF,
XAF,
NGN,
GHS,
CDF,
EUR,
USD,
USDC,
USDT
network
enum<string>
required

Mobile Money network to charge. Must match currency.

Available options:
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
customer
object
required
redirectUrl
string<uri>

Where the operator sends the customer back after an operator redirect (checkoutUrl).

expiresInSec
integer

How long the customer has to approve the payment, in seconds (60 to 86400).

Required range: 60 <= x <= 86400

Response

Success

ok
enum<boolean>
required
Available options:
true
data
object
required