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.

Métodos Disponibles

La API de Pagos incluye los siguiente métodos:

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.

Parámetros para la Solicitud y la Respuesta

Solicitud
Nombre del Campo Formato Tamaño Descripción Obligatorio
language Alfanumérico 2 Idioma utilizado en la petición, este idioma se utiliza para mostrar los mensajes de error generados. Ver idiomas soportados.
command Alfanumérico Máx:32 Asigna SUBMIT_TRANSACTION.
test (JSON)
isTest (XML)
Booleano Asigna true si la petición es en modo pruebas. Si no, asigna false.
merchant Objeto Este objeto contiene los datos de autenticación.
merchant > apiLogin Alfanumérico Min:12 Máx:32 Usuario o login entregado por PayU. Cómo obtengo mi API Login
merchant > apiKey Alfanumérico Min:6 Máx:32 Contraseña entregada por PayU. Cómo obtengo mi API Key
transaction Objeto Este objeto contiene los datos de la transacción.
transaction > order Objeto Este objeto contiene los datos de la orden.
transaction > order > accountId Numérico Identificador de tu cuenta.
transaction > order > referenceCode Alfanumérico Min:1 Máx:255 Representa el identificador de la orden en tu sistema.
transaction > order > description Alfanumérico Min:1 Máx:255 Descripción de la orden.
transaction > order > language Alfanumérico 2 Idioma utilizado en los correos electrónicos enviados al comprador y al vendedor.
transaction > order > notifyUrl Alfanumérico Máx:2048 URL de confirmación de la orden. No
transaction > order > partnerId Alfanumérico Máx:255 ID de aliado dentro de PayUID de aliado dentro de PayU. No
transaction > order > signature Alfanumérico Máx:255 Firma asociada al formulario. Para más información, consulta Firma de autenticación.
transaction > order > shippingAddress Objeto Dirección de envío. No
transaction > order > shippingAddress > street1 Alfanumérico Máx:100 Línea de dirección 1. No
transaction > order > shippingAddress > street2 Alfanumérico Máx:100 Línea de dirección 2. No
transaction > order > shippingAddress > city Alfanumérico Máx:50 Ciudad de la dirección. No
transaction > order > shippingAddress > state Alfanumérico Máx:40 Departamento de la dirección. No
transaction > order > shippingAddress > country Alfanumérico 2 País de la dirección. No
transaction > order > shippingAddress > postalCode Alfanumérico Máx:8 Código postal de la dirección. No
transaction > order > shippingAddress > phone Alfanumérico Máx:11 Número de teléfono asociado con la dirección. No
transaction > order > buyer Objeto Información del comprador.
transaction > order > buyer > merchantBuyerId Alfanumérico Máx:100 Identificador del comprador en tu sistema. No
transaction > order > buyer > fullName Alfanumérico Máx:150 Nombre del comprador.
transaction > order > buyer > emailAddress Alfanumérico Máx:255 Correo electrónico del comprador.
transaction > order > buyer > contactPhone Alfanumérico Máx:20 Número de teléfono del comprador.
transaction > order > buyer > dniNumber Alfanumérico Máx:20 Número de identificación del comprador.
transaction > order > buyer > shippingAddress Objeto Dirección de envío del comprador.
transaction > order > buyer > shippingAddress > street1 Alfanumérico Máx:150 Línea de dirección 1 del comprador.
transaction > order > buyer > shippingAddress > city Alfanumérico Máx:50 Ciudad de la dirección del comprador.
transaction > order > buyer > shippingAddress > state Alfanumérico Máx:40 Departamento de la dirección del comprador.
transaction > order > buyer > shippingAddress > country Alfanumérico 2 País de la dirección del comprador en formato ISO 3166 alpha-2.
transaction > order > buyer > shippingAddress > postalCode Numérico Máx:20 Código postal de la dirección del comprador.
transaction > order > buyer > shippingAddress > phone Numérico Máx:20 Número de teléfono de la dirección del comprador.
transaction > order > additionalValues > Objeto 64 Monto de la orden y sus valores asociados.
transaction > order > additionalValues > TX_VALUE Alfanumérico 64 Monto de la transacción.
transaction > order > additionalValues > TX_VALUE > value Numérico 12, 2 Especifica el monto de la transacción, este valor no puede tener decimales.
transaction > order > additionalValues > TX_VALUE > currency Alfanumérico 3 Código ISO de la moneda. Ver monedas aceptadas. No
transaction > order > additionalValues > TX_TAX Alfanumérico 64 Monto del IVA (Impuesto al Valor Agregado).
transaction > order > additionalValues > TX_TAX > value Numérico 12, 2 Especifica el monto del IVA.
Si no se envía este parámetro, PayU aplica el impuesto actual (19%).
Si la cantidad está exenta de IVA, envía 0.
Este valor puede tener dos dígitos decimales
No
transaction > order > additionalValues > TX_TAX > currency Alfanumérico 3 Código ISO de la moneda. Ver monedas aceptadas. No
transaction > order > additionalValues > TX_TAX_RETURN_BASE Alfanumérico 64 Valor base para calcular el IVA.
Si la cantidad está exenta de IVA, envía 0.
Este valor puede tener dos dígitos decimales
No
transaction > order > additionalValues > TX_TAX_RETURN_BASE > value Numérico 12, 2 Especifica el valor base de la transacción. No
transaction > order > additionalValues > TX_TAX_RETURN_BASE > currency Alfanumérico 3 Código ISO de la moneda. Ver monedas aceptadas. No
transaction > creditCardTokenId Alfanumérico Incluye este parámetro cuando la transacción se hace con una tarjeta de crédito tokenizada; además, es obligatorio enviar el parámetro transaction.creditCard.expirationDate.
Para más información, consulte API de Tokenización.
No
transaction > creditCard Objeto Información de la tarjeta de crédito. Este objeto y sus parámetros son obligatorios cuando el pago se realiza utilizando una tarjeta de crédito no tokenizada. No
transaction > creditCard > number Alfanumérico Min:13 Máx:20 Número de la tarjeta de crédito. No
transaction > creditCard > securityCode Alfanumérico Min:1 Máx:4 Código de seguridad de la tarjeta de crédito (CVC2, CVV2, CID). No
transaction > creditCard > expirationDate Alfanumérico 7 Fecha de expiración de la tarjeta de crédito. Formato YYYY/MM. No
transaction > creditCard > name Alfanumérico Min:1 Máx:255 Nombre del tarjetahabiente mostrado en la tarjeta de crédito. No
transaction > creditCard > processWithoutCvv2 Booleano Máx:255 Te permite procesar transacciones sin incluir el código de seguridad de la tarjeta de crédito. Tu comercio requiere autorización de PayU antes de utilizar esta funcionalidad. No
transaction > payer Objeto Información del pagador.
transaction > payer > emailAddress Alfanumérico Máx:255 Correo electrónico del pagador.
transaction > payer > merchantPayerId Alfanumérico Máx:100 Identificador del pagador en tu sistema. No
transaction > payer > fullName Alfanumérico Máx:150 Nombre del pagador que debe ser igual al enviado en el parámetro transaction.creditCard.name.
transaction > payer > billingAddress Objeto Dirección de facturación.
transaction > payer > billingAddress > street1 Alfanumérico Máx:100 Línea 1 de la dirección de facturación.
transaction > payer > billingAddress > street2 Alfanumérico Máx:100 Línea 2 de la dirección de facturación. No
transaction > payer > billingAddress > city Alfanumérico Máx:50 Ciudad de la dirección de facturación.
transaction > payer > billingAddress > state Alfanumérico Máx:40 Departamento de la dirección de facturación. No
transaction > payer > billingAddress > country Alfanumérico 2 País de la dirección de facturación en formato ISO 3166 Alpha-2.
transaction > payer > billingAddress > postalCode Alfanumérico Máx:20 Código postal de la dirección de facturación. No
transaction > payer > billingAddress > phone Alfanumérico Máx:20 Número de teléfono de la dirección de facturación. No
transaction > payer > birthdate Alfanumérico Máx:10 Fecha de nacimiento del pagador. No
transaction > payer > contactPhone Alfanumérico Máx:20 Número de teléfono del pagador.
transaction > payer > dniNumber Alfanumérico Máx:20 Número de identificación del pagador.
transaction > payer > dniType Alfanumérico 2 Tipo de identificación del pagador. Ver tipos de documentos. No
transaction > type Alfanumérico 32 Asigna este valor de acuerdo con el tipo de transacción. Para Colombia, asigna AUTHORIZATION_AND_CAPTURE
transaction > paymentMethod Alfanumérico 32 Selecciona un método de pago de Tarjeta de crédito valido. Ver los métodos de pago disponibles para Colombia.
transaction > paymentCountry Alfanumérico 2 Asigna CO para Colombia.
transaction > deviceSessionId Alfanumérico Máx:255 Identificador de la sesión del dispositivo donde el cliente realiza la transacción. Para más información, consulta esta sección.
transaction > ipAddress Alfanumérico Máx:39 Dirección IP del dispositivo donde el cliente realiza la transacción.
transaction > cookie Alfanumérico Máx:255 Cookie almacenada por el dispositivo donde el cliente realiza la transacción.
transaction > userAgent Alfanumérico Máx:1024 User agent del navegador donde el cliente realiza la transacción.
transaction > extraParameters Objeto Parámetros adicionales o datos asociados a la petición. El tamaño máximo de cada nombre de extraParameters es 64 caracteres.
En JSON, el parámetro extraParameters sigue esta estructura:
"extraParameters": {
"INSTALLMENTS_NUMBER": 1
}

En XML, el parámetro extraParameters sigue esta estructura:
<extraParameters>
<entry>
  <string>INSTALLMENTS_NUMBER</string>
  <string>1</string>
