0% encontró este documento útil (0 votos)
7 vistas57 páginas

API de Pagos PayU en Colombia

Cargado por

trevprbelmont
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
7 vistas57 páginas

API de Pagos PayU en Colombia

Cargado por

trevprbelmont
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

API de Pagos - Colombia

La API de Pagos para Colombia permite integrar de manera eficiente las


capacidades de procesamiento de pagos de PayU con tu plataforma de
compras en línea. A través de esta API, los comercios pueden ofrecer a sus
clientes una amplia variedad de métodos de pago, incluyendo tarjetas de
crédito, tarjetas de débito, billeteras digitales, efectivo y transferencias
bancarias.
Esta guía muestra cómo aprovechar estos servicios para mejorar la experiencia
de pago de tus clientes proporcionando opciones de pago flexibles y seguras
adaptadas al mercado local.

Nota

Para integrar la API de Pagos, dirige tus solicitudes a las siguientes URL según
el entorno correspondiente:

 Pruebas: [Link]
 Producción: [Link]

Métodos Disponibles
La API de Pagos incluye los siguiente métodos:

 Enviar Transacciones Utilizando Tarjetas de Crédito o Débito


 Enviar Transacciones Utilizando Nequi
 Enviar Transacciones Utilizando Efectivo o Referencia Bancaria
 Enviar Transacciones Utilizando Transferencia Bancaria (PSE)
 Enviar Transacciones Utilizando Google Pay
 Procesar Pagos como Aerolínea o Agencia de Viajes
 Lista de Bancos - PSE
 Consultar Métodos de Pago Disponibles
 Ping

Nota

Para confirmar el estado de una transacción, puedes utilizar una de las


siguientes opciones:

 Navega a la URL configurada en la variable [Link] o la


opción URL de confirmación ubicada en el Módulo PayU
en Configuración > Configuración técnica.
 Utiliza la API o SDK de Consultas.

Enviar Transacciones Utilizando Tarjetas de


Crédito o Débito
Este método te permite procesar los pagos que realizan tus clientes utilizando
tarjetas de crédito o débito. Para Colombia, puedes realizar los flujos de un
paso (Cobro). Para más información, consulta los flujos de pago.

Nota

El flujo de dos pasos está disponible únicamente bajo solicitud, contacta a tu


representante de ventas.

Parámetros para la Solicitud y la Respuesta

Solicitud

Respuesta
Consideraciones

 Para pagos con tókenes de tarjeta, incluya los


parámetros [Link] y [Link]
Code (Si procesas con código de seguridad) reemplazando la información
de la tarjeta de crédito. Para más información, consulta el API de
Tokenización.
 Por defecto, el procesamiento de tarjetas de crédito sin código de
seguridad no está activo. Si lo quieres activar, contacta a tu
representante de ventas. Luego de que esté activado, envía en la
petición la variable creditCard.processWithoutCvv2 con valor true y elimina
la variable [Link].
 La variable [Link] no reemplaza la información de
la tarjeta o ninguno de los campos obligatorios de la transacción. Este
objeto es adicional y no es obligatorio.
 La variable [Link] corresponde a un
escenario passthrough donde el comercio realiza la autenticación por su
cuenta.
 Para la tarjeta Crédito Fácil Codensa, el número de cuotas soportadas es
1 a 12, 18, 24, 36 y 48.
 Para la tarjeta Crédito Fácil Codensa, el pagador puede escoger uno de
los siguientes tipos de documento en la
variable [Link]:

ISO Descripción
CC Cédula de ciudadanía.
CE Cédula de extranjería.
NIT Número de Identificación Tributaria (Empresas).
TI Tarjeta de identidad.
PP Pasaporte.
IDC Identificador único de cliente, para el caso de ID’s únicos de clientes/usuarios de servicios
CEL En caso de identificarse a través de la línea del móvil.
RC Registro civil de nacimiento.
DE Documento de identificación extranjero.

Llamado a la API
Los siguientes son los cuerpos de la petición y la respuesta para este método
de pago.

JSON XML

Ejemplo de una Solicitud:

{
"language": "es",
"command": "SUBMIT_TRANSACTION",
"merchant": {
"apiKey": "4Vj8eK4rloUd272L48hsrarnUA",
"apiLogin": "pRRXKOl8ikMmt9u"
},
"transaction": {
"order": {
"accountId": "512321",
"referenceCode": "PRODUCT_TEST_2021-06-23T19:59:43.229Z",
"description": "Payment test description",
"language": "es",
"signature": "1d6c33aed575c4974ad5c0be7c6a1c87",
"notifyUrl": "[Link]
"additionalValues": {
"TX_VALUE": {
"value": 65000,
"currency": "COP"
},
"TX_TAX": {
"value": 10378,
"currency": "COP"
},
"TX_TAX_RETURN_BASE": {
"value": 54622,
"currency": "COP"
}
},
"buyer": {
"merchantBuyerId": "1",
"fullName": "First name and second buyer name",
"emailAddress": "buyer_test@[Link]",
"contactPhone": "7563126",
"dniNumber": "123456789",
"shippingAddress": {
"street1": "Cr 23 No. 53-50",
"street2": "5555487",
"city": "Bogotá",
"state": "Bogotá D.C.",
"country": "CO",
"postalCode": "000000",
"phone": "7563126"
}
},
"shippingAddress": {
"street1": "Cr 23 No. 53-50",
"street2": "5555487",
"city": "Bogotá",
"state": "Bogotá D.C.",
"country": "CO",
"postalCode": "0000000",
"phone": "7563126"
}
},
"payer": {
"merchantPayerId": "1",
"fullName": "First name and second payer name",
"emailAddress": "payer_test@[Link]",
"contactPhone": "7563126",
"dniNumber": "5415668464654",
"billingAddress": {
"street1": "Cr 23 No. 53-50",
"street2": "125544",
"city": "Bogotá",
"state": "Bogotá D.C.",
"country": "CO",
"postalCode": "000000",
"phone": "7563126"
}
},
"creditCard": {
"number": "4037997623271984",
"securityCode": "321",
"expirationDate": "2030/12",
"name": "APPROVED"
},
"extraParameters": {
"INSTALLMENTS_NUMBER": 1
},
"type": "AUTHORIZATION_AND_CAPTURE",
"paymentMethod": "VISA",
"paymentCountry": "CO",
"deviceSessionId": "vghs6tvkcle931686k1900o6e1",
"ipAddress": "[Link]",
"cookie": "pt1t38347bs6jc9ruv2ecpv7o2",
"userAgent": "Mozilla/5.0 (Windows NT 5.1; rv:18.0) Gecko/20100101
Firefox/18.0",
"threeDomainSecure": {
"embedded": false,
"eci": "01",
"cavv": "AOvG5rV058/iAAWhssPUAAADFA==",
"xid": "Nmp3VFdWMlEwZ05pWGN3SGo4TDA=",
"directoryServerTransactionId": "00000-70000b-5cc9-0000-000000000cb"
}
},
"test": true
}

Ejemplo de una Respuesta:

{
"code": "SUCCESS",
"error": null,
"transactionResponse": {
"orderId": 1400449660,
"transactionId": "aa2f50b2-62a8-42de-b3be-c6fe08ec712f",
"state": "APPROVED",
"paymentNetworkResponseCode": "81",
"paymentNetworkResponseErrorMessage": null,
"trazabilityCode": "CRED - 666039677",
"authorizationCode": "123238",
"pendingReason": null,
"responseCode": "APPROVED",
"errorCode": null,
"responseMessage": "Approved by the merchant",
"transactionDate": null,
"transactionTime": null,
"operationDate": 1624461913704,
"referenceQuestionnaire": null,
"extraParameters": {
"BANK_REFERENCED_CODE": "CREDIT"
},
"additionalInfo": {
"paymentNetwork": "CREDIBANCO",
"rejectionType": "NONE",
"responseNetworkMessage": null,
"travelAgencyAuthorizationCode": null,
"cardType": "CREDIT",
"transactionType": "AUTHORIZATION_AND_CAPTURE"
}
}
}

Enviar Transacciones Utilizando Nequi


Nequi es una plataforma integral de servicios financieros que funciona por
medio de una billetera digital disponible para millones de usuarios a través de
una aplicación móvil. Con Nequi, puedes realizar pagos, transferencias,
recargas y retiros de dinero de manera rápida y segura, todo desde tu
dispositivo personal.

