Gateway Api

Documentación Técnica

Ejemplos completos por endpoint

API: api-gateway-2. Operaciones documentadas: 44.

Configure la URL base entregada por canal privado en GATEWAY2_BASE_URL.

Cliente base Node.js

import axios from 'axios';

const BASE_URL = process.env.GATEWAY2_BASE_URL;
if (!BASE_URL) throw new Error('Falta GATEWAY2_BASE_URL');
const TOKEN = process.env.GATEWAY2_TOKEN || 'REEMPLAZAR_TOKEN';

const api = axios.create({
  baseURL: BASE_URL,
  timeout: 60000,
  headers: {
    Authorization: `Bearer ${TOKEN}`,
    'Content-Type': 'application/json'
  }
});

Cliente base Python

import os
import requests

BASE_URL = os.environ['GATEWAY2_BASE_URL']
TOKEN = os.getenv('GATEWAY2_TOKEN', 'REEMPLAZAR_TOKEN')
HEADERS = {
    'Authorization': f'Bearer {TOKEN}',
    'Content-Type': 'application/json'
}

Agrupación por entidad

Activo

18 operaciones

POST /bcp1/activo/{issuerId}/{operationNumber}/dividendoCedido

Agregar Dividendo Cedido a Activo

operationId: agregarDividendoCedido

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
issuerIdpathstringSí—
operationNumberpathstringSí—
numeroCuotabodyintegerSí—
fechaVencimientobodystringSí—

cURL

curl -sS -X POST "$BASE_URL/bcp1/activo/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/dividendoCedido" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '\ \
{
  "numeroCuota": 1,
  "fechaVencimiento": "2026-05-29"
} \
  '

Node.js (axios)

const payload = {
  "numeroCuota": 1,
  "fechaVencimiento": "2026-05-29"
};
const response = await api.post('/bcp1/activo/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/dividendoCedido', payload);
console.log(response.data);

Python (requests)

resp = requests.post(
    f"{BASE_URL}/bcp1/activo/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/dividendoCedido",
    headers=HEADERS,
    json={
        "numeroCuota": 1,
        "fechaVencimiento": "2026-05-29"
    },
    timeout=60
)
resp.raise_for_status()
print(resp.json())
PATCH /bcp1/activo/{issuerId}/{operationNumber}/header

Actualización de atributo de Header de Activo

operationId: actualizarHeaderActivo

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
issuerIdpathstringSí—
operationNumberpathstringSí—
atributobodystringSí—
valorbodystringSí—

cURL

curl -sS -X PATCH "$BASE_URL/bcp1/activo/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/header" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '\ \
{
  "atributo": "valor",
  "valor": "valor"
} \
  '

Node.js (axios)

const payload = {
  "atributo": "valor",
  "valor": "valor"
};
const response = await api.patch('/bcp1/activo/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/header', payload);
console.log(response.data);

Python (requests)

resp = requests.patch(
    f"{BASE_URL}/bcp1/activo/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/header",
    headers=HEADERS,
    json={
        "atributo": "valor",
        "valor": "valor"
    },
    timeout=60
)
resp.raise_for_status()
print(resp.json())
POST /bcp1/activo/{issuerId}/{operationNumber}/tasa

Agregar Nueva Tasa a Activo

operationId: agregarTasaActivo

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
issuerIdpathstringSí—
operationNumberpathstringSí—
tipoTasabodystringSíTASA_COMPRA | TASA_MERCADO
fechabodystringSíFormato YYYY-MM-DD (fecha válida)
tasabodystringSíValor numérico

Reglas y valores permitidos

  • tipoTasa debe ser TASA_COMPRA o TASA_MERCADO.
  • fecha debe venir en formato YYYY-MM-DD.
  • tasa debe ser numérica.

cURL

curl -sS -X POST "$BASE_URL/bcp1/activo/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/tasa" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '\ \
{
  "tipoTasa": "valor",
  "fecha": "2026-05-29",
  "tasa": "valor"
} \
  '

Node.js (axios)

const payload = {
  "tipoTasa": "valor",
  "fecha": "2026-05-29",
  "tasa": "valor"
};
const response = await api.post('/bcp1/activo/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/tasa', payload);
console.log(response.data);

Python (requests)

resp = requests.post(
    f"{BASE_URL}/bcp1/activo/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/tasa",
    headers=HEADERS,
    json={
        "tipoTasa": "valor",
        "fecha": "2026-05-29",
        "tasa": "valor"
    },
    timeout=60
)
resp.raise_for_status()
print(resp.json())
POST /bcp1/activo/{tipo}

Creación de Activo

operationId: crearActivo

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
tipopathstringSímhe | cau
databodyobjectSí—
tipoDueDiligencebodystringNo—

Reglas y valores permitidos

  • data.unidadesTotales es opcional: entero positivo con las unidades de toda la propiedad inicial.
  • Si se omite, el token inicial no tiene unidades y conserva el comportamiento anterior.

Estructura permitida de data (según esquema real)