</entry>
</extraParameters>
No
transaction > threeDomainSecure Objeto Este objeto contiene la información de 3DS 2.0. No
transaction > threeDomainSecure > embedded Booleano Asigna true si quieres utilizar un MPI embebido para el proceso de Autorización. Por defecto, este valor está asignado como false. No
transaction > threeDomainSecure > eci Numérico Máx:2 Indicador de Comercio Electrónico.
Valor retornado por los servidores de directorio indicando el intento de autenticación.
Este parámetro es obligatorio cuando transaction.threeDomainSecure.embedded es false y transaction.threeDomainSecure.xid tiene un valor configurado.
No
transaction > threeDomainSecure > cavv Alfanumérico Máx:28 Valor de verificación de autenticación del titular de la tarjeta (Cardholder Authentication Verification Value).
Código del criptograma utilizado en la autenticación de la transacción codificado en Base 64.
Dependiendo de los códigos ECI específicos establecidos por la red, este valor puede ser opcional.
No
transaction > threeDomainSecure > xid Alfanumérico Máx:28 Identificador de la transacción enviado por el MPI codificado en Base 64.
Este parámetro es obligatorio cuando transaction.threeDomainSecure.embedded is false y transaction.threeDomainSecure.eci tiene un valor configurado.
No
transaction > threeDomainSecure > directoryServerTransactionId Alfanumérico Máx:36 Identificador de la transacción generador por el servidor de directorio durante la autenticación. No
transaction > digitalWallet Objeto Incluya este parámetro cuando la transacción se realice utilizando una billetera digital. *Al enviar este objeto, todos sus campos son obligatorios. No
transaction > digitalWallet > type Alfanumérico —- Envía el valor con base en la billetera que se está procesando: GOOGLE_PAY Si*
transaction > digitalWallet > message Alfanumérico —- Incluye la información del Google Pay token que Google te devolverá por cada transacción. Para más información consulta aquí. Si*
Respuesta
Nombre del Campo Formato Tamaño Descripción
code Alfanumérico Código de respuesta de la transacción. Los valores posibles son ERROR y SUCCESS.
error Alfanumérico Máx:2048 Mensaje de error asociado cuando el código de respuesta es ERROR.
transactionResponse Objeto Datos de la respuesta.
transactionResponse > orderId Numérico Identificador generado o existente de la orden en PayU.
transactionResponse > transactionId Alfanumérico 36 Identificador de la transacción en PayU.
transactionResponse > state Alfanumérico Máx:32 Estado de la transacción.
transactionResponse > responseCode Alfanumérico Máx:64 Código de respuesta asociado con el estado.
transactionResponse > paymentNetworkResponseCode Alfanumérico Máx:255 Código de respuesta retornado por la red bancaria.
transactionResponse > paymentNetworkResponseErrorMessage Alfanumérico Máx:255 Mensaje de error retornado por la red bancaria.
transactionResponse > trazabilityCode Alfanumérico Máx:32 Código de trazabilidad retornado por la red bancaria.
transactionResponse > authorizationCode Alfanumérico Máx:12 Código de autorización retornado por la red bancaria.
transactionResponse > responseMessage Alfanumérico Máx:2048 Mensaje asociado con el código de respuesta.
transactionResponse > operationDate Fecha Fecha de creación de la respuesta en el sistema de PayU.
transactionResponse > extraParameters Objeto Parámetros adicionales o datos asociados con la respuesta.
En JSON, el parámetro extraParameters sigue esta estructura:
"extraParameters": {
"BANK_REFERENCED_CODE": "CREDIT"
}

En XML, el parámetro extraParameters sigue esta estructura:
<extraParameters>
<entry>
  <string>BANK_REFERENCED_CODE</string>
  <string>CREDIT</string>
</entry>
</extraParameters>
transactionResponse > additionalInfo Objeto Información adicional de la respuesta. Este objeto tiene la misma estructura de transactionResponse.extraParameters.

Consideraciones

  • Para pagos con tókenes de tarjeta, incluya los parámetros transaction.creditCardTokenId y transaction.creditCard.securityCode (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 creditCard.securityCode.
  • La variable transaction.threeDomainSecure 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 transaction.threeDomainSecure 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 transaction.payer.dniType:
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 públicos.
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.


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": "http://www.payu.com/notify",
         "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@test.com",
            "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@test.com",
         "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": "127.0.0.1",
      "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"
        }
    }
}

Ejemplo de una Solicitud:

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

Ejemplo de una Respuesta:

<paymentResponse>
    <code>SUCCESS</code>
    <transactionResponse>
        <orderId>1400449666</orderId>
        <transactionId>c29d0543-810d-48c4-bd3e-163e935c2173</transactionId>
        <state>APPROVED</state>
        <paymentNetworkResponseCode>79</paymentNetworkResponseCode>
        <trazabilityCode>CRED - 666116683</trazabilityCode>
        <authorizationCode>787517</authorizationCode>
        <responseCode>APPROVED</responseCode>
        <responseMessage>Approved administrative transaction</responseMessage>
        <operationDate>2021-06-23T10:26:28</operationDate>
        <extraParameters>
            <entry>
                <string>BANK_REFERENCED_CODE</string>
                <string>CREDIT</string>
            </entry>
        </extraParameters>
        <additionalInfo>
            <paymentNetwork>CREDIBANCO</paymentNetwork>
            <rejectionType>NONE</rejectionType>
            <cardType>CREDIT</cardType>
            <transactionType>AUTHORIZATION_AND_CAPTURE</transactionType>
        </additionalInfo>
    </transactionResponse>
</paymentResponse>

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:
PrintScreen

  1. Presenta Nequi como método de pago y solicita el número de teléfono asociado con la cuenta de Nequi, por ejemplo:
PrintScreen

  1. Proporciona un resumen detallado del pago.
PrintScreen

  1. 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:
PrintScreen

Parámetros para la Solicitud y la Respuesta

