Erreurs hébergées
Les réponses d’erreur JSON de l’API hébergée comprennent des informations dans le corps de la réponse similaires à celles qui suivent :
"error":{
"code":"400",
"message":"Invalid currency"
}
{
"error":{
"code":401,
"message":"Not authorised"
}
}
L’objet error comporte les éléments suivants :
Élément | Type | Description | Requis? |
---|---|---|---|
code | string | Le code d’erreur | Oui |
message | string | Le message d’erreur qui décrit l’erreur. Également affiché dans l’en-tête de réponse X-Application-Error. | Oui |
Pour vous éviter d’avoir à analyser le corps de la réponse pour trouver les informations d’erreur, vous pouvez récupérer le message d’erreur à partir de l’en-tête de réponse X-Application-Error.
Il s’agit d’un résumé de toutes les erreurs susceptibles d’être renvoyées lors de l’utilisation de l’API Paiements hébergés, y compris les codes d’état HTTP.
Résumé des codes d’état HTTP
Plage de code | Description |
---|---|
1xx: Informational | Communique des informations au niveau du protocole de transfert. |
2xx: Success | Indique que la demande du client a été acceptée. |
3xx: Redirection | Indique que le client doit effectuer une action supplémentaire pour terminer la demande. |
4xx: Client Error | Indique que le client a commis une erreur dans la demande. |
5xx: Server Error | Indique qu’une erreur s’est produite du côté du serveur |
Codes d’état de réponse HTTP courants
Code | Description |
---|---|
200 OK | Tout a fonctionné comme prévu. |
201 Created | La requête a réussi. Paysafe a créé une nouvelle ressource, et le corps de la réponse contient la représentation. |
202 Accepted | Ceci indique que la demande du client sera traitée de manière asynchrone. Indique au client que la demande semble valide, mais qu’elle peut encore poser des problèmes une fois traitée. |
204 No Content | Généralement renvoyé en réponse à une requête PUT, POST ou DELETE lorsque l’API REST refuse de renvoyer un message d’état ou une représentation dans le corps du message de réponse. |
304 Not Modified | La version de la représentation mise en cache par le client est toujours à jour. |
400 Bad Request | Indique souvent qu’un paramètre requis est manquant ou qu’un paramètre n’est pas valide. Il s’agit d’un état d’erreur générique côté client, utilisé lorsqu’aucun autre code d’erreur 4xx n’est approprié. |
401 Unauthorized | Indique que le client a essayé de mener une activité sur une ressource protégée sans fournir l’autorisation appropriée. Il se peut qu’il ait fourni les mauvaises références ou qu’il n’en ait pas fourni du tout. |
402 Payment Required | Les paramètres étaient valides mais la requête a échoué. |
404 Not Found | La ressource demandée n’existe pas. |
405 Method Not Allowed | Le client a essayé de lancer POST ou PUT vers une ressource qui ne l’accepte pas. |
415 Unsupported Media Type | La requête est dans un format qui n’est pas pris en charge par la ressource demandée pour la méthode demandée. |
429 Too Many Requests | L’application envoie trop de requêtes simultanées. |
500 Internal Server Error | Une erreur s’est produite avec un serveur interne. |
502 External Server Error | Nous avons reçu une réponse non valide de la passerelle en amont en essayant de répondre à la requête. |
Erreurs de paiement hébergé
État HTTP | Code | Description |
---|---|---|
400 | « Impossible de mettre à jour la transaction » | Vous essayez de mettre à jour une transaction qui ne peut pas l’être. Par exemple, vous essayez de mettre à jour une facture pour laquelle la dueDate est dépassée. |
400 | « Référence marchand en double » | Vous tentez d’effectuer une transaction avec un merchantRefNum qui a déjà été utilisé. |
402 | « merchantCustomerId en double – Id de profil XXXX existant » | Vous tentez de créer un profil avec un merchantCustomerId qui a déjà été utilisé. |
400 | « Vous avez soumis un numéro de carte de crédit expirée avec votre requête. Veuillez vérifier ce paramètre et réessayer la requête. » | Les paramètres cardExpiryYear et cardExpiryMonth indiquent que la carte est expirée. |
400 | « Id non valide » | Vous avez fourni un identifiant non valide avec votre requête. |
400 | « Idprofil non valide » | Un profil n’a pas pu être chargé pour le profileId fourni. |
401 | « non autorisé » | Vous avez fourni une clé API non valide avec votre requête. |
400 | « Autorisation refusée » | L’autorisation a été refusée parce qu’un jeton de paiement et un numéro de carte de crédit ont été soumis avec la requête. |
400 | « Montant supérieur au montant remboursable » | Vous tentez de rembourser un montant supérieur au montant initial de la transaction (moins la somme de tous les remboursements existants liés à la transaction). |
400 | « Requête de validation échouée : currency_code non valide : ' ' ISO 4217 n’est pas un code de devise valide » | Vous avez fourni un paramètre currencyCode non valide dans votre requête. |
400 | « Échec de validation de la requête : merchant_ref_num non valide : champ requis » | Vous avez fourni un paramètre merchantRefNum non valide dans votre requête. |
400 | « Échec de validation de la requête : total_amount non valide : champ requis » ou « échec de validation de la requête : total_amount non valide : '10.00' n’est pas un nombre entier » | Vous avez fourni un paramètre totalAmount non valide dans votre requête. |
400 | « Échec de renvoi du rappel » | Votre tentative de renvoi d’un rappel a échoué. |
402 | « Le délai de paiement est expiré » | Vous essayez d’effectuer un paiement pour lequel la période orderTimeout a expiré. |
531 | « Transaction déjà traitée » | Vous essayez d’effectuer un deuxième paiement pour une commande déjà passée. |
400 | « La transaction n’a pas encore été traitée » | Vous essayez de procéder à un remboursement pour une transaction qui n’a pas été traitée. |