Reports
Four reports, read-only: Income, Reported VAT, Overdue and a Client’s Statement. Each is the figure Essentio’s dashboard and its Statement of Account show for the same period, computed by the same code. Every Role may read them, a Viewer’s key included.
How the figures are counted
- Money is a string. Every amount is an exact decimal at its currency’s scale —
"1190.00","-57.00"— never a floating-point number. Parse it with a decimal type. - On issue. Income and Reported VAT count a document in the period it was issued in, in full, paid or not. A month that has closed never changes.
- A Credit Note subtracts from Income and Reported VAT, and is a credit on a Statement. It is never Overdue.
- A Proforma is not a VAT document. It is in no VAT figure. In Income, a Proforma never converted into an Invoice counts only by the share of it that has been paid, so an unpaid one adds nothing; a converted one is counted through its Invoice.
- One currency at a time. Income, Reported VAT and Overdue are stated in the Business’s reporting currency. Documents in any other currency are never converted or summed in:
other_currency_documentssays how many were left out. A Statement has one block per currency. - Drafts and cancelled documents are in no report.
- A period is
fromandto, two days written asYYYY-MM-DD, both included. A missing or malformed day, or atobeforefrom, is a422witherror.typeinvalid_request.
Income
The net amounts of the documents issued in the period, with the VAT beside it. The dashboard’s Income tab shows this for last year and for this year to date.
Query
- Name
from- Type
- date
- Description
The period’s first day,
YYYY-MM-DD.
- Name
to- Type
- date
- Description
The period’s last day,
YYYY-MM-DD, not beforefrom.
Answer
- Name
currency- Type
- string
- Description
The Business’s reporting currency.
- Name
income- Type
- amount
- Description
Net of VAT. Invoices in full, Credit Notes subtracted, Proformas by their paid share.
- Name
vat- Type
- amount
- Description
The VAT of the same Invoices and Credit Notes. A Proforma carries none.
- Name
other_currency_documents- Type
- integer
- Description
Documents issued in the period in another currency, left out of both figures.
Request
curl -G https://api.essentio.pro/v1/reports/income \
-H "Authorization: Bearer ess_your_api_key" \
-d from=2026-08-01 \
-d to=2026-08-31
Response
{
"currency": "EUR",
"from": "2026-08-01",
"to": "2026-08-31",
"income": "925.00",
"vat": "143.00",
"other_currency_documents": 1
}
Reported VAT
The VAT of the Invoices and Credit Notes issued in the period, split as a VAT return is: by VAT category and rate. The dashboard’s VAT tab shows this month by month.
Query
- Name
from- Type
- date
- Description
The period’s first day,
YYYY-MM-DD.
- Name
to- Type
- date
- Description
The period’s last day,
YYYY-MM-DD, not beforefrom.
Answer
- Name
currency- Type
- string
- Description
The Business’s reporting currency.
- Name
net- Type
- amount
- Description
The net amount the VAT is on.
- Name
vat- Type
- amount
- Description
The VAT.
- Name
bands- Type
- array
- Description
The same by VAT category and rate, highest rate first:
category(the EN16931 code —S,Z,E,AE,K,G,O),rateto two decimals (5.50is never6),netandvat. Each 0% category is a band of its own.
- Name
other_currency_documents- Type
- integer
- Description
Invoices and Credit Notes issued in the period in another currency, left out.
Request
curl -G https://api.essentio.pro/v1/reports/vat \
-H "Authorization: Bearer ess_your_api_key" \
-d from=2026-08-01 \
-d to=2026-08-31
Response
{
"currency": "EUR",
"from": "2026-08-01",
"to": "2026-08-31",
"net": "900.00",
"vat": "143.00",
"bands": [
{ "category": "S", "rate": "19.00", "net": "700.00", "vat": "133.00" },
{ "category": "S", "rate": "5.00", "net": "200.00", "vat": "10.00" }
],
"other_currency_documents": 1
}
Overdue
What Clients owe late, as of today: issued Invoices, and Proformas never converted, past their due date and neither paid nor cancelled. The figures are the dashboard’s Overdue ones. It takes no period: Overdue is where documents stand now.
Answer
- Name
currency- Type
- string
- Description
The Business’s reporting currency.
- Name
as_of- Type
- date
- Description
The day, in UTC, the documents were judged on.
- Name
count- Type
- integer
- Description
The Overdue documents in the reporting currency.
- Name
amount_due- Type
- amount
- Description
What is still owed on them: their Total less what has been paid.
- Name
clients- Type
- array
- Description
The same by Client, largest first:
client_id,name,documentsandamount_due.
- Name
other_currency_documents- Type
- integer
- Description
Overdue documents in another currency, left out of
countandamount_due.
Request
curl https://api.essentio.pro/v1/reports/overdue \
-H "Authorization: Bearer ess_your_api_key"
Response
{
"currency": "EUR",
"as_of": "2026-09-27",
"count": 3,
"amount_due": "2428.00",
"clients": [
{ "client_id": 42, "name": "Northwind Studio", "documents": 2, "amount_due": "1476.00" },
{ "client_id": 57, "name": "Harbour Café", "documents": 1, "amount_due": "952.00" }
],
"other_currency_documents": 1
}
Statement
A Client’s account for a period: the balance brought forward from the day before it began, every document (on its issue date) and every Payment (on its payment date) dated in the period — whichever document the Payment settles — and the balance on its last day. It is the Statement of Account the Business prints for the same period, one block per currency. A Client of another Business, or none, is a 404.
Query
- Name
client_id- Type
- integer
- Description
The Client’s id.
- Name
from- Type
- date
- Description
The period’s first day,
YYYY-MM-DD.
- Name
to- Type
- date
- Description
The period’s last day,
YYYY-MM-DD, not beforefrom.
Answer
- Name
currencies- Type
- array
- Description
One block per currency with an entry in the period or a balance brought into it, the currency with most documents first:
currency,opening_balance,closing_balanceandlines. A negative balance is owed to the Client.
- Name
lines- Type
- array
- Description
Every entry, by date:
date,kind(documentorpayment),document_type(invoice,proforma,credit_note, ornullfor a Payment),number(a Payment’s reference,-when it has none),description,debit,credit, the runningbalance, andprepaid— a Payment made on the Proforma the Invoice was converted from.
Request
curl -G https://api.essentio.pro/v1/reports/statement \
-H "Authorization: Bearer ess_your_api_key" \
-d client_id=42 \
-d from=2026-08-01 \
-d to=2026-08-31
Response
{
"client_id": 42,
"from": "2026-08-01",
"to": "2026-08-31",
"currencies": [
{
"currency": "EUR",
"opening_balance": "476.00",
"closing_balance": "1476.00",
"lines": [
{
"date": "2026-08-10",
"kind": "document",
"document_type": "invoice",
"number": "INV-0042",
"description": "Website redesign",
"debit": "1190.00",
"credit": null,
"balance": "1666.00",
"prepaid": false
},
{
"date": "2026-08-25",
"kind": "payment",
"document_type": null,
"number": "BANK-8812",
"description": "Bank Transfer",
"debit": null,
"credit": "190.00",
"balance": "1476.00",
"prepaid": false
}
]
}
]
}