Retrieving Account Balances
After provisioning an Internal Account, you can retrieve real-time balance information via the API or webhooks. Balance Reports represent a collection of balances for an account at a given moment in time.
Balance Types
Modern Treasury provides two balance types for each Internal Account:
current_ledger— the current posted balance of the account. This does not account for pending inflows and outflows.current_available— the balance available for use when initiating payments. This equalscurrent_ledgerminus any pending outflows.
Retrieve Balances via API
Use the Get Balance Report endpoint to fetch the latest balance for an Internal Account. Set the id parameter to latest to retrieve the most recent balance report.
curl --request GET \
-u ORGANIZATION_ID:API_KEY \
--url https://app.moderntreasury.com/api/internal_accounts/<internal_account_id>/balance_reports/latest \
-H 'content-type: application/json'{
"id": "b9382713-ce26-4864-9327-289bd7c62j25",
"object": "balance_report",
"balances": [
{
"id": "805637d6-980d-4a34-8ff6-c3e1e33cd504",
"amount": 100,
"object": "balance",
"currency": "USD",
"balance_type": "current_available",
"as_of_date": "2026-01-01",
"as_of_time": "16:30"
},
{
"id": "1d9bd86f-2b63-453d-b55c-a9e6046aec8w",
"amount": 235,
"object": "balance",
"currency": "USD",
"balance_type": "current_ledger",
"as_of_date": "2026-01-01",
"as_of_time": "16:30"
}
],
"as_of_date": "2026-01-01",
"as_of_time": "16:30",
"balance_report_type": "real_time",
"internal_account_id": "bf5f1df9-de01-40c2-9040-7ec10170a14c"
}Monitor Balances via Webhooks
Subscribe to balance_report webhooks to receive real-time updates each time a transaction is processed on the account. Each webhook payload includes both balance types and an as_of_time indicating when the balance was calculated.
For more details on balance tracking patterns, including webhook payload examples, see Tracking Account Balances.
Updated about 23 hours ago