data (tipo=mhe)
CampoTipoRequeridoRestricciones
data.rentanumberSí—
data.paymentReportsarraySí—
data.paymentReports[]array<object>Sí—
data.paymentReports[].ajustesnumberSí—
data.paymentReports[].intVencidoImpagonumberSí—
data.paymentReports[].EscrowOtrosnumberSí—
data.paymentReports[].PagosPorAplicarnumberSí—
data.paymentReports[].ClasificacionstringSí—
data.paymentReports[].CostosPrepagoMLnumberSí—
data.paymentReports[].VencimientoCuotaPagadastringSí—
data.paymentReports[].PagoInteresMLnumberSí—
data.paymentReports[].PagoCapitalnumberSí—
data.paymentReports[].RecupreroCobJudicialMLnumberSí—
data.paymentReports[].PagoInteresnumberSí—
data.paymentReports[].EscrowSegurosMLnumberSí—
data.paymentReports[].PrepagoInteresDevMLnumberSí—
data.paymentReports[].LtvActualnumberSí—
data.paymentReports[].SeasoningnumberSí—
data.paymentReports[].RecupreroCobJudicialnumberSí—
data.paymentReports[].VecesSobre60numberSí—
data.paymentReports[].PagoInteresMoraMLnumberSí—
data.paymentReports[].OperationNumbernumberSí—
data.paymentReports[].UltimaCuotaPagadanumberSí—
data.paymentReports[].PrepagonumberSí—
data.paymentReports[].FechaPublicacionstringSí—
data.paymentReports[].EscrowOtrosMLnumberSí—
data.paymentReports[].PrepagoMLnumberSí—
data.paymentReports[].DtiActualnumberSí—
data.paymentReports[].valorParnumberSí—
data.paymentReports[].FechaReportestringSí—
data.paymentReports[].FechaUltimoPagostringSí—
data.paymentReports[].SaldoInsolutoActualnumberSí—
data.paymentReports[].VecesSobre180numberSí—
data.paymentReports[].CuotasMorosasnumberSí—
data.paymentReports[].mheIdstringSí—
data.paymentReports[].ajustes_MLnumberSí—
data.paymentReports[].IssuerIdstringSí—
data.paymentReports[].MasterServicerIdstringSí—
data.paymentReports[].ServicerIdstringSí—
data.paymentReports[].OwnerIdstringSí—
data.paymentReports[].CustodyAccountIdstringSí—
data.paymentReports[].PagoInteresMoranumberSí—
data.paymentReports[].VecesSobre90numberSí—
data.paymentReports[].intDevengadonumberSí—
data.paymentReports[].EscrowSegurosnumberSí—
data.paymentReports[].CostosPrepagonumberSí—
data.paymentReports[].VecesSobre30numberSí—
data.paymentReports[].EstadoCreditostringSí—
data.paymentReports[].PrepagoInteresDevnumberSí—
data.paymentReports[].FechaMorastringSí—
data.paymentReports[].reembolso_ADP_MLnumberSí—
data.paymentReports[].reembolso_ADPnumberSí—
data.paymentReports[].PagoCapitalMLnumberSí—
data.paymentReports[].PlazoRemanentenumberSí—
data.regionstringSí—
data.filesarraySí—
data.files[]array<object>Sí—
data.files[].fecha_cargastringSí—
data.files[].md5stringSí—
data.files[].nombrestringSí—
data.files[].fileUrlstringSí—
data.files[].descriptionstringSí—
data.files[].fileExtensionstringSí—
data.files[].rutastringSí—
data.comunastringSí—
data.responsabilidadPrepagonumberSí—
data.codigoPaisnumberSí—
data.codigoComunanumberSí—
data.ltvnumberSí—
data.nuevastringSí—
data.personastringSí—
data.numberOfPaymentsnumberSí—
data.inmobiliariastringSí—
data.interestRatenumberSí—
data.cargaFinancieranumberSí—
data.capitalAmountnumberSí—
data.issueDatestringSí—
data.destinostringSí—
data.codigoRegionnumberSí—
data.currencystringSí—
data.downPaymentstringSí—
data.operationNumbernumberSí—
data.mheIdstringSí—
data.TipoActivostringSí—
data.issuerIdstringSí—
data.masterServicerIdstringSí—
data.servicerIdstringSí—
data.ownerIdstringSí—
data.custodyAccountIdstringSí—
data.unidadesTotalesintegerNomin: 1
data.rutstringSí—
data.nacionalidadstringSí—
data.avalstringSí—
data.paymentAmountnumberSí—
data.developmentChartarraySí—
data.developmentChart[]array<object>Sí—
data.developmentChart[].paymentNumbernumberSí—
data.developmentChart[].paymentDatestringSí—
data.developmentChart[].interestAmountnumberSí—
data.developmentChart[].amortizationAmountnumberSí—
data.valorComercialnumberSí—
data.valorTasacionnumberSí—
data.fechaNacimientostringSí—
data.situacionLaboralstringSí—
data (tipo=cau)
CampoTipoRequeridoRestricciones
data.rentastringSí—
data.paymentReportsarraySí—
data.paymentReports[]array<object>Sí—
data.paymentReports[].EscrowOtrosnumberSí—
data.paymentReports[].PagosPorAplicarnumberSí—
data.paymentReports[].ClasificacionstringSí—
data.paymentReports[].CostosPrepagoMLnumberSí—
data.paymentReports[].VencimientoCuotaPagadastringSí—
data.paymentReports[].PagoInteresMLnumberSí—
data.paymentReports[].PagoCapitalnumberSí—
data.paymentReports[].RecupreroCobJudicialMLnumberSí—
data.paymentReports[].PagoInteresnumberSí—
data.paymentReports[].EscrowSegurosMLnumberSí—
data.paymentReports[].PrepagoInteresDevMLnumberSí—
data.paymentReports[].LtvActualnumberSí—
data.paymentReports[].SeasoningnumberSí—
data.paymentReports[].CauIdstringSí—
data.paymentReports[].RecupreroCobJudicialnumberSí—
data.paymentReports[].VecesSobre60numberSí—
data.paymentReports[].PagoInteresMoraMLnumberSí—
data.paymentReports[].OperationNumbernumberSí—
data.paymentReports[].UltimaCuotaPagadanumberSí—
data.paymentReports[].PrepagonumberSí—
data.paymentReports[].EstadoCobranzastringSí—
data.paymentReports[].MontoDividendonumberSí—
data.paymentReports[].FechaPublicacionstringSí—
data.paymentReports[].EscrowOtrosMLnumberSí—
data.paymentReports[].PrepagoMLnumberSí—
data.paymentReports[].DtiActualnumberSí—
data.paymentReports[].FechaReportestringSí—
data.paymentReports[].FechaUltimoPagostringSí—
data.paymentReports[].SaldoInsolutoActualnumberSí—
data.paymentReports[].VecesSobre180numberSí—
data.paymentReports[].CuotasMorosasnumberSí—
data.paymentReports[].IssuerIdstringSí—
data.paymentReports[].MasterServicerIdstringSí—
data.paymentReports[].ServicerIdstringSí—
data.paymentReports[].OwnerIdstringSí—
data.paymentReports[].CustodyAccountIdstringSí—
data.paymentReports[].PagoInteresMoranumberSí—
data.paymentReports[].VecesSobre90numberSí—
data.paymentReports[].EscrowSegurosnumberSí—
data.paymentReports[].CostosPrepagonumberSí—
data.paymentReports[].VecesSobre30numberSí—
data.paymentReports[].EstadoCreditostringSí—
data.paymentReports[].PrepagoInteresDevnumberSí—
data.paymentReports[].EscrowGastosCobranzaMLnumberSí—
data.paymentReports[].EscrowGastosCobranzanumberSí—
data.paymentReports[].FechaMorastringSí—
data.paymentReports[].PagoCapitalMLnumberSí—
data.paymentReports[].PlazoRemanentenumberSí—
data.regionstringSí—
data.filesarraySí—
data.files[]array<object>Sí—
data.files[].fecha_cargastringSí—
data.files[].md5stringSí—
data.files[].nombrestringSí—
data.files[].fileUrlstringSí—
data.files[].descriptionstringSí—
data.files[].fileExtensionstringSí—
data.files[].rutastringSí—
data.comunastringSí—
data.responsabilidadPrepagostringSí—
data.nuevostringSí—
data.cauIdstringSí—
data.codigoPaisstringSí—
data.codigoComunastringSí—
data.ltvnumberSí—
data.patentestringSí—
data.modelostringSí—
data.personastringSí—
data.numberOfPaymentsnumberSí—
data.interestRatenumberSí—
data.cargaFinancieranumberSí—
data.capitalAmountnumberSí—
data.issueDatestringSí—
data.codigoRegionstringSí—
data.currencystringSí—
data.downPaymentstringSí—
data.operationNumbernumberSí—
data.marcastringSí—
data.issuerIdstringSí—
data.masterServicerIdstringSí—
data.servicerIdstringSí—
data.ownerIdstringSí—
data.custodyAccountIdstringSí—
data.unidadesTotalesintegerNomin: 1
data.rutstringSí—
data.nacionalidadstringSí—
data.avalstringSí—
data.paymentAmountnumberSí—
data.developmentChartarraySí—
data.developmentChart[]array<object>Sí—
data.developmentChart[].paymentNumbernumberSí—
data.developmentChart[].paymentDatestringSí—
data.developmentChart[].interestAmountnumberSí—
data.developmentChart[].amortizationAmountnumberSí—
data.valorComercialnumberSí—
data.anoFabricacionnumberSí—
data.valorTasacionnumberSí—
data.fechaNacimientostringSí—
data.claseVehiculostringSí—
data.situacionLaboralstringSí—

