Escrow Balances (Beta)¶
Beta endpoints — subject to change
These endpoints are in active development. Parameters, response formats, and behavior may change without warning.
A RESTful endpoint for reading the escrow account balances behind your offerings. Balances are served from North Capital's escrow ledger — the same figures shown in the North Capital Escrow Portal — which is reconciled against the escrow bank twice each business day.
Authorization header: Authorization: Bearer clientId:apiKey
Sandbox base URL: https://api-sandboxdash.norcapsecurities.com — the examples read it from $TAPI_HOST.
Endpoints¶
GET/v3/offerings/{offeringId}/escrow/balances — Get escrow balances for an offering
To read balances across multiple offerings, iterate the offerings returned by GET /v3/offerings and request each offering's balances individually.
Balance definitions¶
| Figure | Definition |
|---|---|
availableBalanceCents | Sum of the account's Settled and Returned transactions — funds that have actually moved. Transactions in a pending state (Pending, Refund Pending) are excluded, as is any transaction whose status is not recognized as settled. |
totalBalanceCents | Sum of every transaction recorded on the account, pending states included. |
Monetary amounts are integers denominated in US cents: 125000000 represents $1,250,000.00. Both figures come from the escrow ledger maintained by North Capital as escrow agent facilitator; between the twice-daily bank reconciliations, the ledger is updated as debits and credits are recorded.
Dates reflect the ledger, not account state
openDate, expirationDate, and closeDate are returned exactly as escrow operations recorded them. An open account may carry a close date or an expiration date in the past — these are recorded dates, not derived state. Always use escrowAccountStatus to determine whether an account is open or closed.
Offerings sharing an escrow account
An escrow account may serve more than one offering (for example, to segment investor groups or promotions within a raise). When offerings share an account, each offering returns the shared account's balance — the figures are account-level, not a per-offering allocation.
Get Escrow Balances for an Offering¶
GET /v3/offerings/{offeringId}/escrow/balances
Returns escrow balances for a single offering. Requires the escrow_account.read scope to be granted to the calling API key.
The offering must belong to your client account. Balances are returned for escrow accounts in any status, including closed accounts.
Path Parameters¶
| Parameter | Type | Description |
|---|---|---|
offeringId | string | Offering ID generated by the API (createOffering) |
Example Request¶
curl -X GET "$TAPI_HOST/v3/offerings/97618/escrow/balances" \
-H "Authorization: Bearer $TAPI_CLIENT_ID:$TAPI_API_KEY"
Response¶
| Field | Type | Description |
|---|---|---|
balances | object | Escrow balance object (see fields below) |
The balances object contains:
| Field | Type | Description |
|---|---|---|
escrowAccountNumber | string | Escrow bank account number |
escrowAccountStatus | string | Status of the escrow account: open or closed |
dealStatus | string | null | Status of the escrow deal associated with the account; null when no deal is linked |
escrowBank | string | Bank holding the escrow account |
availableBalanceCents | integer | Sum of recorded transactions excluding those in Pending or Refund Pending status, in US cents |
totalBalanceCents | integer | Sum of all recorded transactions including pending statuses, in US cents |
openDate | string | null | Date the escrow account was opened (YYYY-MM-DD) |
expirationDate | string | null | Expiration date recorded on the escrow account (YYYY-MM-DD) |
closeDate | string | null | Close date recorded on the escrow account (YYYY-MM-DD) |
Example Response¶
{
"statusCode": "101",
"statusDesc": "Ok",
"balances": {
"escrowAccountNumber": "12345678901",
"escrowAccountStatus": "open",
"dealStatus": "Active",
"escrowBank": "Tristate Bank",
"availableBalanceCents": 125000000,
"totalBalanceCents": 129250000,
"openDate": "2026-03-02",
"expirationDate": "2027-03-02",
"closeDate": null
}
}
Errors¶
| Status | Condition |
|---|---|
404 | The offering does not exist or is not associated with your client account |
404 | The offering has no linked escrow account |
403 | The calling API key does not have the escrow_account.read scope |
502 | The escrow ledger could not be reached, or returned a balance that could not be read. The request is safe to retry. |