Journal Entries

Journal entries are the foundation of double-entry accounting. Every entry contains debit and credit lines that must balance.

Core Rule

Total Debits = Total Credits — every journal entry must balance.

Create a Journal Entry

bash
curl -X POST "https://api.ondayzero.com/api/v1/journal-entries" \
  -H "Authorization: Bearer dz_your_token_here" \
  -H "x-business-id: YOUR_BUSINESS_ID" \
  -H "Content-Type: application/json" \
  -d '{
    "description": "Client payment received",
    "datetime": "2026-03-20T00:00:00Z",
    "line_entries": [
      { "ledger_id": "CASH_LEDGER_UUID", "amount": 100000, "debit_credit": "debit" },
      { "ledger_id": "REVENUE_LEDGER_UUID", "amount": 100000, "debit_credit": "credit" }
    ]
  }'

Line Entry Fields

Field Type Description
ledger_id UUID The account (ledger) affected
amount integer Amount in cents
debit_credit string debit or credit
description string Optional line description

Entry Sources

Journal entries are created from multiple sources:

Source Description
Manual User-created adjusting entries
Invoice AR entries when invoices are finalized
Bill AP entries from bills
Transaction Bank transaction categorization
Stripe Automatic entries from payment webhooks
Shopify E-commerce accounting entries

List Journal Entries

bash
curl "https://api.ondayzero.com/api/v1/journal-entries?limit=25" \
  -H "Authorization: Bearer dz_your_token_here" \
  -H "x-business-id: YOUR_BUSINESS_ID"

Filter by date range with start_date and end_date parameters.