cURL

curl -sS -X POST "$BASE_URL/bcp1/activo/mhe" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '\ \
{
  "data": {
    "campo": "valor"
  },
  "tipoDueDiligence": "valor"
} \
  '

Node.js (axios)

const payload = {
  "data": {
    "campo": "valor"
  },
  "tipoDueDiligence": "valor"
};
const response = await api.post('/bcp1/activo/mhe', payload);
console.log(response.data);

Python (requests)

resp = requests.post(
    f"{BASE_URL}/bcp1/activo/mhe",
    headers=HEADERS,
    json={
        "data": {
            "campo": "valor"
        },
        "tipoDueDiligence": "valor"
    },
    timeout=60
)
resp.raise_for_status()
print(resp.json())
GET /bcp1/activo/{tipo}/{issuerId}/{operationNumber}

Obtención de Activo por Operation Number

operationId: obtenerActivoPorNumeroOperacion

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
tipopathstringSímhe | cau
issuerIdpathstringSí—
operationNumberpathstringSí—

Reglas y valores permitidos

  • tipo debe ser mhe o cau.
  • Se recorren los tokens hoja vigentes de toda la jerarquía de TokenPropiedad.
  • Con un único custodyAccountId vigente se conserva la respuesta actual; con varios se devuelve tokensPropiedad.

cURL

curl -sS -X GET "$BASE_URL/bcp1/activo/mhe/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json"

Node.js (axios)

const response = await api.get('/bcp1/activo/mhe/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702');
console.log(response.data);

Python (requests)

resp = requests.get(
    f"{BASE_URL}/bcp1/activo/mhe/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702",
    headers=HEADERS,
    timeout=60
)
resp.raise_for_status()
print(resp.json())
PATCH /bcp1/activo/{tipo}/{issuerId}/{operationNumber}

Actualización de atributo (masterServicer, servicer, owner, custodyAccount) de Activo

operationId: actualizarActivo

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
tipopathstringSímhe | cau
issuerIdpathstringSí—
operationNumberpathstringSí—
atributobodystringSícustodyAccountId | servicerId | ownerId | masterServicerId | facturable | fechaPrimeraCuotaCedida
valorbodystringSíDepende de atributo (ids existentes, booleano para facturable, fecha YYYY-MM-DD para fechaPrimeraCuotaCedida)
fechaPrimerVencimientoCuotaCedidabodystringNoOpcional para custodyAccountId; fecha válida YYYY-MM-DD

Reglas y valores permitidos

  • Atributos modificables: custodyAccountId, servicerId, ownerId, masterServicerId, facturable, fechaPrimeraCuotaCedida.
  • Si atributo=facturable, valor permitido: true | false (booleano o string).
  • Si atributo=fechaPrimeraCuotaCedida, valor debe ser fecha válida YYYY-MM-DD.
  • Si atributo=custodyAccountId y se incluye fechaPrimerVencimientoCuotaCedida, debe ser una fecha válida YYYY-MM-DD y se guarda en el traspaso.
  • Si atributo referencia entidad (custodyAccountId, servicerId, ownerId, masterServicerId), el id debe existir.
  • custodyAccountId solo se modifica aquí si existe un propietario vigente; con varios propietarios se usa multipropiedad.

cURL

curl -sS -X PATCH "$BASE_URL/bcp1/activo/mhe/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '\ \
{
  "atributo": "valor",
  "valor": "valor",
  "fechaPrimerVencimientoCuotaCedida": "2026-05-29"
} \
  '

Node.js (axios)

const payload = {
  "atributo": "valor",
  "valor": "valor",
  "fechaPrimerVencimientoCuotaCedida": "2026-05-29"
};
const response = await api.patch('/bcp1/activo/mhe/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702', payload);
console.log(response.data);

Python (requests)

resp = requests.patch(
    f"{BASE_URL}/bcp1/activo/mhe/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702",
    headers=HEADERS,
    json={
        "atributo": "valor",
        "valor": "valor",
        "fechaPrimerVencimientoCuotaCedida": "2026-05-29"
    },
    timeout=60
)
resp.raise_for_status()
print(resp.json())
PUT /bcp1/activo/{tipo}/{issuerId}/{operationNumber}/developmentChart

Modificación de Tabla de Desarrollo de Activo

operationId: modificarTablaDesarrollo

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
tipopathstringSímhe | cau
issuerIdpathstringSí—
operationNumberpathstringSí—
databodyobjectSí—

Estructura permitida de data (según esquema real)

data (tipo=mhe)
CampoTipoRequeridoRestricciones
data[]array<object>Sí—
data[].paymentNumbernumberSí—
data[].paymentDatestringSí—
data[].interestAmountnumberSí—
data[].amortizationAmountnumberSí—
data (tipo=cau)
CampoTipoRequeridoRestricciones
data[]array<object>Sí—
data[].paymentNumbernumberSí—
data[].paymentDatestringSí—
data[].interestAmountnumberSí—
data[].amortizationAmountnumberSí—

cURL

curl -sS -X PUT "$BASE_URL/bcp1/activo/mhe/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/developmentChart" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '\ \
{
  "data": {
    "campo": "valor"
  }
} \
  '

Node.js (axios)

const payload = {
  "data": {
    "campo": "valor"
  }
};
const response = await api.put('/bcp1/activo/mhe/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/developmentChart', payload);
console.log(response.data);

Python (requests)

resp = requests.put(
    f"{BASE_URL}/bcp1/activo/mhe/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/developmentChart",
    headers=HEADERS,
    json={
        "data": {
            "campo": "valor"
        }
    },
    timeout=60
)
resp.raise_for_status()
print(resp.json())
POST /bcp1/activo/{tipo}/{issuerId}/{operationNumber}/file

