Reconciliations

Reconciliations are used to match and verify financial transactions across different accounts or statements. They help ensure the accuracy of accounting records by confirming that transactions are properly recorded and balanced.

Endpoints

Method Endpoint Description
GET /reconciliations List reconciliations
DELETE /reconciliations/{id} Delete a reconciliation

Query Parameters

The GET /reconciliations endpoint supports the following query parameters:

Parameter Type Required Description
client_account_id integer Yes Filter by client account ID. Must be one of the user’s eligible client accounts
date_from date No Filter entries from this date (inclusive)
date_to date No Filter entries to this date (inclusive)
journal_entry_line_id integer No Filter to reconciliations whose entries reference this journal entry line
journal_entry_id integer No Filter to reconciliations whose entries belong to this journal entry
page integer No Page number for pagination (default: 0)
per_page integer No Number of items per page (default: 100)
with string No Comma-separated list of relations to include. Supported: entries, entries.journal_entry_line, created_by

Attributes

Attribute Type Description
id integer The unique identifier of the reconciliation
created_at datetime The date and time when the reconciliation was created
created_by_id integer The ID of the user that created the reconciliation
client_account_id integer The ID of the client account associated with the reconciliation
sequence_number integer The sequence number of the reconciliation
reconciliation_date date The date of the reconciliation

Relationships

All relationships are opt-in and must be requested via the with query parameter.

Relationship Type Description
created_by User The user who created the reconciliation
entries ReconciliationEntry The entries in this reconciliation
entries.journal_entry_line JournalEntryLine The journal entry line behind each entry (request via with=entries.journal_entry_line)

Reconciliation Entry

Attribute Type Description
id integer The unique identifier of the reconciliation entry
journal_entry_id integer The ID of the associated journal entry
journal_entry_line_id integer The ID of the associated journal entry line
debit decimal The debit amount in the base currency
debit_fc decimal The debit amount in foreign currency
credit decimal The credit amount in the base currency
credit_fc decimal The credit amount in foreign currency

Example Request

GET /api/v2/reconciliations?client_account_id=7&with=entries,entries.journal_entry_line,created_by

Example Response

{
    "data": [
        {
            "id": 1,
            "created_at": "2023-05-10T12:00:00Z",
            "created_by_id": 1,
            "client_account_id": 7,
            "sequence_number": 1,
            "reconciliation_date": "2023-05-10",
            "entries": [
                {
                    "id": 1,
                    "journal_entry_id": 1,
                    "journal_entry_line_id": 1,
                    "debit": "100.00",
                    "debit_fc": "100.00",
                    "credit": "0.00",
                    "credit_fc": "0.00",
                    "journal_entry_line": {
                        "id": 1,
                        "posting_date": "2023-05-10",
                        "description": "Bank transaction",
                        "account_code": "1920",
                        "account_id": 1,
                        "debit": "100.00",
                        "credit": "0.00"
                    }
                }
            ],
            "created_by": {
                "id": 1,
                "first_name": "John",
                "last_name": "Doe"
            }
        }
    ],
    "meta": {
        "page": 0,
        "pages": 1,
        "per_page": 100,
        "records": 1
    }
}

Delete Reconciliation

DELETE /api/v2/reconciliations/{id}

Permanently removes a reconciliation. The journal entry lines remain in place — only the reconciliation linkage is dropped.

Response

Returns 204 No Content with an empty body on success.

Error Responses

Status Description
403 No access to the reconciliation’s client account
404 Reconciliation not found

Notes

  • The client_account_id must be one of the eligible client accounts for the authenticated user.
  • Reconciliations can only be deleted if they belong to one of the user’s eligible client accounts.
  • The entries, entries.journal_entry_line, and created_by relations are opt-in — request them through with.
  • All amounts are returned as string representations of decimal numbers.
  • All dates are returned in ISO 8601 format.
  • The _fc suffix on amount fields represents “foreign currency” amounts.