Skip to main content
Une erreur renvoie un code HTTP non-2xx et un objet JSON qui contient au minimum un champ message. Certaines réponses ajoutent un champ status (par exemple {"status": "failed", "message": "…"}), ou remplacent message par un tableau errors — c’est le cas des erreurs de validation d’un lien de paiement. Les messages exacts sont listés ci-dessous, d’abord par étape d’authentification, puis par opération.

Authentification et en-têtes

Ces vérifications s’exécutent dans cet ordre exact, sur toute opération authentifiée : la première condition non satisfaite est celle qui détermine la réponse. Une clé Sandbox utilisée avec Ipay-Target-Environment: live (ou l’inverse) échoue à l’étape 6, pas avant : elle est syntaxiquement valide mais ne correspond à aucun compte pour l’environnement demandé.

Créer un paiement

Consulter ou lister des paiements

Lien de paiement

Traitement recommandé

  • Ne relancez jamais automatiquement une erreur 400, 401, 403, 404, 406 ou 422 sans corriger la requête à l’origine du refus : ce sont toutes des erreurs de validation, pas des incidents transitoires.
  • En cas d’absence de réponse (timeout, coupure réseau) sur une création de paiement, ne rejouez pas l’appel à l’aveugle : commencez par vérifier l’état réel avec Consulter une transaction, qui accepte votre transaction_id. La détection de doublon sur external_reference est appliquée au niveau applicatif et n’est pas garantie sous appels concurrents : deux requêtes envoyées au même instant avec le même transaction_id peuvent toutes les deux aboutir. Le 422 ci-dessus est le comportement établi du Live ; en Sandbox, la réponse à un doublon n’est pas garantie identique (à confirmer auprès du support). Recommandation (et non comportement garanti par l’API) : générez un transaction_id unique par tentative et vérifiez le statut avant de retenter.
  • Journalisez le code HTTP, le message renvoyé, et vos propres références (transaction_id, reference iMoney Encaissement) pour le support — jamais les clés d’API ni les données de paiement du client.
  • Aucune limite de débit n’est documentée par ce contrat à ce jour : à confirmer auprès du support avant un envoi massif ou un sondage fréquent.