Además de ser una herramienta conveniente para usuarios individuales, Nequi


también es una solución de pagos innovadora para comercios. Al aceptar
pagos con Nequi, tu negocio puede disfrutar de una serie de ventajas
significativas:

 Aumento de las ventas: Al ofrecer Nequi como opción de pago, tu


negocio puede atraer a nuevos clientes que prefieren realizar
transacciones digitales. Esto puede traducirse en un aumento de las
ventas y una mayor fidelización de clientes.
 Mayor conveniencia: Al permitir que tus clientes paguen con Nequi,
estás proporcionando una experiencia de compra más versátil y rápida.
Los clientes pueden realizar sus pagos de forma instantánea utilizando
sus teléfonos móviles, sin necesidad de efectivo o tarjetas físicas.
 Mayor seguridad: Nequi ofrece un entorno de pago seguro y confiable,
respaldado por Bancolombia, una de las instituciones financieras más
grandes y confiables de Colombia. Esto brinda tranquilidad tanto a los
comercios como a los clientes, ya que las transacciones se realizan de
manera segura y protegida.

Proceso de Pago con Nequi

El flujo de pago con Nequi está diseñado para ser sencillo y ágil para el usuario.
El proceso incluye 4 pasos:

1. Selección del medio de pago: El cliente, al momento de efectuar la


compra, elige Nequi como su medio de pago preferido entre las opciones
disponibles.
2. Generación de notificación push: Automáticamente, el sistema
genera una notificación push que se envía a la aplicación móvil de Nequi
del cliente.
3. Aceptación de la notificación: El cliente recibe la notificación en su
aplicación Nequi y procede a aceptarla para confirmar la transacción.
4. Ingreso del PIN de Nequi: Para finalizar la operación, el cliente
ingresa su PIN personal de Nequi para autenticar y autorizar el pago.

Experiencia de Usuario

Esta sección describe los elementos necesarios para una experiencia óptima
del usuario al usar Nequi como método de pago:

1. Solicita el nombre y correo electrónico del comprador, por ejemplo:

2. Presenta Nequi como método de pago y solicita el número de teléfono


asociado con la cuenta de Nequi, por ejemplo:
3. Proporciona un resumen detallado del pago.

Nota

La imagen a continuación es un ejemplo de la página de resumen de PayU,


puedes aprovechar esta página redirigiendo a los usuarios a la URL
proporcionada en el campo URL_PAYMENT_RECEIPT_HTML de la respuesta de la API,
o puedes diseñar tu propio recibo extrayendo los datos de los campos
correspondientes de la respuesta. Para más información, consulta la sección
de Parámetros para Solicitud y Respuesta.

4. Describe los pasos a seguir para facilitar el proceso de pago para el


comprador. La página de resumen de PayU ya incluye estas
instrucciones, pero si estás creando una página personalizada,
recomendamos mostrar los pasos para completar el proceso a través de
Nequi. Por ejemplo:

Parámetros para la Solicitud y la Respuesta

Solicitud
Respuesta
 

Llamado a la API

Los siguientes son los cuerpos de la petición y la respuesta para este método
de pago:

JSON XML

Ejemplo de una Solicitud:

{
"language": "es",
"command": "SUBMIT_TRANSACTION",
"merchant": {
"apiKey": "4Vj8eK4rloUd272L48hsrarnUA",
"apiLogin": "pRRXKOl8ikMmt9u"
},
"transaction": {
"order": {
"accountId": "512321",
"referenceCode": "PRODUCT_TEST_2024-01-18T19:59:43.229Z",
"description": "Payment test description",
"language": "es",
"signature": "1d6c33aed575c4974ad5c0be7c6a1c87",
"notifyUrl": "[Link]
"additionalValues": {
"TX_VALUE": {
"value": 65000,
"currency": "COP"
},
"TX_TAX": {
"value": 10378,
"currency": "COP"
},
"TX_TAX_RETURN_BASE": {
"value": 54622,
"currency": "COP"
}
},
"buyer": {
"merchantBuyerId": "1",
"fullName": "First name and second buyer name",
"emailAddress": "buyer_test@[Link]",
"contactPhone": "57 3007777777",
"dniNumber": "123456789",
"shippingAddress": {
"street1": "Cr 23 No. 53-50",
"street2": "5555487",
"city": "Bogotá",
"state": "Bogotá D.C.",
"country": "CO",
"postalCode": "000000",
"phone": "57 3007777777"
}
},
"shippingAddress": {
"street1": "Cr 23 No. 53-50",
"street2": "5555487",
"city": "Bogotá",
"state": "Bogotá D.C.",
"country": "CO",
"postalCode": "0000000",
"phone": "7563126"
}
},
"payer": {
"merchantPayerId": "1",
"fullName": "First name and second payer name",
"emailAddress": "payer_test@[Link]",
"contactPhone": "57 3007777777",
"dniNumber": "5415668464654",
"billingAddress": {
"street1": "Cr 23 No. 53-50",
"street2": "125544",
"city": "Bogotá",
"state": "Bogotá D.C.",
"country": "CO",
"postalCode": "000000",
"phone": "57 3007777777"
}
},
"type": "AUTHORIZATION_AND_CAPTURE",
"paymentMethod": "NEQUI",
"paymentCountry": "CO",
"deviceSessionId": "vghs6tvkcle931686k1900o6e1",
"ipAddress": "[Link]",
"cookie": "pt1t38347bs6jc9ruv2ecpv7o2",
"userAgent": "Mozilla/5.0 (Windows NT 5.1; rv:18.0) Gecko/20100101
Firefox/18.0"
},
"test": false
}

Ejemplo de una Respuesta:

{
"code": "SUCCESS",
"error": null,
"transactionResponse": {
"orderId": 2151135729,
"transactionId": "fe667b48-e685-40b3-8863-9a0cd8257860",
"state": "PENDING",
"paymentNetworkResponseCode": "0",
"paymentNetworkResponseErrorMessage": null,
"trazabilityCode": "3ba38ac9-3d68-48ef-bf86-b6c121404162",
"authorizationCode": null,
"pendingReason": "AWAITING_PAYMENT_IN_ENTITY",
"responseCode": "PENDING_PAYMENT_IN_ENTITY",
"errorCode": null,
"responseMessage": "SUCCESS",
"transactionDate": null,
"transactionTime": null,
"operationDate": 1705670262058,
"referenceQuestionnaire": null,
"extraParameters": null,
"additionalInfo": null
}
}

Formatos de Números de Teléfono Admitidos

Al utilizar integraciones API, las transacciones pueden fallar cuando el sistema


recibe números de teléfono de usuario que:

1. Contienen espacios en blanco.


2. No están separados del código del país.
3. Contienen más o menos de 10 dígitos (sin contar el código del país).

Actualmente, la integración no proporciona un mecanismo para corregir


automáticamente el formato del número de teléfono que el usuario ingresa. La
tabla a continuación muestra ejemplos de formatos de números de teléfono y
su compatibilidad con la integración:

Ejemplo de Formato de Número de Compatibilidad D


Teléfono
57 3007777777 Formato compatible El código de país (57) está se
3007777777 Formato compatible El número telefónico no tiene
573007777777 Formato incompatible El número telefónico y el cód
separados.
57 300 7777777 Formato incompatible El número telefónico tiene es
Recomendaciones

Para prevenir errores causados por formatos de números telefónicos


incompatibles, te recomendamos implementar las siguientes características en
la experiencia de usuario:

1. Implementa una interfaz que automáticamente cree espacios


separadores en el número de teléfono móvil mientras el usuario lo
ingresa, haciendo que el número sea más fácil de leer y reduciendo la
probabilidad de errores de entrada manual. Asegúrate de que estos
espacios sean visibles a nivel de la interfaz mientras configuras tu
sistema para eliminarlos a nivel de backend.

 Ejemplo de la interfaz:
2. Configura mensajes de error para que se muestren cuando un usuario
ingrese un número de teléfono con menos de 10 dígitos o más de 10
dígitos (excluyendo el código de país, que es +57 para Colombia).

 A) Ejemplo de una interfaz con espacios generados automáticamente


