Skip to main content
A Bank Account is a real-world account an Entity holds at a financial institution, such as a checking account or a credit card. Each account is scoped to a single Entity, denominated in one currency, and mapped to exactly one Ledger Account where its booked activity accumulates. This page covers the endpoints for managing Bank Accounts and their optional bank data feeds.

Base path

All Bank Account routes are prefixed under:
Feed sub-routes live under:
Path parameters :entityId and :bankAccountId are UUIDs.

Authentication

Use a session cookie or pass x-api-key: $SINTROPIX_API_KEY. Mutations with an API key also require x-audit-actor: my-agent. See Authentication.

Bank Account kinds

A Bank Account has one of two kinds, validated at creation against the mapped Ledger Account’s type:

List bank accounts

Returns every Bank Account for the Entity with a computed summary. The response is a bare JSON array of BankAccountWithSummary.

Response schema

BankAccountWithSummary extends BankAccount with these fields: The feed object, when present, contains:

Example

Create a bank account

Creates a new Bank Account. The request body follows CreateBankAccountSchema.

Body parameters

Response

Returns 201 Created with a BankAccountWithSummary object.

Status codes

Example

Update a bank account

Updates the name of an existing Bank Account. Only name is editable through this endpoint.

Body parameters

Response

Returns 200 OK with a BankAccount object (without summary fields).

Status codes

Example

Delete a bank account

Removes a Bank Account. Deletion is allowed only when the account has no Movements and no active feed.

Response

Returns 200 OK with a DeleteBankAccountResult:

Status codes

Example

Delete a bank account feed

Removes the active bank data feed from a Bank Account. The account and its existing Movements remain; no new feed data will be ingested.

Response

Returns 200 OK with a BankAccount object (feed is now null).

Status codes

Example

Sync a bank account feed

Triggers a manual sync of the Bank Account’s feed. The server reads the latest window from the Provider, lands new Movements, and records the outcome.

Response

Returns 201 Created with a BankAccountFeedSyncResult:

Status codes

Example

Rate limits

Bank Account endpoints share the global rate limit of 5000 requests per hour per API key.