Passer au contenu principal
L’API utilise des codes HTTP conventionnels et un corps JSON. Un 2xx = succès ; un 4xx = requête rejetée ; un 5xx = erreur serveur.

Forme d’une erreur

{
  "message": "The given data was invalid.",
  "errors": {
    "amount": ["The amount must be at least 1."]
  }
}
message est toujours présent. errors apparaît sur les échecs de validation et associe chaque champ rejeté à ses messages.

Codes de statut

CodeSignification
200 / 201Succès.
400 / 422Erreur de validation — voir errors.
401Clé API manquante, invalide ou expirée.
403Action non autorisée.
404Ressource introuvable.
428Clé d’idempotence requise ou invalide.
429Débit limité — voir Rate limits.
501Endpoint pas encore disponible (capture manuelle, rapport de réconciliation).
5xxErreur serveur — réessai sûr.

Un paiement refusé n’est pas une erreur de requête

Un 4xx/5xx signifie que la requête a échoué. Un paiement refusé par une passerelle n’est pas une erreur HTTP : la requête réussit, et l’échec est reporté dans l’objet failure de la tentative (code + message lisible). Voir Statut d’un paiement.

Avec le SDK PHP

Les erreurs sont mappées vers des exceptions typées (toutes implémentent OrchestrateException) : authentification, permission, not-found, invalid-request (avec errors), idempotence, rate-limit, not-implemented, serveur et connexion. Voir Gestion des erreurs du SDK.