Creación de Archivo de Due Diligence para Activo

operationId: agregarArchivoDueDiligence

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
tipopathstringSímhe | cau
issuerIdpathstringSí—
operationNumberpathstringSí—
databodyobjectSí—

Estructura permitida de data (según esquema real)

data (tipo=mhe)
CampoTipoRequeridoRestricciones
data.fecha_cargastringSí—
data.md5stringSí—
data.nombrestringSí—
data.fileUrlstringSí—
data.descriptionstringSí—
data.fileExtensionstringSí—
data.rutastringSí—
data (tipo=cau)
CampoTipoRequeridoRestricciones
data.fecha_cargastringSí—
data.md5stringSí—
data.nombrestringSí—
data.fileUrlstringSí—
data.descriptionstringSí—
data.fileExtensionstringSí—
data.rutastringSí—

cURL

curl -sS -X POST "$BASE_URL/bcp1/activo/mhe/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/file" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '\ \
{
  "data": {
    "campo": "valor"
  }
} \
  '

Node.js (axios)

const payload = {
  "data": {
    "campo": "valor"
  }
};
const response = await api.post('/bcp1/activo/mhe/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/file', payload);
console.log(response.data);

Python (requests)

resp = requests.post(
    f"{BASE_URL}/bcp1/activo/mhe/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/file",
    headers=HEADERS,
    json={
        "data": {
            "campo": "valor"
        }
    },
    timeout=60
)
resp.raise_for_status()
print(resp.json())
PUT /bcp1/activo/{tipo}/{issuerId}/{operationNumber}/file

Actualización de Archivo de Due Diligence para Activo

operationId: actualizarArchivoDueDiligence

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
tipopathstringSímhe | cau
issuerIdpathstringSí—
operationNumberpathstringSí—
rutaquerystringSí—
databodyobjectSí—

Estructura permitida de data (según esquema real)

data (tipo=mhe)
CampoTipoRequeridoRestricciones
data.fecha_cargastringSí—
data.md5stringSí—
data.nombrestringSí—
data.fileUrlstringSí—
data.descriptionstringSí—
data.fileExtensionstringSí—
data.rutastringSí—
data (tipo=cau)
CampoTipoRequeridoRestricciones
data.fecha_cargastringSí—
data.md5stringSí—
data.nombrestringSí—
data.fileUrlstringSí—
data.descriptionstringSí—
data.fileExtensionstringSí—
data.rutastringSí—

cURL

curl -sS -X PUT "$BASE_URL/bcp1/activo/mhe/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/file?ruta=valor" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '\ \
{
  "data": {
    "campo": "valor"
  }
} \
  '

Node.js (axios)

const payload = {
  "data": {
    "campo": "valor"
  }
};
const response = await api.put('/bcp1/activo/mhe/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/file', payload, {
  params: {
    "ruta": "valor"
  }
});
console.log(response.data);

Python (requests)

resp = requests.put(
    f"{BASE_URL}/bcp1/activo/mhe/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/file",
    headers=HEADERS,
    params={
        "ruta": "valor"
    },
    json={
        "data": {
            "campo": "valor"
        }
    },
    timeout=60
)
resp.raise_for_status()
print(resp.json())
DELETE /bcp1/activo/{tipo}/{issuerId}/{operationNumber}/file

Eliminación de Archivo de Due Diligence para Activo

operationId: eliminarArchivoDueDiligence

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
tipopathstringSímhe | cau
issuerIdpathstringSí—
operationNumberpathstringSí—
rutaquerystringSí—

cURL

curl -sS -X DELETE "$BASE_URL/bcp1/activo/mhe/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/file?ruta=valor" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json"

Node.js (axios)

const response = await api.delete('/bcp1/activo/mhe/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/file', {
  params: {
    "ruta": "valor"
  }
});
console.log(response.data);

Python (requests)

resp = requests.delete(
    f"{BASE_URL}/bcp1/activo/mhe/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/file",
    headers=HEADERS,
    params={
        "ruta": "valor"
    },
    timeout=60
)
resp.raise_for_status()
print(resp.json())
GET /bcp1/activo/{tipo}/{issuerId}/{operationNumber}/multipropiedad

Obtiene el árbol completo de TokenPropiedad del activo

operationId: obtenerMultipropiedad

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
tipopathstringSímhe | cau
issuerIdpathstringSí—
operationNumberpathstringSí—

Reglas y valores permitidos

  • Devuelve el árbol completo de TokenPropiedad, incluso si todas las hojas tienen el mismo custodyAccountId.

cURL

curl -sS -X GET "$BASE_URL/bcp1/activo/mhe/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/multipropiedad" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json"

Node.js (axios)

const response = await api.get('/bcp1/activo/mhe/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/multipropiedad');
console.log(response.data);

Python (requests)

resp = requests.get(
    f"{BASE_URL}/bcp1/activo/mhe/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/multipropiedad",
    headers=HEADERS,
    timeout=60
)
resp.raise_for_status()
print(resp.json())
POST /bcp1/activo/{tipo}/{issuerId}/{operationNumber}/multipropiedad

Abre un TokenPropiedad vigente en tokens hijos

operationId: crearMultipropiedad

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
tipopathstringSímhe | cau
issuerIdpathstringSí—
operationNumberpathstringSí—
multipropiedadbodyobjectSí—

Reglas y valores permitidos

  • Cierra una hoja vigente y crea al menos dos hijos en una transacción.
  • Las unidades de los hijos deben sumar las unidades del padre.
  • unidadesTotales es requerido si el padre aún no tiene unidades; tokenPadreId es requerido cuando hay varias hojas vigentes.

cURL

curl -sS -X POST "$BASE_URL/bcp1/activo/mhe/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/multipropiedad" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '\ \
{
  "multipropiedad": {
    "campo": "valor"
  }
} \
  '

Node.js (axios)

const payload = {
  "multipropiedad": {
    "campo": "valor"
  }
};
const response = await api.post('/bcp1/activo/mhe/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/multipropiedad', payload);
console.log(response.data);

Python (requests)

resp = requests.post(
    f"{BASE_URL}/bcp1/activo/mhe/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/multipropiedad",
    headers=HEADERS,
    json={
        "multipropiedad": {
            "campo": "valor"
        }
    },
    timeout=60
)
resp.raise_for_status()
print(resp.json())
POST /bcp1/activo/{tipo}/{issuerId}/{operationNumber}/paymentReport

Creación de Payment Report para Activo

operationId: agregarPaymentReport

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
tipopathstringSímhe | cau
issuerIdpathstringSí—
operationNumberpathstringSí—
databodyobjectSí—

Estructura permitida de data (según esquema real)

