Errores comunes de integración
Esta página ofrece soluciones para los problemas más habituales al integrar tu aplicación con la Getnet Payment App mediante deeplinks.
Problemas de software y de Intent
Errores comunes relacionados con la comunicación por Intent y la conectividad entre apps.
El Intent no se resuelve
Este error ocurre al llamar a startActivityForResult: tu aplicación se cierra de forma inesperada o no pasa nada. La causa más común es que la Getnet Payment App no esté instalada en el terminal. También puede que el esquema del URI sea incorrecto.
Solución
- Verifica que el paquete
com.getnet.payment(o su equivalente) esté instalado en el terminal - Asegúrate de usar el URI base correcto:
getnet://payment/v1/ - Agrega una comprobación con
intent.resolveActivity(packageManager)antes de lanzar el Intent
Código de resultado “4” (estado desconocido)
Este error ocurre cuando la app devuelve result="4", lo que indica un estado de transacción desconocido. Suele darse cuando se produce una falla crítica, como un cierre inesperado o un corte de energía. La falla ocurre después de que la transacción llega al procesador, pero antes de que se genere una respuesta.
Solución
Llama primero al deeplink getnet://payment/v1/last-transaction (Get Last Voucher), antes de llamar a los reportes, para verificar si el pago realmente se aprobó.
Tiempos de espera
Errores comunes relacionados con tiempos de espera y sus soluciones.
Tiempo de espera del QR Code
Este error ocurre cuando la transacción se cancela de forma automática durante un pago con QR Code. La visualización del QR Code tiene un límite de 180 segundos, y la fase de autorización tiene un límite de 60 segundos.
Solución
Indica al usuario que escanee el código de inmediato. Si se alcanza el tiempo de espera, debes iniciar un nuevo Intent de pago.
Tiempo de espera general de la transacción
Este error ocurre cuando la Payment App devuelve un error de tiempo de espera del host. Suele deberse a que el adquirente no responde en un plazo de 15 a 30 segundos.
Solución
Verifica la conexión a internet del terminal. Si el error persiste, ejecuta una verificación de conectividad para confirmar la disponibilidad del servicio.
Siguientes pasos
- Códigos de resultado y estructuras de datos - asigna un código devuelto a su significado.
- Consulta el estado de una transacción - resuelve un estado desconocido antes de reintentar.