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). |
El campo detailedError
indica la causa precisa del error.
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
En este caso, el SDK lanza una excepción de tipoExcepción de Lyra , que debe ser capturado por el desarrollador.
Esto puede suceder en los siguientes casos:
Después de llamar al métodoinicializar() :
Si el formato del parámetroclave pública es incorrecto, una excepción
MOBP_001-INVALID_KEY
se levantará.Si el formato del parámetronombreDeServidorAPI es incorrecto, una excepción
MOBP_012-UNKNOWN_API_SERVER_NAME
se levantará.
Después de llamar al métodoproceso() :
- Si el SDK no se inicializa de antemano, se generará una excepción.
MOBP-002-INITIALIZATION_REQUIRED
se levantará.
Errores de tiempo de ejecución
En caso de otros errores, la información se transmite al objeto.Excepción de Lyra en la función de devolución de llamadaonError() , 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
y sus mensajes asociados para que pueda analizar cualquier incidencia que pueda encontrar y resolverla de forma independiente. En caso de error, NUNCA dé por hecho que el pago se ha realizado.
Errores de MOB
Estos errores ocurren si ocurre un error en el lado del SDK móvil.
CÓDIGO DE ERROR | Definición |
---|---|
Invalid public key | |
SDK initialization is required before calling process | |
Invalid formToken | |
Invalid formToken version | |
Impossible to communicate with server | |
Network is not available | |
Invalid response of Lyra Rest API | |
Payment refused | |
Payment cancelled | |
Server timeout error, check IPN | |
Unknown API Server Name | |
Unknown Order Status | |
Payment cannot be cancelled | |
Payment by Apple Pay not available | |
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 |
Intentas llamar al método process
antes de llamar al método init
. Consulta las Guías de integración de Android y iOS sobre la inicialización del 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.
Al contactar con el soporte técnico, comuníquese:
- 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.