data (tipo=mhe)
CampoTipoRequeridoRestricciones
data.ajustesnumberSí—
data.intVencidoImpagonumberSí—
data.EscrowOtrosnumberSí—
data.PagosPorAplicarnumberSí—
data.ClasificacionstringSí—
data.CostosPrepagoMLnumberSí—
data.VencimientoCuotaPagadastringSí—
data.PagoInteresMLnumberSí—
data.PagoCapitalnumberSí—
data.RecupreroCobJudicialMLnumberSí—
data.PagoInteresnumberSí—
data.EscrowSegurosMLnumberSí—
data.PrepagoInteresDevMLnumberSí—
data.LtvActualnumberSí—
data.SeasoningnumberSí—
data.RecupreroCobJudicialnumberSí—
data.VecesSobre60numberSí—
data.PagoInteresMoraMLnumberSí—
data.OperationNumbernumberSí—
data.UltimaCuotaPagadanumberSí—
data.PrepagonumberSí—
data.FechaPublicacionstringSí—
data.EscrowOtrosMLnumberSí—
data.PrepagoMLnumberSí—
data.DtiActualnumberSí—
data.valorParnumberSí—
data.FechaReportestringSí—
data.FechaUltimoPagostringSí—
data.SaldoInsolutoActualnumberSí—
data.VecesSobre180numberSí—
data.CuotasMorosasnumberSí—
data.mheIdstringSí—
data.ajustes_MLnumberSí—
data.IssuerIdstringSí—
data.MasterServicerIdstringSí—
data.ServicerIdstringSí—
data.OwnerIdstringSí—
data.CustodyAccountIdstringSí—
data.PagoInteresMoranumberSí—
data.VecesSobre90numberSí—
data.intDevengadonumberSí—
data.EscrowSegurosnumberSí—
data.CostosPrepagonumberSí—
data.VecesSobre30numberSí—
data.EstadoCreditostringSí—
data.PrepagoInteresDevnumberSí—
data.FechaMorastringSí—
data.reembolso_ADP_MLnumberSí—
data.reembolso_ADPnumberSí—
data.PagoCapitalMLnumberSí—
data.PlazoRemanentenumberSí—
data (tipo=cau)
CampoTipoRequeridoRestricciones
data.EscrowOtrosnumberSí—
data.PagosPorAplicarnumberSí—
data.ClasificacionstringSí—
data.CostosPrepagoMLnumberSí—
data.VencimientoCuotaPagadastringSí—
data.PagoInteresMLnumberSí—
data.PagoCapitalnumberSí—
data.RecupreroCobJudicialMLnumberSí—
data.PagoInteresnumberSí—
data.EscrowSegurosMLnumberSí—
data.PrepagoInteresDevMLnumberSí—
data.LtvActualnumberSí—
data.SeasoningnumberSí—
data.CauIdstringSí—
data.RecupreroCobJudicialnumberSí—
data.VecesSobre60numberSí—
data.PagoInteresMoraMLnumberSí—
data.OperationNumbernumberSí—
data.UltimaCuotaPagadanumberSí—
data.PrepagonumberSí—
data.EstadoCobranzastringSí—
data.MontoDividendonumberSí—
data.FechaPublicacionstringSí—
data.EscrowOtrosMLnumberSí—
data.PrepagoMLnumberSí—
data.DtiActualnumberSí—
data.FechaReportestringSí—
data.FechaUltimoPagostringSí—
data.SaldoInsolutoActualnumberSí—
data.VecesSobre180numberSí—
data.CuotasMorosasnumberSí—
data.IssuerIdstringSí—
data.MasterServicerIdstringSí—
data.ServicerIdstringSí—
data.OwnerIdstringSí—
data.CustodyAccountIdstringSí—
data.PagoInteresMoranumberSí—
data.VecesSobre90numberSí—
data.EscrowSegurosnumberSí—
data.CostosPrepagonumberSí—
data.VecesSobre30numberSí—
data.EstadoCreditostringSí—
data.PrepagoInteresDevnumberSí—
data.EscrowGastosCobranzaMLnumberSí—
data.EscrowGastosCobranzanumberSí—
data.FechaMorastringSí—
data.PagoCapitalMLnumberSí—
data.PlazoRemanentenumberSí—

cURL

curl -sS -X POST "$BASE_URL/bcp1/activo/mhe/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/paymentReport" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '\ \
{
  "data": {
    "campo": "valor"
  }
} \
  '

Node.js (axios)

const payload = {
  "data": {
    "campo": "valor"
  }
};
const response = await api.post('/bcp1/activo/mhe/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/paymentReport', payload);
console.log(response.data);

Python (requests)

resp = requests.post(
    f"{BASE_URL}/bcp1/activo/mhe/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/paymentReport",
    headers=HEADERS,
    json={
        "data": {
            "campo": "valor"
        }
    },
    timeout=60
)
resp.raise_for_status()
print(resp.json())
GET /bcp1/activo/{tipo}/{issuerId}/{operationNumber}/valor

Valorizador de Activo

operationId: valorizarActivo

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
tipopathstringSímhe | cau
issuerIdpathstringSí—
operationNumberpathstringSí—

cURL

curl -sS -X GET "$BASE_URL/bcp1/activo/mhe/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/valor" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json"

Node.js (axios)

const response = await api.get('/bcp1/activo/mhe/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/valor');
console.log(response.data);

Python (requests)

resp = requests.get(
    f"{BASE_URL}/bcp1/activo/mhe/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774/2702/valor",
    headers=HEADERS,
    timeout=60
)
resp.raise_for_status()
print(resp.json())
GET /bcp1/activos

Listar Activos

operationId: listarActivos

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
servicerIdquerystringSí—
tipoIdentificadorquerystringSí—

cURL

curl -sS -X GET "$BASE_URL/bcp1/activos?servicerId=123&tipoIdentificador=123" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json"

Node.js (axios)

const response = await api.get('/bcp1/activos', {
  params: {
    "servicerId": "123",
    "tipoIdentificador": "123"
  }
});
console.log(response.data);

Python (requests)

resp = requests.get(
    f"{BASE_URL}/bcp1/activos",
    headers=HEADERS,
    params={
        "servicerId": "123",
        "tipoIdentificador": "123"
    },
    timeout=60
)
resp.raise_for_status()
print(resp.json())
POST /bcp1/activos/consultaValores

Valorizador de Activos

operationId: valorizarActivos

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
databodyobjectSí—

cURL

curl -sS -X POST "$BASE_URL/bcp1/activos/consultaValores" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '\ \
{
  "data": {
    "campo": "valor"
  }
} \
  '

Node.js (axios)

const payload = {
  "data": {
    "campo": "valor"
  }
};
const response = await api.post('/bcp1/activos/consultaValores', payload);
console.log(response.data);

Python (requests)

