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:
Consultar el saldo disponible antes de realizar una operación.
Revisar los movimientos registrados.
Identificar fondos reservados en operaciones pendientes.
Consultar períodos cerrados para conciliación.
Además, se pueden consultar las cuentas internas sobre:
- Cuentas virtuales
- Cambio de divisas
- Wire Outs
- PayOuts
- Reembolsos
- Prefunds
MonedasCada 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
accountNumberpor separado.
¿Cómo funciona?
El proceso de consulta de balance y movimientos sigue estas etapas:
- Identifica la cuenta. Ingresa el ID de la cuenta interna que deseas consultar.
- Selecciona el tipo de consulta. Utiliza el endpoint de balance para conocer los fondos disponibles actualmente o el endpoint de transacciones para revisar movimientos.
- Define el período. Para consultar movimientos, indica
startDateyendDate.
Selecciona el tipo de reporte. Utilizaintradaypara movimientos recientes oeodpara períodos cerrados.
- Define el período. Para consultar movimientos, indica
- Consulta los resultados. La API retorna los saldos o movimientos de la cuenta interna.
- 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 reservadoLos fondos incluidos en
reservedBalanceestán comprometidos en operaciones pendientes y no se encuentran disponibles para iniciar nuevas operaciones. SoloavailableBalancees 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áginaEl valor máximo permitido para el parámetro
pageSizees 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ística | intraday | eod |
|---|---|---|
| Para qué sirve | Monitorear movimientos recientes | Conciliar períodos cerrados |
| Movimientos incluidos | Movimientos en estado:in_progress, completed y failed | Solo movimientos con estados finales: completed y failed |
| Período consultable | Últimas 48 horas | Hasta 6 meses hacia atrás |
endDate | No puede estar en el futuro | Debe estar en el pasado |
| Día en curso | Incluido | No incluido |
| Inmutabilidad | Puede cambiar | Inmutable después del cierre |
Fechas
-
Las fechas en
startDateyendDatedeben 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ónLa respuesta es paginada mediante cursor. Si el cursor se altera o expira, se mostrará el código
400-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.
type | Descripción | Impacto |
|---|---|---|
credit | Ingreso de fondos | Aumenta el saldo disponible. |
debit | Salida de fondos | Disminuye los fondos de la cuenta. |
reservation | Fondos comprometidos en una operación pendiente | Disponible → reservado. |
release | Liberación de fondos previamente reservados | Reservado → disponible. |
reservation vs. debitEl tipo
reservationno 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:
| Estado | Significado | ¿Final? |
|---|---|---|
in_progress | Solicitud en progreso | No |
completed | Operación completada correctamente | Sí |
failed | No pudo procesarse | Sí |
Estado para conciliaciónUn movimiento en
completedes 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.
sourceModule | Descripción |
|---|---|
va_payin | PayIn recibido mediante una cuenta virtual. |
fx | Conversión de moneda. |
wire_out | Wire Out. |
payout | Una dispersión local |
prefund | Movimientos de fondeo de la cuenta, no originados en una instrucción del cliente |
refund | Reembolso. |
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ónLa respuesta es paginada mediante cursor. Si el cursor se altera o expira, se mostrará el código
400-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ódigo | Mensaje |
|---|---|
401 | Unauthorized |
404 | Account {accountNumber} not found |
504 | Endpoint request timed out. |
Transacciones
La siguiente tabla muestra los posibles errores de consulta de transacciones.
| Código | Mensaje |
|---|---|
401 | Unauthorized |
404 | Account {accountNumber} not found |
400 | camt.052 (intraday) requires ISO 8601 UTC date-time with Z suffix, e.g. 2026-01-15T10:00Z |
400 | startDate must be before or equal to endDate |
400 | camt.052 (intraday) endDate must not be in the future (UTC) |
400 | camt.052 (intraday) startDate must be within the last {maxDays} day(s) from now |
400 | camt.053 (eod) requires ISO 8601 UTC date-time with Z suffix, e.g. 2026-01-15T04:00Z |
400 | camt.053 (eod) endDate must be in the past (UTC) |
400 | camt.053 (eod) date range must not exceed {maxMonths} month(s) |
400 | Invalid nextPage token |
504 | Endpoint request timed out. |
Updated 1 day ago