Título | Open Banking BNB, servicios para negocios |
Versión | 2.0.0 |
Protocolo de desarrolo | HTTP |
Protocolo de producción | HTTPS |
El Open Banking BNB, permite integrar a través de APIs (interfaces de programación de aplicaciones) nuevas capacidades financieras en productos tecnológicos e innovadores de tu empresa, con el objetivo de incrementar el valor a tus plataformas y soluciones digitales.
SERVICIOS DISPONIBLES:Campos de la solicitud requeridos para poder ejecutar el extracto de los últimos 10 movimientos
Campos
Campo | Descripción |
userKey | Clave de usuario |
accountNumber | Número de cuenta |
Parámetros Header
Content-Type |
Tipo de cuerpo MIME de la solicitud. Ejemplo: application/json |
Sandbox URI
http://bnbapideveloperv1.azurewebsites.net/Ejemplo:
{
"userKey": e8k7crKA9S0:APA91bGDZ76NccQkYXIzS5
"accountNumber": 1501243627
}
RESPUESTA:
Campos de Respuesta
Campo | Descripción |
accountNumber | Número de cuenta |
accountType | Tipo de cuenta |
List movements | Lista de movimientos bancarios |
Campos de la solicitud requeridos para poder obtener el saldo de una cuenta determinada
Campos
Campo | Descripción |
userKey | Clave de usuario |
accountNumber | Número de cuenta |
Parámetros Header
Content-Type |
Tipo de cuerpo MIME de la solicitud. Ejemplo: application/json |
Sandbox URI
http://bnbapideveloperv1.azurewebsites.net/Ejemplo:
{
"userKey": e8k7crKA9S0:APA91bGDZ76NccQkYXIzS5
"accountNumber": 1501243627
}
RESPUESTA:
Campos de Respuesta
Campo | Descripción |
account | Cuenta |
Campos de la solicitud requeridos para poder obtener el saldos de todas las cuentas
Campos
Campo | Descripción |
userKey | Clave de usuario |
Parámetros Header
Content-Type |
Tipo de cuerpo MIME de la solicitud. Ejemplo: application/json |
Sandbox URI
http://bnbapideveloperv1.azurewebsites.net/Ejemplo:
{
"userKey": e8k7crKA9S0:APA91bGDZ76NccQkYXIzS5
}
RESPUESTA:
Campos de Respuesta
Campo | Descripción |
success | Resultado |
message | Mensaje |
code | Código de Respuesta |
Campos de la solicitud requeridos para poder ejecutar el registro de la Boleta de Garantía
Campos
Campo | Descripción |
userKey | Clave de usuario |
clientCode | Código de cliente |
bailType | Tipo de fianza |
bailConcept | Concepto de la fianza |
operationType | Tipo de operación: Operación Prepagada/Operación bajo línea de crédito |
isRenewal | Si es renovación de otra boleta de garantía |
guaranteeBillRenewal | Nro. Operación de la boleta que se está renovando (si aplica) |
Currency | Moneda de la boleta |
amountGuaranteeBill | Monto de la boleta |
termEndDate | Fecha fin de vigencia de la boleta |
termAmountDays | Cantidad de días de vigencia de la boleta |
accountNumberForPrepaid | Número de cuenta cuando el tipo de operación es prepago |
loanLineAccountNumber | Línea de crédito cuando el tipo de operación es bajo línea de crédito |
branchOfficePick | Oficina en la que se recogerá el título |
fullNamePick | Nombre de la persona que recogerá el título |
documentNumberPick | Número de documento de la persona que recogerá el título |
guaranteeInFavorOf | Boleta de garantía en favor de |
guaranteeObjectFor | Objeto de la boleta de garantía |
guaranteeOnBehalfOf | Boleta de garantía por cuenta de |
accountNumberCommissionPay | Número de cuenta de donde se debitará la comisión |
includeTitle | Incluir el texto: Título irrevocable, renovable y de ejecución inmediata en el objeto de la boleta |
Parámetros Header
Content-Type |
Tipo de cuerpo MIME de la solicitud. Ejemplo: application/json |
Sandbox URI
http://bnbapideveloperv1.azurewebsites.net/Ejemplo:
{
"userKey": "XrYi9OrZ0CCw7LGgOVDFh8aYT3M5KnPyAt",
"clientCode":"1010026582",
"bailType""1014",
"bailConcept""5",
"operationType""1",
"isRenewal""true",
"guaranteeBillRenewal""1012227119",
"currency""2003",
"amountGuaranteeBill""133",
"termEndDate""2017-08-01",
"termAmountDays""365",
"accountNumberForPrepaid""1520468087",
"loanLineAccountNumber""1520468087",
"branchOfficePick""1",
"fullNamePick""IVAN SERGIO ESPINAL ALVAREZ",
"documentNumberPick""8264274",
"guaranteeInFavorOf""TERCERO",
"guaranteeObjectFor""OBJETO",
"guaranteeOnBehalfOf""GARANTE",
"accountNumberCommissionPay""1520468087",
"includeTitle""true",
}
RESPUESTA:
Campos de Respuesta
Campo | Descripción |
operationNumber | Número de operación |
Campos de la solicitud requeridos para poder realizar el Pago Simple
Campos
Campo | Descripción |
userKey | Clave de usuario |
destinationAccountNumber | Número de cuenta origen |
currency | Moneda |
reference | Referencia de la transacción |
onlyUse | Uso único |
Parámetros Header
Content-Type |
Tipo de cuerpo MIME de la solicitud. Ejemplo: application/json |
Sandbox URI
http://bnbapideveloperv1.azurewebsites.net/Ejemplo:
{
"userKey": "e8k7crKA9S0:APA91bGDZ76NccQkYXIzS5",
"sourceAccountNumber":"1520468087",
"destinationAccountNumber""1520468060",
"currency""2003",
"ammount""10",
"reference""TEST",
"onlyUse""false",
}
RESPUESTA:
Campos de Respuesta
Campo | Descripción |
qr | Imagen del QR generado |
qrCode | Código del QR |
success | Resultado |
message | Mensaje |
code | Código de Respuesta |
Con éste método se genera un token de seguridad que se utilizará para hacer las solicitudes posteriores. Recibe como parámetros el accountId y el authorizationId otorgados por el Banco.
Campos
Campo | Descripción |
accountId | Identificador de cuenta |
authorizationId | Identificador de autorización |
Parámetros Header
Content-Type |
Tipo de cuerpo MIME de la solicitud. Ejemplo: application/json |
Sandbox URI
https://clientauthenticationapiv2.azurewebsites.net/api/v1/Ejemplo:
{
"accountId": "I8Bl1/IZBWyZk+qJCaMahw==",
"authorizationId":"xGTy/5MpdpjgSeuBPIEVwA=="
}
RESPUESTA:
Campos de Respuesta
Campo | Descripción |
success | Resultado |
message | Mensaje |
Genera un QR de cobro simple, devuelve el mismo en un array de bytes
Campos
Campo | Descripción |
currency | Moneda del pago |
gloss | Descripción del pago (EJ. ID de reserva) |
amount | Monto del pago |
expirationDate | Fecha de caducidad del QR |
singleUse | Define si el uso del QR es único o no |
Parámetros Header
Content-Type |
Tipo de cuerpo MIME de la solicitud. Ejemplo: application/json |
Sandbox URI
https://qrsimpleapiv2.azurewebsites.net/api/v1/Ejemplo:
{
"currency": "BOB",
"gloss":"Prueba BOA",
"amount":"20",
"singleUse":"true",
"expirationDate":"2019-09-10"
}
RESPUESTA:
Campos de Respuesta
Campo | Descripción |
success | Resultado |
message | Mensaje |
Obtiene información de los Qrs generados en una fecha dada.
Campos
Campo | Descripción |
generationDate | Fecha en la que se generaron los QRs |
Parámetros Header
Content-Type |
Tipo de cuerpo MIME de la solicitud. Ejemplo: application/json |
Sandbox URI
https://qrsimpleapiv2.azurewebsites.net/api/v1/Ejemplo:
{
"generationDate": "2020-12-31"
}
RESPUESTA:
Campos de Respuesta
Campo | Descripción |
dTOqrDetails | Lista de detalles de los QRs generados en la fecha enviada |
success | Flag que define si la consulta fue exitosa o no |
message | Mensaje de error en caso de que la consulta no fuera exitosa. |
Obtiene el estado de un QR según su identificador
Campos
Campo | Descripción |
qrId | Identificador del QR consultado |
Parámetros Header
Content-Type |
Tipo de cuerpo MIME de la solicitud. Ejemplo: application/json |
Sandbox URI
https://qrsimpleapiv2.azurewebsites.net/api/v1/Ejemplo:
{
"qrId": "59"
}
RESPUESTA:
Campos de Respuesta
Campo | Descripción |
id | Identificador del QR consultado |
qrId | 1=No Usado; 2= Usado 3=Expirado; 4=Con error; |
expirationDate | Fecha de caducidad del QR |
success | Flag que define si la consulta fue exitosa o no |
message | Mensaje de error en caso de que la consulta no fuera exitosa. |
Obtiene el saldo de las cuentas del cliente autenticado, no recibe ningún parámetro mas que la cabecera que contiene el token con las credenciales del cliente.
Campos
Parámetros Header
Content-Type |
Tipo de cuerpo MIME de la solicitud. Ejemplo: application/json |
Sandbox URI
https://accountapiv1.azurewebsites.net/api/v1/Ejemplo:
RESPUESTA:
Campos de Respuesta
Campo | Descripción |
accountBalance | Estructura que contiene la lista de saldos de las cuentas asociadas al cliente autenticado |
accountNumber | Numero de cuenta del cliente |
accountType | id del tipo de la cuenta. 1=Cuenta corriene; 2=Caja de ahorro |
Currency | Moneda de la cuenta |
balanceAmount | Saldo actual de la cuenta |
partyName | Nombre o razón social del cliente autenticado |
success | Flag que define si la consulta fue exitosa o no |
message | Mensaje de error en caso de que la consulta no fuera exitosa |
Obtiene el saldo de las cuentas del cliente autenticado, no recibe ningún parámetro mas que la cabecera que contiene el token con las credenciales del cliente.
Campos
Campo | Descripción |
AccountNumber | Número de cuenta para la consulta |
Parámetros Header
Content-Type |
Tipo de cuerpo MIME de la solicitud. Ejemplo: application/json |
Sandbox URI
https://accountapiv1.azurewebsites.net/api/v1/Ejemplo:
{
"AccountNumber": "18888888888"
}
RESPUESTA:
Campos de Respuesta
Campo | Descripción |
accountBalance | Estructura que contiene la lista de saldos de las cuentas asociadas al cliente autenticado |
accountNumber | Numero de cuenta del cliente |
accountType | id del tipo de la cuenta. 1=Cuenta corriene; 2=Caja de ahorro |
Currency | Moneda de la cuenta |
balanceAmount | Saldo actual de la cuenta |
partyName | Nombre o razón social del cliente autenticado |
success | Flag que define si la consulta fue exitosa o no |
message | Mensaje de error en caso de que la consulta no fuera exitosa |
Genera un QR de cobro simple, devuelve el mismo en un array de bytes
Campos
Campo | Descripción |
QueryCompanyId | Identificador de la empresa para la cual se esta solicitando el QR |
currency | Moneda del pago |
gloss | Descripción del pago (EJ. ID de reserva) |
amount | Monto del pago |
expirationDate | Fecha de caducidad del QR |
singleUse | Define si el uso del QR es único o no |
Parámetros Header
Content-Type |
Tipo de cuerpo MIME de la solicitud. Ejemplo: application/json |
Sandbox URI
https://accountapiv1.azurewebsites.net/api/v1/Ejemplo:
{
"QueryCompanyId": 100
"currency": "BOB"
"gloss": "Prueba QR"
"amount": 20
"expirationDate": "2021-09-10"
"singleUse": true
}
RESPUESTA:
Campos de Respuesta
Campo | Descripción |
id | Identificador del QR generado |
qr | Array de bytes que contiene la imagen del QR. |
Success | Flag que define si la consulta fue exitosa o no |
Message | Mensaje de error en caso de que la consulta no |
Este servicio genera un token de seguridad que se utilizará para hacer todas las solicitudes posteriores. El mismo recibe como parámetros de entrada el “accountId” y el “authorizationId” otorgados por el Banco.
Campos
Campo | Descripción |
accountId | Identificador de cuenta |
authorizationId | Identificador de autorización |
Parámetros Header
Content-Type |
Tipo de cuerpo MIME de la solicitud. Ejemplo: application/json |
Sandbox URI
http://test.bnb.com.bo/ClientAuthentication.API/api/v1/auth/tokenEjemplo:
{
"accountId": "s9CG8FE7Id75ef2jeX9bUA==",
"authorizationId":"713K7PvTlACs1gdmv9jGgA=="
}
RESPUESTA:
Campos de Respuesta
Campo | Descripción |
success | Obtendrá como resultado correcto: true, caso contrario: false. |
message | Obtendrá el "token" como resultado correcto. Caso contrario "mensaje de error". |
Genera un código QR de domiciliación con monto fijo: - El código QR debe ser escaneado y aprobado por otra EIF para su efectividad. - Debe generarse un código QR para cada domiciliación de un cliente. - Adicionalmente se registra su respectivo plan de pagos para control posterior.
Campos
Campo | Descripción |
currencyCode | Moneda que se va a utilizar para la transacción: - 1: Bolivianos. - 2: Dólares. |
amount | Monto fijo debe ser mayor que cero “0”. Maneja el punto(.) con 2 decimales. |
reference | Descripción del servicio a domiciliar. |
serviceCode | Código de servicio o contrato que identifica el servicio a domiciliar. |
dueDate | Fecha de vencimiento del QR de domiciliación. |
installmentsQuantity | Especifica el número de cuotas en el que se debe dividir el monto a domiciliar. |
chargeType | Tipo de domiciliación: - 1: automático. - 2: manual. |
chargeDate | (Es requerido cuando “chargeType” es definido como automático) Día de cobro de la domiciliación. |
Parámetros Header
Content-Type |
Tipo de cuerpo MIME de la solicitud. Ejemplo: application/json |
Sandbox URI
http://test.bnb.com.bo/DirectDebit/api/Services/GetQRFixedAmountEjemplo:
{
"currencyCode": 1,
"amount":1000,
"reference":"Pago de telefonía TIGO",
"serviceCode":"KH2XI",
"dueDate":"2023-12-10",
"installmentsQuantity":1,
"chargeType":1,
"chargeDate":20
}
RESPUESTA:
Campos de Respuesta
Campo | Descripción |
method | Tipo de registro de domiciliación: - “QR”. |
qrId | Código único de domiciliación. |
qrContent | Base 64 que contiene la imagen del QR Domiciliación. |
installments | Cuotas disponibles en el plan de pagos. |
id | Identificador de la cuota. |
amount | Monto de la cuota. |
success | Obtendrá como resultado correcto: true, caso contrario: false. |
message | Obtendrá vacio(“”) como resultado correcto, caso contrario "mensaje de error". |
code | Código de respuesta. |
Genera un código QR de domiciliación con monto variable: - El código QR debe ser escaneado y aprobado por otra EIF para su efectividad. - Una vez escaneado y confirmado el QR, la domiciliación está vigente hasta que el destinatario revoque la misma. - Debe generarse un código QR para cada domiciliación de un cliente. - Adicionalmente se registra su respectivo plan de pagos para control posterior.
Campos
Campo | Descripción |
currencyCode | Moneda que se va a utilizar para la transacción: - 1: Bolivianos. - 2: Dólares. |
amount | Monto fijo debe ser mayor que cero “0”. Maneja el punto(.) con 2 decimales. |
reference | Descripción del servicio a domiciliar. |
serviceCode | Código de servicio o contrato que identifica el servicio a domiciliar. |
dueDate | Fecha de vencimiento del QR de domiciliación. |
installmentsQuantity | Especifica el número de cuotas en el que se debe dividir el monto a domiciliar. |
chargeType | Tipo de domiciliación: - 1: automático. - 2: manual. |
chargeDate | (Es requerido cuando “chargeType” es definido como automático) Día de cobro de la domiciliación. |
Parámetros Header
Content-Type |
Tipo de cuerpo MIME de la solicitud. Ejemplo: application/json |
Sandbox URI
http://test.bnb.com.bo/DirectDebit/api/Services/GetQRVariableAmountEjemplo:
{
"currencyCode": 1,
"amount":1000,
"reference":"Pago de internet",
"serviceCode":"KH2XI",
"dueDate":"2023-12-10",
"installmentsQuantity":1,
"chargeType":1,
"chargeDate":15
}
RESPUESTA:
Campos de Respuesta
Campo | Descripción |
method | Tipo de registro de domiciliación: - “QR”. |
qrId | Código único de domiciliación. |
qrContent | Base 64 que contiene la imagen del QR Domiciliación. |
installments | Cuotas disponibles en el plan de pagos. |
id | Identificador de la cuota. |
amount | El monto de la cuota se muestra en cero “0” hasta que se actualice el mismo. |
success | Obtendrá como resultado correcto: true, caso contrario: false. |
message | Obtendrá vacio(“”) como resultado correcto, caso contrario "mensaje de error". |
code | Código de respuesta. |
Recupera una lista de las domiciliaciones generadas dentro de un intervalo de fechas.
Campos
Campo | Descripción |
startDate | Fecha de inicio de la consulta.El formato que maneja es (yyyy-MM-dd). |
closureDate | Fecha final de la consulta.El formato que maneja es (yyyy-MM-dd). Tiene como restricción la consulta de 30 días. |
Parámetros Header
Content-Type |
Tipo de cuerpo MIME de la solicitud. Ejemplo: application/json |
Sandbox URI
http://test.bnb.com.bo/DirectDebit/api/Services/GetTransactionOutgoingEjemplo:
{
"startDate": "2023-01-01",
"closureDate":"2023-01-22"
}
RESPUESTA:
Campos de Respuesta
Campo | Descripción |
qrId | Código único domiciliación. |
type | Tipo de domiciliación: - 1: monto fijo. - 2: monto variable. |
reference | Descripción de la domiciliación. |
active | Estado de la domiciliación: - true: activa. - false: pendiente de escaneo. |
success | Obtendrá como resultado correcto: true, caso contrario: false. |
message | Obtendrá vacio(“”) como resultado correcto, caso contrario "mensaje de error". |
code | Código de respuesta. |
Recupera la lista de cobros de domiciliaciones rechazadas, dentro de un intervalo de fechas.
Campos
Campo | Descripción |
startDate | Fecha de inicio de la consulta.El formato que maneja es (yyyy-MM-dd). |
closureDate | Fecha final de la consulta.El formato que maneja es (yyyy-MM-dd). Tiene como restricción la consulta de 30 días. |
Parámetros Header
Content-Type |
Tipo de cuerpo MIME de la solicitud. Ejemplo: application/json |
Sandbox URI
http://test.bnb.com.bo/DirectDebit/api/Services/GetTransactionRejectedEjemplo:
{
"startDate": "2023-01-01",
"closureDate":"2023-01-22"
}
RESPUESTA:
Campos de Respuesta
Campo | Descripción |
qrId | Código único domiciliación. |
type | Tipo de domiciliación: - 1: monto fijo. - 2: monto variable. |
retryNumber | Contador de reintentos asignado para cada cobro. |
retryDate | Ultima fecha de reintento registrada. |
result | Descripción del último rechazo. |
success | Obtendrá como resultado correcto: true, caso contrario: false. |
message | Obtendrá vacio(“”) como resultado correcto, caso contrario "mensaje de error". |
code | Código de respuesta. |
Envía una solicitud para una orden de débito asociada a una domiciliación bancaria existente con otra EIF.
Campos
Campo | Descripción |
qrId | Código único domiciliación. |
installmentId | Identificador de la cuota. |
amount | Monto para el cobro de la cuota, debe ser mayor que cero “0”. |
fundsSource | Declaración del origen de fondos. |
fundsDestination | Declaración del destino de fondos. |
Parámetros Header
Content-Type |
Tipo de cuerpo MIME de la solicitud. Ejemplo: application/json |
Sandbox URI
http://test.bnb.com.bo/DirectDebit/api/Services/SendDebitOrderEjemplo:
{
"qrId": "ACJSS1231",
"installmentId":1,
"amount":1000,
"fundsSource":"Salario",
"fundsDestination":"Pago de Servicios"
}
RESPUESTA:
Campos de Respuesta
Campo | Descripción |
transactionId | Código asignado a la transacción realizada |
success | Obtendrá como resultado correcto: true, caso contrario: false. |
message | Obtendrá vacio(“”) como resultado correcto, caso contrario "mensaje de error". |
code | Código de respuesta. |
Obtiene el detalle de una domiciliación a partir del Id de QR.
Campos
Campo | Descripción |
qrId | Código único domiciliación. |
Parámetros Header
Content-Type |
Tipo de cuerpo MIME de la solicitud. Ejemplo: application/json |
Sandbox URI
http://test.bnb.com.bo/DirectDebit/api/Services/GetDetailEjemplo:
{
"qrId": "ACJSS1231"
}
RESPUESTA:
Campos de Respuesta
Campo | Descripción |
currencyCode | Moneda que se va a utilizar para la transacción: - 1: Bolivianos. - 2: Dólares . |
amount | Monto del servicio o bien para la domiciliación. |
reference | Descripción del servicio a domiciliar. |
serviceCode | Código de servicio o contrato que identifica el servicio a domiciliar. |
chargeType | Tipo de domiciliación: - 1: automático. - 2: manual. |
chargeDate | Día de cobro de la domiciliación. |
id | Identificador de la cuota |
amount | Monto de la cuota. |
status | 0: Cobro pendiente 1: Cobro realizado 2: Cobro rechazado |
date | Fecha asignada al estado (“status”), corresponde a la fecha programada, de cobro y rechazada respectivamente. |
success | Obtendrá como resultado correcto: true, caso contrario: false. |
message | Obtendrá vacio(“”) como resultado correcto, caso contrario "mensaje de error". |
code | Código de respuesta. |
Actualiza las cuotas dentro del plan de pagos que se encuentren en estado pendiente.
Campos
Campo | Descripción |
qrId | Código único domiciliación. |
installments | Cuotas disponibles en el plan de pagos. |
id | Identificador de la cuota. |
amount | Monto de la cuota. |
date | Fecha de cobro programada en formato (yyyy-MM-dd). |
Parámetros Header
Content-Type |
Tipo de cuerpo MIME de la solicitud. Ejemplo: application/json |
Sandbox URI
http://test.bnb.com.bo/DirectDebit/api/Services/UpdatePendingQuotaEjemplo:
{
"id": 1,
"amount": 1000,
"date": "2023-01-20"
}
RESPUESTA:
Campos de Respuesta
Campo | Descripción |
qrId | Código único domiciliación. |
installments | Cuotas disponibles en el plan de pagos. |
id | Identificador de la cuota. |
status | Estado de actualización del monto para el plan de pagos de cada domiciliación: - true: exitoso. - false: fallido. |
errorMessage | Mensaje de error en caso de que la actualización de una cuota sea fallido. |
success | Obtendrá como resultado correcto: true, caso contrario: false. |
message | Obtendrá vacio(“”) como resultado correcto, caso contrario "mensaje de error". |
code | Código de respuesta. |