resp = requests.post(
    f"{BASE_URL}/bcp1/activos/consultaValores",
    headers=HEADERS,
    json={
        "data": {
            "campo": "valor"
        }
    },
    timeout=60
)
resp.raise_for_status()
print(resp.json())
POST /bcp1/activos/consultaValoresPar

Valorizador Par de Activos

operationId: calcularValorParActivos

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
activosbodyobjectSí—
fechabodystringSí—

cURL

curl -sS -X POST "$BASE_URL/bcp1/activos/consultaValoresPar" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '\ \
{
  "activos": {
    "campo": "valor"
  },
  "fecha": "2026-05-29"
} \
  '

Node.js (axios)

const payload = {
  "activos": {
    "campo": "valor"
  },
  "fecha": "2026-05-29"
};
const response = await api.post('/bcp1/activos/consultaValoresPar', payload);
console.log(response.data);

Python (requests)

resp = requests.post(
    f"{BASE_URL}/bcp1/activos/consultaValoresPar",
    headers=HEADERS,
    json={
        "activos": {
            "campo": "valor"
        },
        "fecha": "2026-05-29"
    },
    timeout=60
)
resp.raise_for_status()
print(resp.json())
POST /bcp1/activos/consultaValoresPresente

Valorizador Presente de Activos

operationId: calcularValorPresenteActivos

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
activosbodyobjectSí—

cURL

curl -sS -X POST "$BASE_URL/bcp1/activos/consultaValoresPresente" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '\ \
{
  "activos": {
    "campo": "valor"
  }
} \
  '

Node.js (axios)

const payload = {
  "activos": {
    "campo": "valor"
  }
};
const response = await api.post('/bcp1/activos/consultaValoresPresente', payload);
console.log(response.data);

Python (requests)

resp = requests.post(
    f"{BASE_URL}/bcp1/activos/consultaValoresPresente",
    headers=HEADERS,
    json={
        "activos": {
            "campo": "valor"
        }
    },
    timeout=60
)
resp.raise_for_status()
print(resp.json())

CustodyAccount

5 operaciones

GET /bcp1/custodyAccount

Obtención de Custody Account por Rut

operationId: obtenerCustodyAccountPorRut

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
rutquerystringSí—

cURL

curl -sS -X GET "$BASE_URL/bcp1/custodyAccount?rut=valor" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json"

Node.js (axios)

const response = await api.get('/bcp1/custodyAccount', {
  params: {
    "rut": "valor"
  }
});
console.log(response.data);

Python (requests)

resp = requests.get(
    f"{BASE_URL}/bcp1/custodyAccount",
    headers=HEADERS,
    params={
        "rut": "valor"
    },
    timeout=60
)
resp.raise_for_status()
print(resp.json())
POST /bcp1/custodyAccount

Creación de CustodyAccount

operationId: crearCustodyAccount

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
nombrebodystringSí—
nombreCortobodystringNo—

cURL

curl -sS -X POST "$BASE_URL/bcp1/custodyAccount" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '\ \
{
  "nombre": "valor",
  "nombreCorto": "valor"
} \
  '

Node.js (axios)

const payload = {
  "nombre": "valor",
  "nombreCorto": "valor"
};
const response = await api.post('/bcp1/custodyAccount', payload);
console.log(response.data);

Python (requests)

resp = requests.post(
    f"{BASE_URL}/bcp1/custodyAccount",
    headers=HEADERS,
    json={
        "nombre": "valor",
        "nombreCorto": "valor"
    },
    timeout=60
)
resp.raise_for_status()
print(resp.json())
GET /bcp1/custodyAccount/{custodyAccountId}

Obtención de Custody Account por ID

operationId: obtenerCustodyAccount

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
custodyAccountIdpathstringSí—

cURL

curl -sS -X GET "$BASE_URL/bcp1/custodyAccount/123" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json"

Node.js (axios)

const response = await api.get('/bcp1/custodyAccount/123');
console.log(response.data);

Python (requests)

resp = requests.get(
    f"{BASE_URL}/bcp1/custodyAccount/123",
    headers=HEADERS,
    timeout=60
)
resp.raise_for_status()
print(resp.json())
PUT /bcp1/custodyAccount/{custodyAccountId}

Actualización de CustodyAccount

operationId: actualizarCustodyAccount

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
custodyAccountIdpathstringSí—
nombrebodystringSí—
nombreCortobodystringSí—

cURL

curl -sS -X PUT "$BASE_URL/bcp1/custodyAccount/123" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '\ \
{
  "nombre": "valor",
  "nombreCorto": "valor"
} \
  '

Node.js (axios)

const payload = {
  "nombre": "valor",
  "nombreCorto": "valor"
};
const response = await api.put('/bcp1/custodyAccount/123', payload);
console.log(response.data);

Python (requests)

resp = requests.put(
    f"{BASE_URL}/bcp1/custodyAccount/123",
    headers=HEADERS,
    json={
        "nombre": "valor",
        "nombreCorto": "valor"
    },
    timeout=60
)
resp.raise_for_status()
print(resp.json())
GET /bcp1/custodyAccounts

Obtención de CustodyAccounts

operationId: listarCustodyAccounts

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
Sin parámetros

cURL

curl -sS -X GET "$BASE_URL/bcp1/custodyAccounts" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json"

Node.js (axios)

const response = await api.get('/bcp1/custodyAccounts');
console.log(response.data);

Python (requests)

resp = requests.get(
    f"{BASE_URL}/bcp1/custodyAccounts",
    headers=HEADERS,
    timeout=60
)
resp.raise_for_status()
print(resp.json())

Documento

2 operaciones

GET /bcp1/documento/url

Obtención de URL Temporal de Documento

operationId: obtenerUrlDocumento

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
rutaquerystringSí—

cURL

curl -sS -X GET "$BASE_URL/bcp1/documento/url?ruta=valor" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json"

Node.js (axios)

const response = await api.get('/bcp1/documento/url', {
  params: {
    "ruta": "valor"
  }
});
console.log(response.data);

Python (requests)

resp = requests.get(
    f"{BASE_URL}/bcp1/documento/url",
    headers=HEADERS,
    params={
        "ruta": "valor"
    },
    timeout=60
)
resp.raise_for_status()
print(resp.json())
GET /documentos

Obtener documentos

operationId: getDocumentos

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
admquerystringSí—
identificadorquerystringSí—

cURL

curl -sS -X GET "$BASE_URL/documentos?adm=valor&identificador=123" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json"

Node.js (axios)

const response = await api.get('/documentos', {
  params: {
    "adm": "valor",
    "identificador": "123"
  }
});
console.log(response.data);

Python (requests)

resp = requests.get(
    f"{BASE_URL}/documentos",
    headers=HEADERS,
    params={
        "adm": "valor",
        "identificador": "123"
    },
    timeout=60
)
resp.raise_for_status()
print(resp.json())

