Manejo de errores (cliente JS)
Esta página describe el manejo de los errores de integración.
Si desea personalizar el manejo de los errores que ocurren cuando rechaza una transacción, consulte el siguiente artículo:
¿Cómo se muestran los errores?
En el formulario cargado, los errores se muestran automáticamente en el div kr-form-error :
<!-- error zone --> <div class="kr-form-error"></div>
<!-- error zone --> <div class="kr-form-error"></div>
Solo tiene que añadirlo.
Manejar los errores manualmente
Para gestionar los errores manualmente, basta con interceptar y personalizar el mensaje de error predeterminado. En el siguiente ejemplo, el mensaje de error personalizado se colocará en el div de clase 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 */
Códigos de error JS
La API REST tiene muchos códigos de error, que de describen aquí: Códigos de error de la API REST .
Los códigos de error con el prefijo CLIENT_ corresponden a errores que ocurren en el navegador del comprador. Se producen antes de que los datos de pago se envíen a nuestros servidores. Incluyen, por ejemplo, errores de validación de los datos de formulario o errores de integración del cliente de JavaScript.
CODE | DEFINICIÓN |
---|---|
CLIENT_004 | clave pública no válida |
CLIENT_100 | formToken no válido |
CLIENT_101 | cancelado |
CLIENT_300 | datos de formulario no válidos |
CLIENT_301 | número de tarjeta no válido |
CLIENT_302 | fecha de expiración no válida |
CLIENT_303 | código de seguridad no válido |
CLIENT_304 | El valor es obligatorio |
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 | la configuración de endpoint no coincide |
CLIENT_998 | error de demostración |
CLIENT_999 | error técnico |
Códigos de advertencia
Los códigos de error que van de CLIENT_700 a CLIENT_799 son advertencias. Sirven de ayuda para la integración del cliente JavaScript:
CODE | DEFINICIÓN |
---|---|
CLIENT_704 | necesita incluir Font Awesome en el elemento |
CLIENT_705 | viewport no definido ( |
Detalle de los códigos de error
CLIENT_004
Código | CLIENT_004 |
Definición | clave pública no válida |
Categoría | Errores |
La clave pública definida en kr-public-key no es válida. Debe tener la la siguiente forma\: [NÚMERO]:[CADENA]
Por ejemplo\: 69876357:testpublickey_DEMOPUBLICKEY95me92597fd28tGD4r5
Para más información, consulte: Obtener mis claves .
CLIENT_100
Código | CLIENT_100 |
Definición | formToken no válido |
Categoría | Errores |
El formToken definido por usted en kr-form-token no es válido. Para obtener más información sobre cómo crear un formToken, consulte: Guía de integración .
CLIENT_101
Código | CLIENT_101 |
Definición | cancelado |
Categoría | Errores |
La transacción fue abandonada por el comprador. Este error ocurre, por ejemplo, cuando el comprador cierra el pop-in de 3D-Secure antes de la autenticación.
Si el comprador no lo intenta otra vez, se crea automáticamente una transacción rechazada cuando expira el formToken.
CLIENT_300
Código | CLIENT_300 |
Definición | datos de formulario no válidos |
Categoría | Errores |
Cuando varios campos del formulario no son válidos, se devuelve un error general CLIENT_300. La lista detallada de todos los errores detectados estará contenida en el campo 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
Código | CLIENT_301 |
Definición | número de tarjeta no válido |
Categoría | Errores |
El campo kr-pan (número de tarjeta) del formulario de pago no es válido.
CLIENT_302
Código | CLIENT_302 |
Definición | fecha de expiración no válida |
Categoría | Errores |
El campo kr-expiry (fecha de vencimiento) del formulario de pago no es válido.
CLIENT_303
Código | CLIENT_303 |
Definición | código de seguridad no válido |
Categoría | Errores |
El campo kr-security-code (código de seguridad o CVV) del formulario de pago no es válido.
CLIENT_304
Código | CLIENT_304 |
Definición | El valor es obligatorio |
Categoría | Errores |
Un campo adicional declarado como obligatorio está vacío. Para más información, consulte: Campos personalizados del formulario .
CLIENT_500
Código | CLIENT_500 |
Definición | No form or button defined |
Categoría | Errores |
No se ha encontrado ningún botón de formulario de pago en el código HTML. Compruebe si existen las etiquetas necesarias o si hay algún error de sintaxis.
CLIENT_501
Código | CLIENT_501 |
Definición | Kr-public-key is empty or not defined |
Categoría | Errores |
La clave pública no está definida en kr-public-key .
CLIENT_502
Código | CLIENT_502 |
Definición | Form already submitted (browser back button not supported) |
Categoría | Errores |
La aplicación ha detectado que el comprador regresó a la página de pago con el botón atrás de su navegador. El formulario de pago ha sido bloqueado.
Tenga en cuenta que esta detección solo funciona en ciertos navegadores.
CLIENT_704
Código | CLIENT_704 |
Definición | necesita incluir Font Awesome en el elemento |
Categoría | Advertencias |
Un campo adicional utiliza íconos de Font Awesome, pero la biblioteca no se ha cargado. Para más información, vaya a: Campos personalizados del formulario .
CLIENT_705
Código | CLIENT_705 |
Definición | viewport no definido ( |
Categoría | Advertencias |
La etiqueta <meta>
, a través de la directiva "viewport", le dice al navegador cómo controlar las dimensiones y la escala de la página que se mostrará. Se recomienda usarlo en todas las páginas HTML5.
CLIENT_997
Código | CLIENT_997 |
Definición | la configuración de endpoint no coincide |
Categoría | Errores |
El formToken se creó en una plataforma distinta de aquella en la que se descargó el cliente JavaScript. La URL de llamada al servicio web REST debe ser la misma que la URL del cliente de JavaScript.
CLIENT_998
Código | CLIENT_998 |
Definición | error de demostración |
Categoría | Errores |
El formulario de pago utiliza un formToken de demostración que no permite la interacción con el servidor. Utilice un formToken válido: Charge/CreatePayment .
CLIENT_999
Código | CLIENT_999 |
Definición | error técnico |
Categoría | Errores |
Error desconocido, póngase en contacto con el soporte técnico indicando la siguiente información:
- Número de tienda,
- URL del formulario,
- Nombre y versión del navegador,
- Tipo y versión del sistema operativo,
- Dispositivo utilizado (iPhone 6S, PC, iPad Pro ...)
- Fecha y hora del error.