The real-time balance endpoint fetches the account balance directly from the financial institution without triggering a full item sync. This is useful when you need up-to-date balance information between regular sync cycles.
GET /accounts/{id}/balance
{
"balance": 1500.50,
"blockedBalance": 0,
"automaticallyInvestedBalance": 200,
"closingBalance": 1500.50,
"currencyCode": "BRL",
"updateDateTime": "2024-01-15T10:30:00Z"
}| Field | Description |
|---|---|
balance | Available balance of the account. Same value as balance in the account resourceAPI. |
blockedBalance | Amount currently blocked or held on the account. Only present when the institution reports it. |
automaticallyInvestedBalance | Amount held in the account's automatic investment facility. Only present when the institution reports it. |
closingBalance | Accounting balance of the account: balance plus blockedBalance. Same value as bankData.closingBalance in the account resource. Only present when the institution reports it. |
currencyCode | Currency of the amounts above. |
updateDateTime | When the institution last updated the balance. |
The balance value returned by this endpoint is calculated using the same logic as a full item execution, including the Itaú and Banco do Brasil rule for automatically invested amounts. The one exception is the overdraft adjustment: a full execution returns balance as the negative of the overdraft used when the institution reports zero and overdraft is in use, and this endpoint does not. See Bank account balances on Open Finance.
When you call this endpoint, the account resource is updated with what the institution answered: balance, and, when reported, bankData.closingBalance and bankData.automaticallyInvestedBalance. Any subsequent GET /accounts/{id} request reflects the values fetched by the real-time balance call, so both endpoints stay consistent without waiting for the next sync. Amounts the institution did not report are left as the last sync stored them.
Optional fields
blockedBalance, automaticallyInvestedBalance and closingBalance are omitted from the response when the institution does not report them. Treat them as optional in your integration.
Warning
This endpoint is only available for Open Finance connectors. Calling it on non-Open Finance accounts will return an error.
Rate limiting: The rate limit for this endpoint is shared with the full item execution. Requests to the real-time balance endpoint and item syncs both count toward the same rate limit quota imposed by the financial institution. If the institution rate-limits the request, you will receive a 429 response.
| Response Code | Description |
|---|---|
200 | Balance fetched and account updated |
404 | Account not found for the given ID |
429 | Rate limited by the financial institution -- retry later |
500 | Error fetching the balance from the connector |
See Get real-time balanceAPI in the API reference for more details.
