Parámetros de URL de Redirect
Last updated
Last updated
Además de poder saber el resultado de una transacción por medio de los Webhook, también es posible saberlo por medio de la URL de Redirect.
La URL de Redirect es donde el pagador se redirecciona después de hacer un pago, la URL de redirect se puede especificar tanto al crear un enlace de pago como al iniciar una transacción de compra por medio de API.
Aunque se puede saber el resultado de una transacción por medio de la URL de redirect se recomienda usar siempre los Webhook en conjunto con la URL de Redirect, debido a que la entrega de la URL de Redirect depende del navegador del pagador, y el flujo podría fallar por problemas con internet, problemas con el explorador, etc.
Ya que los Webhook se entregan de servidor a servidor y se tiene una lógica de reintentos de entrega es mucho más confiable que la URL de Redirect
Un ejemplo de uso de la URL de Redirect es la página donde el usuario se redirecciona después de hacer el pago, en la que se confirma su pago y se muestra el detalle de su compra.
A continuación se detallan los parámetros que se agregan a la URL de Redirect. Estos parámetros pueden utilizarse para determinar si la transacción fue exitosa o fallida.
Es importante notar que los parámetros varían si la transacción viene de un enlace de pago o de una transacción por API.
Parametro | Tipo Dato | Aplica para | Descripción |
---|---|---|---|
Es posible invocar el end point del API "/TransaccionCompra/{id}" con el valor del paramero idTransaccion en el "id" de la url del end point del API.
Del objeto retornado por el API validar:
esReal sea "true"
esAprobada sea "true"
Opcionalmente que la propiedad "monto" coincida con lo que se deseaba cobrar
Para la definición completa del API referirse al Swagger. Para entender como autenticarse en el API referirse a la sección de autenticación.
En el caso de las URL Redirect de API basta con usar los parámetros de redirect para saber si la transacción es exitosa, esto es posible ya que los tres parámetros vienen en la URL:
esReal sea "true"
esAprobada sea "true"
Opcionalmente que la propiedad "monto: coincida con lo que se deseaba cobrar
Importante: Si se usa solo los parámetros de la URL de Redirect, sin consultar el API, para ver si la transacción es exitosa; es indispensable validar que el HASH este correcto. Si esto no se hace es posible que el usuario pagador modifique los parámetros en transito. Por ejemplo , el parámetro "esAprobada" cambiarse de "false" a "true", generando un falso positivo.
Para ver como generar el hash y validarlo referirse a "Validar Parámetros de URL Redirect"
idTransaccion
Cadena de 36 caracteres
Enlace de Pago
API
Es el identificador único de la tracción
monto
Decimal
Enlace de Pago
API
En formato #####.## (sin separador de miles y con punto para separar los decimales)
esReal
bool
API
Viene el texto "true" cuando la transacción es real.
Viene el texto "false" si es una transacción en un ambiente de prueba, es decir que el aplicativo asociado no es productivo y que no se hizo un cobro real.
codigoAutorizacion
Cadena de caracteres
API
El código de autorización de la transacción. No debería tener más de 10 caracteres.
mensaje
Cadena de Caracteres
API
Es de utilidad cuando la transacción fallo ya que allí se explica la razon del fallo, como máximo tendrá 50 caracteres.
formaPago
enum
API
Pude ser uno de los siguiente valores: * PagoNormal * Puntos * Cuotas * Bitcoin
esAprobada
bool
API
"true" si la transacción es exitosa. "false" si es fallida
identificadorEnlaceComercio
cadena
Enlace Pago
Es la cadena de caracteres que se envió en el parámetro "identificadorEnlaceComercio" al crear el enlace de pago
idEnlace
entero
Enlace Pago
El identificador único del enlace de pago generado internamente por Wompi
hash
cadena caracteres
Enlace pago
API
Hash HMAC para validar que ninguno de los parámetros haya sido modificado en transito.