Reportes

Consulta tus saldos y movimientos con el módulo de reportes para cuentas internas.

Las APIs de reportes te permiten consultar el balance actual y las transacciones de una cuenta interna. Las consultas se realizan sobre la cuenta interna mediante el ID de la cuenta (accountNumber). Los fondos recibidos a través de cuentas virtuales se consolidan en la cuenta interna asociada.

Puedes utilizar estos endpoints para:

Balance

Consultar el saldo disponible antes de realizar una operación.

Movimientos

Revisar los movimientos registrados.

Reservas

Identificar fondos reservados en operaciones pendientes.

Conciliación

Consultar períodos cerrados para conciliación.

Además, se pueden consultar las cuentas internas sobre:

🚧

Monedas

Cada cuenta interna tiene una moneda determinada. Una respuesta contiene únicamente saldos y movimientos correspondientes a la moneda de la cuenta consultada. Si tienes cuentas en PEN y USD, debes consultar cada accountNumber por separado.



¿Cómo funciona?

El proceso de consulta de balance y movimientos sigue estas etapas:

  1. Identifica la cuenta. Ingresa el ID de la cuenta interna que deseas consultar.
  2. Selecciona el tipo de consulta. Utiliza el endpoint de balance para conocer los fondos disponibles actualmente o el endpoint de transacciones para revisar movimientos.
    1. Define el período. Para consultar movimientos, indica startDate y endDate.
      Selecciona el tipo de reporte. Utiliza intraday para movimientos recientes o eod para períodos cerrados.
  3. Consulta los resultados. La API retorna los saldos o movimientos de la cuenta interna.
  4. Continúa la paginación. Si existen más movimientos, utiliza el cursor retornado para consultar la siguiente página.


Consultar balance

El endpoint de balance devuelve el saldo vigente al momento de la consulta. Es la vía para verificar fondos antes de operar un FX, un Wire out o un PayOut. Utiliza el siguiente endpoint ingresando tu ID en el campo accountNumber para consultar el balance actual de una cuenta interna.

Respuesta

Una consulta exitosa devuelve una respuesta similar a la siguiente:

{
  "currency": "USD",
  "availableBalance": 15000.00,
  "reservedBalance": 2000.00,
  "snapshotDate": "2026-04-01T14:35:22-05:00"
}
📘

Saldo disponible y reservado

Los fondos incluidos en reservedBalance están comprometidos en operaciones pendientes y no se encuentran disponibles para iniciar nuevas operaciones. Solo availableBalance es operable.



Consultar transacciones

Este endpoint devuelve las transacciones de la cuenta interna en un rango de fechas determinadas y permite la conciliación. Ingresa tu ID en el campo accountNumber, para consultar los movimientos registrados en una cuenta interna.


📘

Registros por página

El valor máximo permitido para el parámetro pageSize es de 500.

Respuesta

Si tu solicitud se realiza correctamente, recibirás una respuesta similar a la que se muestra a continuación.

{
  "accountNumber": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "closingBalance": 0,
  "closingReserved": 0,
  "currency": "CLP",
  "cursor": "string",
  "openingBalance": 0,
  "openingReserved": 0,
  "totalCount": 0,
  "transactions": [
    {
      "amount": 0,
      "balanceAfter": 0,
      "counterpartyBank": "string",
      "counterpartyName": "string",
      "currency": "CLP",
      "referenceNote": "string",
      "reservedAfter": 0,
      "sourceModule": "va_payin",
      "sourceReferenceId": "string",
      "status": "failed",
      "timestamp": "string",
      "transactionId": "string",
      "type": "credit"
    }
  ],
  "type": "eod"
}

Tipos de reporte

Pueden consultarse dos modalidades de reporte intraday o eod.

Característicaintradayeod
Para qué sirveMonitorear movimientos recientesConciliar períodos cerrados
Movimientos incluidosMovimientos en estado:in_progress, completed y failedSolo movimientos con estados finales: completed y failed
Período consultableÚltimas 48 horasHasta 6 meses hacia atrás
endDateNo puede estar en el futuroDebe estar en el pasado
Día en cursoIncluidoNo incluido
InmutabilidadPuede cambiarInmutable después del cierre

Fechas

  • Las fechas en startDate y endDate deben enviarse en formato ISO 8601 en UTC con sufijo Z.

    • Ejemplo: 2026-01-15T23:59Z
  • Para eod, debes convertir la medianoche local correspondiente al cierre del día a UTC

    • Ejemplo: para una zona UTC-4: 2026-01-16T00:00-04:00. Debe enviarse como: 2026-01-16T04:00Z

Paginación

La paginación divide las transacciones en grupos según el valor de pageSize. El valor predeterminado es 100 y el máximo permitido es 500.

Si existen más resultados, la respuesta incluirá un cursor. Envíalo sin modificar en la siguiente solicitud y repite el proceso hasta que no se devuelva uno nuevo.

Si el cursor expiró, reinicia la paginación realizando la consulta nuevamente sin incluir este parámetro.

🚧

Paginación

La respuesta es paginada mediante cursor. Si el cursor se altera o expira, se mostrará el código400 - Invalid nextPage token, por lo que deberás reiniciar la consulta desde la primera página.

Movimientos

Cada elemento de transactions representa un movimiento registrado en la cuenta. El campo type explica no solo el movimiento, sino también los cambios entre saldo disponible y reservado.

La siguiente tabla muestra los tipos de movimientos disponibles.

