PSE

Aprenda a integrar su solución para procesar pagos con PSE en Colombia.

Transferencia Bancaria - PSE

PSE (Pagos Seguros en Línea) es un sistema de pago en línea muy utilizado en Colombia. Permite realizar transacciones electrónicas seguras al permitir a los usuarios efectuar pagos directamente desde sus cuentas bancarias. Existen dos flujos posibles para realizar pagos:

  1. Primer flujo:
    Se proporciona una URL al usuario, quien al acceder puede seleccionar su banco de preferencia para completar el pago. Posteriormente, será redirigido automáticamente al sitio web del banco seleccionado.

  2. Segundo flujo:
    Inicialmente, se utiliza la operación obtener lista de bancos para obtener la lista de bancos disponibles. Esta lista puede ser desplegada en el proceso de checkout del comercio. Durante el procesamiento de la compra, se envían los datos necesarios para redirigir al usuario directamente al banco elegido, utilizando los campos adicionales en la solicitud.

Parámetros del Request - flujo URL selección de banco

Es necesario incluir campos específicos para que este método de pago funcione correctamente. Consulte el artículo operación de compra para obtener información detallada sobre la autenticación, los idiomas de la respuesta y los parámetros de compra básica como el monto y la moneda.

PropiedadTipo¿Obligatorio?Descripción
PaymentMethodstringEncuentre el valor en la tabla de Medios de pago.
TargetCountryISOstringIndica el país destino.
CustomerEmailstringCorreo electrónico del cliente.
CustomerFirstNamestringNoNombre del cliente.
CustomerLastNamestringNoApellido del cliente.
CustomerDocumentTypestringTipo de documento del cliente.
Consulte la tabla de tipos de documento para ver los posibles valores.
CustomerDocumentNumberstringNúmero de documento del cliente.
CustomerPhoneNumberstringNúmero de teléfono del cliente.
CustomerAddressCountrystringPaís del cliente.
CustomerAddressStatestringEstado del cliente.
CustomerAddressCitystringCiudad del cliente.
CustomerAddressAddressDetailstringDetalle de la dirección del cliente.
CustomerAddressPostalCodestringNoCódigo postal del cliente.
RedirectionUrl_ApprovedstringNoSe notifica a esta URL cuando el estado de la compra es Approved.
RedirectionUrl_RejectedstringNoSe notifica a esta URL cuando el estado de la compra es Rejected.
RedirectionUrl_CanceledstringNoSe notifica a esta URL cuando el estado de la compra es Canceled.
RedirectionUrl_PendingstringNoSe notifica a esta URL cuando el estado de la compra es Pending.
RedirectionUrl_NotifystringNoURL del Webhook de notificación. Se notifica a esta URL el estado de la compra una vez que el procesador del medio de pago notifica a Bamboo. La notificación a esta URL es un POST REST con payload en JSON y no una redirección. Puede ser también estática y configurada por el equipo de soporte.

Parámetros adicionales - flujo URL directo al banco

PropiedadTipo¿Obligatorio?Descripción
MetaDataInfinancialInstitutionCodestringNoCódigo del banco donde se realizará la transacción.
Este código debe ser obtenido previamente desde el endpoint de lista de bancos
MetaDataInpersonTypestringNoRepresenta el tipo de persona que realiza la transacción.
Valores posibles:
1 → Persona Natural (individuos).
2 → Persona Jurídica (empresas).
MetaDataInidentificationTypestringNoTipo de identificación del usuario que realiza la transacción.
Valores posibles:
RegistroCivilDeNacimiento
TarjetaDeIdentidad
CedulaDeCiudadania
TarjetaDeExtranjeria
CedulaDeExtranjeria
Pasaporte
DocumentoDeIdentificacionExtranjero
NIT

El estado de la compra para Medios de Pago Alternativos permanecerá en Pending hasta que el cliente complete el pago

Ejemplo del Request

