Manejo de errores
Presentación
Los errores del SDK móvil se devuelven a través del objeto LyraException
que tiene los siguientes parámetros:
Características | Descripción |
---|---|
errorCode | Permite identificar el error actual (en formato [PREFIXE]_[CODE]). |
errorMessage | Explicita el error que corresponde al código. |
detailedErrorCode | Código del error subyacente que causa la excepción (o null). |
detailedErrorMessage | Mensaje del error subyacente (o null). |
Le champ detailedError
indique la cause précise de l'erreur.
Tipos de errores
Es necesario diferenciar los errores que ocurren durante la desactivación de los que pueden ocurrir durante la ejecución del SDK.
Errores de desarrollo
Dans ce cas, le SDK lance une exception de type LyraException, qui doit être capturée par le développeur.
Cela peut se produire dans les cas suivants :
Après l'appel à la méthode initialize() :
Si le format du paramètre publicKey est incorrect, une exception
MOBP_001-INVALID_KEY
sera levée.Si le format du paramètre apiServerName est incorrect, une exception
MOBP_012-UNKNOWN_API_SERVER_NAME
sera levée.
Après l'appel à la méthode process() :
- Si el SDK no se inicializa primero, se produce una excepción
MOBP-002-INITIALIZATION_REQUIRED
será levantado.
Errores de tiempo de ejecución
Para otros errores, la información se pasará en el objeto LyraException a través de la función de devolución de llamada onError() , como se describe en la guía de integración.
Códigos de error
Un código de error tiene el formato [PREFIJO]_[CÓDIGO]:
[PREFIJO] | define la capa de aplicación donde se ha producido el error |
[CODIGO] | es el código numérico del error. |
Existen distintos prefijos:
PREFIJO | Descripción | EJEMPLO DE ERROR |
---|---|---|
MOB | Error del SDK móvil | MOB_004 |
ACQ | Error del adquirente | ACQ_001 |
AUTH | Error de autentificación | AUTH_149 |
INT | Error de integración (del vendedor) | INT_007 |
PSP | Error por parte del medio de pago | PSP_001 |
Errores ACQ, AUTH, INT y PSP
Estos códigos de error se refieren a las comunicaciones con los servidores de pago (hacia la plataforma de pago, su servidor comercial, etc.). Consulte Códigos de error para obtener detalles sobre este tipo de error.
Recomendación de control de errores
Cualquiera que sea el caso de error, te recomendamos:
- mostrar siempre un mensaje para informar al usuario que el pago no se ha realizado.
- para rastrear claramente el
errorCode
, eldetailedErrorCode
et leurs messages associés afin de pouvoir analyser les incidents que vous pouvez rencontrer et les résoudre de manière autonome. En cas d'erreur, vous ne devez JAMAIS considérer que le paiement a été effectué.
Errores de MOB
Estos errores ocurren si ocurre un error en el lado del SDK móvil.
CÓDIGO DE ERROR | Definición |
---|---|
MOB_001 | Invalid public key |
MOB_002 | SDK initialization is required before calling process |
MOB_003 | Invalid formToken |
MOB_004 | Invalid formToken version |
MOB_005 | Impossible to communicate with server |
MOB_006 | Network is not available |
MOB_007 | Invalid response of Lyra Rest API |
MOB_008 | Payment refused |
MOB_009 | Payment cancelled |
MOB_010 | Server timeout error, check IPN |
MOB_011 | Unknown API Server Name |
MOB_012 | Unknown Order Status |
MOB_013 | Payment cannot be cancelled |
MOB_014 | Payment by Apple Pay not available |
MOB_999 | Unexpected error |
Detalle de los códigos de error
MOB_001
Código | MOB_001 |
DEFINICIÓN | Invalid public key |
La clave pública proporcionada al inicializar el SDK es incorrecta. Es posible que esté intentando realizar una transacción de prueba con una clave de producción o viceversa. Ver: Requisitos previos
MOB_002
Código | MOB_002 |
DEFINICIÓN | SDK initialization is required before calling process |
Vous tentez d'appeler la méthode process
avant d'avoir appelé la méthode init
. Voir : Guide d'intégration Android et Guide d'integration iOS sur l'initialisation du SDK.
MOB_003
Código | MOB_003 |
DEFINICIÓN | Invalid formToken |
El ID del formulario parece ser incorrecto. Asegúrese de haber seguido las instrucciones proporcionadas en las guías de integración. Si es probable que nada cause un error, comuníquese con el soporte técnico.
MOB_004
Código | MOB_004 |
DEFINICIÓN | Invalid formToken version |
La versión de identificación del formulario no es correcta. Para asegurarse de tener la versión correcta, llame al método getFormTokenVersion
del SDK y pase los resultados al parámetro formTokenVersion
del SDK. createPayment
.
MOB_005
Código | MOB_005 |
DEFINICIÓN | Impossible to communicate with server |
Póngase en contacto con el soporte técnico.
MOB_006
Código | MOB_006 |
DEFINICIÓN | Network is not available |
El dispositivo no parece estar conectado a Internet. Envíe un mensaje al usuario para asegurarse de que haya iniciado sesión.
MOB_007
Código | MOB_007 |
DEFINICIÓN | Invalid response of Lyra Rest API |
Póngase en contacto con el soporte técnico.
MOB_008
Código | MOB_008 |
DEFINICIÓN | Payment refused |
Se alcanza el número de intentos adicionales y se rechaza el pago.
MOB_009
Código | MOB_009 |
DEFINICIÓN | Payment cancelled |
El pago fue cancelado voluntariamente. El comprador ha abandonado voluntariamente la pantalla de pago o se ha llamado al Lyra.cancelProcess()
.
MOB_010
Código | MOB_010 |
DEFINICIÓN | Server timeout error, check IPN |
El servidor de pago no respondió en 60 segundos. Esto puede deberse simplemente a una desaceleración temporal, por lo que se recomienda verificar retrospectivamente la notificación IPN y cancelar la transacción para mantener la coherencia.
MOB_011
Código | MOB_011 |
DEFINICIÓN | Unknown API Server Name |
El valor enviado en el campo apiServerName
no se reconoce, probablemente debido a un error tipográfico.
MOB_012
Código | MOB_012 |
DEFINICIÓN | Unknown Order Status |
Este error aparece si la plataforma de pago devuelve un estado de pago distinto de EN EJECUCIÓN, PAGADO, PARCIALMENTE_PAGADO o NO PAGADO.
MOB_013
Código | MOB_013 |
DEFINICIÓN | Payment cannot be cancelled |
El pago no se puede cancelar después de una llamada a Lyra.cancelProcess()
.
MOB_014
Código | MOB_014 |
DEFINICIÓN | Payment by Apple Pay not available |
Este error aparece después de llamar a Lyra.cancelProcess()
con la opción [LyraPaymentOptions.paidMethodType: LyraPaymentMethods.applePay]
y el pago a través de Apple Pay no está disponible.
MOB_999
Código | MOB_999 |
DEFINICIÓN | Unexpected error |
Se ha producido un error inesperado. Contacte a la asistencia.
Lorsque vous contactezl'assistance technique, communiquez :
- Su número de tienda de 8 dígitos
- OS y versión del SDK
- Dispositivo utilizado (iPhone 6S, computadora personal, iPad Pro, etc.)
- Versión del OS
- Fecha y hora del error.
- el
errorCode
YdetailedErrorCode
que encontrarás si este es el caso
Esta información facilita el análisis y la comprensión de su problema.