Skip to main content

Account movements

Each credit or debit on a receivable account is recorded as a movement. Movements are the operational statement of the account.

Endpoint

GET /v1/receivable-accounts/{id}/movements

Filters

ParameterTypeDescription
fromDateISO 8601Filters by movementDate >=
toDateISO 8601Filters by movementDate <= (inclusive)
movementTypeenumCREDIT or DEBIT
operationTypeenumDEPOSIT, WITHDRAW, TAX_CREDIT, TAX_DEBIT, TAX_ADJUSTMENT_CREDIT, TAX_ADJUSTMENT_DEBIT, ROLLBACK
minAmountdecimalMinimum amount (absolute)
maxAmountdecimalMaximum amount (absolute)
counterPartyTaxIdstringCounterparty CUIT/CUIL
linkedReceivableIdint64Movements associated with a specific receivable
unsettledOnlybooleanOnly movements pending settlement
sortstringDefault -movementDate. Accepts movementDate, -movementDate, amount, -amount
page, countintPagination

Model

{
"id": 88123,
"receivableAccountId": 4242,
"amount": 45000.00,
"currencyCode": "ARS",
"movementType": "CREDIT",
"operationType": "DEPOSIT",
"movementDate": "2026-05-15T14:30:00-03:00",
"balanceAfter": 165000.00,
"detail": "Incoming transfer",
"counterParty": {
"name": "Kiosco Central",
"taxId": "30998888887",
"routingCode": "0000000099887766554433",
"routingType": "CBU"
},
"linkedReceivableId": null,
"linkedSettlementId": null,
"originalMovementId": null,
"rollbackMovementId": null,
"creationDate": "2026-05-15T14:30:01-03:00"
}

Fields

FieldDescription
movementTypeCREDIT (money in) or DEBIT (money out).
operationTypeMore specific sub-type. DEPOSIT is an incoming transfer, TAX_CREDIT/TAX_DEBIT are tax withholdings, ROLLBACK is a reversal.
balanceAfterAccount balance after this movement.
counterPartyData of the originator of the movement (in CREDIT) or the destination (in DEBIT).
linkedReceivableIdIf this movement is the result of an operation on a specific receivable. Generally null for incoming deposits.
linkedSettlementIdIf this movement is part of a settlement cycle.
originalMovementIdIf this movement is a ROLLBACK, points to the original reversed movement.
rollbackMovementIdIf this movement was reversed by another, points to the rollback movement.
Link with receivables

The system does not automatically link incoming DEPOSITs to specific receivables. If a client has several pending invoices, the system cannot infer which one is being paid. Matching, if the customer needs it, is done from the ERP. See Receivable lifecycle.

Rollbacks

When a movement is reversed (for example, a transfer rejected by COELSA after being credited), a new movement appears with:

  • operationType: ROLLBACK
  • movementType opposite to the original (if the original was CREDIT, the rollback is DEBIT)
  • originalMovementId: the ID of the reversed movement
  • Same absolute amount as the original

The original movement is also updated with rollbackMovementId pointing to the rollback. This enables traceability in both directions.

Example: last month's statement

const movements = [];
let page = 1;

while (true) {
const res = await fetch(
`/v1/receivable-accounts/${accountId}/movements?` +
`fromDate=2026-04-01T00:00:00-03:00&toDate=2026-04-30T23:59:59-03:00&` +
`page=${page}&count=200`,
{ headers: { Authorization: `Bearer ${token}` } }
);

if (res.status === 204) break;
const batch = await res.json();
movements.push(...batch);

const total = parseInt(res.headers.get('X-Total-Count'), 10);
if (page * 200 >= total) break;
page++;
}

console.log(`Total movements in April: ${movements.length}`);

Asynchronous exports

For large volumes, it is preferable to use asynchronous reports instead of paginating. See Reports (coming soon).