Gérer les erreurs (client JS)
Cette page décrit le traitement des erreurs d'intégration.
Si vous souhaitez personnaliser la gestion des erreurs survenant lors du refus d'une transaction, consultez l'article suivant :
Comment sont affichées les erreurs ?
Pour le formulaire JavaScript, les erreurs sont automatiquement affichées dans la div kr-form-error:
<!-- error zone --> <div class="kr-form-error"></div>
<!-- error zone --> <div class="kr-form-error"></div>
Il vous suffit de l'ajouter.
Gérer les erreurs manuellement
Pour gérer les erreurs manuellement, il vous suffit d'intercepter le message d'erreur par defaut et de le personnaliser. Dans l'exemple suivant, le message d'erreur personnalisé sera placé dans la div de classe customerror:
<script type="text/javascript"> $(document).ready(function() { KR.onError( function(event) { var code = event.errorCode; var message = event.errorMessage; var myMessage = code + ": " + message; try { /* if client answer exists, a refused transaction has been created */ /* it's not always the case. For example, if the form is empty, */ /* error is raised before transaction creation */
Codes d'erreur JS
L'API REST dispose de nombreux codes d'erreur décrits ici :
Les codes d'erreur préfixés par CLIENT_ correspondent à des erreurs survenant dans le navigateur de l'acheteur. Elles se produisent avant que les données de paiement ne soient envoyées sur nos serveurs. Cela concerne, par exemple, des erreurs de validation de données du formulaire effectuées localement, ou des erreurs d'intégration du client JavaScript.
CODE | DEFINITION |
---|---|
CLIENT_004 | Invalid public key |
CLIENT_100 | Invalid formToken |
CLIENT_101 | Aborted |
CLIENT_300 | Invalid form data |
CLIENT_301 | Invalid card number |
CLIENT_302 | Invalid expiry date |
CLIENT_303 | Invalid security code |
CLIENT_304 | value is required |
CLIENT_305 | No formToken defined |
CLIENT_500 | No form or button defined |
CLIENT_501 | Kr-public-key is empty or not defined |
CLIENT_502 | Form already submitted (browser back button not supported) |
CLIENT_997 | Endpoint configuration mismatch |
CLIENT_998 | The used FormToken is for demo purposes only, payment is disabled. Check the documentation to get a real formToken. |
CLIENT_999 | Technical error |
Codes d'avertissement
Les codes d'erreur compris entre CLIENT_700 et CLIENT_799 sont des avertissements. Ils vous aident lors de l'intégration du client JavaScript :
CODE | DEFINITION |
---|---|
CLIENT_704 | you need to load Font Awesome in your |
CLIENT_705 | viewport definition is missing ( |
Détail des codes d'erreur
CLIENT_004
Code | CLIENT_004 |
Définition | Invalid public key |
Catégorie | Errors |
La clé publique définie dans kr-public-key n'est pas valide, elle doit être de la forme : [NUMERO]:[CHAINE]
par exemple : 69876357:testpublickey_DEMOPUBLICKEY95me92597fd28tGD4r5
Pour plus d'informations, rendez-vous ici : Récupérer mes clés.
CLIENT_100
Code | CLIENT_100 |
Définition | Invalid formToken |
Catégorie | Errors |
Le formToken que vous avez défini dans kr-form-token est invalide. Pour plus d'informations sur la création d'un formToken, rendez-vous ici: guide d'intégration.
CLIENT_101
Code | CLIENT_101 |
Définition | Aborted |
Catégorie | Errors |
La transaction a été abandonnée par l'acheteur. Cette erreur se produit, par exemple, lorsque l'acheteur ferme la pop-in 3D-Secure avant de s'être authentifié.
Si l'acheteur n'effectue pas d'autre tentative, une transaction refusée est automatiquement créée lorsque le formToken arrive à expiration.
CLIENT_300
Code | CLIENT_300 |
Définition | Invalid form data |
Catégorie | Errors |
Lorsque plusieurs champs du formulaire sont invalides, une erreur générale CLIENT_300 est retournée. La liste détaillée de toutes les erreurs détectées sera contenue dans le champ children:
{ "errorCode": "CLIENT_300", "errorMessage": "Invalid form data", "children": [{ "errorCode": "CLIENT_301", "errorMessage": "Invalid card number", "field": "pan", (...) }, { "errorCode": "CLIENT_302", "errorMessage": "Invalid expiry date", "field": "expiryDate", (...) }, { "errorCode": "CLIENT_303", "errorMessage": "Invalid security code", "field": "securityCode", (...) }], "detailedErrorCode": null, "detailedErrorMessage": null, (...) }
CLIENT_301
Code | CLIENT_301 |
Définition | Invalid card number |
Catégorie | Errors |
Le champ kr-pan (numéro de carte) du formulaire de paiement est invalide.
CLIENT_302
Code | CLIENT_302 |
Définition | Invalid expiry date |
Catégorie | Errors |
Le champ kr-expiry (date d'expiration) du formulaire de paiement est invalide.
CLIENT_303
Code | CLIENT_303 |
Définition | Invalid security code |
Catégorie | Errors |
Le champ kr-security-code (code de sécurité ou CVV) du formulaire de paiement est invalide.
CLIENT_304
Code | CLIENT_304 |
Définition | value is required |
Catégorie | Errors |
Un champ additionnel déclaré comme obligatoire est vide. Pour plus de détails, rendez-vous ici : Champs de formulaire personnalisés.
CLIENT_305
Code | CLIENT_305 |
Définition | No formToken defined |
Catégorie | Errors |
Le formToken n'existe pas ou n'est pas conforme. Pour plus de détails, rendez-vous ici : Créer un formToken.
CLIENT_500
Code | CLIENT_500 |
Définition | No form or button defined |
Catégorie | Errors |
Aucun bouton de formulaire de paiement n'a été trouvé dans le code HTML. Vérifiez si les balises nécessaires sont bien présentes, ou s'il n'y a pas une erreur de syntaxe.
CLIENT_501
Code | CLIENT_501 |
Définition | Kr-public-key is empty or not defined |
Catégorie | Errors |
La clé publique n'est pas définie dans kr-public-key.
CLIENT_502
Code | CLIENT_502 |
Définition | Form already submitted (browser back button not supported) |
Catégorie | Errors |
L'application a détecté que l'acheteur est revenu sur la page de paiement à l'aide du bouton de retour, sur son navigateur internet. Le formulaire de paiement a été bloqué.
Notez que cette détection n'est fonctionnelle que sur certains navigateurs.
CLIENT_704
Code | CLIENT_704 |
Définition | you need to load Font Awesome in your |
Catégorie | Warnings |
Un champ additionnel utilise des icônes de font Awesome mais la librairie n'est pas chargée. Pour plus de détails, rendez-vous ici: Champs de formulaire personnalisés.
CLIENT_705
Code | CLIENT_705 |
Définition | viewport definition is missing ( |
Catégorie | Warnings |
La balise <meta>
, via la directive "viewport" indique au navigateur la manière de contrôler les dimensions et l'échelle de la page à afficher.
Il est recommandé de l'utiliser sur l'ensemble des pages en HTML5.
CLIENT_997
Code | CLIENT_997 |
Définition | Endpoint configuration mismatch |
Catégorie | Errors |
Le formToken a été créé sur une autre plateforme que celle où le client JavaScript a été téléchargé. L'URL d'appel aux web service REST doit être le même que celle du client JavaScript.
CLIENT_998
Code | CLIENT_998 |
Définition | The used FormToken is for demo purposes only, payment is disabled. Check the documentation to get a real formToken. |
Catégorie | Errors |
Le formulaire de paiement utilise un formToken de démonstration qui ne permet pas d'interaction avec le serveur. Utilisez un formToken valide : Charge/CreatePayment.
CLIENT_999
Code | CLIENT_999 |
Définition | Technical error |
Catégorie | Errors |
Erreur inconnue, merci de contacter le support avec les informations suivantes :
- Numéro de boutique,
- URL du formulaire,
- Nom et version du navigateur,
- Type et version du système d'exploitation,
- Périphérique utilisé (Iphone 6S, PC, Ipad Pro...),
- Date et heure de l'erreur.