{
    "PaymentMethod": "PSE",
    "Order": "CH2023-001",
    "Amount": 100000,
    "Currency": "COP",
    "Description": "Purchase Test",
    "TargetCountryISO": "CO",
    "Customer": {
        "Address": {
            "Country": "COL",
            "State": "Antioquia",
            "City": "Medellin",
            "AddressDetail": "Cra 45 # 76B Sur - 57"
        },
        "FirstName": "Miguel",
        "LastName": "Moreno",
        "DocumentNumber": "52960268",
        "DocumentType": "CC.CO",
        "PhoneNumber":"3188060418",
        "Email": "mmoreno@mail.com"
    },
    "Redirection": {
        "Url_Approved": "https://dummystore.com/checkout/response",
        "Url_Rejected": "https://dummystore.com/checkout/response",
        "Url_Canceled": "https://dummystore.com/checkout/response",
        "Url_Pending": "https://dummystore.com/checkout/response"
    }
}

Parámetros del Response

Retornamos la compra (Purchase) con estado Pending for Redirection y un objeto Action con Reason como REDIRECTION_NEEDED_EXTERNAL_SERVICE y el parámetro URL con la URL del servicio externo. Debe redirigir al cliente a esta URL para finalizar el pago siguiendo el flujo PSE. En este flujo, su pagador selecciona su banco, elige si es una persona física o jurídica y su tipo de documento.
Si se envía el banco específico, obtenido y seleccionado desde la operación obtener lista de bancos, la redirección llevará directamente al sitio web del banco elegido.

PrintScreen

Según el resultado de la transacción, el pagador será dirigido a la URL definida en el objeto Redirection. Para más información sobre los parámetros del Response, consulte la sección de parámetros de la creación de la compra.

Ejemplo del Response

{
    "TransactionId": "79632697147789184",
    "Result": "ACTION_REQUIRED",
    "Status": "PENDING",
    "ErrorCode": null,
    "ErrorDescription": null,
    "Created": "2024-08-07T17:51:54.620",
    "AuthorizationDate": null,
    "AuthorizationCode": null,
    "Amount": 100000,
    "Currency": "COP",
    "TaxableAmount": null,
    "Tip": null,
    "Url": "https://api.stage.bamboopayment.com/Purchase/79632697147789184",
    "MetadataOut":null,
    "Action": {
        "SessionId": "CA_cc155768-74d9-4efd-8e55-42411b4dd3cf",
        "URL": "https://redirect.stage.bamboopayment.com/CA_cc155768-74d9-4efd-8e55-42411b4dd3cf",
        "Reason": "REDIRECTION_NEEDED_EXTERNAL_SERVICE"
    },
     "PaymentMethod": {
        "Brand": "PseAvanza",
        "CardOwner": null,
        "Bin": null,
        "IssuerBank": null,
        "Type": "BankTransfer",
        "Expiration": null,
        "Last4": null
    }
}

Endpoint de obtención de lista de bancos

  • Producción: https://pse.prod.bamboopayment.com/api/Bank/GetBanks
  • Stage: https://pse.stage.bamboopayment.com/api/Bank/GetBanks

Ejemplo del Response

[
  {
    "code": 0,
    "name": "A continuación seleccione su banco"
  },  {
    "code": 1815,
    "name": "ALIANZA FIDUCIARIA"
  },  {
    "code": 1558,
    "name": "BAN100"
  },  {
    "code": 15580,
    "name": "BAN100QA"
  },  
  ...
]

Ejemplo del Request para banco específico

{
    "PaymentMethod": "PSE",
    "Order": "CH2023-001",
    "Amount": 100000,
    "Currency": "COP",
    "Description": "Purchase Test",
    "TargetCountryISO": "CO",
    "Customer": {
        "Address": {
            "Country": "COL",
            "State": "Antioquia",
            "City": "Medellin",
            "AddressDetail": "Cra 45 # 76B Sur - 57"
        },
        "FirstName": "Miguel",
        "LastName": "Moreno",
        "DocumentNumber": "52960268",
        "DocumentType": "CC.CO",
        "PhoneNumber":"3188060418",
        "Email": "mmoreno@mail.com"
    },
    "Redirection": {
        "Url_Approved": "https://dummystore.com/checkout/response",
        "Url_Rejected": "https://dummystore.com/checkout/response",
        "Url_Canceled": "https://dummystore.com/checkout/response",
        "Url_Pending": "https://dummystore.com/checkout/response"
    },
    "MetaDataIn": {
        "financialInstitutionCode": "1077",
        "personType": "1",
        "identificationType": "DocumentoDeIdentificacionExtranjero"
    }
}
footer
Última modificación 20 de diciembre de 2024

© Bamboo | All rights reserved 2024