Create an accounting entry batch

Submits up to 10,000 accounting entries (100,000 lines) for asynchronous ingestion.

Every element of entries is the exact body you would send toPOST /accounting-entries/.

Unlike a transaction batch there is no discriminator: book_type and entry_category live on each entry, because amonth-end close legitimately mixes NORMAL and CLOSING entries and forcing that into separate requests would be arbitrary.

entry_external_id is both the correlation key for results and the deduplication key for retries.

The response is always 202.

Read progress and results throughGET /batches/{batch_id}, exactly as with a transaction batch.

Body Params
options
object

The same options as a transaction batch, minus use_tax_engine: there is no
tax engine involved in an accounting entry.

entries
array of objects
required
length between 1 and 10000

Each element is the exact body of POST /accounting-entries/. A batch is
additionally capped at 100,000 lines in total, which is usually the limit
that binds first: a double-entry journal has 2 lines, but a payroll entry
can have 200.

entries*

A single accounting entry. Mirrors the body of POST /accounting-entries/.

string
required

Your identifier for the entry. Required, and unique within the batch.

string

Company ID in Brinta's system. Required if entry_company_external_id is absent.

string

Your identifier for the company. Required if entry_company_id is absent.

string
date-time
required

When the entry occurred.

date-time

Date of the transaction linked to the entry.

string
enum
required
Allowed:
string
enum
Allowed:
string
required

ISO code of the entry currency.

string

Rate against the local currency.

string

Brinta's ID for a linked invoice. Note that this is a Brinta identifier,
so linking invoices across a large batch requires resolving those IDs
first. Omit it if you do not already have them.

lines
array of objects
required
length ≥ 1
lines*

One debit or credit movement. line_external_id must be unique within its
entry; a duplicate rejects the whole batch with a 422.

string
required
string

Your identifier for the account.

string

Your identifier for the cost center.

number
required

Debit amount. Use 0 for a credit line.

number
required

Credit amount. Use 0 for a debit line.

string
required

ISO code, when different from the entity's local currency.

string

Rate from currency to the local currency.

number

Debit amount expressed in local currency.

number

Credit amount expressed in local currency.

Headers
uuid
required

A client-generated UUID identifying this logical load attempt.

Replaying the same key with the same body within 24 hours returns the
original batch_id without re-queuing anything. Replaying it with a
different body returns 409. Scoped per company.

Responses

Language
Credentials
Bearer
JWT
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json