Format
Toutes les erreurs suivent le même format JSON :message est un tableau :
Codes HTTP
Messages fréquents
401 — API credentials are required
401 — API credentials are required
Les en-têtes
x-api-key et/ou x-api-secret sont absents. Vérifiez que votre client HTTP les envoie bien (certains proxies les suppriment).401 — Invalid API credentials
401 — Invalid API credentials
Le secret ne correspond pas à la clé. Si vous avez régénéré le secret, l’ancien est invalidé immédiatement : mettez à jour votre configuration.
400 — Amount must be greater than 100
400 — Amount must be greater than 100
Le montant minimum d’un paiement est de 101 FCFA.
403 — Merchant account is not active
403 — Merchant account is not active
Votre compte n’a pas encore été activé par Djonanko, ou a été désactivé. Contactez le support.
404 — Merchant not found
404 — Merchant not found
Le
merchant_reference (ou reference) ne correspond à aucun compte. Vérifiez la casse : la référence est sensible à la casse.404 — Payment not found
404 — Payment not found
La
payment_reference ne correspond à aucun paiement. Vérifiez que vous utilisez bien la référence PAY… renvoyée à la création, et non l’id UUID.400 — Solde insuffisant : votre solde disponible est de X FCFA
400 — Solde insuffisant : votre solde disponible est de X FCFA
Le montant du reversement demandé dépasse votre solde. Consultez
GET /web-merchant/get-balance.400 — Le montant minimum est de 500 FCFA
400 — Le montant minimum est de 500 FCFA
Un reversement doit être d’au moins 500 FCFA.
400 — Aucun moyen principal de reversement n'est enregistré
400 — Aucun moyen principal de reversement n'est enregistré
Ajoutez un compte de reversement et définissez-le comme principal, ou fournissez
destination et operator dans la demande.400 — Cette adresse IP est déjà enregistrée
400 — Cette adresse IP est déjà enregistrée
L’IP (ou la plage CIDR normalisée) existe déjà dans votre liste.
400 — Vous ne pouvez pas enregistrer plus de 20 adresses IP
400 — Vous ne pouvez pas enregistrer plus de 20 adresses IP
Supprimez une entrée inutilisée, ou regroupez vos serveurs dans une plage CIDR.
400 — Le rapport d'un mois n'est disponible qu'une fois le mois terminé
400 — Le rapport d'un mois n'est disponible qu'une fois le mois terminé
Les rapports mensuels ne peuvent être générés que pour un mois écoulé.
Bonnes pratiques
- Journalisez le corps complet de chaque erreur avec la requête qui l’a provoquée.
- Ne réessayez pas automatiquement une
400ou404: l’appel échouera de la même façon. - Réessayez avec backoff les
500et les erreurs réseau, en gardant la mêmemetadata.order_idpour éviter de créer deux liens pour une même commande. - Avant de conclure qu’un paiement a échoué, vérifiez son statut avec
GET /web-merchant/payment/status: un lien peut êtrePENDINGalors que votre appel de création a expiré côté réseau.