donde el usuario no ha ingresado 10 dígitos:

 B) Ejemplo de una interfaz sin espacios donde el usuario ha ingresado


más de 10 dígitos:
Pruebas en Ambiente Sandbox

Para probar las transacciones de Nequi en el ambiente Sandbox de PayU,


utiliza los siguientes datos:

Número de Comportamiento de la autorización Compor


teléfono (Aprox.

3006666666 Transaction rejected - Client not found on database N/A


3007777777 Transaction pending Transaction app
3007777776 Transaction pending Transaction decl
3007777775 Transaction pending Transaction pen
3007777774 Transaction pending Transaction faile
3007777772 Transaction pending Transaction expi
Puedes consultar el estado de la transacción a través de la API de Consultas.

Enviar Transacciones Utilizando Efectivo o


Referencia Bancaria
Este método te permite procesar pagos de los clientes en efectivo o a través
de una referencia bancaria. Para integrar este método de pago, redirige al
cliente a la URL proporcionada en la respuesta del método. Tu cliente verá
entonces un recibo de pago como se muestra a continuación.

Pagos en Efectivo
Pagos con Referencia Bancaria
Parámetros para la Solicitud y la Respuesta

Solicitud
Respuesta

Consideraciones

 El parámetro [Link] no es obligatorio. Si no envías


este parámetro, su valor por defecto es siete (7) días luego de la fecha
actual.
Si envías una fecha posterior a dicho número de días, PayU ignorará este
valor y asignará el valor por defecto.
 Para EFECTY, la confirmación del pago tarda 15 minutos.
Para BANK_REFERENCED y OTHERS_CASH (Su Red), la confirmación es en línea.
 Los valores mínimos de máximos para pagos en EFECTY y OTHERS_CASH (Su
Red) son:
o EFECTY > Min: $20.000 COP - Máx: $6.000.000 COP
o OTHERS_CASH (Su Red) > Min: $1.000 COP - Máx: $4.000.000 COP
 El parámetro [Link] tiene los siguientes
parámetros relacionados con la transacción:
o EXPIRATION_DATE: fecha máxima en la que el pagador puede
realizar el pago.
o REFERENCE: referencia de pago interna generada por PayU.
o URL_PAYMENT_RECEIPT_HTML: recibo de pago en formato
HTML. Aquí es donde debe redirigir el pago cuando el pagador
selecciona un método de pago en efectivo.
o URL_PAYMENT_RECEIPT_PDF: recibo de pago en formato PDF.
o BANCO_BOGOTA_SERVICE_CODE: código de pago para Banco
de Bogotá. Disponible cuando utilices BANK_REFERENCED.
o BANK_REFERENCED_NAME: nombre de la referencia para
Bancolombia. Disponible cuando utilices BANK_REFERENCED.
o BANCOLOMBIA_SERVICE_CODE: código de pago para
Bancolombia. Disponible cuando utilices BANK_REFERENCED.
Llamado a la API

Los siguientes son los cuerpos de la petición y la respuesta para este método
de pago.

JSON XML

Ejemplo de una Solicitud:

{
"language": "es",
"command": "SUBMIT_TRANSACTION",
"merchant": {
"apiKey": "4Vj8eK4rloUd272L48hsrarnUA",
"apiLogin": "pRRXKOl8ikMmt9u"
},
"transaction": {
"order": {
"accountId": "512321",
"referenceCode": "PRODUCT_TEST_2021-06-23T19:59:43.229Z",
"description": "Payment test description",
"language": "es",
"signature": "1d6c33aed575c4974ad5c0be7c6a1c87",
"notifyUrl": "[Link]
"additionalValues": {
"TX_VALUE": {
"value": 65000,
"currency": "COP"
},
"TX_TAX": {
"value": 10378,
"currency": "COP"
},
"TX_TAX_RETURN_BASE": {
"value": 54622,
"currency": "COP"
}
},
"buyer": {
"merchantBuyerId": "1",
"fullName": "First name and second buyer name",
"emailAddress": "buyer_test@[Link]",
"contactPhone": "7563126",
"dniNumber": "123456789",
"shippingAddress": {
"street1": "Cr 23 No. 53-50",
"street2": "5555487",
"city": "Bogotá",
"state": "Bogotá D.C.",
"country": "CO",
"postalCode": "000000",
"phone": "7563126"
}
},
"shippingAddress": {
"street1": "Cr 23 No. 53-50",
"street2": "5555487",
"city": "Bogotá",
"state": "Bogotá D.C.",
"country": "CO",
"postalCode": "0000000",
"phone": "7563126"
}
},
"payer": {
"merchantPayerId": "1",
"fullName": "First name and second payer name",
"emailAddress": "payer_test@[Link]",
"contactPhone": "7563126",
"dniNumber": "5415668464654",
"billingAddress": {
"street1": "Cr 23 No. 53-50",
"street2": "125544",
"city": "Bogotá",
"state": "Bogotá D.C.",
"country": "CO",
"postalCode": "000000",
"phone": "7563126"
}
},
"type": "AUTHORIZATION_AND_CAPTURE",
"paymentMethod": "EFECTY",
"expirationDate": "2021-06-24T20:58:35.804",
"paymentCountry": "CO",
"ipAddress": "[Link]"
},
"test": false
}

Ejemplo de una Respuesta:

{
"code": "SUCCESS",
"error": null,
"transactionResponse": {
"orderId": 1400449740,
"transactionId": "f3531b6a-3e30-4a8b-8a69-d4a5bd2a3377",
"state": "PENDING",
"paymentNetworkResponseCode": null,
"paymentNetworkResponseErrorMessage": null,
"trazabilityCode": "f3531b6a-3e30-4a8b-8a69-d4a5bd2a3377",
"authorizationCode": null,
"pendingReason": "AWAITING_NOTIFICATION",
"responseCode": "PENDING_TRANSACTION_CONFIRMATION",
"errorCode": null,
"responseMessage": null,
"transactionDate": null,
"transactionTime": null,
"operationDate": 1624463917065,
"referenceQuestionnaire": null,
"extraParameters": {
"EXPIRATION_DATE": 1624568315804,
"REFERENCE": 1400449740,
"URL_PAYMENT_RECEIPT_PDF":
"[Link]
vid=1400449740Yf3531b6a3e304a8Y30f3f7b4598eb19",
"URL_PAYMENT_RECEIPT_HTML":
"[Link]
vid=1400449740Yf3531b6a3e304a8Y30f3f7b4598eb19"
},
"additionalInfo": {
"paymentNetwork": "EFECTY",
"rejectionType": "NONE",
"responseNetworkMessage": null,
"travelAgencyAuthorizationCode": null,
"cardType": null,
"transactionType": "AUTHORIZATION_AND_CAPTURE"
}
}
}

Enviar Transacciones Utilizando Transferencia


Bancaria (PSE)
Este método te permite procesar los pagos realizados por tus clientes por
medio de transferencia bancaria. En Colombia, las transferencias bancarias se
hacen a través de PSE, para integrarte con este método de pago, necesitas
crear un formulario de pago siguiendo estos pasos:

1. Incluye un botón PSE button haciendo evidente que tu cliente va a


utilizar Proveedor de Servicios Electrónicos PSE.

 Puedes utilizar los siguientes nombres:


o Débito desde cuenta corriente/ahorros
o Debito bancario PSE
o PSE
 No utilices ninguno de los siguientes nombres:
o Transferencia bancaria
o Débito de cuenta
o Tarjeta débito

2. Consulta la lista de bancos disponibles para mostrarla al pagador. Para


consultar la lista de bancos, consulta este método.
Debes actualizar la lista de bancos en tu sistema por lo menos una vez
al día.
3. Muestra la lista de bancos tal y como se muestra a continuación:
Cuando el pagador seleccione un banco, debes enviar al
parámetro pseCode seleccionado en el extra
parámetro FINANCIAL_INSTITUTION_CODE de la petición.

4. Muestra una lista para que el pagador escoja si es una


persona Natural (N) o Jurídica (J). Dependiendo de lo que escoja, debes
enviar el valor en el extra parámetro USER_TYPE de la petición. La lista
debe verse así:
Nota

Este campo no es obligatorio para PSE Avanza.

5. Muestra una lista para que el pagador escoja su tipo de identificación.


Debes enviar el código ISO del valor seleccionado en el extra
parámetro PSE_REFERENCE2 de la petición. La lista debe verse así:
La lista de documentos disponibles es:

ISO Descripción
CC Cédula de ciudadanía.
CE Cédula de extranjería.
NIT Número de Identificación Tributaria (Empresas).
TI Tarjeta de identidad.
PP Pasaporte.
RC Registro civil de nacimiento.
ISO Descripción
DE Documento de identificación extranjero.

6. Debes enviar el número de identificación del pagador en el extra


parámetro PSE_REFERENCE3 de la petición.

Parámetros para la Solicitud y la Respuesta

Solicitud
Respuesta

Consideraciones

 Para probar las transferencias bancarias PSE en el ambiente de Sandbox


de PayU, consulta la Guía de pruebas de PSE (PDF).
 Todos los valores de pago deben estar formateados en miles sin
excepción ([Link]., 1,200.00 o 1,200).
 Si la solicitud de pago es exitosa, el estado de la transacción es
pendiente (PENDING) y el responseCode
es PENDING_TRANSACTION_CONFIRMATION; esto es debido a que el pagador es
redirigido al naco seleccionado para completar el pago; debes redirigir al
pagador a la URL retornada en el extra parámetro BANK_URL.
 La URL retornada en el extra parámetro BANK_URL se configura en el
Modulo PayU y debe mostrar la siguiente información:
Los parámetros que empiezan con el símbolo $ se envían vía GET.
 Una vez el cliente hace clic en el botón de pago, debe desactivarse para
evitar enviar una nueva solicitud sobre el mismo pago.
 No muestres la página del banco en contenedores (frames, panel,
iframes, etc). El proceso de pago debe ser fluido. Además, evita abrir la
página del banco en una nueva pestaña o en una nueva ventana del
navegador. Si necesitas utilizar una nueva pestaña o ventana, bloquea la
página de origen para evitar enviar una nueva solicitud sobre el mismo
pago.
 Debes agregar a la página de respuesta las opciones para reintentar el
pago, finalizar la transacción e imprimir el recibo.
 Los estados mostrados en la página de respuesta pueden ser los
siguientes:

polTransactionState polResponseCode Estado


4 1 Transacción aprobada
6 5 Transacción fallida
6 4 Transacción rechazada
12 o 14 9994 o 25 Transacción pendiente, por favor revisar si el débit

Llamado a la API

Los siguientes son los cuerpos de la petición y la respuesta para este método
de pago.
JSON XML

Ejemplo de una Solicitud:

{
"language": "es",
"command": "SUBMIT_TRANSACTION",
"merchant": {
"apiKey": "4Vj8eK4rloUd272L48hsrarnUA",
"apiLogin": "pRRXKOl8ikMmt9u"
},
"transaction": {
"order": {
"accountId": "512321",
"referenceCode": "PRODUCT_TEST_2021-06-23T19:59:43.229Z",
"description": "Payment test description",
"language": "es",
"signature": "1d6c33aed575c4974ad5c0be7c6a1c87",
"notifyUrl": "[Link]
"additionalValues": {
"TX_VALUE": {
"value": 65000,
"currency": "COP"
},
"TX_TAX": {
"value": 10378,
"currency": "COP"
},
"TX_TAX_RETURN_BASE": {
"value": 54622,
"currency": "COP"
}
},
"buyer": {
"merchantBuyerId": "1",
"fullName": "First name and second buyer name",
"emailAddress": "buyer_test@[Link]",
"contactPhone": "7563126",
"dniNumber": "123456789",
"shippingAddress": {
"street1": "Cr 23 No. 53-50",
"street2": "5555487",
"city": "Bogotá",
"state": "Bogotá D.C.",
"country": "CO",
"postalCode": "000000",
"phone": "7563126"
}
},
"shippingAddress": {
"street1": "Cr 23 No. 53-50",
"street2": "5555487",
"city": "Bogotá",
"state": "Bogotá D.C.",
"country": "CO",
"postalCode": "0000000",
"phone": "7563126"
}
},
"payer": {
"merchantPayerId": "1",
"fullName": "First name and second payer name",
"emailAddress": "payer_test@[Link]",
"contactPhone": "7563126",
"dniNumber": "5415668464654",
"billingAddress": {
"street1": "Cr 23 No. 53-50",
"street2": "125544",
"city": "Bogotá",
"state": "Bogotá D.C.",
"country": "CO",
"postalCode": "000000",
"phone": "7563126"
}
},
"extraParameters": {
"RESPONSE_URL": "[Link]
"PSE_REFERENCE1": "[Link]",
"FINANCIAL_INSTITUTION_CODE": "1022",
"USER_TYPE": "N",
"PSE_REFERENCE2": "CC",
"PSE_REFERENCE3": "123456789"
},
"type": "AUTHORIZATION_AND_CAPTURE",
"paymentMethod": "PSE",
"paymentCountry": "CO",
"deviceSessionId": "vghs6tvkcle931686k1900o6e1",
"ipAddress": "[Link]",
"cookie": "pt1t38347bs6jc9ruv2ecpv7o2",
"userAgent": "Mozilla/5.0 (Windows NT 5.1; rv:18.0) Gecko/20100101
Firefox/18.0"
},
"test": false
}

Ejemplo de una Respuesta:

{
"code": "SUCCESS",
"error": null,
"transactionResponse": {
"orderId": 1400449959,
"transactionId": "4d49e544-e23f-474e-92b1-59357e0e85e8",
"state": "PENDING",
"paymentNetworkResponseCode": null,
"paymentNetworkResponseErrorMessage": null,
"trazabilityCode": "2204682",
"authorizationCode": null,
"pendingReason": "AWAITING_NOTIFICATION",
"responseCode": "PENDING_TRANSACTION_CONFIRMATION",
"errorCode": null,
"responseMessage": null,
"transactionDate": null,
"transactionTime": null,
"operationDate": 1624471332753,
"referenceQuestionnaire": null,
"extraParameters": {
"TRANSACTION_CYCLE": "1",
"BANK_URL": "[Link]
caller?
enc=aHR0cHM6Ly9yZWdpc3Ryby5kZXNhcnJvbGxvLnBzZS5jb20uY28vUFNFVXNlclJlZ2lzdGVyL
1N0YXJ0VHJhbnNhY3Rpb24uYXNweD9lbmM9dG5QY0pITUtsU25tUnBITThmQWJ1NHVWTmt6YW92Q0
tWR2g0b0IxbEpkOXNEeGlSU2E5cXl1Uk5TUW5mbkxSdiMjcGF5ZXJfdGVzdEB0ZXN0LmNvbSMjMTI
zNDU2Nzg5IyNDQw=="
},
"additionalInfo": {
"paymentNetwork": "PSE",
"rejectionType": "NONE",
"responseNetworkMessage": null,
"travelAgencyAuthorizationCode": null,
"cardType": null,
"transactionType": "AUTHORIZATION_AND_CAPTURE"
}
}
}

Enviar Transacciones Utilizando Google Pay


Google Pay es una billetera digital que permite realizar pagos con tarjeta de
forma sencilla y rápida, sin necesidad de introducir los datos de la tarjeta en
cada pago. Los datos de la tarjeta son almacenados de forma segura por
Google. Este método de pago está disponible para todos los dispositivos
(teléfonos móviles y ordenadores), independientemente del sistema operativo
y en casi todos los navegadores web.

En caso de utilizar Google Pay, los comercios deben adherirse a la Política de


uso aceptable de las API de Google Pay y aceptar los términos que definen
las Condiciones de servicio de las API de Google Pay.

Nota

La descripción que figura a continuación se aplica a la prestación de este


servicio directamente mostrando la ventana emergente de Google Pay en el
sitio web del receptor del pago (e-commerce).
Si deseas ofrecer este método de pago a través de PayU Web-Checkout, no se
requiere ningún esfuerzo de integración adicional. Contacta a tu gerente de
cuenta para realizar la solicitud de activación. Si deseas probar el método de
pago antes de la activación, puedes seguir las instrucciones aquí.

Ten en cuenta que si tu integración con PayU es API, debes realizar los ajustes
que se describen en esta sección para procesar transacciones de Google Pay:

 Realizar la integración API del medio de pago


 Probar el método de pago
Integración API del Medio de Pago

Para integrar el sitio web con el monedero Google Pay, procede según las
instrucciones que figuran en este sitio web:

 Documentación de la API
 Lista de chequeo de integración de API
 Directrices de la marca

Definiciones de PayU para la Integración API del Medio de Pago

A continuación encontrarás información relevante que debes considerar


durante la integración del medio de pago para que tus pagos sean procesados
por PayU:

 Solicitar un Payment Token para PayU

Google encripta la información de la tarjeta seleccionada por el pagador para


su procesamiento seguro, esto es realizado por un proveedor de pagos. El
parámetro gateway en el script debe tener el valor constante de payulatam, y
el gatewayMerchantId debe incluir tu número de cuenta PayU. A continuación un
ejemplo:

const tokenizationSpecification = {
type: 'PAYMENT_GATEWAY',
parameters: {
'gateway': 'payulatam',
'gatewayMerchantId': 'YOUR_ACCOUNT_ID '
}
};
 Medios de Pago Soportados

PayU procesa pagos de Google Pay para tarjetas Mastercard y Visa. Para
configurar tu script de Google, utiliza estos ajustes:

const allowedCardNetworks = ["MASTERCARD", "VISA", "ELECTRON", "MAESTRO"];


const allowedCardAuthMethods = ["PAN_ONLY"];
Nota

La disponibilidad de los métodos de pago depende de tu configuración en


PayU.
Google devolverá un objeto PaymentData, y el
campo [Link] contendrá un token de Google
Pay encriptado de forma segura (una cadena de caracteres).

A continuación, un ejemplo de un token de Google Pay:

{
"protocolVersion":"ECv2",
"signature":"MEUCIG39tbaQPwJe28U+UMsJmxUBUWSkwlOv9Ibohacer+CoAiEA8Wuq3lLUCwLQ
06D2kErxaMg3b/oLDFbd2gcFze1zDqU\u003d",
"intermediateSigningKey":{
"signedKey":
"{\"keyExpiration\":\"1542394027316\",\"keyValue\":\"MFkwEwYHKoZIzj0CAQYIKoZI
zj0DAQcDQgAE/
1+3HBVSbdv+j7NaArdgMyoSAM43yRydzqdg1TxodSzA96Dj4Mc1EiKroxxunavVIvdxGnJeFViTzF
vzFRxyCw\\u003d\\u003d\"}",
"signatures":
["MEYCIQDcXCoB4fYJF3EolxrE2zB+7THZCfKA7cWxSztKceXTCgIhAN/d5eBgx/1A6qKBdH0IS7/
aQ7dO4MuEt26OrLCUxZnl"]
},
"signedMessage":"{\"tag\":\"TjkIKzIOvCrFvjf7/aeeL8/FZJ3tigaNnerag68hIaw\\
u003d\",\"ephemeralPublicKey\":\"BLJoTmxP2z7M2N6JmaN786aJcT/L/
OJfuJKQdIXcceuBBZ00sf5nm2+snxAJxeJ4HYFTdNH4MOJrH58GNDJ9lJw\\
u003d\",\"encryptedMessage\":\"mleAf23XkKjj\"}"
}

Procesar Transacciones de Google Pay en PayU

La función principal de Google Pay como billetera digital es almacenar tarjetas


de crédito para facilitar el procesamiento de pagos. Con eso en mente, para el
procesamiento de transacciones de Google Pay en PayU, la lógica a aplicar
será la misma que para tarjetas de crédito, excepto por las siguientes
particularidades:

 Si estás procesando transacciones de tus clientes con Google Pay, debes


configurar la información de la billetera digital en el
parámetro [Link].
 Dentro del parámetro [Link] utiliza GOOGLE_PAY para el
campo [Link] y envía el Google Pay token en el
campo [Link].
 Ten en cuenta que dentro del parámetro [Link], para las
transacciones de Google Pay, siempre debes enviar un valor válido para
el campo [Link]. Otros campos de este parámetro
no son necesarios ya que Google Pay los entrega dentro del Google Pay
token.
 Contacta a tu gerente de cuenta para realizar las activaciones
necesarias para procesar sin cvv ya que este medio de pago lo requiere.

Probar el Método de Pago

Esta sección está diseñada para guiar a los usuarios sobre el proceso de
prueba y familiarización con el método de pago Google Pay en PayU.

Requisitos previos (aplica para la integración API y Web Checkout):

 Asegúrate de haber iniciado sesión en el explorador con la cuenta de


Gmail con la que vas a realizar la prueba.
 Únete al grupo de Google en el que estarán disponibles las tarjetas de
prueba para PayU. El grupo se encuentra en la siguiente documentación
de Google.

Pruebas para Comercios con Integración API:

1. Una vez realizados los cambios indicados en los apartados anteriores,


utiliza el Archivo Simulador de Token para simular una transacción y
obtener un token de Google Pay de muestra. El simulador puede
visualizarse aquí.

Nota

Para garantizar un procesamiento correcto, al momento de seleccionar las


tarjetas para el pago, utiliza tarjetas cuyo nombre no empiecen por “Test”.

2. Utiliza la información del token de Google Pay de muestra para


completar el request de PayU. Envíala a PayU para obtener prueba de
una transacción aprobada. Si tienes algún resultado no aprobado, revisa
la documentación de los pasos anteriores.

Pruebas para Comercios con Integración Web Checkout:

Utiliza el Web Checkout en ambiente de prueba para simular una transacción.

Nota

 Para garantizar un procesamiento correcto, al momento de seleccionar


las tarjetas para el pago, utiliza tarjetas cuyo nombre no empiecen por
“Test”.
 Usa las credenciales de prueba de Colombia para esta prueba. Consulta
las credenciales aquí.

Llamado a la API

Los siguientes son ejemplos de los cuerpos de la petición y la respuesta de


este método de pago.

JSON XML

Ejemplo de una Solicitud:

{
"language": "es",
"command": "SUBMIT_TRANSACTION",
"merchant": {
"apiKey": "012345678901",
"apiLogin": "012345678901"
},
"transaction": {
"order": {
"accountId": "9",
"language": "es",
"description" : "test",
"signature": "{{payu_signature}}",
"referenceCode": "{{payu_ref_code}}",
"additionalValues": {
"TX_VALUE": {
"value": 100,
"currency": "ARS"
}
}
},
"payer": {
"merchantPayerId": "1",
"fullName": "First name and second payer name",
"emailAddress": "[Link]@[Link]",
"contactPhone": "7563126",
"dniNumber": "5415668464654",
"dniType": null
},
"creditCard": {
"name": "Kevin Pelaez"
},
"digitalWallet": {
"type" : "GOOGLE_PAY",
"message" :
"{\"signature\":\"MEUCIQCSsfd63AcUEjNRnpgqEm/B6cm8Fna1ty+HatD4Hqp/
bgIgHCtrwKhvO1e5K3vDfE6FxqSaRkP9PHuY63aQ35gV5lk\\
u003d\",\"intermediateSigningKey\":
{\"signedKey\":\"{\\\"keyValue\\\":\\\"MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAExt
zNORa//EJphgvdpUTsDElAg26mYXxNqs8/UX7DDSDCojJ/
2+GCf8CVmClyRM+bukNsYM82pwkjZqOe5AOxUg\\\\u003d\\\\
u003d\\\",\\\"keyExpiration\\\":\\\"1695147545256\\\"}\",\"signatures\":
[\"MEQCIAxxj2BnQzTyTXLzjJ08JG+s1qdmX1XlOxzFmq1THTJ4AiAe7anOO7l+KZ1nkbGBufXBuQ
GInFMGR70+I33EyCL5GQ\\u003d\\
u003d\"]},\"protocolVersion\":\"ECv2\",\"signedMessage\":\"{\\\"encryptedMess
age\\\":\\\"GNKqqZ7bx6btPTkZPjpvi1IHKS79JrdtOI3bRZA6G5936ofXqD/m3f/
YpuF4mlADkHIhmBYVq6hzyA0B4M1cjht7BFsQhE5fqA+6PgbPY6eAqaH4PPQGt/
3VM9uVxmtcJK6k2JL8N7CCF85vx6s+LASH4wwO3Sk2NIlPB0B2QHdfdrOpwo5r6T3xYJAq6wHqFNr
dOLq5NTodDqEaXP3y/kB1eIMrwcz5cPGJAPSmL2RebBofsl5QFJdVUmeXXSS7nQ4aeQpuqCcoI/
NqLb5r3bEaq33pbglfv2YyyHK1ERlET3TsTR+rGBcJXv9JLh2ZhdoUJYDkDqP+f+65Fn3/
xRppfXbwNCrCnO+DvVsgZTFp7cj69WA6uWBeYM4HejKa1BUpt8TfP132FjaUSnwSlykkJhHK5svQF
xf2rpJGFdmz4d06iLREy/
N+27pyE9eJeJohO2JJXaVTQgICmVNvGefR4KaNELpxeNAzuhKQsTZBYQY179zveNg4EQqai3CxKIr
09G/
MwpMufTWEBm2rsk6HqTh1Qz+d72aph3U3bRQVhFj3ZE2ZsIXIc7dwCLGV\\\",\\\"ephemeralPu
blicKey\\\":\\\"BNgz4XETGJgixJYrYHLXjQrRaZ9i2q2Z2uGTOFNuVY5ZiCFiSJeiP0l+dt+Y0
r8I29l5F2Lwd+e8torE3vSMm9g\\\\
u003d\\\",\\\"tag\\\":\\\"NUJPbcTwbfWBC3ByHzcwQz/bEsbt80vh1ahXoRY4xAQ\\\\
u003d\\\"}\"}"
},
"extraParameters": {
"INSTALLMENTS_NUMBER": 1
},
"type": "AUTHORIZATION_AND_CAPTURE",
"paymentMethod": "MASTERCARD",
"paymentCountry": "BR"
},
"test": false
}

Ejemplo de una Respuesta:

{
"code": "SUCCESS",
"error": null,
"transactionResponse": {
"orderId": 1400437001,
"transactionId": "f0f8c441-43e8-490a-b4f2-c14d2c403175",
"state": "APPROVED",
"paymentNetworkResponseCode": "6",
"paymentNetworkResponseErrorMessage": null,
"trazabilityCode": "282856",
"authorizationCode": "MOCK-CIELO-1624047897817",
"pendingReason": null,
"responseCode": "APPROVED",
"errorCode": null,
"responseMessage": null,
"transactionDate": null,
"transactionTime": null,
"operationDate": 1624029898077,
"referenceQuestionnaire": null,
"extraParameters": {
"BANK_REFERENCED_CODE": "CREDIT",
"CIELO_TID": "1006993069000509C28A"
},
"additionalInfo": null
}
}

Encuentra la descripción del objeto [Link] y sus campos en


la sección de Parámetros.

Procesar Pagos como Aerolínea o Agencia de


Viajes
Esta sección está diseñada para facilitar la integración de los servicios de PayU,
específicamente adaptados a las necesidades de aerolíneas y agencias de
viajes en Colombia.

Consideraciones:

 Disponible exclusivamente en Colombia para transacciones en moneda


COP.
 Permite el procesamiento de pagos mediante el modelo TSP/Gateway.
 Requiere el registro de códigos IATA con los adquirentes.
 Soporta pagos con tarjeta de crédito o débito, incluyendo AMEX, DINERS,
MASTERCARD y VISA.
 Admite la dispersión de fondos, permitiendo que las agencias de viajes y
aerolíneas reciban sus pagos dentro de la misma transacción.
 Requiere un procesamiento en un solo paso: el sistema transfiere los
fondos de la cuenta del cliente a tu banco adquirente tan pronto como
se autoriza el pago.

Consideraciones para la Integración:

Esta integración permite a las aerolíneas y agencias de viajes en Colombia


optimizar los procesos de pago, proporcionando información esencial con cada
transacción para apoyar la identificación y distribución precisa de los fondos.
Además, el envío de detalles específicos de la transacción puede calificarlos
para la exención del impuesto 4 x 1000 (confirma con tu banco adquirente).

Pasos para la Integración:

1. Obtén la lista de aerolíneas disponibles.


2. Envía la transacción a través de la API de Pagos de PayU.
3. Incluye la información del Passenger Name Record (PNR) (opcional).

Funcionalidad Aerolíneas Age


Inclusión de Tarifas Las aerolíneas pueden enviar su ID de Las agencias de viaje
aerolínea, junto con tarifas aeroportuarias y transacción junto con
otros impuestos asociados. aeroportuarias, tarifas
Identificación Los adquirentes pueden identificar Permite al adquirente
específicamente la aerolínea mediante el ID de viajes como a la aerol
aerolínea para una distribución dirigida. de fondos.
Elegibilidad para la Las aerolíneas colombianas pueden calificar si Las agencias de viaje
Exención del Impuesto proporcionan su ID de aerolínea e información proporcionan detalles
4 x 1000 de tarifas relevante.
Nota

Verifica con tu banco adquirente si tu negocio cumple con los requisitos para la
exención del impuesto 4 x 1000. La elegibilidad depende de la información
proporcionada en cada transacción y de la normativa vigente.

Obtener la Lista de Aerolíneas Disponibles

Para integrarse con PayU, tanto las agencias de viajes como las aerolíneas
necesitan obtener los códigos de aerolíneas elegibles para la recolección de
pagos y enviarlos a través de la API de Pagos. Esto se puede hacer consultando
el sistema de PayU para obtener la lista de aerolíneas disponibles y sus
respectivos códigos. El endpoint para obtener los códigos de aerolíneas es el
mismo para ambos tipos de comerciantes, aunque el uso específico puede
diferir:
 Aerolíneas:
o Las aerolíneas obtienen y envían sus propios códigos para
habilitar una identificación precisa y posibles beneficios fiscales.
o Al proporcionar el código de aerolínea, aseguran transacciones
optimizadas para sus tarifas y cargos asociados.
 Agencias de Viajes:
o Las agencias obtienen el código de aerolínea asociado con cada
pago para garantizar la correcta asignación de tarifas e
impuestos.
o Esta integración ayuda a identificar la aerolínea involucrada en la
transacción para una distribución adecuada de fondos.

Para obtener la lista, utiliza los siguientes endpoints según tu entorno:

 Sandbox: [Link]
payments/airline
 Producción: [Link]
airline

Parámetro de Consulta Descripción


accountID Código de identificación asignado por PayU Latam a la cuen
Parámetro de Cabecera Descripción
Authorization Valor del encabezado de autenticación para realizar una solicit
Ejemplo de código en JavaScript para generar el encabezado de autenticación:

var contentToSign = "pRRXKOl8ikMmt9u" + ":" + "4Vj8eK4rloUd272L48hsrarnUA";


var base64 =
[Link]([Link](contentToSign));
var authenticationHeader = "Basic " + [Link]();
Nota

Aunque es poco probable que cambien los códigos de aerolíneas, existe una
posibilidad. Recomendamos usar la consulta para almacenar tu código de
aerolínea y utilizarlo en pagos con nuestra API de Pagos.
Parámetro de Consulta Descr
airlines Array de aerolíneas.
airlines > code Código de la aerolínea.
airlines > description Descripción de la aerolínea.
JSON XML

Ejemplo de una respuesta:

{
"airlines": [
{
"code": "81",
"description": "AVIA MARKETING LTDA NAL Nacional"
},
.
.
.
{
"code": "65",
"description": "OCEANAIR LINHAS AEREAS S.A Nacional"
}
]
}

Enviar Transacciones como una Aerolínea

Para completar una solicitud de transacción exitosa, debes incluir los


parámetros específicos para aerolíneas, además de los parámetros estándar
para pagos con tarjeta de crédito. Opcionalmente, también puedes
incluir datos del PNR. Usa el código de aerolínea obtenido del endpoint anterior
e incluye las tarifas aeroportuarias y los impuestos que aplican.

Solicitud

Llamada a la API

A continuación, se presentan ejemplos de una solicitud para este método.

JSON XML

Ejemplo de una Solicitud:

{
...
"transaction": {
"order": {
...
"airlineCode": "29",
"additionalValues": {
"TX_VALUE": {
"value": 119000,
"currency": "COP"
},
"TX_TAX": {
"value": 19000,
"currency": "COP"
},
"TX_TAX_RETURN_BASE": {
"value": 100000,
"currency": "COP"
},
"TX_ADDITIONAL_VALUE": {
"value": 25000,
"currency": "COP"
}
}
},
"creditCard": {
...
},
"extraParameters": {
...
},
"pnr": {
...
}
}
}

Enviar Transacciones como una Agencia de Viajes

Para completar una solicitud de transacción exitosa, debes incluir los


parámetros específicos para agencias de viajes, además de los parámetros
estándar para pagos con tarjeta de crédito. Opcionalmente, también puedes
incluir datos del PNR. Usa el código de aerolínea obtenido del endpoint anterior
e incluye las tarifas aeroportuarias y los impuestos que aplican.

Solicitud

Llamada a la API

A continuación, se presentan ejemplos de una solicitud para este método.

JSON XML

Ejemplo de una Solicitud:

{
...
"transaction": {
"order": {
...
"airlineCode": "29",
"additionalValues": {
"TX_VALUE": {
"value": 119000,
"currency": "COP"
},
"TX_TAX": {
"value": 19000,
"currency": "COP"
},
"TX_TAX_RETURN_BASE": {
"value": 100000,
"currency": "COP"
},
"TX_ADDITIONAL_VALUE": {
"value": 25000,
"currency": "COP"
},
"TX_ADMINISTRATIVE_FEE": {
"value": 5950,
"currency": "COP"
},
"TX_TAX_ADMINISTRATIVE_FEE": {
"value": 950,
"currency": "COP"
},
"TX_TAX_ADMINISTRATIVE_FEE_RETURN_BASE": {
"value": 5000,
"currency": "COP"
}
}
},
"creditCard": {
...
},
"extraParameters": {
...
},
"pnr": {
...
}
}
}

Incluir Información de Registro de Nombre del Pasajero


(Opcional)

Además de los detalles de la transacción proporcionados previamente, la API


permite incluir datos del Passenger Name Record (PNR). Esta funcionalidad es
particularmente útil al utilizar las herramientas antifraude de PayU para
mejorar el análisis de riesgo de las transacciones, adaptándose a las
actividades específicas de su negocio.

Los siguientes parámetros están relacionados con los datos PNR y son
opcionales. Están disponibles en todos los países de América Latina donde
opera PayU. Estos campos no son suficientes por sí solos para completar una
solicitud de transacción, pero son complementarios para casos de uso
específicos.

Solicitud
Nota

Al usar el formato XML, los parámetros del itinerario aparecen bajo transaction
> pnr > itinerary > segment con la misma estructura pero ajustados en
anidamiento.

Llamada a la API

A continuación, se presentan ejemplos de una solicitud para este método.

JSON XML

Ejemplo de una Solicitud:

{
"transaction": {
"order": {
...
},
"creditCard": {
...
},
"extraParameters": {
...
},
"pnr": {
"id": "abc123",
"reservationAgent": {
"id": "def456",
"firstName": "CO",
"lastName": "CO",
"email": "[Link]@[Link]",
"officePhoneNumber": "123456789"
},
"reservationOffice": {
"id": "ghi789",
"country": "CO"
},
"saleOffice": {
"id": "jkl012",
"country": "CO"
},
"passengers": [
{
"id": "mno345",
"country": "CO",
"level": "1",
"firstName": "Firts Name",
"lastName": "Last Name",
"documentType": 0,
"documentNumber": "987654321",
"email": "[Link]@[Link]",
"officePhoneNumber": "234567891",
"homePhoneNumber": "345678912",
"mobilePhoneNumber": "456789123",
"address": {
"country": "CO",
"city": "Bogota D.C.",
"street": "Calle 1 # 2 - 3"
}
},
{
"id": "mno346",
"country": "CO",
"level": "1",
"firstName": "Firts Name",
"lastName": "Last Name",
"documentType": 0,
"documentNumber": "55545151515",
"email": "[Link]@[Link]",
"officePhoneNumber": "336259",
"homePhoneNumber": "2156668",
"mobilePhoneNumber": "3001234123",
"address": {
"country": "CO",
"city": "Bogota D.C.",
"street": "Calle 3 # 2 - 1"
}
}
],
"itinerary": [
{
"departureDate": "2022-01-01T23:59:59",
"arrivalDate": "2025-01-01T23:59:59",
"flightNumber": "PQR345",
"origin": "BOGOTA",
"destination": "MADRID",
"travelClass": "BU",
"ticketType": "RT"
},
{
"departureDate": "2022-01-01T23:59:59",
"arrivalDate": "2025-01-01T23:59:59",
"flightNumber": "ARF2525",
"origin": "MADRID",
"destination": "LONDRES",
"travelClass": "EC",
"ticketType": "RT"
}
]
}
}
}

Lista de Bancos - PSE


Este método retorna la lista de bancos disponibles para realizar pagos
utilizando PSE.
Parámetros para la Solicitud y la Respuesta

Solicitud

Respuesta

Llamado a la API

Los siguientes son los cuerpos de la petición y la respuesta para este método.

JSON XML

Ejemplo de una Solicitud:

{
"language": "es",
"command": "GET_BANKS_LIST",
"merchant": {
"apiLogin": "pRRXKOl8ikMmt9u",
"apiKey": "4Vj8eK4rloUd272L48hsrarnUA"
},
"test": false,
"bankListInformation": {
"paymentMethod": "PSE",
"paymentCountry": "CO"
}
}

Ejemplo de una Respuesta:

{
"code": "SUCCESS",
"error": null,
"banks": [
{
"id": "34e6e912-a395-4d31-9599-9baa176c1a61",
"description": "A continuación seleccione su banco",
"pseCode": "0"
},
{
"id": "033aec11-e068-4252-8043-237144be9233",
"description": "[Link]",
"pseCode": "1552"
},
{
"id": "a720cb4c-6549-4932-83be-6d72b3eb0016",
"description": "BANCAMIA",
"pseCode": "1059"
},
{
"id": "d9280852-47a5-4e99-94ac-3d7648ba79a3",
"description": "BANCO AGRARIO",
"pseCode": "1040"
},
{
"id": "ff216e8a-28ba-4bf6-9935-b94dfdfd96a0",
"description": "BANCO AGRARIO DESARROLLO",
"pseCode": "1081"
},
{
"id": "5073154e-efd4-4870-9315-abb926e87519",
"description": "BANCO AGRARIO QA DEFECTOS",
"pseCode": "1080"
},
{
"id": "6e61a91d-58bf-46ec-aa09-1f44974dda7e",
"description": "BANCO CAJA SOCIAL",
"pseCode": "10322"
},
{
"id": "e062711e-6bbd-4a13-819a-d60084f9c6fa",
"description": "BANCO CAJA SOCIAL DESARROLLO",
"pseCode": "1032"
},
{
"id": "a9b5cc17-b0ae-4708-9835-586a0bef95df",
"description": "BANCO COMERCIAL AVVILLAS S.A.",
"pseCode": "1052"
},
{
"id": "c5c97dfe-6101-453f-bcd4-691f4b329a3c",
"description": "BANCO COOMEVA S.A. - BANCOOMEVA",
"pseCode": "1061"
},
{
"id": "7a2e8d04-e8c8-404b-8e49-d5d37c107a12",
"description": "BANCO COOPERATIVO COOPCENTRAL",
"pseCode": "1066"
},
{
"id": "197fe0af-f658-4fe0-ad1b-952e174de549",
"description": "BANCO CREDIFINANCIERA",
"pseCode": "1058"
},
{
"id": "b1de44f1-cede-4aca-9d3f-3313d5cc0c63",
"description": "BANCO DAVIVIENDA",
"pseCode": "1051"
},
{
"id": "7a10219e-04a7-4c31-b747-54ded27c7f07",
"description": "BANCO DAVIVIENDA Desarrollo",
"pseCode": "10512"
},
{
"id": "ed06f40e-a1b9-4e48-8851-bffb4cda0480",
"description": "BANCO DE BOGOTA",
"pseCode": "1039"
},
{
"id": "4592a13b-6334-4fba-8402-9d006b599fa8",
"description": "BANCO DE BOGOTA DESARROLLO 2013",
"pseCode": "1001"
},
{
"id": "55f59084-cd3b-47d2-a420-6442cdb9e4b1",
"description": "BANCO DE OCCIDENTE",
"pseCode": "1023"
},
{
"id": "8e134fca-4fde-44e6-b012-55e8f2d338ca",
"description": "BANCO FALABELLA",
"pseCode": "1062"
},
{
"id": "8eb03abf-5608-419b-8d2c-9d90b8ab6b88",
"description": "BANCO GNB COLOMBIA (ANTES HSBC)",
"pseCode": "1010"
},
{
"id": "283e0068-749f-43f1-a2e5-340910f41af3",
"description": "BANCO GNB SUDAMERIS",
"pseCode": "1012"
},
{
"id": "8b0bf5e7-394d-4f7e-a467-e4d21d04c9fb",
"description": "BANCO PICHINCHA S.A.",
"pseCode": "1060"
},
{
"id": "beeb494a-4ce5-41b4-b497-0756f0b6a6d9",
"description": "BANCO POPULAR",
"pseCode": "1002"
},
{
"id": "a5a4b740-1644-4627-ae2a-41b13ffc7c5e",
"description": "BANCO PRODUCTOS POR SEPARADO",
"pseCode": "1203"
},
{
"id": "47e747ef-c817-4be6-9eff-b6b16f50d001",
"description": "Banco PSE",
"pseCode": "1101"
},
{
"id": "589939d7-06d1-4933-a101-8bb29b801d76",
"description": "BANCO SANTANDER COLOMBIA",
"pseCode": "1065"
},
{
"id": "fcdaa98e-99ce-4e76-a504-1e053a05e773",
"description": "BANCO SERFINANZA",
"pseCode": "1069"
},
{
"id": "201608c6-81de-436f-967a-2ec7c212c100",
"description": "BANCO TEQUENDAMA",
"pseCode": "1035"
},
{
"id": "a8f33ba3-0053-464a-afbe-9add7c63fbc3",
"description": "Banco union Colombia Credito",
"pseCode": "1004"
},
{
"id": "5dfa1b2c-64bd-4e8c-9fad-585337cfd4ff",
"description": "BANCO UNION COLOMBIANO",
"pseCode": "1022"
},
{
"id": "56e306ef-6011-4f41-9640-b98449d6a6be",
"description": "BANCO UNION COLOMBIANO FD2",
"pseCode": "1005"
},
{
"id": "bc883c0d-3610-4a88-96ca-2e2baa1dd2e5",
"description": "Banco Web Service ACH",
"pseCode": "1055"
},
{
"id": "4e97e580-fc92-47ea-af4f-7b3b3ddffff8",
"description": "Banco Web Service ACH WSE 3.0",
"pseCode": "1055"
},
{
"id": "931f6bfb-283e-4721-bb86-4a7484bfd28e",
"description": "BANCOLOMBIA DATAPOWER",
"pseCode": "10072"
},
{
"id": "1285de9c-8d47-49f7-b00a-e87882e2a3f9",
"description": "BANCOLOMBIA DESARROLLO",
"pseCode": "10071"
},
{
"id": "451f0e5f-5db4-4f55-a1fc-b38e06526e04",
"description": "BANCOLOMBIA QA",
"pseCode": "1007"
},
{
"id": "448e00ec-c479-497d-9a35-0dfbbf462f72",
"description": "BANKA",
"pseCode": "1077"
},
{
"id": "5f3a7adb-b283-4ca3-bee9-741f1306a03d",
"description": "BBVA COLOMBIA S.A.",
"pseCode": "1013"
},
{
"id": "cd4286fa-850a-4b34-96d1-f71d6a79f44a",
"description": "BBVA DESARROLLO",
"pseCode": "1513"
},
{
"id": "10e9b7b6-7a5f-4d5b-8d7f-4b2020f43f93",
"description": "CITIBANK COLOMBIA S.A.",
"pseCode": "1009"
},
{
"id": "77f0988f-cf45-4931-bbcd-984e07e0fc51",
"description": "COLTEFINANCIERA",
"pseCode": "1370"
},
{
"id": "48c81f6a-e0f1-4c1d-ab9b-9915726e3596",
"description": "CONFIAR COOPERATIVA FINANCIERA",
"pseCode": "1292"
},
{
"id": "8694df26-5ccd-45c0-b5b7-2b995c47f81a",
"description": "COOPERATIVA FINANCIERA COTRAFA",
"pseCode": "1289"
},
{
"id": "1c222feb-2b58-408c-a495-ade06b6825c0",
"description": "COOPERATIVA FINANCIERA DE ANTIOQUIA",
"pseCode": "1283"
},
{
"id": "70a18a09-38f2-4f62-aba6-9ad28c30c966",
"description": "CREDIFIANCIERA",
"pseCode": "1558"
},
{
"id": "3f8b3126-8aa3-4438-8a6c-1d544184f2d7",
"description": "DALE",
"pseCode": "1097"
},
{
"id": "a953078b-5e22-42ea-9301-954558e8f463",
"description": "DAVIPLATA",
"pseCode": "1551"
},
{
"id": "2ad780ba-a1e8-4cb9-9150-670429aae092",
"description": "GIROS Y FINANZAS COMPAÑIA DE FINANCIAMIENTO S.A",
"pseCode": "1303"
},
{
"id": "c0bfb716-a098-40f6-84b5-1972a4846506",
"description": "IRIS",
"pseCode": "1637"
},
{
"id": "7e1efd88-4f88-4e21-a972-28b526b27da5",
"description": "ITAU",
"pseCode": "1006"
},
{
"id": "26c9a2df-6b4f-4309-9137-3692d9bb9f82",
"description": "MOVII S.A",
"pseCode": "1801"
},
{
"id": "d9b48a70-6068-4116-a345-154381e5d953",
"description": "NEQUI CERTIFICACION",
"pseCode": "1508"
},
{
"id": "60199dc5-7d38-49c6-92a5-b839dc0087d2",
"description": "prueba restriccion",
"pseCode": "9988"
},
{
"id": "be467299-d90a-407e-86d3-01e30ade1e06",
"description": "Prueba Steve",
"pseCode": "121212"
},
{
"id": "201acc05-4c4f-49dc-9be6-3261a6ce4a3c",
"description": "RAPPIPAY",
"pseCode": "1151"
},
{
"id": "7602e001-6199-48bc-9ee3-466f8eb2e422",
"description": "SCOTIABANK COLPATRIA DESARROLLO",
"pseCode": "1019"
},
{
"id": "9bb638a0-4c3f-41d2-8811-f8cdd29b0db2",
"description": "SCOTIABANK COLPATRIA UAT",
"pseCode": "1078"
},
{
"id": "086547b5-313b-42c7-acef-93d0f76b1dd5",
"description": "SEIVY – GM FINANCIAL",
"pseCode": "1305"
}
]
}

Consultar Métodos de Pago Disponibles


Este método retorna la lista de los métodos de pago disponibles en todos los
paises.

Parámetros para la Solicitud y la Respuesta

Solicitud

Respuesta

Llamado a la API
Los siguientes son los cuerpos de la petición y la respuesta para este método.
Para el propósito de este ejemplo, la respuesta muestra dos métodos de pago.

JSON XML

Ejemplo de una Solicitud:

{
"test": false,
"language": "en",
"command": "GET_PAYMENT_METHODS",
"merchant": {
"apiLogin": "pRRXKOl8ikMmt9u",
"apiKey": "4Vj8eK4rloUd272L48hsrarnUA"
}
}

Ejemplo de una Respuesta:

{
"code": "SUCCESS",
"error": null,
"paymentMethods": [
{
"id": "36",
"description": "EFECTY",
"country": "CO",
"enabled": true,
"reason": null
},
{
"id": "10",
"description": "MASTERCARD",
"country": "co",
"enabled": true,
"reason": null
}
]
}

Ping
El método PING te permite verificar la conexión con nuestra plataforma.

Parámetros para la Solicitud y la Respuesta

Solicitud

Respuesta
Llamado a la API

Los siguientes son los cuerpos de la petición y la respuesta para este método.

JSON XML

Ejemplo de una Solicitud:

{
"test": false,
"language": "en",
"command": "PING",
"merchant": {
"apiLogin": "pRRXKOl8ikMmt9u",
"apiKey": "4Vj8eK4rloUd272L48hsrarnUA"
}
}

Ejemplo de una Respuesta:

{
"code": "SUCCESS",
"error": null,
"transactionResponse": null
}

También podría gustarte