# Accounting API — Trial Balance

> Canonical URL: https://developers.apideck.com/apis/accounting/reference#tag/Trial-Balance

This document contains every operation on the `Trial Balance` resource.

---

# Get Trial Balance

> **Accounting API** · `GET /accounting/trial-balance`
> Canonical URL: https://developers.apideck.com/apis/accounting/reference#tag/Trial-Balance/operation/trialBalanceOne
> MCP tool: `accounting-trial-balance-one`

## Authentication

- Send `Authorization: Bearer $API_KEY` using your Apideck secret API key. Keep the key server-side; never put it in a URL or client-side code.

Use the application, consumer and connector headers listed in Parameters below for this operation.

Get the trial balance as of a date. Read-only.

## Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `x-apideck-consumer-id` | header | `string` | Yes | ID of the consumer which you want to get or push data from |
| `x-apideck-app-id` | header | `string` | Yes | The ID of your Unify application |
| `x-apideck-service-id` | header | `string` | No | Provide the service id you want to call (e.g., pipedrive). Only needed when a consumer has activated multiple integrations for a Unified API. |
| `x-apideck-company-id` | header | `string` | No | The ID of the company to scope requests to. For connectors that support multi-company, this overrides the default company configured in connection settings. |
| `pass_through` | query | `object` | No | Optional unmapped key/values that will be passed through to downstream as query parameters. Ie: ?pass_through[search]=leads becomes ?search=leads |
| `filter` | query | `object` | No | Apply filters |
| `raw` | query | `boolean` | No | Include raw response. Mostly used for debugging purposes |

### Responses

#### 200 — Trial Balance

