Encaissements
Liens de paiement et prélèvements mobile money.
Deux façons d'encaisser
Le lien de paiement ne demande aucune intégration : vous le créez, vous l'envoyez, le client paie sur une page hébergée par nous. Le prélèvement direct déclenche l'invite sur le téléphone du client depuis votre propre interface.
POST /api/v1/payment_links
curl -X POST https://maticorp.tech/api/v1/payment_links \
-H "Authorization: Bearer VOTRE_CLE_API" \
-H "Idempotency-Key: lien-boutique-204" \
-H "Content-Type: application/json" \
-d '{
"title": "Commande 204",
"type": "fixed",
"amount": 15000,
"reference": "CMD-204",
"usage_type": "multi"
}'
type vaut fixed (montant imposé) ou
open (le payeur saisit le montant, borné par
min_amount et max_amount).
usage_type vaut multi ou single —
un lien à usage unique se ferme après le premier paiement abouti.
Seul title est obligatoire.
POST /api/v1/payments
Déclenche l'invite sur le téléphone du payeur.
curl -X POST https://maticorp.tech/api/v1/payments \
-H "Authorization: Bearer VOTRE_CLE_API" \
-H "Idempotency-Key: commande-204" \
-H "Content-Type: application/json" \
-d '{
"amount": 15000,
"msisdn": "0190000000",
"payer_name": "Koné Ibrahim",
"description": "Commande 204"
}'
201 Created
{
"object": "payment",
"id": "pay_uh5swb0e7z1yn98za5k0",
"amount": 15000,
"fee": 270,
"net_amount": 14730,
"status": "en_attente_client",
"msisdn": "2290190000000",
"created_at": "2026-11-06 20:14:03"
}
Le statut est en_attente_client, pas « payé ».
Le client n'a pas encore validé. Attendez payment.succeeded, ou
relisez le paiement.
Le numéro peut être donné au format national (0190000000) ou
international (2290190000000) — nous le ramenons au pays de
votre compte.
GET /api/v1/payments/{id}
Relit un paiement. C'est cette lecture qui fait foi, jamais le corps d'un webhook.
GET /api/v1/payments
Liste vos paiements, du plus récent au plus ancien.
Paramètres : limit (25 par défaut) et status.
Les statuts
cree— enregistré, rien n'est parti vers l'opérateur.en_attente_client— l'invite est sur le téléphone du payeur.capture— encaissé. L'argent est à vous, en attente de règlement.regle— passé au solde disponible, déboursable.echoue— non abouti. Le motif figure dansfailure_code.expire— resté sans réponse au-delà du délai.rembourse— contre-passé.