Internal Account Overdrafts?

Internal accounts holding negative money at end-of-day. The L1 invariant is 'no internal account holds negative balance' — every row in the table below is one violation. External accounts are excluded by the underlying view (banks may legitimately overdraft us; we MUST NOT overdraft them). Orthogonal to Drift: Overdraft asks 'is stored < 0?' (an absolute sign check). Drift asks 'does stored agree with the cumulative net of postings?' (a reconciliation check). A chronically-negative account whose postings have always summed to the same negative number is overdrafted but NOT drifted — its ledger is internally consistent, it's just consistently in the red. Same datum, two independent SHOULD-constraints; expect Overdraft rows that don't appear on the Drift sheet.

Account-Days in Overdraft

Count of internal-account day-rows holding negative stored balance — every row in the table below is one violation.

Overdraft Violations

Each internal account-day where stored balance < 0. Negative magnitude indicates how far below zero the account ended the day. Right-click any row → View Daily Statement.



Non-negative balance

For every internal Account, on every business day — emitted or carried — the effective balance SHOULD be ≥ 0.

Each internal account day where the effective stored balance is negative — including carried days: a sparse account whose last emitted balance was negative stays overdrawn on every quiet day until an emit says otherwise. External counterparties are excluded by construction (the asymmetry is intentional: banks may legitimately overdraft *us*; we MUST NOT overdraft *them*).

Columns: account_id, account_name, account_role, account_parent_role, business_day_start, business_day_end, stored_balance.

Action. Trace account_id's posting sequence on business_day_end to find the over-debit — usually a missing inbound credit or an over-issued debit. Reconcile against the source system and post a correction.