Vue d'ensemble
Kratos Pay API est la passerelle de paiement de Kratos Financials Inc. Elle permet à n'importe quelle application — boutique en ligne, plateforme SaaS, application mobile — d'encaisser (Cash-In) et de reverser (Cash-Out) des paiements Mobile Money et carte bancaire en Afrique centrale.
Endpoints Live
Télécharger le guide pour une utilisation hors connexionAuthentification
Utilisez la clé publique Live dans l’en-tête X-MoK-Public-Key. N’envoyez ni clé secrète ni applicationId. La clé publique doit rester côté serveur dans votre intégration.
X-MoK-Public-Key: <VOTRE_CLE_PUBLIQUE_LIVE>
Content-Type: application/jsonPayin — encaissement
Méthode POSThttps://dev-aggregator-api.kratospay.com/api/v1/live/payin
Payload JSON
{
"amount": 5000,
"currency": "XAF",
"phoneNumber": "237690000000",
"operator": "orange_money_cm",
"reference": "INV-123456",
"description": "Paiement facture internet"
}Réponse de succès
{
"status": "SUCCESS",
"reference": "INV-123456",
"amount": 5000,
"currency": "XAF",
"timestamp": "2026-09-10T15:30:00Z",
"gatewayMessage": "Transaction réussie"
}Payout — décaissement
Méthode POSThttps://dev-aggregator-api.kratospay.com/api/v1/live/payout
Payload JSON
{
"amount": 5000,
"currency": "XAF",
"phoneNumber": "237690000000",
"operator": "mtn_momo_cm",
"reference": "OUT-123456",
"description": "Paiement fournisseur"
}Réponse de succès
{
"status": "SUCCESS",
"reference": "OUT-123456",
"amount": 5000,
"currency": "XAF",
"timestamp": "2026-09-10T15:30:00Z",
"gatewayMessage": "Transaction réussie"
}Exemple de réponse d’erreur
Exemple de structure de validation. Le code HTTP et le détail exact dépendent de l’erreur renvoyée par l’API.
{
"success": false,
"error": {
"code": "VALIDATION_ERROR",
"message": "The provided data is invalid.",
"details": {
"phoneNumber": [
"The phone number field is required."
]
}
},
"meta": {
"request_id": "example-request-id",
"timestamp": "2026-09-10T15:30:00Z"
}
}À vérifier côté intégration
- Utilisez une référence unique par transaction et vérifiez le statut métier retourné par l’API.
- Un statut SUCCESS confirme la réussite ; une réponse HTTP réussie ne suffit pas à elle seule.
- Traitez les erreurs selon error.code et error.details, sans supposer que tous les échecs ont le même code HTTP.
- Ces endpoints Live peuvent déplacer de vrais fonds. Vérifiez le numéro, l’opérateur, le montant et l’environnement avant l’envoi.
Ce que permet l'API
- Encaisser un paiement Mobile Money ou carte depuis votre application (Cash-In).
- Reverser des fonds vers un portefeuille Mobile Money ou un compte bancaire (Cash-Out).
- Être notifié en temps réel de chaque changement de statut via des webhooks signés.
- Tester l'intégralité du parcours sans argent réel grâce à l'environnement Sandbox.
Vocabulaire clé
- Wallet : le portefeuille Mobile Money d'un utilisateur final (numéro de téléphone associé à un opérateur).
- Transaction : un mouvement d'argent identifié par un transaction_id unique, dans un des statuts PENDING, SUCCESS ou FAILED.
- Webhook : une notification HTTP POST envoyée par Kratos Pay vers votre serveur à chaque changement de statut d'une transaction.
- Idempotency key : un identifiant unique que vous générez pour chaque requête, pour éviter qu'une même transaction soit créée deux fois en cas de nouvel essai réseau.