Solicitud
Nombre del Campo Formato Tamaño Descripción Obligatorio
language Alfanumérico 2 Idioma utilizado en la solicitud, este idioma se utiliza para mostrar los mensajes de error generados. Consulta los idiomas admitidos.
command Alfanumérico Máx:32 Asigna SUBMIT_TRANSACTION.
test (JSON)
isTest (XML)
Booleano Asigna true si la solicitud está en modo de prueba. De lo contrario, asigna false.
merchant Objeto Este objeto contiene los datos de autenticación.
merchant > apiLogin Alfanumérico Min:12 Máx:32 Nombre de usuario o login proporcionado por PayU.
merchant > apiKey Alfanumérico Min:6 Máx:32 Contraseña proporcionada por PayU.
transaction Objeto Este objeto contiene los datos de la transacción.
transaction > order Objeto Este objeto contiene los datos de la orden.
transaction > order > accountId Número Identificador de tu cuenta.
transaction > order > referenceCode Alfanumérico Min:1 Máx:255 Representa el identificador de la orden en tu sistema.
transaction > order > description Alfanumérico Min:1 Máx:255 Descripción de la orden.
transaction > order > language Alfanumérico 2 Idioma utilizado en los correos electrónicos enviados al comprador y al vendedor.
transaction > order > notifyUrl Alfanumérico Máx:2048 URL de confirmación de la orden. No
transaction > order > partnerId Alfanumérico Máx:255 ID de socio en PayU. No
transaction > order > signature Alfanumérico Máx:255 Firma asociada al formulario. Para más información, consulta Firma de autenticación.
transaction > order > shippingAddress Objeto Dirección de envío. No
transaction > order > shippingAddress > street1 Alfanumérico Máx:100 Línea de dirección 1. No
transaction > order > shippingAddress > street2 Alfanumérico Máx:100 Línea de dirección 2. No
transaction > order > shippingAddress > city Alfanumérico Máx:50 Ciudad de la dirección. No
transaction > order > shippingAddress > state Alfanumérico Máx:40 Departamento de la dirección. No
transaction > order > shippingAddress > country Alfanumérico 2 País de la dirección. No
transaction > order > shippingAddress > postalCode Alfanumérico Máx:8 Código postal de la dirección. No
transaction > order > shippingAddress > phone Alfanumérico Máx:11 Número de teléfono asociado con la dirección. No
transaction > order > buyer Objeto Información del comprador.
transaction > order > buyer > merchantBuyerId Alfanumérico Máx:100 ID del comprador en tu sistema. No
transaction > order > buyer > fullName Alfanumérico Máx:150 Nombre completo del comprador.
transaction > order > buyer > emailAddress Alfanumérico Máx:255 Correo electrónico del comprador.
transaction > order > buyer > contactPhone Alfanumérico Máx:20 Número de teléfono del comprador.
transaction > order > buyer > dniNumber Alfanumérico Máx:20 Número de identificación del comprador.
transaction > order > buyer > shippingAddress Objeto Dirección de envío del comprador.
transaction > order > buyer > shippingAddress > street1 Alfanumérico Máx:150 Línea 1 de la dirección de envío del comprador.
transaction > order > buyer > shippingAddress > city Alfanumérico Máx:50 Ciudad de la dirección de envío del comprador.
transaction > order > buyer > shippingAddress > state Alfanumérico Máx:40 Departamento de la dirección de envío del comprador.
transaction > order > buyer > shippingAddress > country Alfanumérico 2 País de la dirección de envío del comprador en formato ISO 3166 alfa-2.
transaction > order > buyer > shippingAddress > postalCode Número Máx:20 Código postal de la dirección de envío del comprador.
transaction > order > buyer > shippingAddress > phone Número Máx:20 Número de teléfono de la dirección de envío del comprador.
transaction > order > additionalValues > Alfanumérico 64 Monto de la orden y sus valores asociados.
transaction > order > additionalValues > TX_VALUE Alfanumérico 64 Monto de la transacción.
transaction > order > additionalValues > TX_VALUE > value Número 12, 2 Especifica el monto de la transacción. Este monto no puede incluir decimales.
transaction > order > additionalValues > TX_VALUE > currency Alfanumérico 3 Código ISO de la moneda. Consulta las monedas aceptadas. No
transaction > order > additionalValues > TX_TAX Alfanumérico 64 Monto del Impuesto al Valor Agregado (IVA).
transaction > order > additionalValues > TX_TAX > value Número 12, 2 Especifica el monto del IVA. Si este parámetro no está configurado, PayU aplica el valor de impuesto actual (19%). Si el monto no tiene IVA, envía 0. Este valor puede tener dos dígitos decimales. No
transaction > order > additionalValues > TX_TAX > currency Alfanumérico 3 Código ISO de la moneda. Consulta las monedas aceptadas. No
transaction > order > additionalValues > TX_TAX_RETURN_BASE Alfanumérico 64 Valor base para calcular el IVA. Si el monto no tiene IVA, envía 0. Este valor puede tener dos dígitos decimales. No
transaction > order > additionalValues > TX_TAX_RETURN_BASE > value Número 12, 2 Especifica el monto base de la transacción. No
transaction > order > additionalValues > TX_TAX_RETURN_BASE > currency Alfanumérico 3 Código ISO de la moneda. Consulta las monedas aceptadas. No
transaction > payer Objeto Información del pagador.
transaction > payer > emailAddress Alfanumérico Máx:255 Correo electrónico del pagador.
transaction > payer > merchantPayerId Alfanumérico Máx:100 Identificador del pagador en tu sistema. No
transaction > payer > fullName Alfanumérico Máx:150 Nombre del pagador.
transaction > payer > billingAddress Objeto Dirección de facturación.
transaction > payer > billingAddress > street1 Alfanumérico Máx:100 Línea 1 de la dirección de facturación.
transaction > payer > billingAddress > street2 Alfanumérico Máx:100 Línea 2 de la dirección de facturación. No
transaction > payer > billingAddress > city Alfanumérico Máx:50 Ciudad de la dirección de facturación.
transaction > payer > billingAddress > state Alfanumérico Máx:40 Departamento de la dirección de facturación. No
transaction > payer > billingAddress > country Alfanumérico 2 País de la dirección de facturación en formato ISO 3166 alfa-2.
transaction > payer > billingAddress > postalCode Alfanumérico Máx:20 Código postal de la dirección de facturación. No
transaction > payer > billingAddress > phone Alfanumérico Máx:20 Número de teléfono de la dirección de facturación. No
transaction > payer > birthdate Alfanumérico Máx:10 Fecha de nacimiento del pagador. No
transaction > payer > contactPhone Alfanumérico Máx:20 Número de teléfono del pagador. Este es el número que se utilizará para pagar en Nequi.
transaction > payer > dniNumber Alfanumérico Máx:20 Número de identificación del comprador.
transaction > payer > dniType Alfanumérico 2 Tipo de identificación del comprador. Consulta los tipos de documentos.. No
transaction > type Alfanumérico 32 Asigna este valor de acuerdo con la transacción. Para Colombia, asigna AUTHORIZATION_AND_CAPTURE.
transaction > paymentMethod Alfanumérico 32 Asigna NEQUI para el Método de Pago Nequi.
transaction > paymentCountry Alfanumérico 2 Asigna CO para Colombia.
transaction > deviceSessionId Alfanumérico Máx:255 Identificador de sesión del dispositivo donde el cliente realiza la transacción. Para más información, consulta esta sección.
transaction > ipAddress Alfanumérico Máx:39 Dirección IP del dispositivo donde el cliente realiza la transacción.
transaction > cookie Alfanumérico Máx:255 Cookie almacenada por el dispositivo donde el cliente realiza la transacción.
transaction > userAgent Alfanumérico Máx:1024 El agente de usuario del navegador donde el cliente realiza la transacción.
Respuesta
Nombre del Campo Formato Tamaño Descripción
code Alfanumérico Código de respuesta de la transacción. Los valores posibles son ERROR y SUCCESS.
error Alfanumérico Máx:2048 Mensaje de error asociado cuando el código de respuesta es ERROR.
transactionResponse Objeto Datos de la respuesta.
transactionResponse > orderId Número Identificador de orden generado o existente en PayU.
transactionResponse > transactionId Alfanumérico 36 Identificador de la transacción en PayU.
transactionResponse > state Alfanumérico Máx:32 Estado de la transacción.
transactionResponse > responseCode Alfanumérico Máx:64 Código de respuesta asociado con el estado.
transactionResponse > pendingReason Alfanumérico Máx:64 Razón pendiente de la transacción.
transactionResponse > paymentNetworkResponseCode Alfanumérico Máx:255 Código de respuesta devuelto por la red financiera.
transactionResponse > paymentNetworkResponseErrorMessage Alfanumérico Máx:255 Mensaje de error devuelto por la red financiera.
transactionResponse > trazabilityCode Alfanumérico Máx:32 Código de trazabilidad devuelto por la red financiera.
transactionResponse > authorizationCode Alfanumérico Máx:12 Código de autorización devuelto por la red financiera.
transactionResponse > responseMessage Alfanumérico Máx:2048 Mensaje asociado con el código de respuesta.
transactionResponse > operationDate Fecha Fecha de creación de la respuesta en el sistema de PayU.
transactionResponse > extraParameters Objeto Parámetros adicionales o datos asociados con la respuesta.
  • En JSON, el parámetro extraParameters sigue esta estructura: "extraParameters": { "URL_PAYMENT_RECEIPT_HTML": "https:payu.checkout.com"}
  • En XML, el parámetro extraParameters sigue esta estructura: <extraParameters> <entry>  <string>URL_PAYMENT_RECEIPT_HTML</string>  <string>https:payu.checkout.com</string> </entry></extraParameters>
    Nota: Considera que puedes aprovechar esta URL para redirigir al usuario a una página de PayU con un resumen de la compra, como se muestra en Experiencia de Usuario.
  • transactionResponse > additionalInfo Objeto Información adicional asociada con la respuesta. Este objeto sigue la misma estructura que transactionResponse.extraParameters.

    Llamado a la API

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


    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": "http://www.payu.com/notify",
             "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@test.com",
                "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@test.com",
             "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": "127.0.0.1",
          "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
        }
    }
    

    Ejemplo de una Solicitud:

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

    Ejemplo de una Respuesta:

    <paymentResponse>
        <code>SUCCESS</code>
        <transactionResponse>
            <orderId>2151135729</orderId>
            <transactionId>fe667b48-e685-40b3-8863-9a0cd8257860</transactionId>
            <state>PENDING</state>
            <paymentNetworkResponseCode>0</paymentNetworkResponseCode>
            <trazabilityCode>3ba38ac9-3d68-48ef-bf86-b6c121404162</trazabilityCode>
            <pendingReason>AWAITING_PAYMENT_IN_ENTITY</pendingReason>
            <responseCode>PENDING_PAYMENT_IN_ENTITY</responseCode>
            <responseMessage>SUCCESS</responseMessage>
            <operationDate>2024-01-19T08:17:42</operationDate>
        </transactionResponse>
    </paymentResponse>
    

    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 Teléfono Compatibilidad Detalles
    57 3007777777 Formato compatible El código de país (57) está separado del número telefónico.
    3007777777 Formato compatible El número telefónico no tiene espacios y tiene 10 dígitos.
    573007777777 Formato incompatible El número telefónico y el código de país (57) no están separados.
    57 300 7777777 Formato incompatible El número telefónico tiene espacios.

    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:

    PrintScreen

    1. 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:

    PrintScreen

    • B) Ejemplo de una interfaz sin espacios donde el usuario ha ingresado más de 10 dígitos:

    PrintScreen

    Pruebas en Ambiente Sandbox

    Para probar las transacciones de Nequi en el ambiente Sandbox de PayU, utiliza los siguientes datos:

    Número de teléfono Comportamiento de la autorización Comportamiento de la consulta
    (Aprox. 5 minutos después de la autorización)
    3006666666 Transaction rejected - Client not found on database N/A
    3007777777 Transaction pending Transaction approved
    3007777776 Transaction pending Transaction declined
    3007777775 Transaction pending Transaction pending
    3007777774 Transaction pending Transaction failed
    3007777772 Transaction pending Transaction expired

    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

    PrintScreen

    Pagos con Referencia Bancaria

    PrintScreen

    Parámetros para la Solicitud y la Respuesta

    Solicitud
    Nombre del Campo Formato Tamaño Descripción Obligatorio
    language Alfanumérico 2 Idioma utilizado en la petición, este idioma se utiliza para mostrar los mensajes de error generados. Ver idiomas soportados.
    command Alfanumérico Máx:32 Asigna SUBMIT_TRANSACTION.
    test (JSON)
    isTest (XML)
    Booleano Asigna true si la petición es en modo pruebas. Si no, asigna false.
    merchant Objeto Este objeto tiene los datos de autenticación.
    merchant > apiLogin Alfanumérico Min:12 Máx:32 Usuario o login entregado por PayU. Cómo obtengo mi API Login
    merchant > apiKey Alfanumérico Min:6 Máx:32 Contraseña entregada por PayU. Cómo obtengo mi API Key
    transaction Objeto Este objeto tiene los datos de la transacción.
    transaction > order Objeto Este objeto tiene los datos de la orden.
    transaction > order > accountId Numérico Identificador de tu cuenta.
    transaction > order > referenceCode Alfanumérico Min:1 Máx:255 Representa el identificador de la orden en tu sistema.
    transaction > order > description Alfanumérico Min:1 Máx:255 Descripción de la orden.
    transaction > order > language Alfanumérico 2 Idioma utilizado en los correos electrónicos enviados al comprador y al vendedor.
    transaction > order > notifyUrl Alfanumérico Máx:2048 URL de confirmación de la orden. No
    transaction > order > partnerId Alfanumérico Máx:255 ID de aliado dentro de PayUID de aliado dentro de PayU. No
    transaction > order > signature Alfanumérico Máx:255 Firma asociada al formulario. Para más información, consulta Firma de autenticación.
    transaction > order > shippingAddress Objeto Dirección de envío. No
    transaction > order > shippingAddress > street1 Alfanumérico Máx:100 Línea de dirección 1. No
    transaction > order > shippingAddress > street2 Alfanumérico Máx:100 Línea de dirección 2. No
    transaction > order > shippingAddress > city Alfanumérico Máx:50 Ciudad de la dirección. No
    transaction > order > shippingAddress > state Alfanumérico Máx:40 Departamento de la dirección. No
    transaction > order > shippingAddress > country Alfanumérico 2 País de la dirección. No
    transaction > order > shippingAddress > postalCode Alfanumérico Máx:8 Código postal de la dirección. No
    transaction > order > shippingAddress > phone Alfanumérico Máx:11 Número de teléfono asociado con la dirección. No
    transaction > order > buyer Objeto Información del comprador.
    transaction > order > buyer > merchantBuyerId Alfanumérico Máx:100 Identificador del comprador en tu sistema. No
    transaction > order > buyer > fullName Alfanumérico Máx:150 Nombre del comprador.
    transaction > order > buyer > emailAddress Alfanumérico Máx:255 Correo electrónico del comprador.
    transaction > order > buyer > contactPhone Alfanumérico Máx:20 Número de teléfono del comprador.
    transaction > order > buyer > dniNumber Alfanumérico Máx:20 Número de identificación del comprador.
    transaction > order > buyer > shippingAddress Objeto Dirección de envío del comprador.
    transaction > order > buyer > shippingAddress > street1 Alfanumérico Máx:150 Línea de dirección 1 del comprador.
    transaction > order > buyer > shippingAddress > city Alfanumérico Máx:50 Ciudad de la dirección del comprador.
    transaction > order > buyer > shippingAddress > state Alfanumérico Máx:40 Departamento de la dirección del comprador.
    transaction > order > buyer > shippingAddress > country Alfanumérico 2 País de la dirección del comprador en formato ISO 3166 alpha-2.
    transaction > order > buyer > shippingAddress > postalCode Numérico Máx:20 Código postal de la dirección del comprador.
    transaction > order > buyer > shippingAddress > phone Numérico Máx:20 Número de teléfono de la dirección del comprador.
    transaction > order > additionalValues > Objeto 64 Monto de la orden y sus valores asociados.
    transaction > order > additionalValues > TX_VALUE Alfanumérico 64 Monto de la transacción.
    transaction > order > additionalValues > TX_VALUE > value Numérico 12, 2 Especifica el monto de la transacción, este valor no puede tener decimales.
    transaction > order > additionalValues > TX_VALUE > currency Alfanumérico 3 Código ISO de la moneda. Ver monedas aceptadas.
    transaction > order > additionalValues > TX_TAX Alfanumérico 64 Monto del IVA (Impuesto al Valor Agregado).
    transaction > order > additionalValues > TX_TAX > value Numérico 12, 2 Especifica el monto del IVA.
    Si no se envía este parámetro, PayU aplica el impuesto actual (19%).
    Si la cantidad está exenta de IVA, envía 0.
    Este valor puede tener dos dígitos decimales.
    No
    transaction > order > additionalValues > TX_TAX > currency Alfanumérico 3 Código ISO de la moneda. Ver monedas aceptadas. No
    transaction > order > additionalValues > TX_TAX_RETURN_BASE Alfanumérico 64 Valor base para calcular el IVA.
    Si la cantidad está exenta de IVA, envía 0.
    Este valor puede tener dos dígitos decimales
    No
    transaction > order > additionalValues > TX_TAX_RETURN_BASE > value Numérico 12, 2 Especifica el valor base de la transacción. No
    transaction > order > additionalValues > TX_TAX_RETURN_BASE > currency Alfanumérico 3 Código ISO de la moneda. Ver monedas aceptadas. No
    transaction > payer Objeto Información del pagador.
    transaction > payer > emailAddress Alfanumérico Máx:255 Correo electrónico del pagador.
    transaction > payer > merchantPayerId Alfanumérico Máx:100 Identificador del pagador en tu sistema. No
    transaction > payer > fullName Alfanumérico Máx:150 Nombre del pagador.
    transaction > payer > billingAddress Objeto Dirección de facturación.
    transaction > payer > billingAddress > street1 Alfanumérico Máx:100 Línea 1 de la dirección de facturación.
    transaction > payer > billingAddress > street2 Alfanumérico Máx:100 Línea 2 de la dirección de facturación. No
    transaction > payer > billingAddress > city Alfanumérico Máx:50 Ciudad de la dirección de facturación.
    transaction > payer > billingAddress > state Alfanumérico Máx:40 Departamento de la dirección de facturación.
    transaction > payer > billingAddress > country Alfanumérico 2 País de la dirección de facturación en formato ISO 3166 Alpha-2.
    transaction > payer > billingAddress > postalCode Alfanumérico Máx:20 Código postal de la dirección de facturación. No
    transaction > payer > billingAddress > phone Alfanumérico Máx:20 Número de teléfono de la dirección de facturación. No
    transaction > payer > birthdate Alfanumérico Máx:10 Fecha de nacimiento del pagador. No
    transaction > payer > contactPhone Alfanumérico Máx:20 Número de teléfono del pagador.
    transaction > payer > dniNumber Alfanumérico Máx:20 Número de identificación del pagador.
    transaction > payer > dniType Alfanumérico 2 Tipo de identificación del pagador. Ver tipos de documentos. No
    transaction > type Alfanumérico 32 Como los pagos en efectivo se realizan en oficinas físicas, la única transacción disponible es AUTHORIZATION_AND_CAPTURE
    transaction > paymentMethod Alfanumérico 32 Seleccione un método de pago en efectivo o de referencia bancaria válido. Ver los métodos de pago disponibles para Colombia.
    transaction > paymentCountry Alfanumérico 2 Asigna CO para Colombia.
    transaction > expirationDate Alfanumérico 23 Fecha y hora máxima en la que el cliente puede realizar el pago. Formato YYYY-MM-DDTHH:MM:SS, por ejemplo 2021-06-12T16:07:11.586. No
    transaction > ipAddress Alfanumérico Máx:39 Dirección IP del dispositivo donde el cliente realiza la transacción.
    Respuesta
    Nombre del Campo Formato Tamaño Descripción
    code Alfanumérico Código de respuesta de la transacción. Los valores posibles son ERROR y SUCCESS.
    error Alfanumérico Máx:2048 Mensaje de error asociado cuando el código de respuesta es ERROR.
    transactionResponse Objeto Datos de la respuesta.
    transactionResponse > orderId Numérico Identificador generado o existente de la orden en PayU.
    transactionResponse > transactionId Alfanumérico 36 Identificador de la transacción en PayU.
    transactionResponse > state Alfanumérico Máx:32 Estado de la transacción. Como el pago se realiza de forma externa, el estado de una transacción exitosa es PENDING
    transactionResponse > paymentNetworkResponseCode Alfanumérico Máx:255 Código de respuesta retornado por la red bancaria.
    transactionResponse > paymentNetworkResponseErrorMessage Alfanumérico Máx:255 Mensaje de error retornado por la red bancaria.
    transactionResponse > trazabilityCode Alfanumérico Máx:32 Código de trazabilidad retornado por la red bancaria.
    transactionResponse > authorizationCode Alfanumérico Máx:12 Código de autorización retornado por la red bancaria.
    transactionResponse > pendingReason Alfanumérico Máx:21 Código de la razón asociada con el estado, como se mencionó en transactionResponse > state, la transacción está en espera del pago.
    transactionResponse > responseCode Alfanumérico Máx:64 Código de respuesta asociado con el estado. En este caso, para una transacción exitosa es PENDING_TRANSACTION_CONFIRMATION.
    transactionResponse > responseMessage Alfanumérico Máx:2048 Mensaje asociado con el código de respuesta.
    transactionResponse > operationDate Fecha Fecha de creación de la respuesta en el sistema de PayU.
    transactionResponse > extraParameters Objeto Parámetros adicionales o datos asociados con la respuesta.
    En JSON, el parámetro extraParameters sigue esta estructura:
    "extraParameters": {
    "REFERENCE": "74794"
    }

    En XML, el parámetro extraParameters sigue esta estructura:
    <extraParameters>
    <entry>
      <string>REFERENCE</string>
      <int>74794</int>
    </entry>
    </extraParameters>
    transactionResponse > additionalInfo Objeto Información adicional de la respuesta. Este objeto tiene la misma estructura de transactionResponse.extraParameters.

    Consideraciones

    • El parámetro transaction.expirationDate 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:
      • EFECTY > Min: $20.000 COP - Máx: $6.000.000 COP
      • OTHERS_CASH (Su Red) > Min: $1.000 COP - Máx: $4.000.000 COP
    • El parámetro transactionResponse.extraParameters tiene los siguientes parámetros relacionados con la transacción:
      • EXPIRATION_DATE: fecha máxima en la que el pagador puede realizar el pago.
      • REFERENCE: referencia de pago interna generada por PayU.
      • 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.
      • URL_PAYMENT_RECEIPT_PDF: recibo de pago en formato PDF.
      • BANCO_BOGOTA_SERVICE_CODE: código de pago para Banco de Bogotá. Disponible cuando utilices BANK_REFERENCED.
      • BANK_REFERENCED_NAME: nombre de la referencia para Bancolombia. Disponible cuando utilices BANK_REFERENCED.
      • 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.


    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": "http://www.payu.com/notify",
             "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@test.com",
                "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@test.com",
             "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": "127.0.0.1"
       },
       "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": "https://sandbox.checkout.payulatam.com/ppp-web-gateway-payu/receipt?vid=1400449740Yf3531b6a3e304a8Y30f3f7b4598eb19",
                "URL_PAYMENT_RECEIPT_HTML": "https://sandbox.checkout.payulatam.com/ppp-web-gateway-payu/app/v2?vid=1400449740Yf3531b6a3e304a8Y30f3f7b4598eb19"
            },
            "additionalInfo": {
                "paymentNetwork": "EFECTY",
                "rejectionType": "NONE",
                "responseNetworkMessage": null,
                "travelAgencyAuthorizationCode": null,
                "cardType": null,
                "transactionType": "AUTHORIZATION_AND_CAPTURE"
            }
        }
    }
    

    Ejemplo de una Solicitud:

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

    Ejemplo de una Respuesta:

    <paymentResponse>
        <code>SUCCESS</code>
        <transactionResponse>
            <orderId>1400449797</orderId>
            <transactionId>0b41f4d0-4486-4acf-ab5e-d757e35d994d</transactionId>
            <state>PENDING</state>
            <trazabilityCode>0b41f4d0-4486-4acf-ab5e-d757e35d994d</trazabilityCode>
            <pendingReason>AWAITING_NOTIFICATION</pendingReason>
            <responseCode>PENDING_TRANSACTION_CONFIRMATION</responseCode>
            <operationDate>2021-06-23T11:20:03</operationDate>
            <extraParameters>
                <entry>
                    <string>EXPIRATION_DATE</string>
                    <date>2021-06-30T23:59:59</date>
                </entry>
                <entry>
                    <string>REFERENCE</string>
                    <int>1400449797</int>
                </entry>
                <entry>
                    <string>URL_PAYMENT_RECEIPT_PDF</string>
                    <string>https://sandbox.checkout.payulatam.com/ppp-web-gateway-payu/receipt?vid=1400449797Y0b41f4d044864acY3e5f14fc8ef00e8</string>
                </entry>
                <entry>
                    <string>URL_PAYMENT_RECEIPT_HTML</string>
                    <string>https://sandbox.checkout.payulatam.com/ppp-web-gateway-payu/app/v2?vid=1400449797Y0b41f4d044864acY3e5f14fc8ef00e8</string>
                </entry>
            </extraParameters>
            <additionalInfo>
                <paymentNetwork>EFECTY</paymentNetwork>
                <rejectionType>NONE</rejectionType>
                <transactionType>AUTHORIZATION_AND_CAPTURE</transactionType>
            </additionalInfo>
        </transactionResponse>
    </paymentResponse>
    

    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:
      • Débito desde cuenta corriente/ahorros
      • Debito bancario PSE
      • PSE
    • No utilices ninguno de los siguientes nombres:
      • Transferencia bancaria
      • Débito de cuenta
      • Tarjeta débito
    1. 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.

    2. Muestra la lista de bancos tal y como se muestra a continuación:

    PrintScreen

    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.

    1. 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í:

    PrintScreen

    1. 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í:

    PrintScreen

    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.
    DE Documento de identificación extranjero.
    1. 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
    Nombre del Campo Formato Tamaño Descripción Obligatorio
    language Alfanumérico 2 Idioma utilizado en la petición, este idioma se utiliza para mostrar los mensajes de error generados. Ver idiomas soportados.
    command Alfanumérico Máx:32 Asigna SUBMIT_TRANSACTION.
    test (JSON)
    isTest (XML)
    Booleano Asigna true si la petición es en modo pruebas. Si no, asigna false.
    merchant Objeto Este objeto tiene los datos de autenticación.
    merchant > apiLogin Alfanumérico Min:12 Máx:32 Usuario o login entregado por PayU. Cómo obtengo mi API Login
    merchant > apiKey Alfanumérico Min:6 Máx:32 Contraseña entregada por PayU. Cómo obtengo mi API Key
    transaction Objeto Este objeto tiene los datos de la transacción.
    transaction > order Objeto Este objeto tiene los datos de la orden.
    transaction > order > accountId Numérico Identificador de tu cuenta.
    transaction > order > referenceCode Alfanumérico Min:1 Máx:255 Representa el identificador de la orden en tu sistema.
    transaction > order > description Alfanumérico Min:1 Máx:255 Descripción de la orden.
    transaction > order > language Alfanumérico 2 Idioma utilizado en los correos electrónicos enviados al comprador y al vendedor.
    transaction > order > notifyUrl Alfanumérico Máx:2048 URL de confirmación de la orden. No
    transaction > order > partnerId Alfanumérico Máx:255 ID de aliado dentro de PayUID de aliado dentro de PayU. No
    transaction > order > signature Alfanumérico Máx:255 Firma asociada al formulario. Para más información, consulta Firma de autenticación.
    transaction > order > shippingAddress Objeto Dirección de envío. No
    transaction > order > shippingAddress > street1 Alfanumérico Máx:100 Línea de dirección 1. No
    transaction > order > shippingAddress > street2 Alfanumérico Máx:100 Línea de dirección 2. No
    transaction > order > shippingAddress > city Alfanumérico Máx:50 Ciudad de la dirección. No
    transaction > order > shippingAddress > state Alfanumérico Máx:40 Departamento de la dirección. No
    transaction > order > shippingAddress > country Alfanumérico 2 País de la dirección. No
    transaction > order > shippingAddress > postalCode Alfanumérico Máx:8 Código postal de la dirección. No
    transaction > order > shippingAddress > phone Alfanumérico Máx:11 Número de teléfono asociado con la dirección. No
    transaction > order > buyer Objeto Información del comprador.
    transaction > order > buyer > merchantBuyerId Alfanumérico Máx:100 Identificador del comprador en tu sistema. No
    transaction > order > buyer > fullName Alfanumérico Máx:150 Nombre del comprador.
    transaction > order > buyer > emailAddress Alfanumérico Máx:255 Correo electrónico del comprador.
    transaction > order > buyer > contactPhone Alfanumérico Máx:20 Número de teléfono del comprador.
    transaction > order > buyer > dniNumber Alfanumérico Máx:20 Número de identificación del comprador.
    transaction > order > buyer > shippingAddress Objeto Dirección de envío del comprador.
    transaction > order > buyer > shippingAddress > street1 Alfanumérico Máx:150 Línea de dirección 1 del comprador.
    transaction > order > buyer > shippingAddress > city Alfanumérico Máx:50 Ciudad de la dirección del comprador.
    transaction > order > buyer > shippingAddress > state Alfanumérico Máx:40 Departamento de la dirección del comprador.
    transaction > order > buyer > shippingAddress > country Alfanumérico 2 País de la dirección del comprador en formato ISO 3166 alpha-2.
    transaction > order > buyer > shippingAddress > postalCode Numérico Máx:20 Código postal de la dirección del comprador.
    transaction > order > buyer > shippingAddress > phone Numérico Máx:20 Número de teléfono de la dirección del comprador.
    transaction > order > additionalValues > Objeto 64 Monto de la orden y sus valores asociados.
    transaction > order > additionalValues > TX_VALUE Alfanumérico 64 Monto de la transacción.
    transaction > order > additionalValues > TX_VALUE > value Numérico 12, 2 Especifica el monto de la transacción, este valor no puede tener decimales.
    transaction > order > additionalValues > TX_VALUE > currency Alfanumérico 3 Código ISO de la moneda. Ver monedas aceptadas.
    transaction > payer Objeto Información del pagador.
    transaction > payer > emailAddress Alfanumérico Máx:255 Correo electrónico del pagador.
    transaction > payer > merchantPayerId Alfanumérico Máx:100 Identificador del pagador en tu sistema. No
    transaction > payer > fullName Alfanumérico Máx:150 Nombre del pagador.
    transaction > payer > billingAddress Objeto Dirección de facturación.
    transaction > payer > billingAddress > street1 Alfanumérico Máx:100 Línea 1 de la dirección de facturación.
    transaction > payer > billingAddress > street2 Alfanumérico Máx:100 Línea 2 de la dirección de facturación. No
    transaction > payer > billingAddress > city Alfanumérico Máx:50 Ciudad de la dirección de facturación.
    transaction > payer > billingAddress > state Alfanumérico Máx:40 Departamento de la dirección de facturación. No
    transaction > payer > billingAddress > country Alfanumérico 2 País de la dirección de facturación en formato ISO 3166 Alpha-2.
    transaction > payer > billingAddress > postalCode Alfanumérico Máx:20 Código postal de la dirección de facturación. No
    transaction > payer > billingAddress > phone Alfanumérico Máx:20 Número de teléfono de la dirección de facturación. No
    transaction > payer > birthdate Alfanumérico Máx:10 Fecha de nacimiento del pagador. No
    transaction > payer > contactPhone Alfanumérico Máx:20 Número de teléfono del pagador.
    transaction > payer > dniNumber Alfanumérico Máx:20 Número de identificación del pagador.
    transaction > payer > dniType Alfanumérico 2 Tipo de identificación del pagador. Ver tipos de documentos.
    transaction > type Alfanumérico 32 Como estos pagos se realizan en la página web de PSE, la única transacción disponible es AUTHORIZATION_AND_CAPTURE
    transaction > paymentMethod Alfanumérico 32 Selecciona un método de pago por transferencia bancaria válido. Ver los métodos de pago disponibles para Colombia.
    transaction > paymentCountry Alfanumérico 2 Asigna CO para Colombia.
    transaction > deviceSessionId Alfanumérico Máx:255 Identificador de la sesión del dispositivo donde el cliente realiza la transacción. Para más información, consulta este artículo.
    transaction > ipAddress Alfanumérico Máx:39 Dirección IP del dispositivo donde el cliente realiza la transacción.
    transaction > cookie Alfanumérico Máx:255 Cookie almacenada por el dispositivo donde el cliente realiza la transacción.
    transaction > userAgent Alfanumérico Máx:1024 User agent del navegador donde el cliente realiza la transacción.
    transaction > extraParameters Objeto Parámetros adicionales o datos asociados a la petición.
    Para pagos por transferencia bancaria, esta es la página de respuesta de tu comercio.
    En JSON, el parámetro extraParameters se asigna como:
    "extraParameters": {
    "PSE_REFERENCE3": "123456789"
    }

    En XML, el parámetro extraParameters se asigna como:
    <extraParameters>
    <entry>
      <string>PSE_REFERENCE3</string>
      <string>123456789</string>
    </entry>
    </extraParameters>
    No
    Respuesta
    Nombre del Campo Formato Tamaño Descripción
    code Alfanumérico Código de respuesta de la transacción. Los valores posibles son ERROR y SUCCESS.
    error Alfanumérico Máx:2048 Mensaje de error asociado cuando el código de respuesta es ERROR.
    transactionResponse Objeto Datos de la respuesta.
    transactionResponse > orderId Numérico Identificador generado o existente de la orden en PayU.
    transactionResponse > transactionId Alfanumérico 36 Identificador de la transacción en PayU.
    transactionResponse > state Alfanumérico Máx:32 Estado de la transacción. Como el pago se realiza de forma externa, el estado de una transacción exitosa es PENDING
    transactionResponse > paymentNetworkResponseCode Alfanumérico Máx:255 Código de respuesta retornado por la red bancaria.
    transactionResponse > paymentNetworkResponseErrorMessage Alfanumérico Máx:255 Mensaje de error retornado por la red bancaria.
    transactionResponse > trazabilityCode Alfanumérico Máx:32 Código de trazabilidad retornado por la red bancaria.
    transactionResponse > authorizationCode Alfanumérico Máx:12 Código de autorización retornado por la red bancaria.
    transactionResponse > pendingReason Alfanumérico Máx:21 Código de la razón asociada con el estado, como se mencionó en transactionResponse > state, la transacción está en espera del pago.
    transactionResponse > responseCode Alfanumérico Máx:64 Código de respuesta asociado con el estado. En este caso, para una transacción exitosa es PENDING_TRANSACTION_CONFIRMATION.
    transactionResponse > responseMessage Alfanumérico Máx:2048 Mensaje asociado con el código de respuesta.
    transactionResponse > operationDate Fecha Fecha de creación de la respuesta en el sistema de PayU.
    transactionResponse > extraParameters Objeto Parámetros adicionales o datos asociados con la respuesta.
    En JSON, el parámetro extraParameters sigue esta estructura:
    "extraParameters": {
    "BANK_URL": "xxxx"
    }

    En XML, el parámetro extraParameters sigue esta estructura:
    <extraParameters>
    <entry>
      <string>BANK_URL</string>
      <string>xxxx</string>
    </entry>
    </extraParameters>

    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 (p.ej., 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:

      PrintScreen
      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ébito fue realizado en el banco.

    Llamado a la API

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


    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": "http://www.payu.com/notify",
             "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@test.com",
                "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@test.com",
             "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": "http://www.payu.com/response",
             "PSE_REFERENCE1": "127.0.0.1",
             "FINANCIAL_INSTITUTION_CODE": "1022",
             "USER_TYPE": "N",
             "PSE_REFERENCE2": "CC",
             "PSE_REFERENCE3": "123456789"
          },
          "type": "AUTHORIZATION_AND_CAPTURE",
          "paymentMethod": "PSE",
          "paymentCountry": "CO",
          "deviceSessionId": "vghs6tvkcle931686k1900o6e1",
          "ipAddress": "127.0.0.1",
          "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": "https://sandbox.api.payulatam.com/payments-api/pse-caller?enc=aHR0cHM6Ly9yZWdpc3Ryby5kZXNhcnJvbGxvLnBzZS5jb20uY28vUFNFVXNlclJlZ2lzdGVyL1N0YXJ0VHJhbnNhY3Rpb24uYXNweD9lbmM9dG5QY0pITUtsU25tUnBITThmQWJ1NHVWTmt6YW92Q0tWR2g0b0IxbEpkOXNEeGlSU2E5cXl1Uk5TUW5mbkxSdiMjcGF5ZXJfdGVzdEB0ZXN0LmNvbSMjMTIzNDU2Nzg5IyNDQw=="
            },
            "additionalInfo": {
                "paymentNetwork": "PSE",
                "rejectionType": "NONE",
                "responseNetworkMessage": null,
                "travelAgencyAuthorizationCode": null,
                "cardType": null,
                "transactionType": "AUTHORIZATION_AND_CAPTURE"
            }
        }
    }
    

    Ejemplo de una Solicitud:

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

    Ejemplo de una Respuesta:

    <paymentResponse>
        <code>SUCCESS</code>
        <transactionResponse>
            <orderId>1400449974</orderId>
            <transactionId>6c99b11b-fe6f-4270-8c9a-dfc35b7c7e34</transactionId>
            <state>PENDING</state>
            <trazabilityCode>2204695</trazabilityCode>
            <pendingReason>AWAITING_NOTIFICATION</pendingReason>
            <responseCode>PENDING_TRANSACTION_CONFIRMATION</responseCode>
            <operationDate>2021-06-23T13:12:14</operationDate>
            <extraParameters>
                <entry>
                    <string>TRANSACTION_CYCLE</string>
                    <string>1</string>
                </entry>
                <entry>
                    <string>BANK_URL</string>
                    <string>https://sandbox.api.payulatam.com/payments-api/pse-caller?enc=aHR0cHM6Ly9yZWdpc3Ryby5kZXNhcnJvbGxvLnBzZS5jb20uY28vUFNFVXNlclJlZ2lzdGVyL1N0YXJ0VHJhbnNhY3Rpb24uYXNweD9lbmM9dG5QY0pITUtsU25tUnBITThmQWJ1NHVWTmt6YW92Q0tWR2g0b0IxbEpkJTJmSGhQT0oyU2t4UnRmOEdLTk5tcGNYIyNwYXllcl90ZXN0QHRlc3QuY29tIyMxMjM0NTY3ODkjI0ND</string>
                </entry>
            </extraParameters>
            <additionalInfo>
                <paymentNetwork>PSE</paymentNetwork>
                <rejectionType>NONE</rejectionType>
                <transactionType>AUTHORIZATION_AND_CAPTURE</transactionType>
            </additionalInfo>
        </transactionResponse>
    </paymentResponse>
    

    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.

    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:

    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:

    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"];
    

    Google devolverá un objeto PaymentData, y el campo paymentMethodData.tokenizationData.token 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+CoAiEA8Wuq3lLUCwLQ06D2kErxaMg3b/oLDFbd2gcFze1zDqU\u003d",
      "intermediateSigningKey":{
        "signedKey": "{\"keyExpiration\":\"1542394027316\",\"keyValue\":\"MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE/1+3HBVSbdv+j7NaArdgMyoSAM43yRydzqdg1TxodSzA96Dj4Mc1EiKroxxunavVIvdxGnJeFViTzFvzFRxyCw\\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 transaction.digitalWallet.
    • Dentro del parámetro transaction.digitalWallet utiliza GOOGLE_PAY para el campo transaction.digitalWallet.type y envía el Google Pay token en el campo transaction.digitalWallet.message.
    • Ten en cuenta que dentro del parámetro transaction.creditcard, para las transacciones de Google Pay, siempre debes enviar un valor válido para el campo transaction.creditcard.name. 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í.
    1. 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.

    Llamado a la API

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


    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": "payer.name@payu.com",
                "contactPhone": "7563126",
                "dniNumber": "5415668464654",
                "dniType": null
            },
            "creditCard": {
                "name": "Kevin Pelaez"
            },
            "digitalWallet": {
                "type" : "GOOGLE_PAY",
                "message" : "{\"signature\":\"MEUCIQCSsfd63AcUEjNRnpgqEm/B6cm8Fna1ty+HatD4Hqp/bgIgHCtrwKhvO1e5K3vDfE6FxqSaRkP9PHuY63aQ35gV5lk\\u003d\",\"intermediateSigningKey\":{\"signedKey\":\"{\\\"keyValue\\\":\\\"MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAExtzNORa//EJphgvdpUTsDElAg26mYXxNqs8/UX7DDSDCojJ/2+GCf8CVmClyRM+bukNsYM82pwkjZqOe5AOxUg\\\\u003d\\\\u003d\\\",\\\"keyExpiration\\\":\\\"1695147545256\\\"}\",\"signatures\":[\"MEQCIAxxj2BnQzTyTXLzjJ08JG+s1qdmX1XlOxzFmq1THTJ4AiAe7anOO7l+KZ1nkbGBufXBuQGInFMGR70+I33EyCL5GQ\\u003d\\u003d\"]},\"protocolVersion\":\"ECv2\",\"signedMessage\":\"{\\\"encryptedMessage\\\":\\\"GNKqqZ7bx6btPTkZPjpvi1IHKS79JrdtOI3bRZA6G5936ofXqD/m3f/YpuF4mlADkHIhmBYVq6hzyA0B4M1cjht7BFsQhE5fqA+6PgbPY6eAqaH4PPQGt/3VM9uVxmtcJK6k2JL8N7CCF85vx6s+LASH4wwO3Sk2NIlPB0B2QHdfdrOpwo5r6T3xYJAq6wHqFNrdOLq5NTodDqEaXP3y/kB1eIMrwcz5cPGJAPSmL2RebBofsl5QFJdVUmeXXSS7nQ4aeQpuqCcoI/NqLb5r3bEaq33pbglfv2YyyHK1ERlET3TsTR+rGBcJXv9JLh2ZhdoUJYDkDqP+f+65Fn3/xRppfXbwNCrCnO+DvVsgZTFp7cj69WA6uWBeYM4HejKa1BUpt8TfP132FjaUSnwSlykkJhHK5svQFxf2rpJGFdmz4d06iLREy/N+27pyE9eJeJohO2JJXaVTQgICmVNvGefR4KaNELpxeNAzuhKQsTZBYQY179zveNg4EQqai3CxKIr09G/MwpMufTWEBm2rsk6HqTh1Qz+d72aph3U3bRQVhFj3ZE2ZsIXIc7dwCLGV\\\",\\\"ephemeralPublicKey\\\":\\\"BNgz4XETGJgixJYrYHLXjQrRaZ9i2q2Z2uGTOFNuVY5ZiCFiSJeiP0l+dt+Y0r8I29l5F2Lwd+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
        }
    } 
    

    Ejemplo de una Solicitud:

    <request>
            <language>es</language>
         <command>SUBMIT_TRANSACTION</command>
         <merchant>
             <apiKey>012345678901</apiKey>
             <apiLogin>012345678901</apiLogin>
         </merchant>
         <transaction>
             <order>
                 <accountId>9</accountId>
                 <language>es</language>
                 <description>test</description>
                 <signature>{{payu_signature}}</signature>
                 <referenceCode>{{payu_ref_code}}</referenceCode>
                 <additionalValues>
                     <TX_VALUE>
                         <value>100</value>
                         <currency>ARS</currency>
                     </TX_VALUE>
                 </additionalValues>
             </order>
             <payer>
                 <merchantPayerId>1</merchantPayerId>
                 <fullName>First name and second payer name</fullName>
                 <emailAddress>payer.name@payu.com</emailAddress>
                 <contactPhone>7563126</contactPhone>
                 <dniNumber>5415668464654</dniNumber>
                 <dniType></dniType>
             </payer>
             <creditCard>
                 <name>Kevin Pelaez</name>
             </creditCard>
             <digitalWallet>
                 <type>GOOGLE_PAY</type>
                 <message>{"signature":"MEUCIQCSsfd63AcUEjNRnpgqEm/B6cm8Fna1ty+HatD4Hqp/bgIgHCtrwKhvO1e5K3vDfE6FxqSaRkP9PHuY63aQ35gV5lk\u003d","intermediateSigningKey":{"signedKey":"{\"keyValue\":\"MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAExtzNORa//EJphgvdpUTsDElAg26mYXxNqs8/UX7DDSDCojJ/2+GCf8CVmClyRM+bukNsYM82pwkjZqOe5AOxUg\\u003d\\u003d\",\"keyExpiration\":\"1695147545256\"}","signatures":["MEQCIAxxj2BnQzTyTXLzjJ08JG+s1qdmX1XlOxzFmq1THTJ4AiAe7anOO7l+KZ1nkbGBufXBuQGInFMGR70+I33EyCL5GQ\u003d\u003d"]},"protocolVersion":"ECv2","signedMessage":"{\"encryptedMessage\":\"GNKqqZ7bx6btPTkZPjpvi1IHKS79JrdtOI3bRZA6G5936ofXqD/m3f/YpuF4mlADkHIhmBYVq6hzyA0B4M1cjht7BFsQhE5fqA+6PgbPY6eAqaH4PPQGt/3VM9uVxmtcJK6k2JL8N7CCF85vx6s+LASH4wwO3Sk2NIlPB0B2QHdfdrOpwo5r6T3xYJAq6wHqFNrdOLq5NTodDqEaXP3y/kB1eIMrwcz5cPGJAPSmL2RebBofsl5QFJdVUmeXXSS7nQ4aeQpuqCcoI/NqLb5r3bEaq33pbglfv2YyyHK1ERlET3TsTR+rGBcJXv9JLh2ZhdoUJYDkDqP+f+65Fn3/xRppfXbwNCrCnO+DvVsgZTFp7cj69WA6uWBeYM4HejKa1BUpt8TfP132FjaUSnwSlykkJhHK5svQFxf2rpJGFdmz4d06iLREy/N+27pyE9eJeJohO2JJXaVTQgICmVNvGefR4KaNELpxeNAzuhKQsTZBYQY179zveNg4EQqai3CxKIr09G/MwpMufTWEBm2rsk6HqTh1Qz+d72aph3U3bRQVhFj3ZE2ZsIXIc7dwCLGV\",\"ephemeralPublicKey\":\"BNgz4XETGJgixJYrYHLXjQrRaZ9i2q2Z2uGTOFNuVY5ZiCFiSJeiP0l+dt+Y0r8I29l5F2Lwd+e8torE3vSMm9g\\u003d\",\"tag\":\"NUJPbcTwbfWBC3ByHzcwQz/bEsbt80vh1ahXoRY4xAQ\\u003d\"}"}</message>
             </digitalWallet>
             <extraParameters>
                 <INSTALLMENTS_NUMBER>1</INSTALLMENTS_NUMBER>
             </extraParameters>
             <type>AUTHORIZATION_AND_CAPTURE</type>
             <paymentMethod>MASTERCARD</paymentMethod>
             <paymentCountry>BR</paymentCountry>
         </transaction>
         <test>false</test>
    </request>
    

    Ejemplo de una Respuesta:

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

    Encuentra la descripción del objeto transaction.digitalWallet 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 Agencias de Viajes
    Inclusión de Tarifas Las aerolíneas pueden enviar su ID de aerolínea, junto con tarifas aeroportuarias y otros impuestos asociados. Las agencias de viajes pueden enviar sus tarifas de transacción junto con tarifas de aerolíneas, tarifas aeroportuarias, tarifas administrativas y otros cargos.
    Identificación Los adquirentes pueden identificar específicamente la aerolínea mediante el ID de aerolínea para una distribución dirigida. Permite al adquirente identificar tanto a la agencia de viajes como a la aerolínea para una distribución precisa de fondos.
    Elegibilidad para la Exención del Impuesto 4 x 1000 Las aerolíneas colombianas pueden calificar si proporcionan su ID de aerolínea e información de tarifas relevante. Las agencias de viajes colombianas pueden calificar si proporcionan detalles completos de la transacción.

    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:

      • Las aerolíneas obtienen y envían sus propios códigos para habilitar una identificación precisa y posibles beneficios fiscales.
      • Al proporcionar el código de aerolínea, aseguran transacciones optimizadas para sus tarifas y cargos asociados.
    • Agencias de Viajes:

      • Las agencias obtienen el código de aerolínea asociado con cada pago para garantizar la correcta asignación de tarifas e impuestos.
      • 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: https://sandbox.api.payulatam.com/payments-api/rest/v4.3/payments/airline
    • Producción: https://api.payulatam.com/payments-api/rest/v4.3/payments/airline
    Parámetro de Consulta Descripción
    accountID Código de identificación asignado por PayU Latam a la cuenta.
    Parámetro de Cabecera Descripción
    Authorization Valor del encabezado de autenticación para realizar una solicitud válida.

    Ejemplo de código en JavaScript para generar el encabezado de autenticación:

    var contentToSign = "pRRXKOl8ikMmt9u" + ":" + "4Vj8eK4rloUd272L48hsrarnUA";
    var base64 = CryptoJS.enc.Base64.stringify(CryptoJS.enc.Utf8.parse(contentToSign));
    var authenticationHeader = "Basic " + base64.toString();
    
    Parámetro de Consulta Descripción
    airlines Array de aerolíneas.
    airlines > code Código de la aerolínea.
    airlines > description Descripción de la aerolínea.

    Ejemplo de una respuesta:

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


    Ejemplo de una respuesta:

    <com.pagosonline.ppp4.web.payments.api.v4.model.ApiAirlinesListResponse>
     <airlines>
     <com.pagosonline.ppp4.web.payments.api.v4.model.ApiAirlines>
     <code>80</code>
     <description>AVIATUR S.A. BOG Internacional</description>
     </com.pagosonline.ppp4.web.payments.api.v4.model.ApiAirlines>
     .
     .
     .
     <com.pagosonline.ppp4.web.payments.api.v4.model.ApiAirlines>
     <code>87</code>
     <description>LAN AIRLINES Nacional</description>
     </com.pagosonline.ppp4.web.payments.api.v4.model.ApiAirlines>
     </airlines>
    </com.pagosonline.ppp4.web.payments.api.v4.model.ApiAirlinesListResponse>
    

    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
    Campo Tipo Tamaño Descripción Ejemplo
    transaction > order > airlineCode Alfanumérico 4 Código de la aerolínea. 29
    transaction > order > additionalValues > TX_VALUE > value Numérico 12,2 Monto total de la transacción. Puede contener hasta dos decimales. 119000
    transaction > order > additionalValues > TX_TAX > value Numérico 12,2 Valor del IVA. Si no se especifica, el sistema aplica una tasa del 19% por defecto en Colombia. Usa 0 para artículos exentos de IVA. 19000
    transaction > order > additionalValues > TX_TAX_RETURN_BASE > value Numérico 12,2 Valor base para el cálculo del IVA. Configura en 0 si el producto o servicio está exento de IVA. 100000
    transaction > order > additionalValues > TX_ADDITIONAL_VALUE > value Numérico 12,2 Tarifas aeroportuarias y otros impuestos aplicables. 25000

    Llamada a la API

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


    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": {
          ...
        }
      }
    }
    


    Ejemplo de una Solicitud:

    <request>
      ...
      <transaction>
        <order>
          ...
          <airlineCode>29</airlineCode>
          <additionalValues>
            <entry>
              <string>TX_VALUE</string>
              <additionalValue>
                <value>119000</value>
                <currency>COP</currency>
              </additionalValue>
            </entry>
            <entry>
              <string>TX_TAX</string>
              <additionalValue>
                <value>19000</value>
                <currency>COP</currency>
              </additionalValue>
            </entry>
            <entry>
              <string>TX_TAX_RETURN_BASE</string>
              <additionalValue>
                <value>100000</value>
                <currency>COP</currency>
              </additionalValue>
            </entry>
            <entry>
              <string>TX_ADDITIONAL_VALUE</string>
              <additionalValue>
                <value>25000</value>
                <currency>COP</currency>
              </additionalValue>
            </entry>
          </additionalValues>
        </order>
        <payer>
          ...
        </payer>
        <creditCard>
          ...
        </creditCard>
        <extraParameters>
          ...
        </extraParameters>
        ...
        <pnr>
          ...
        </pnr>
      </transaction>
    </request>
    

    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
    Campo Tipo Tamaño Descripción Ejemplo
    transaction > order > airlineCode Alfanumérico 4 Código de la aerolínea. 29
    transaction > order > additionalValues > TX_VALUE > value Numérico 12,2 Monto total de la transacción. Puede contener dos decimales (por ejemplo, 10000.00 o 10000). 119000
    transaction > order > additionalValues > TX_TAX > value Numérico 12,2 Valor del IVA de la transacción. Si no se especifica, el sistema aplica automáticamente una tasa del 19% en Colombia. Si está exento de IVA, configura en 0. 19000
    transaction > order > additionalValues > TX_TAX_RETURN_BASE > value Numérico 12,2 Valor base para calcular el IVA. Si está exento de IVA, asigna 0 a esta variable. 100000
    transaction > order > additionalValues > TX_ADDITIONAL_VALUE > value Numérico 12,2 Tarifas aeroportuarias y otros impuestos. 25000
    transaction > order > additionalValues > TX_ADMINISTRATIVE_FEE > value Numérico 12,2 Monto de la tarifa administrativa de la agencia de viajes. 5950
    transaction > order > additionalValues > TX_TAX_ADMINISTRATIVE_FEE > value Numérico 12,2 Impuesto de la tarifa administrativa de la agencia de viajes. 950
    transaction > order > additionalValues > TX_TAX_ADMINISTRATIVE_FEE_RETURN_BASE > value Numérico 12,2 Valor base para calcular el impuesto de la tarifa administrativa de la agencia de viajes. 5000

    Llamada a la API

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


    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": {
          ...
        }
      }
    }
    


    Ejemplo de una Solicitud:

    <request>
      ...
      <transaction>
        <order>
          ...
          <airlineCode>29</airlineCode>
          <additionalValues>
            <entry>
              <string>TX_VALUE</string>
              <additionalValue>
                <value>119000</value>
                <currency>COP</currency>
              </additionalValue>
            </entry>
            <entry>
              <string>TX_TAX</string>
              <additionalValue>
                <value>19000</value>
                <currency>COP</currency>
              </additionalValue>
            </entry>
            <entry>
              <string>TX_TAX_RETURN_BASE</string>
              <additionalValue>
                <value>100000</value>
                <currency>COP</currency>
              </additionalValue>
            </entry>
            <entry>
              <string>TX_ADDITIONAL_VALUE</string>
              <additionalValue>
                <value>25000</value>
                <currency>COP</currency>
              </additionalValue>
            </entry>
            <entry>
              <string>TX_ADMINISTRATIVE_FEE</string>
              <additionalValue>
                <value>5950</value>
                <currency>COP</currency>
              </additionalValue>
            </entry>
            <entry>
              <string>TX_TAX_ADMINISTRATIVE_FEE</string>
              <additionalValue>
                <value>950</value>
                <currency>COP</currency>
              </additionalValue>
            </entry>
            <entry>
              <string>TX_TAX_ADMINISTRATIVE_FEE_RETURN_BASE</string>
              <additionalValue>
                <value>5000</value>
                <currency>COP</currency>
              </additionalValue>
            </entry>
          </additionalValues>
        </order>
        <payer>
          ...
        </payer>
        <creditCard>
          ...
        </creditCard>
        <extraParameters>
          ...
        </extraParameters>
        ...
        <pnr>
          ...
        </pnr>
      </transaction>
    </request>
    

    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
    Campo Tipo Tamaño Descripción Ejemplo
    transaction > pnr > id alfanumérico 32 ID del registro de nombre del pasajero (PNR). PNR123456
    transaction > pnr > reservationAgent > id alfanumérico 32 ID del agente de reservas. AGENT123
    transaction > pnr > reservationAgent > firstName alfanumérico 255 Nombre(s) del agente de reservas. John
    transaction > pnr > reservationAgent > lastName alfanumérico 255 Apellido(s) del agente de reservas. Doe
    transaction > pnr > reservationAgent > email alfanumérico 255 Correo electrónico del agente de reservas. agent@example.com
    transaction > pnr > reservationAgent > officePhoneNumber alfanumérico 50 Teléfono de oficina del agente de reservas. +573001234567
    transaction > pnr > reservationOffice > id alfanumérico 9 ID de la oficina de reservas. OFFICE123
    transaction > pnr > reservationOffice > country alfanumérico 2 País de la oficina de reservas (Código ISO). CO
    transaction > pnr > saleOffice > id alfanumérico 9 ID de la oficina de ventas. SALEOFF123
    transaction > pnr > saleOffice > country alfanumérico 2 País de la oficina de ventas (Código ISO). US
    transaction > pnr > passengers[] > id alfanumérico 32 ID del pasajero. PASS12345
    transaction > pnr > passengers[] > country alfanumérico 2 País del pasajero (Código ISO). AR
    transaction > pnr > passengers[] > level alfanumérico 32 Nivel del pasajero. GOLD
    transaction > pnr > passengers[] > firstName alfanumérico 255 Nombre(s) del pasajero. Maria
    transaction > pnr > passengers[] > lastName alfanumérico 255 Apellido(s) del pasajero. Gonzalez
    transaction > pnr > passengers[] > documentType numérico 2 Tipo de documento (ver valores a continuación). 5
    transaction > pnr > passengers[] > documentNumber alfanumérico 50 Número de documento del pasajero. P12345678
    transaction > pnr > passengers[] > email alfanumérico 255 Dirección de correo electrónico del pasajero. passenger@example.com
    transaction > pnr > passengers[] > officePhoneNumber alfanumérico 50 Teléfono de oficina del pasajero. +573008765432
    transaction > pnr > passengers[] > homePhoneNumber alfanumérico 50 Teléfono de casa del pasajero. +573002345678
    transaction > pnr > passengers[] > mobilePhoneNumber alfanumérico 50 Teléfono móvil del pasajero. +573001234567
    transaction > pnr > passengers[] > address > country alfanumérico 2 País de la dirección del pasajero (Código ISO). BR
    transaction > pnr > passengers[] > address > city alfanumérico 65 Ciudad de la dirección del pasajero. São Paulo
    transaction > pnr > passengers[] > address > street alfanumérico 255 Dirección (calle) del pasajero. Rua das Flores, 123
    transaction > pnr > itinerary[] > departureDate alfanumérico 19 Fecha de salida en formato UTC. 2022-01-01T23:59:59
    transaction > pnr > itinerary[] > arrivalDate alfanumérico 19 Fecha de llegada en formato UTC. 2022-01-02T23:59:59
    transaction > pnr > itinerary[] > flightNumber alfanumérico 12 Número de vuelo. FL1234
    transaction > pnr > itinerary[] > origin alfanumérico 8 Origen. BOG
    transaction > pnr > itinerary[] > destination alfanumérico 8 Destino. MIA
    transaction > pnr > itinerary[] > travelClass alfanumérico 2 Clase de viaje en el segmento de reserva. Y
    transaction > pnr > itinerary[] > ticketType alfanumérico 50 Tipo de boleto. E-TICKET

    Llamada a la API

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


    Ejemplo de una Solicitud:

    {
      "transaction": {
        "order": {
          ...
        },
        "creditCard": {
          ...
        },
        "extraParameters": {
          ...
        },
        "pnr": {
          "id": "abc123",
          "reservationAgent": {
            "id": "def456",
            "firstName": "CO",
            "lastName": "CO",
            "email": "first.last@example.org",
            "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": "first.last@example.com",
              "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": "first.last@example.com",
              "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"
            }
          ]
        }
      }
    }
    


    Ejemplo de una Solicitud:

    <request>
      ...
      <transaction>
        <order>
          ...
        </order>
        <payer>
          ...
        </payer>
        <creditCard>
          ...
        </creditCard>
        <extraParameters>
          ...
        </extraParameters>
        <pnr>
          <id>abc123</id>
          <reservationAgent>
            <id>def456</id>
            <firstName>First Name</firstName>
            <lastName>Last Name</lastName>
            <email>first.last@example.org</email>
            <officePhoneNumber>123456789</officePhoneNumber>
          </reservationAgent>
          <reservationOffice>
            <id>ghi789</id>
            <country>CO</country>
          </reservationOffice>
          <saleOffice>
            <id>jkl012</id>
            <country>CO</country>
          </saleOffice>
          <passengers>
            <!-- Passenger 1 -->
            <passenger>
              <id>mno345</id>
              <country>CO</country>
              <level>1</level>
              <firstName>First Name</firstName>
              <lastName>Last Name</lastName>
              <documentType>0</documentType>
              <documentNumber>987654321</documentNumber>
              <email>first.last@example.com</email>
              <officePhoneNumber>234567891</officePhoneNumber>
              <homePhoneNumber>345678912</homePhoneNumber>
              <mobilePhoneNumber>456789123</mobilePhoneNumber>
              <address>
                <country>CO</country>
                <city>Bogota D.C.</city>
                <street>Calle 1 # 2 - 3</street>
              </address>
            </passenger>
            <!-- Passenger 2 -->
            <passenger>
              <id>mno346</id>
              <country>CO</country>
              <level>1</level>
              <firstName>First Name</firstName>
              <lastName>Last Name</lastName>
              <documentType>0</documentType>
              <documentNumber>55545151515</documentNumber>
              <email>first.last@example.com</email>
              <officePhoneNumber>336259</officePhoneNumber>
              <homePhoneNumber>2156668</homePhoneNumber>
              <mobilePhoneNumber>3001234123</mobilePhoneNumber>
              <address>
                <country>CO</country>
                <city>Bogota D.C.</city>
                <street>Calle 3 # 2 - 1</street>
              </address>
            </passenger>
          </passengers>
          <itinerary>
            <!-- Flight Journey 1 -->
            <segment>
              <departureDate>2022-01-01T23:59:59</departureDate>
              <arrivalDate>2025-01-01T23:59:59</arrivalDate>
              <flightNumber>PQR345</flightNumber>
              <origin>BOGOTA</origin>
              <destination>MADRID</destination>
              <travelClass>U</travelClass>
            </segment>
            <!-- Flight Journey 2 -->
            <segment>
              <departureDate>2022-01-01T23:59:59</departureDate>
              <arrivalDate>2025-01-01T23:59:59</arrivalDate>
              <flightNumber>ARF2525</flightNumber>
              <origin>MADRID</origin>
              <destination>LONDRES</destination>
              <travelClass>EC</travelClass>
            </segment>
          </itinerary>
        </pnr>
        <isTest>false</isTest>
      </transaction>
    </request>
    

    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
    Nombre del Campo Formato Tamaño Descripción Obligatorio
    language Alfanumérico 2 Idioma utilizado en la petición, este idioma se utiliza para mostrar los mensajes de error generados. Ver idiomas soportados.
    command Alfanumérico Máx:32 Asigna GET_BANKS_LIST.
    test (JSON)
    isTest (XML)
    Booleano Asigna true si la petición es en modo pruebas. Si no, asigna false.
    merchant Objeto Este objeto tiene los datos de autenticación.
    merchant > apiLogin Alfanumérico Min:12 Máx:32 Usuario o login entregado por PayU. Cómo obtengo mi API Login
    merchant > apiKey Alfanumérico Min:6 Máx:32 Contraseña entregada por PayU. Cómo obtengo mi API Key
    bankListInformation Objeto Este objeto tiene la información de la consulta.
    bankListInformation > paymentMethod Alfanumérico Asigna PSE.
    bankListInformation > paymentCountry Alfanumérico Asigna CO.
    Respuesta
    Nombre del Campo Formato Tamaño Descripción
    code Alfanumérico Código de respuesta de la transacción. Los valores posibles son ERROR y SUCCESS.
    error Alfanumérico Máx:2048 Mensaje de error asociado cuando el código de respuesta es ERROR.
    banks Objeto Lista de bancos disponibles en PSE.
    banks > id Numérico Identificador interno del banco.
    banks > description Alfanumérico Nombre del banco para ser mostrado en la lista.
    banks > pseCode Alfanumérico Código para enviar en el extra parámetro FINANCIAL_INSTITUTION_CODE de la solicitud de pago.

    Llamado a la API

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


    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": "BAN.CO",
                "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"
            }
        ]
    }
    

    Ejemplo de una Solicitud:

    <request>
        <language>en</language>
        <command>GET_BANKS_LIST</command>
        <merchant>
            apiLogin>pRRXKOl8ikMmt9u</apiLogin>
            <apiKey>4Vj8eK4rloUd272L48hsrarnUA</apiKey>
        </merchant>
        <isTest>false</isTest>
        <bankListInformation>
            <paymentMethod>PSE</paymentMethod>
            <paymentCountry>CO</paymentCountry>
        </bankListInformation>
    </request>
    

    Ejemplo de una Respuesta:

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

    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
    Nombre del Campo Formato Tamaño Descripción Obligatorio
    language Alfanumérico 2 Idioma utilizado en la petición, este idioma se utiliza para mostrar los mensajes de error generados. Ver idiomas soportados.
    command Alfanumérico Máx:32 Asigna GET_PAYMENT_METHODS.
    test (JSON)
    isTest (XML)
    Booleano Asigna true si la petición es en modo pruebas. Si no, asigna false.
    merchant Objeto Este objeto tiene los datos de autenticación.
    merchant > apiLogin Alfanumérico Min:12 Máx:32 Usuario o login entregado por PayU. Cómo obtengo mi API Login
    merchant > apiKey Alfanumérico Min:6 Máx:32 Contraseña entregada por PayU. Cómo obtengo mi API Key
    Respuesta
    Nombre del Campo Formato Tamaño Descripción
    code Alfanumérico Código de respuesta de la transacción. Los valores posibles son ERROR y SUCCESS.
    error Alfanumérico Máx:2048 Mensaje de error asociado cuando el código de respuesta es ERROR.
    paymentMethods Objeto Lista de métodos de pago.
    paymentMethods > paymentMethodComplete Objeto Este objeto tiene la información de un método de pago.
    paymentMethods > paymentMethodComplete > id Numérico Identificador del método de pago.
    paymentMethods > paymentMethodComplete > description Alfanumérico Máx:32 Nombre del método de pago.
    paymentMethods > paymentMethodComplete > country Alfanumérico 2 Código ISO del país del método de pago.

    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.


    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
            }
        ]
    }
    

    Ejemplo de una Solicitud:

    <request>
       <language>en</language>
       <command>GET_PAYMENT_METHODS</command>
       <merchant>
          <apiLogin>pRRXKOl8ikMmt9u</apiLogin>
          <apiKey>4Vj8eK4rloUd272L48hsrarnUA</apiKey>
       </merchant>
       <isTest>false</isTest>
    </request>
    

    Ejemplo de una Respuesta:

    <paymentMethodsResponse>
        <code>SUCCESS</code>
        <paymentMethods>
            <paymentMethodComplete>
                <id>36</id>
                <description>EFECTY</description>
                <country>CO</country>
                <enabled>true</enabled>
            </paymentMethodComplete>
            <paymentMethodComplete>
                <id>10</id>
                <description>MASTERCARD</description>
                <country>CO</country>
                <enabled>true</enabled>
            </paymentMethodComplete>
        </paymentMethods>
    </paymentMethodsResponse>
    

    Ping

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

    Parámetros para la Solicitud y la Respuesta

    Solicitud
    Nombre del Campo Formato Tamaño Descripción Obligatorio
    language Alfanumérico 2 Idioma utilizado en la petición, este idioma se utiliza para mostrar los mensajes de error generados. Ver idiomas soportados.
    command Alfanumérico Máx:32 Asigna PING.
    test (JSON)
    isTest (XML)
    Booleano Asigna true si la petición es en modo pruebas. Si no, asigna false.
    merchant Objeto Este objeto tiene los datos de autenticación.
    merchant > apiLogin Alfanumérico Min:12 Máx:32 Usuario o login entregado por PayU. Cómo obtengo mi API Login
    merchant > apiKey Alfanumérico Min:6 Máx:32 Contraseña entregada por PayU. Cómo obtengo mi API Key
    Respuesta
    Nombre del Campo Formato Tamaño Descripción
    code Alfanumérico Código de respuesta de la transacción.
    error Alfanumérico Máx:2048 Mensaje de error asociado si ocurrió un error.
    transactionResponse Objeto Máx:2048 La respuesta del método PING si ocurrió un error.

    Llamado a la API

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


    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
    }
    

    Ejemplo de una Solicitud:

    <request>
       <language>en</language>
       <command>PING</command>
       <merchant>
          <apiLogin>pRRXKOl8ikMmt9u</apiLogin>
          <apiKey>4Vj8eK4rloUd272L48hsrarnUA</apiKey>
       </merchant>
       <isTest>false</isTest>
    </request>
    

    Ejemplo de una Respuesta:

    <paymentResponse>
        <code>SUCCESS</code>
    </paymentResponse>
    
    Última modificación 28 de noviembre de 2024: Documentation Updates (d002e8d69)