Transacción

Permite procesar transacciones con token o sin token con la posibilidad de tokenizar.

Parámetros en formato JSON en el cuerpo de la petición POST.

Parámetros
Request (sin tokenizar)
Request (tokenizando)
Request (con token)
Request (validaciones adicionales)
Response (ejemplo)
Campo
Requerido
Tipo
Descripción
merchantId
si
Alfanumérico
Nombre identificador del comercio.
order
si
Alfanumérico
Identificación de la orden generada por el comercio. Es el número asignado por el comercio, no el número asignado por Payvalida.
checksum
si
Alfanumérico
Checksum formado de la siguiente manera: SHA512(merchantId + order + fixed_hash)
valor
si
numérico
Valor del pago a realizar. Debe corresponder con el registrado en la orden al momento de su creación.
cvv
si
numérico
Código de seguridad de la tarjeta de crédito. Este parámetro debe enviarse la primera vez que se hace una transacción con la tarjeta de crédito, y es opcional enviarlo las veces posteriores para la franquicia Mastercard. Si se recibe el parámetro, se usará; en caso contrario se hará la transacción como recurrente.
fechaExpiracion
si
Alfanumérico
Fecha de expiración de la tarjeta de crédito en formato MM/AA. Este parámetro es requerido si la transacción no es mediante token; e ignorado si la transacción se hace con un token, en cuyo caso se usará la información almacenada correspondiente a la tarjeta del token.
cuotas
si
numérico
Cantidad de cuotas en las que se realizará el pago. Este campo debe ser mayor o igual a 1.
tipoDI
si
Alfabético
Tipo de documento de identificación de la persona que realiza la transacción.
di
si
Alfanumérico
Número de documento de identificación de la persona que realiza la transacción.
token
no
Alfanumérico
Token de una tarjeta de crédito. Usado cuando se quiere hacer uso de una tarjeta de crédito previamente tokenizada (parámetro «tokenizar» de este mismo servicio).
numeroTarjeta
no
Alfanumérico
Número de la tarjeta de crédito. Este parámetro es requerido si la transacción no es mediante token; e ignorado si la transacción se hace con un token, en cuyo caso se usará la información almacenada correspondiente a la tarjeta del token.
nombreTitular
no
Alfanumérico
Nombre del titular de la tarjeta de crédito, sin apellidos. Este parámetro es requerido si la transacción no es mediante token; e ignorado si la transacción se hace con un token, en cuyo caso se usará la información almacenada correspondiente a la tarjeta del token.
apellidosTitular
no
Alfanumérico
Apellidos del titular de la tarjeta de crédito. Este parámetro es requerido si la transacción no es mediante token; e ignorado si la transacción se hace con un token, en cuyo caso se usará la información almacenada correspondiente a la tarjeta del token.
franquicia
no
Alfabético
Define la franquicia de la tarjeta de crédito. Si se omite este campo y la transacción no es con token, se infiere la franquicia del número de la TC. Este campo es ignorado si la transacción se hace con un token, en cuyo caso se usará la información almacenada correspondiente a la tarjeta del token.
tokenizar
no
boolean
Indica si se quiere tokenizar la tarjeta de crédito. Este parámetro es ignorado si la transacción se hace con un token.
correo
no(solo para validaciones adicionales)
Alfanumérico
Dirección de correo electrónico de la persona que realiza la transacción.
telefono
no(solo para validaciones adicionales)
Alfanumérico
Número telefónico de la persona que realiza la transacción.
ip
si
Alfanumérico
Dirección IP del dispositivo origen de la transacción, del usuario final.
line1
no (solo para validaciones adicionales)
Alfanumérico
Linea 1 asociada a la dirección de facturación del usuario.
line2
no (solo para validaciones adicionales)
Alfanumérico
Linea 2 asociada a la dirección de facturación del usuario.
line3
no (solo para validaciones adicionales)
Alfanumérico
Linea 3 asociada a la dirección de facturación del usuario.
country
no (solo para validaciones adicionales)
Alfanumérico
Pais del usuario.
city
no (solo para validaciones adicionales)
Alfanumérico
Ciudad del usuario.
state
no (solo para validaciones adicionales)
Alfanumérico
Estado o departamento del usuario
postCode
no (solo para validaciones adicionales)
Alfanumérico
Código postal de usuario.
// Transacción con tarjeta de crédito. No se tokenizará.
{
"merchantId": "mi_comercio",
"order": "1234567890",
"checksum": "90037d4ae7d310c1c4c50ce630c54af850587533a900099cde381ac68aa8af1cc959b9820e77a48fb403c460a8630729bc37e2a9d47be9e3e846982fa7c56de0",
"valor": 70500,
"cuotas": 1,
"tipoDI": "CC",
"di": "1234567890",
"cvv": 123,
"numeroTarjeta": "53123456789083",
"fechaExpiracion": "12/21",
"nombreTitular": "Juan",
"apellidosTitular": "Pérez",
"correo": "[email protected]",
"ip": "1.1.1.1"
}
// Transacción con tarjeta de crédito. Se tokenizará.
{
"merchantId": "mi_comercio",
"order": "1234567890",
"checksum": "90037d4ae7d310c1c4c50ce630c54af850587533a900099cde381ac68aa8af1cc959b9820e77a48fb403c460a8630729bc37e2a9d47be9e3e846982fa7c56de0",
"valor": 70500,
"cuotas": 1,
"tipoDI": "CC",
"di": "1234567890",
"cvv": 123,
"numeroTarjeta": "53123456789083",
"fechaExpiracion": "12/21",
"nombreTitular": "Juan",
"apellidosTitular": "Pérez",
"correo": "[email protected]",
"tokenizar": true,
"ip": "1.1.1.1"
}
// Transacción con token. El token fue originado de una transacción con TC previamente tokenizada.
{
"merchantId": "mi_comercio",
"order": "1234567890",
"checksum": "90037d4ae7d310c1c4c50ce630c54af850587533a900099cde381ac68aa8af1cc959b9820e77a48fb403c460a8630729bc37e2a9d47be9e3e846982fa7c56de0",
"valor": 70500,
"cuotas": 1,
"tipoDI": "CC",
"di": "1234567890",
"cvv": 123, // Requerido para franquicias diferentes a Mastercard
"token": "12345678901234",
"correo": "[email protected]",
"ip": "1.1.1.1"
}
/*
Transacción con validaciones adicionales. Tener en cuenta si
se desea tokenizar o no, enviando el campo tokenizar.
*/
{
"merchantId": "mi_comercio",
"order": "1234567890",
"checksum": "90037d4ae7d310c1c4c50ce630c54af850587533a900099cde381ac68aa8af1cc959b9820e77a48fb403c460a8630729bc37e2a9d47be9e3e846982fa7c56de0",
"valor": 70500,
"cuotas": 1,
"tipoDI": "CC",
"di": "1234567890",
"cvv": 123,
"numeroTarjeta": "53123456789083",
"fechaExpiracion": "12/21",
"nombreTitular": "Juan",
"apellidosTitular": "Pérez",
"correo":"[email protected]",
"telefono":"3002222222",
"line1":"cll 65 # 28-97",
"line2":"Apto segundo piso",
"line3": "Bogota",
"country": "Colombia",
"city": "Bogota",
"state":"Cundinamarca",
"postCode": "050001",
"ip":"1.1.1.1"
}
{
"result": "200",
"data": {
"token": "5388846254108783",
"order": {
"amount": "44000.00",
"date": "2023-04-30",
"tax": "0",
"total": "44000.00",
"number": "2405537"
},
"transaction": {
"date": "2023-05-02",
"responseCode": "APROBADA",
"installments": "1",
"accountType": "CREDITO",
"cus": "2023-05-02_112233",
"invoiceNumber": "112233",
"franchise": "MasterCard",
"response": "Aprobado",
"cardNumber": "************8783",
"numAprobacion": "112233",
"idTransaccionAutorizador": "332211"
},
"commerce": {
"url": "https://www.payvalida.com",
"terminal": "abcdef",
"name": "VALIDDA S.A.S",
"code": "73",
"email": "[email protected]",
"net": "REDEBAN"
},
"user": {}
},
"error": ""
}
Advertencia: El contenido del parámetro token tiene prioridad sobre el resto de parámetros referentes a datos de tarjeta de crédito; en caso que se envíe una transacción con token, los parámetros no asociados a token (franquicia, número de tarjeta, nombre del titular, apellido del titular) serán ignorados.
El código result == 200 indica que la transacción fue enviada al procesador del banco, pero no necesariamente indica que fue aprobada. Para verificar la correcta transacción se debe verificar el campo data.transaction.responseCode == "APROBADA" (ver ejemplo de Response arriba). En caso de que se tokenice, el token se obtiene de data.token (ver ejemplo de Response arriba). En caso de error recibirá la descripción del error en el campo error.
Última actualización 3mo ago