EventosBcp

1 operaciones

POST /bcp1/eventosBcp

Notificación de Eventos a BCP

operationId: notificarBcp

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
databodystringSí—

Estructura permitida de data (según esquema real)

data
CampoTipoRequeridoRestricciones
data[]array<object>Sí—
data[].tipoNegociostringSí—
data[].tipoEventostringSí—
data[].issuerIdstringSí—
data[].operationNumbernumberSí—

cURL

curl -sS -X POST "$BASE_URL/bcp1/eventosBcp" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '\ \
{
  "data": "valor"
} \
  '

Node.js (axios)

const payload = {
  "data": "valor"
};
const response = await api.post('/bcp1/eventosBcp', payload);
console.log(response.data);

Python (requests)

resp = requests.post(
    f"{BASE_URL}/bcp1/eventosBcp",
    headers=HEADERS,
    json={
        "data": "valor"
    },
    timeout=60
)
resp.raise_for_status()
print(resp.json())

Issuer

4 operaciones

POST /bcp1/issuer

Creación de Issuer

operationId: crearIssuer

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
codigobodystringSí—
nombrebodystringSí—
nombreCortobodystringNo—

cURL

curl -sS -X POST "$BASE_URL/bcp1/issuer" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '\ \
{
  "codigo": "valor",
  "nombre": "valor",
  "nombreCorto": "valor"
} \
  '

Node.js (axios)

const payload = {
  "codigo": "valor",
  "nombre": "valor",
  "nombreCorto": "valor"
};
const response = await api.post('/bcp1/issuer', payload);
console.log(response.data);

Python (requests)

resp = requests.post(
    f"{BASE_URL}/bcp1/issuer",
    headers=HEADERS,
    json={
        "codigo": "valor",
        "nombre": "valor",
        "nombreCorto": "valor"
    },
    timeout=60
)
resp.raise_for_status()
print(resp.json())
GET /bcp1/issuer/{issuerId}

Obtención de Issuer por ID

operationId: obtenerIssuer

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
issuerIdpathstringSí—

cURL

curl -sS -X GET "$BASE_URL/bcp1/issuer/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json"

Node.js (axios)

const response = await api.get('/bcp1/issuer/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774');
console.log(response.data);

Python (requests)

resp = requests.get(
    f"{BASE_URL}/bcp1/issuer/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774",
    headers=HEADERS,
    timeout=60
)
resp.raise_for_status()
print(resp.json())
PUT /bcp1/issuer/{issuerId}

Actualización de Issuer

operationId: actualizarIssuer

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
issuerIdpathstringSí—
nombrebodystringSí—
nombreCortobodystringSí—

cURL

curl -sS -X PUT "$BASE_URL/bcp1/issuer/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '\ \
{
  "nombre": "valor",
  "nombreCorto": "valor"
} \
  '

Node.js (axios)

const payload = {
  "nombre": "valor",
  "nombreCorto": "valor"
};
const response = await api.put('/bcp1/issuer/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774', payload);
console.log(response.data);

Python (requests)

resp = requests.put(
    f"{BASE_URL}/bcp1/issuer/68fbdbbb-0741-4e7c-ab2b-c6c14a97a774",
    headers=HEADERS,
    json={
        "nombre": "valor",
        "nombreCorto": "valor"
    },
    timeout=60
)
resp.raise_for_status()
print(resp.json())
GET /bcp1/issuers

Obtención de Issuers

operationId: listarIssuers

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
Sin parámetros

cURL

curl -sS -X GET "$BASE_URL/bcp1/issuers" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json"

Node.js (axios)

const response = await api.get('/bcp1/issuers');
console.log(response.data);

Python (requests)

resp = requests.get(
    f"{BASE_URL}/bcp1/issuers",
    headers=HEADERS,
    timeout=60
)
resp.raise_for_status()
print(resp.json())

MasterServicer

4 operaciones

POST /bcp1/masterServicer

Creación de MasterServicer

operationId: crearMasterServicer

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
nombrebodystringSí—
nombreCortobodystringNo—

cURL

curl -sS -X POST "$BASE_URL/bcp1/masterServicer" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '\ \
{
  "nombre": "valor",
  "nombreCorto": "valor"
} \
  '

Node.js (axios)

const payload = {
  "nombre": "valor",
  "nombreCorto": "valor"
};
const response = await api.post('/bcp1/masterServicer', payload);
console.log(response.data);

Python (requests)

resp = requests.post(
    f"{BASE_URL}/bcp1/masterServicer",
    headers=HEADERS,
    json={
        "nombre": "valor",
        "nombreCorto": "valor"
    },
    timeout=60
)
resp.raise_for_status()
print(resp.json())
GET /bcp1/masterServicer/{masterServicerId}

Obtención de MasterServicer por ID

operationId: obtenerMasterServicer

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
masterServicerIdpathstringSí—

cURL

curl -sS -X GET "$BASE_URL/bcp1/masterServicer/123" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json"

Node.js (axios)

const response = await api.get('/bcp1/masterServicer/123');
console.log(response.data);

Python (requests)

resp = requests.get(
    f"{BASE_URL}/bcp1/masterServicer/123",
    headers=HEADERS,
    timeout=60
)
resp.raise_for_status()
print(resp.json())
PUT /bcp1/masterServicer/{masterServicerId}

Actualización de MasterServicer

operationId: actualizarMasterServicer

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
masterServicerIdpathstringSí—
nombrebodystringSí—
nombreCortobodystringSí—

cURL

curl -sS -X PUT "$BASE_URL/bcp1/masterServicer/123" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '\ \
{
  "nombre": "valor",
  "nombreCorto": "valor"
} \
  '

Node.js (axios)

const payload = {
  "nombre": "valor",
  "nombreCorto": "valor"
};
const response = await api.put('/bcp1/masterServicer/123', payload);
console.log(response.data);

Python (requests)

resp = requests.put(
    f"{BASE_URL}/bcp1/masterServicer/123",
    headers=HEADERS,
    json={
        "nombre": "valor",
        "nombreCorto": "valor"
    },
    timeout=60
)
resp.raise_for_status()
print(resp.json())
GET /bcp1/masterServicers

Obtención de MasterServicers

operationId: listarMasterServicers

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
Sin parámetros

cURL

curl -sS -X GET "$BASE_URL/bcp1/masterServicers" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json"

Node.js (axios)

const response = await api.get('/bcp1/masterServicers');
console.log(response.data);

Python (requests)

resp = requests.get(
    f"{BASE_URL}/bcp1/masterServicers",
    headers=HEADERS,
    timeout=60
)
resp.raise_for_status()
print(resp.json())

Owner

4 operaciones

POST /bcp1/owner

Creación de Owner