typeDescripciónImpacto
creditIngreso de fondosAumenta el saldo disponible.
debitSalida de fondosDisminuye los fondos de la cuenta.
reservationFondos comprometidos en una operación pendienteDisponible → reservado.
releaseLiberación de fondos previamente reservadosReservado → disponible.
📘

reservation vs. debit

El tiporeservation no representa una salida definitiva de fondos. El monto permanece asociado a la cuenta, pero no puede utilizarse mientras se encuentre reservado.

Estados

Los movimientos pueden presentar los siguientes estados:

EstadoSignificado¿Final?
in_progressSolicitud en progresoNo
completedOperación completada correctamente
failedNo pudo procesarse
📘

Estado para conciliación

Un movimiento en completed es el único que se puede dar por definitivo para efectos de conciliación.

Origen de los movimientos

El campo sourceModule permite identificar el producto que originó cada movimiento.

sourceModuleDescripción
va_payinPayIn recibido mediante una cuenta virtual.
fxConversión de moneda.
wire_outWire Out.
payoutUna dispersión local
prefundMovimientos de fondeo de la cuenta, no originados en una instrucción del cliente
refundReembolso.

Ejemplos según producto

Como resultado de tus consultas, obtendrás respuestas similares a las siguientes de acuerdo con el tipo de producto:

{  
  "transactionId": "12345e678-7991-5431-81d5-266a31090639",  
  "type": "credit",  
  "amount": 20,  
  "currency": "PEN",  
  "balanceAfter": 101734480.2085,  
  "reservedAfter": 5699,  
  "status": "completed",  
  "timestamp": "2026-07-01T14:30:00-05:00",  
  "sourceModule": "va_payin",  
  "sourceReferenceId": "1234567890",  
  "counterpartyName": "John Doe",  
  "counterpartyBank": "Bank name"  
}
{  
  "transactionId": "ddaa1832-5ee3-52f2-aba9-1afb97233640",  
  "type": "debit",  
  "amount": 100000,  
  "currency": "PEN",  
  "balanceAfter": 100523179.5629,  
  "reservedAfter": 203018,  
  "status": "completed",  
  "timestamp": "2026-07-02T20:29:34.672Z",  
  "sourceModule": "fx",  
  "sourceReferenceId": "05c47a77-c047-4d24-9df9-7a45c2e85250",  
  "counterpartyName": "John Doe",  
  "counterpartyBank": "Bank Name"  
}
 {
  "transactionId": "0e3196e3-bd2d-5887-af42-e77725905e31",
  "type": "debit",
  "amount": 1000,
  "currency": "PEN",
  "balanceAfter": 100522179.5629,
  "reservedAfter": 204018,
  "status": "completed",
  "timestamp": "2026-07-07T20:04:27.651Z",
  "sourceModule": "payout",
  "sourceReferenceId": "0b1327cb-0f22-4286-a847-56172489e3a4",
  "counterpartyName": "John Doe",
  "counterpartyBank": "Bank Name"
}
{
  "transactionId": "1660eb6f-01a6-505c-9aee-da9bd7325bea",
  "type": "release",
  "amount": 286,
  "currency": "USD",
  "balanceAfter": 63275.21,
  "reservedAfter": 3774.6,
  "status": "failed",
  "timestamp": "2026-07-03T17:08:48.500Z",
  "sourceModule": "wire_out",
  "sourceReferenceId": "9d80f612-5c00-4feb-b1ee-9b1a5cb931d2",
  "counterpartyName": "John Doe",
  "counterpartyBank": "Bank Name"
}
{
  "transactionId": "a630fa65-5561-55d2-b0c0-11ddf2c35349",
  "type": "debit",
  "amount": 1700,
  "currency": "PEN",
  "balanceAfter": 100891058.2085,
  "reservedAfter": 11800,
  "status": "completed",
  "timestamp": "2026-07-28T13:04:53.908Z",
  "sourceModule": "refund",
  "sourceReferenceId": "dcdb78e2-7e63-44fb-81d9-cacf3e8be501",
  "counterpartyName": "John Doe",
  "counterpartyBank": "Bank Name"
}
🚧

Paginación

La respuesta es paginada mediante cursor. Si el cursor se altera o expira, se mostrará el código400 - Invalid nextPage token, por lo que deberás reiniciar la consulta desde la primera página.



Respuestas

A continuación te mostramos las posibles respuestas que pueden derivarse de las consultas de cuentas internas.

Balance

La siguiente tabla muestra los posibles errores de consulta de balance.

CódigoMensaje
401Unauthorized
404Account {accountNumber} not found
504Endpoint request timed out.

Transacciones

La siguiente tabla muestra los posibles errores de consulta de transacciones.

CódigoMensaje
401Unauthorized
404Account {accountNumber} not found
400camt.052 (intraday) requires ISO 8601 UTC date-time with Z suffix, e.g. 2026-01-15T10:00Z
400startDate must be before or equal to endDate
400camt.052 (intraday) endDate must not be in the future (UTC)
400camt.052 (intraday) startDate must be within the last {maxDays} day(s) from now
400camt.053 (eod) requires ISO 8601 UTC date-time with Z suffix, e.g. 2026-01-15T04:00Z
400camt.053 (eod) endDate must be in the past (UTC)
400camt.053 (eod) date range must not exceed {maxMonths} month(s)
400Invalid nextPage token
504Endpoint request timed out.


Did this page help you?