- `status_code` `integer` **required** — HTTP Response Status Code — example: `200`
- `status` `string` **required** — HTTP Response Status — example: `OK`
- `service` `string` **required** — Apideck ID of service provider — example: `quickbooks`
- `resource` `string` **required** — Unified API resource name — example: `TrialBalance`
- `operation` `string` **required** — Operation performed — example: `one`
- `data` `object` **required** — The balance of every ledger account as of a date, split into debit and credit columns. Balance sheet accounts are cumulative to `end_date`; income and expense accounts are year-to-date within the fiscal year that contains `end_date`.
  - `report_name` `string` — The name of the report as returned by the connector. — example: `Trial Balance`
  - `start_date` `string` — The date income and expense balances accumulate from: the start of the fiscal year containing `end_date`, unless the connector notes say otherwise. Null when the connector does not report it. — example: `2025-01-01`
  - `end_date` `string` **required** — The date the balances are reported as of. Connectors that only report per period round the requested date up to the end of its period; this field returns the date actually used. — example: `2025-12-31`
  - `currency` `string` — Indicates the associated currency for an amount of money. Values correspond to [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217). — enum: `UNKNOWN_CURRENCY`, `AED`, `AFN`, `ALL`, `AMD`, `ANG`, `AOA`, `ARS`, `AUD`, `AWG`, `AZN`, `BAM`, `BBD`, `BDT`, `BGN`, `BHD`, `BIF`, `BMD`, `BND`, `BOB`, `BOV`, `BRL`, `BSD`, `BTN`, `BWP`, `BYR`, `BZD`, `CAD`, `CDF`, `CHE`, `CHF`, `CHW`, `CLF`, `CLP`, `CNY`, `COP`, `COU`, `CRC`, `CUC`, `CUP`, `CVE`, `CZK`, `DJF`, `DKK`, `DOP`, `DZD`, `EGP`, `ERN`, `ETB`, `EUR`, `FJD`, `FKP`, `GBP`, `GEL`, `GHS`, `GIP`, `GMD`, `GNF`, `GTQ`, `GYD`, `HKD`, `HNL`, `HRK`, `HTG`, `HUF`, `IDR`, `ILS`, `INR`, `IQD`, `IRR`, `ISK`, `JMD`, `JOD`, `JPY`, `KES`, `KGS`, `KHR`, `KMF`, `KPW`, `KRW`, `KWD`, `KYD`, `KZT`, `LAK`, `LBP`, `LKR`, `LRD`, `LSL`, `LTL`, `LVL`, `LYD`, `MAD`, `MDL`, `MGA`, `MKD`, `MMK`, `MNT`, `MOP`, `MRO`, `MUR`, `MVR`, `MWK`, `MXN`, `MXV`, `MYR`, `MZN`, `NAD`, `NGN`, `NIO`, `NOK`, `NPR`, `NZD`, `OMR`, `PAB`, `PEN`, `PGK`, `PHP`, `PKR`, `PLN`, `PYG`, `QAR`, `RON`, `RSD`, `RUB`, `RWF`, `SAR`, `SBD`, `SCR`, `SDG`, `SEK`, `SGD`, `SHP`, `SLL`, `SOS`, `SRD`, `SSP`, `STD`, `SVC`, `SYP`, `SZL`, `THB`, `TJS`, `TMT`, `TND`, `TOP`, `TRC`, `TRY`, `TTD`, `TWD`, `TZS`, `UAH`, `UGX`, `USD`, `USN`, `USS`, `UYI`, `UYU`, `UZS`, `VEF`, `VND`, `VUV`, `WST`, `XAF`, `XAG`, `XAU`, `XBA`, `XBB`, `XBC`, `XBD`, `XCD`, `XDR`, `XOF`, `XPD`, `XPF`, `XPT`, `XTS`, `XXX`, `YER`, `ZAR`, `ZMK`, `ZMW`, `BTC`, `ETH` — example: `USD`
  - `accounts` `array of object` **required** — One line per ledger account with a non-zero balance, plus any line the connector adds to make the report complete (see `line_type`).
    - `line_type` `string` — `account`: a ledger account. `unappropriated_result`: the result of earlier fiscal years not yet posted to an equity account, added by the connector. `unmapped`: a balance the accounting system reports without a ledger account. — enum: `account`, `unappropriated_result`, `unmapped` — example: `account`
    - `account_id` `string` — The ledger account's id, the same id `GET /accounting/ledger-accounts/{id}` takes. Null when `line_type` is not `account`, or when the connector cannot resolve the ledger account. — example: `123456`
    - `code` `string` — The ledger account's code (account number). — example: `1100`
    - `name` `string` — The ledger account's name. — example: `Current assets`
    - `debit` `number` **required** — The account's balance when it is a debit balance, otherwise 0. — example: `1250.5`
    - `credit` `number` **required** — The account's balance when it is a credit balance, otherwise 0. — example: `0`
    - `balance` `number` — The signed balance: debit minus credit. — example: `1250.5`
  - `total_debit` `number` — The sum of the debit column. — example: `98250`
  - `total_credit` `number` — The sum of the credit column. Equals total_debit, up to rounding of the individual lines: connectors return a 502 rather than a report whose debits and credits differ by half a cent or more. — example: `98250`
  - `custom_mappings` `object` — When custom mappings are configured on the resource, the result is included here.
- `meta` `object` — Response metadata
  - `items_on_page` `integer` — Number of items returned in the data property of the response — example: `50`
  - `cursors` `object` — Cursors to navigate to previous or next pages through the API
    - `previous` `string` — Cursor to navigate to the previous page of results through the API — example: `em9oby1jcm06OnBhZ2U6OjE=`
    - `current` `string` — Cursor to navigate to the current page of results through the API — example: `em9oby1jcm06OnBhZ2U6OjI=`
    - `next` `string` — Cursor to navigate to the next page of results through the API — example: `em9oby1jcm06OnBhZ2U6OjM=`
  - `total_count` `integer` — Number of records available in total for this resource — example: `1`
  - `warnings` `array of object` — Non-fatal warnings emitted when optional workflow steps failed. Present only when at least one step degraded; the response status remains 200.
    - `type` `string` — Discriminator for the warning kind. — example: `downstream_request_failed`
    - `status_code` `integer` — HTTP status code returned by the failed downstream request, when available. — example: `429`
    - `error` `string` — Short error description from the downstream provider, when available.
    - `operation` `string` — Identifier of the workflow step that failed. — example: `getManager`
    - `message` `string` — Detailed message from the downstream provider, when available.
- `_raw` `object` — Raw response from the integration when raw=true query param is provided

#### 400 — Bad Request

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

#### 401 — Unauthorized

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

#### 402 — Payment Required

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

#### 404 — The specified resource was not found

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

#### 422 — Unprocessable

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

#### default — Unexpected error

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

---
