Skip to content

Multi-gateway orchestration

You can connect several gateways and decide, operator by operator and country by country, which one collects the payment. If it fails, Cartflox automatically fails over to the next one.

  1. Gateways: add each aggregator with its keys, validated when saved.

  2. Payment methods: for each operator (Orange Money Côte d’Ivoire, Wave Senegal, MTN Benin…), choose the gateway that serves it, or let Cartflox choose.

  3. The routing engine remembers the success rate of each gateway and favors the ones that succeed the most.

GET/v1/route?country=SN&providers=paydunya,cinetpay&currency=XOFAvailable operators and gateway ranking for a country
curl
curl "https://cartflox.com/api/v1/route?country=SN&providers=paydunya,cinetpay&currency=XOF"
200 OK
{
"country": "SN",
"currency": "XOF",
"availableMethods": [ { "code": "wave", "name": "Wave", "providers": ["paydunya", "cinetpay"] } ],
"rankedProviders": [ "paydunya", "cinetpay" ]
}
POST/v1/routeRouting decision for a specific payment (API key required)
Parameter Type Required Description
country string Yes ISO alpha-2 country code
amount number Yes Amount
availableProviders string[] Yes Candidate gateways (paydunya, cinetpay, pawapay, fedapay, stripe…)
currency string No Currency
paymentMethod string No Desired operator (wave, orange, mtn, moov, card…)
phone string No Customer’s number: the operator is inferred from the prefix if paymentMethod is absent
preferredProvider string No Force a gateway
200 OK
{
"routing": { "provider": "paydunya", "method": "orange", "reason": "best_success_rate" },
"detectedOperator": "orange",
"availableMethods": [ "..." ],
"rankedProviders": [ "paydunya", "cinetpay" ]
}

Accepted values for providers: paydunya, pawapay, flutterwave, feexpay, paystack, cinetpay, stripe, kkiapay, coinbase, fedapay, notchpay, cryptomus, qosic, monetbill, payplus, hub2, lengopay, wave, paytech, onepay, djamo, ipay.