Avant la Session 010, créer un paiement sur 0fee.dev nécessitait plusieurs champs : payment_method (l'opérateur), country (le code pays), currency (la devise), et parfois payment_method_detail (la variante spécifique au fournisseur). Après la Session 010, il en fallait un seul : payment_method: "PAYIN_ORANGE_CI". Une seule chaîne encode le type d'opération, l'opérateur et le pays. La devise est dérivée automatiquement. Le fournisseur est sélectionné par le moteur de routage. Ce seul changement de conception a transformé l'API 0fee.dev de fonctionnelle à élégante.
Le format
Le format unifié suit le pattern PAYIN_OPÉRATEUR_PAYS :
| Code | Opération | Opérateur | Pays | Devise |
|---|---|---|---|---|
PAYIN_ORANGE_CI | Paiement entrant | Orange Money | Côte d'Ivoire | XOF |
PAYIN_MTN_GH | Paiement entrant | MTN | Ghana | GHS |
PAYIN_MPESA_KE | Paiement entrant | M-Pesa | Kenya | KES |
PAYIN_WAVE_SN | Paiement entrant | Wave | Sénégal | XOF |
PAYIN_CARD_GLOBAL | Paiement entrant | Carte | Mondial | Multiple |
Détection automatique du pays et de la devise
Un aspect élégant du format unifié est que le pays est encodé dans le code de la méthode de paiement. Le moteur de routage l'extrait automatiquement. Cela signifie qu'un marchand peut initier un paiement avec juste :
json{
"amount": 5000,
"payment_method": "PAYIN_ORANGE_CI",
"customer": {
"phone": "+2250709757296"
}
}Pas de champ country nécessaire -- c'est CI, extrait du code de méthode. Pas de champ currency nécessaire -- c'est XOF, dérivé du pays.
117 méthodes de paiement
La table complète des méthodes de paiement mappe 117 codes unifiés à travers 30+ pays vers leurs configurations de fournisseurs et de routage.
Cet article fait partie de la série « Comment nous avons construit 0fee.dev ». 0fee.dev est un orchestrateur de paiement couvrant 53+ fournisseurs dans 200+ pays, construit par Juste A. GNIMAVO et Claude depuis Abidjan sans aucun ingénieur humain. Suivez la série pour l'histoire complète de la construction.