Ledger
The double-entry ledger — flat journal legs, read-only. Ledger entries ride the reports:read ability.
Operations
| Method & path | Ability |
|---|---|
GET /api/v1/ledger-entries |
reports:read |
GET /api/v1/ledger-entries/{ledgerEntry} |
reports:read |
Reassembling a journal
Each posting writes two or more balanced rows that share the same journalable_type + journalable_id + type + date. Group on that tuple to reconstruct one journal. Exactly one of debit / credit is set per row; the other is null.
curl "https://billey.nl/api/v1/ledger-entries?updated_after=2026-07-01T00:00:00Z" \
-H "Authorization: Bearer $TOKEN"
{
"data": [
{
"id": 70001,
"account": "1300",
"account_label": "Accounts receivable",
"type": "invoice_sent",
"date": "2026-07-21",
"debit": "1250.15",
"credit": null,
"journalable_type": "invoice",
"journalable_id": 42
},
{
"id": 70002,
"account": "8000",
"account_label": "Revenue",
"type": "invoice_sent",
"date": "2026-07-21",
"debit": null,
"credit": "1033.10",
"journalable_type": "invoice",
"journalable_id": 42
}
],
"links": { "first": null, "last": null, "prev": null, "next": null },
"meta": { "path": "https://billey.nl/api/v1/ledger-entries", "per_page": 25, "next_cursor": null, "prev_cursor": null }
}
account_label is present only when the account resolves to a known standard code. The OpenAPI spec lists every type value and field.
Something inaccurate or missing?
support@billey.nl