Saltar al contenido principal

Pagos en efectivo

Introducción

Este documento proporciona las especificaciones para implementar la notificación de pagos en efectivo a través del API de Luka. Este servicio consta de dos partes: la primera es la consulta de la deuda del cliente, la cual nos permite conocer el monto a pagar y el segundo paso que consiste en procesar el pago.

La URL está especificada en Ambientes.

La autenticación se realiza a través de un token (JWT) que retorna el método de login con las credenciales proporcionadas por Lukapay. Ver documentación.

Consultar una transacción

Permite consultar la información de un pago que está pendiente por confirmación.

Se puede consultar la transacción a través de la referencia de pago enviada por el comercio al momento de registrar el pago. En caso de que el comercio no envíe una referencia, se puede consultar la transacción con el número de la transacción que devuelve Luka o por el código de autorización que devuelve el método de pago.

Las especificaciones del método son las siguientes:

Solicitud

GET {URL}/api/v1/transaccion/pagodiferido

Cabeceras

Content-Type: application/json
Authorization: Bearer <token>

Parámetros

Los siguientes parámetros se envían a través del querystring del a consulta

NombreTipoDescripción
referenciaPagoStringIdentificador interno del comercio que se asocia a la transacción.
transaccionIdNúmeroIdentificador de la transacción en Luka
codigoAutorizacionStringIdentificador de la transacción que devuelve el merchant utilizado para aplicar el pago

Respuesta

NombreDescripciónTipo
CanalIndica el canal que se está utilizando para aplicar el pago en LukapayNumber
CargosAdicionalesObjeto que contiene cargos adicionales.Object
CuotasObjeto que contiene información sobre cuotas.Object
DescripciónContiene la respuesta de la aplicación del pago, como estatus de la transacción y cualquier información adicionalString
ExitosoIndica si la transacción fue exitosa o no. Se utiliza para validar la respuestaBoolean
FechaOperacionFecha que ocurrió la transacciónString
InfoProcesoObjeto que contiene información más detallada del estatus de la transacciónObject
InfoTarjetaObjeto que contiene información de la tarjeta de crédito utilizada para realizar el pago. Solo aplica para pagos con tarjetaObject
InfoUsuarioPagadorObjeto que devuelve información básica del usuario que realiza el pagoObject
MedioDePagoIndica el método de pago que se utilizóString
MerchantIdReferencia de la transacción del merchant utilizado para aplicar el pagoString
MonedaCódigo de la moneda utilizada para realizar el pagoString
MontoIndica el monto del pago realizadoNumber
MontoOriginalObjeto con información del monto original. Se utiliza cuando se debe aplicar una conversión de monedaObject
MontoUsdValor del monto en dólar estadounidense. Se utiliza cuando se especifica el MontoOriginalNumber
TarjetaHabienteObjeto que contiene información del pagador (en caso de haber sido especificado)Object
TransaccionIdReferencia de la transacción en LukapayNumber
TransaccionMerchantIdReferencia de la transacción del merchant utilizado para aplicar el pagoNumber
TrazaIdIdentificador interno del comercio. En caso de que el comercio no lo proporcione se genera un código aleatorio.String

Los atributos de los objetos están especificados en Respuesta de transacción.

Ejemplo de uso

Solicitud

GET {URL}api/v1/transaccion/pagodiferido?referenciaPago=6567704'

Cuerpo de la respuesta

{
"Monto": 7.99,
"MontoUsd": 0.00,
"InfoProceso": {
"EstatusProcesamiento": "pending",
"CodigoRespuestaCvv": null
},
"InfoUsuarioPagador": {
"Nombre": "Jhon",
"Apellido": "Doe",
"NumeroIdentidad": null,
"NumeroTelefono": null,
"Email": "example@mail.com"
},
"Moneda": "USD",
"TransaccionId": 96336,
"TransaccionMerchantId": 0,
"Descripcion": "transacción en revisión",
"TrazaId": "e6c28df3ae4f",
"Exitoso": true,
"Canal": "Api",
"MedioDePago": "Efectivo",
"MontoOriginal": null,
"MerchantId": "024PeR42",
"FechaOperacion": "2023-09-29 19:25:11.767791+00:00",
"CargosAdicionales": null,
"Cuotas": null
}

Notificar pago

Permite actualizar el estado de una transacción luego de haber recibido el pago correspondiente.

Solicitud

PUT {URL}/api/v1/transaccion/pagodiferido/actualizar

Cabeceras

Content-Type: application/json
Authorization: Bearer <token>

Cuerpo de la solicitud

NombreTipoDescripciónObligatorio
IdTxNúmeroIdentificador de la transacción. Este valor se obtiene del campo TransaccionId que devuelve la consulta de la transacción.
IdEstatusNúmeroIdentificador del estado del pago. Valores posibles: 6 = Aprobado, 7 = Rechazado
ObservacionesStringPermite agregar un comentario relacionado con el pago.No
TerminalStringInformación sobre la agencia o taquilla donde se recibe el pago.No
CodigoAutorizacionStringCódigo de autorización de la transacción.No

Respuesta

NombreTipoDescripción
MontoDecimalMonto de la transacción.
IdIntegerIdentificador de la transacción. Este valor se obtiene del campo TransaccionId que devuelve la consulta de la transacción.
IdTrazaStringValor que identifica la transacción en el sistema del cliente.
CodigoAutorizacionStringReferencia de la transacción que devuelve el merchant utilizado para aplicar el pago.
EstatusObjetoIdentificador del estado del pago. Valores posibles: 6 = Aprobado, 7 = Rechazado
FechaCreacionStringFecha de la transacción.

Ejemplos de uso

Cuerpo de la solicitud

{
"Idtx": 123456,
"IdEstatus": 6,
"Observaciones": “”,
“Terminal”: “Agencia CCCT, Taquilla 2”,
“CodigoAutorizacion”: “12345”
}

Cuerpo de la respuesta

{
"Monto": 16.03,
"Id": 8357,
"IdTraza": "1234567890",
"CodigoAutorizacion": "kjfkgds874k",
"Estatus": {
"Id": 6,
"Descripcion": "Tx Exitosa"
},
"FechaCreacion": "2022-02-23T18:27:47.1959116Z"
}