Link Provider Account
PUT/api/ledger/accounts/:nominalCode/integration-account
Point a GL account at a specific provider account in your connected accounting system (QuickBooks Online or Xero). Future syncs post this account's journal lines to the linked provider account; entries already synced are not moved.
This endpoint currently requires session authentication; Personal Access Token scope support is in progress.
Authentication: Requires Bearer token. Gated by the accounting.manage_settings permission.
Body:
provider(required) —qboorxero.provider_account_id(required) — id of the imported provider account row (from the provider's accounts list).acknowledge_type_mismatch(optional, boolean) — requiredtruewhen the provider account's classification (Asset/Liability/Equity/Revenue/Expense) conflicts with the GL account's type; the request is rejected with 422 onacknowledge_type_mismatchuntil confirmed.
Guardrails (422): the provider account must exist; Xero inventory-type accounts are never linkable; the account mapped as Inventory Control only accepts an asset-class provider account.
Returns the same shape as Get Account Overview. The change is recorded in the account's activity log.
Request
Responses
- 200
- 401
- 403
- 404
- 422
- 429
OK
Response Headers
Unauthenticated — the bearer token is missing, revoked, expired, or malformed. Never retry automatically; fix the credential. See the Errors guide.
Forbidden — the token lacks a required scope, the endpoint is not available to API tokens, or the user behind the token lacks the permission. A human must adjust the token scopes or user permissions; do not retry.
Not found — no record with the given identifier (or the route does not exist). Verify the ID before retrying.
Unprocessable Entity
Response Headers
Rate limited — platform limit is 1,000 requests/min; individual tokens may carry lower limits. Honor the Retry-After header before retrying. See the Rate Limits guide.