operationId: crearOwner

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
nombrebodystringSí—
nombreCortobodystringNo—

cURL

curl -sS -X POST "$BASE_URL/bcp1/owner" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '\ \
{
  "nombre": "valor",
  "nombreCorto": "valor"
} \
  '

Node.js (axios)

const payload = {
  "nombre": "valor",
  "nombreCorto": "valor"
};
const response = await api.post('/bcp1/owner', payload);
console.log(response.data);

Python (requests)

resp = requests.post(
    f"{BASE_URL}/bcp1/owner",
    headers=HEADERS,
    json={
        "nombre": "valor",
        "nombreCorto": "valor"
    },
    timeout=60
)
resp.raise_for_status()
print(resp.json())
GET /bcp1/owner/{ownerId}

Obtención de Owner por ID

operationId: obtenerOwner

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
ownerIdpathstringSí—

cURL

curl -sS -X GET "$BASE_URL/bcp1/owner/123" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json"

Node.js (axios)

const response = await api.get('/bcp1/owner/123');
console.log(response.data);

Python (requests)

resp = requests.get(
    f"{BASE_URL}/bcp1/owner/123",
    headers=HEADERS,
    timeout=60
)
resp.raise_for_status()
print(resp.json())
PUT /bcp1/owner/{ownerId}

Actualización de Owner

operationId: actualizarOwner

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
ownerIdpathstringSí—
nombrebodystringSí—
nombreCortobodystringSí—

cURL

curl -sS -X PUT "$BASE_URL/bcp1/owner/123" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '\ \
{
  "nombre": "valor",
  "nombreCorto": "valor"
} \
  '

Node.js (axios)

const payload = {
  "nombre": "valor",
  "nombreCorto": "valor"
};
const response = await api.put('/bcp1/owner/123', payload);
console.log(response.data);

Python (requests)

resp = requests.put(
    f"{BASE_URL}/bcp1/owner/123",
    headers=HEADERS,
    json={
        "nombre": "valor",
        "nombreCorto": "valor"
    },
    timeout=60
)
resp.raise_for_status()
print(resp.json())
GET /bcp1/owners

Obtención de Owners

operationId: listarOwners

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
Sin parámetros

cURL

curl -sS -X GET "$BASE_URL/bcp1/owners" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json"

Node.js (axios)

const response = await api.get('/bcp1/owners');
console.log(response.data);

Python (requests)

resp = requests.get(
    f"{BASE_URL}/bcp1/owners",
    headers=HEADERS,
    timeout=60
)
resp.raise_for_status()
print(resp.json())

Pagos

1 operaciones

POST /bcp1/pagos

Notificación de Pagos a BCP

operationId: informarHasta500Pagos

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
pagosbodyarraySí—

Reglas y valores permitidos

  • Máximo 500 pagos por solicitud.

cURL

curl -sS -X POST "$BASE_URL/bcp1/pagos" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '\ \
[
  {
    "campo": "valor"
  }
] \
  '

Node.js (axios)

const payload = [
  {
    "campo": "valor"
  }
];
const response = await api.post('/bcp1/pagos', payload);
console.log(response.data);

Python (requests)

resp = requests.post(
    f"{BASE_URL}/bcp1/pagos",
    headers=HEADERS,
    json=[
        {
            "campo": "valor"
        }
    ],
    timeout=60
)
resp.raise_for_status()
print(resp.json())

Servicer

4 operaciones

POST /bcp1/servicer

Creación de Servicer

operationId: crearServicer

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
rutSinPuntosNiDigitoVerificadorbodystringSí—
nombrebodystringSí—
nombreCortobodystringNo—

cURL

curl -sS -X POST "$BASE_URL/bcp1/servicer" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '\ \
{
  "rutSinPuntosNiDigitoVerificador": "123",
  "nombre": "valor",
  "nombreCorto": "valor"
} \
  '

Node.js (axios)

const payload = {
  "rutSinPuntosNiDigitoVerificador": "123",
  "nombre": "valor",
  "nombreCorto": "valor"
};
const response = await api.post('/bcp1/servicer', payload);
console.log(response.data);

Python (requests)

resp = requests.post(
    f"{BASE_URL}/bcp1/servicer",
    headers=HEADERS,
    json={
        "rutSinPuntosNiDigitoVerificador": "123",
        "nombre": "valor",
        "nombreCorto": "valor"
    },
    timeout=60
)
resp.raise_for_status()
print(resp.json())
GET /bcp1/servicer/{servicerId}

Obtención de Servicer por ID

operationId: obtenerServicer

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
servicerIdpathstringSí—

cURL

curl -sS -X GET "$BASE_URL/bcp1/servicer/123" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json"

Node.js (axios)

const response = await api.get('/bcp1/servicer/123');
console.log(response.data);

Python (requests)

resp = requests.get(
    f"{BASE_URL}/bcp1/servicer/123",
    headers=HEADERS,
    timeout=60
)
resp.raise_for_status()
print(resp.json())
PUT /bcp1/servicer/{servicerId}

Actualización de Servicer

operationId: actualizarServicer

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
servicerIdpathstringSí—
nombrebodystringSí—
nombreCortobodystringSí—

cURL

curl -sS -X PUT "$BASE_URL/bcp1/servicer/123" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '\ \
{
  "nombre": "valor",
  "nombreCorto": "valor"
} \
  '

Node.js (axios)

const payload = {
  "nombre": "valor",
  "nombreCorto": "valor"
};
const response = await api.put('/bcp1/servicer/123', payload);
console.log(response.data);

Python (requests)

resp = requests.put(
    f"{BASE_URL}/bcp1/servicer/123",
    headers=HEADERS,
    json={
        "nombre": "valor",
        "nombreCorto": "valor"
    },
    timeout=60
)
resp.raise_for_status()
print(resp.json())
GET /bcp1/servicers

Obtención de Servicers

operationId: listarServicers

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
Sin parámetros

cURL

curl -sS -X GET "$BASE_URL/bcp1/servicers" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json"

Node.js (axios)

const response = await api.get('/bcp1/servicers');
console.log(response.data);

Python (requests)

resp = requests.get(
    f"{BASE_URL}/bcp1/servicers",
    headers=HEADERS,
    timeout=60
)
resp.raise_for_status()
print(resp.json())

Mail

1 operaciones

POST /mail

Envía mensaje en formato HTML por correo electrónico

operationId: postMail

ParámetroUbicaciónTipoRequeridoValores permitidos / formato
Sin parámetros

cURL

curl -sS -X POST "$BASE_URL/mail" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json"

Node.js (axios)

const response = await api.post('/mail');
console.log(response.data);

Python (requests)

resp = requests.post(
    f"{BASE_URL}/mail",
    headers=HEADERS,
    timeout=60
)
resp.raise_for_status()
print(resp.json())