Primeros pasos
Para saber más sobre Payouts, consulte este artículo.
Configurar la autenticación
Todos los métodos utilizados en la API de Compras requieren los siguientes encabezados de autenticación.
Llave | Valor | Comentarios |
---|---|---|
Content-Type | application/json | Con este encabezado, el request se transmite en formato JSON. |
Authorization | Basic {{Merchant Private Key}} | Envíe el {{Merchant Private Key}} (su identificador de comercio) y la palabra Basic .Ejemplo: Basic RVkeLr-86_iTzSMLvDtuyQ-1zqIcsmFG-oSzncn_uFv-nj7bhB3rtZg__ |
DigitalSignature | {{DigitalSignature}} | Firma para validar la transacción utilizando el algoritmo HmacSHA256. Este encabezado es obligatorio únicamente para la creación del Payout. |
Firmar el mensaje
Construya el hash utilizando los parámetros country
, amount
, currency
, reference
y type
del Request. Bamboo le envía secret-key
y MerchantPrivateKey
cuando firma el contrato de onboarding.
Código de ejemplo de firma
var json = JSON.parse(request.data);
let signdata = {Country:json.country, Amount: json.amount,Currency:json.currency, Reference:json.reference, Type: json.type};
var data = JSON.stringify(signdata);
var hexHash = CryptoJS.HmacSHA256(data, secret-key);
var hash = hexHash.toString(CryptoJS.enc.Hex);
Métodos de la API
La API de Payouts ofrece cuatro métodos que puede utilizar cuando solicite Payouts.
Obtener listado de bancos
Este método le permite obtener el listado de bancos disponibles en un país.
URL del Request
Debe invocar un request GET a las siguientes URL de acuerdo con sus necesidades.
- Producción:
https://payout-api.bamboopayment.com/api/bank/country/{{Country}}
- Stage:
https://payout-api.stage.bamboopayment.com/api/bank/country/{{Country}}
Donde {{Country}}
representa el código ISO del país que desea consultar, utilizando el formato ISO 3166-2. Listado de países disponibles de Payouts.
Parámetros del Response
Parámetro | Formato | Tamaño | Descripción |
---|---|---|---|
id | integer | - | Identificación interna del banco. |
countryIsoCode | string | 2 | País al que pertenece el banco. |
bankCode | string | 4 | Código interno del banco utilizado en el parámetro payee.bankaccount.codebank cuando solicite el Payout. |
bankName | string | - | Nombre del banco. |
payoutType | integer | - | Tipo de payout. Establecer cualquiera de los siguientes valores:
|
Info
Para Colombia, en el request se debe diferenciar si la entidad es banco o billetera y en consecuencia si el type es 3
(billetera) o 2
(transferencia bancaria).
En la respuesta de la operación, se retorna "payoutType": 3
o "payoutType": 2
según corresponda. Listado de bancos y billeteras en Colombia.
Ejemplo del Response
[ {
"id": 680,
"countryIsoCode": "CO",
"bankCode": "1507",
"bankName": "NEQUI",
"payoutType": 3
},
{
"id": 609,
"countryIsoCode": "CO",
"bankCode": "1058",
"bankName": "BANCO PROCREDIT COLOMBIA",
"payoutType": 2
},
{
...
} ]