All rules

A running balance the row above and this row's amounts do not give

running-balance-mismatchon by defaultJapanese / English

A running balance that is not the balance above plus or minus this row's amounts

Example

Flagged
| No. | Payment | Balance after payment | | --- | --- | --- | | 1 | $104.00 | $2,392.00 | | 2 | $104.00 | $2,298.00 |
What chaff prints
4:17 The balance "$2,298.00" is written, but the row above and this row give $2,288.00
Fixed
| No. | Payment | Balance after payment | | --- | --- | --- | | 1 | $104.00 | $2,392.00 | | 2 | $104.00 | $2,288.00 |
What chaff prints
no finding

How to fix

Check which of this balance, the one above it and this row's amounts is right, and correct the others.

Why it matters

The "balance after payment" of a repayment schedule, the "balance" of a bank statement and the "on hand" of a stock card are the row above's balance moved by this row. Readers trust them without doing the subtraction again. They go wrong when one figure of a row is corrected and the balance is not, when a digit is mistyped, or when a row is copied from another table. Which column is the balance and which holds a row's movement is decided by the heading words alone (Balance, Principal, Payment, Interest, Deposit, Withdrawal), never by where a column stands. With a principal column, the balance is the row above's less the principal. With no principal column and no interest column, it is the row above's less the payment. With deposit and withdrawal columns, it is the row above's plus the deposit less the withdrawal (a blank cell or a dash is zero). Every written number may be rounded to half its last digit. Only the first row of a table that does not add up is reported: a mistyped balance makes the next row fail too, so the check stops there.

What it does not flag

A table whose balance column is not one, with no principal, payment, deposit or withdrawal column, with an interest column but no principal column, with both loan and deposit columns, or with no date or row-number column (its rows may be accounts or items, not times), or with one column for both directions (Deposit/Withdrawal) is not compared. A row whose balance or amount cell is not a number (—, -1,000, (1,000)), whose amounts are written with different units, or that is a total row is skipped, and the count starts again from the next row; so does a row with both deposit and withdrawal blank (brought forward). A table whose row numbers do not rise, or a repayment table whose last balance is larger than its first (rows in reverse), is not compared. A difference the rounding can reach is not reported.

Turning it off or relaxing it

Silence this one spot (in the document)
<!-- stet: running-balance-mismatch — reason -->
Relax it for the team (the reason is kept as a comment in chaff.yaml)
npx chaffjs relax running-balance-mismatch --why "reason"
Turn it off for the team (chaff.yaml)
rules: running-balance-mismatch: off
Technical details
Layer
L3
Status
stable
Severity
warning
Languages
Japanese and English
Suited to
business, technical, blog, legal, docs, academic, literature, speech

Levels

Set a level for this rule under rules in chaff.yaml. With nothing set, it runs at the level its genre gives it (see By genre below).

stricterror
normalwarning
relaxedinfo

This rule has no limit to count to. A level sets how a finding is marked: relaxed keeps the finding and marks it a step lower.

By genre

Runs by default in
technical/spec, technical/readme, blog/tech, blog/essay, blog/owned-media, business/proposal, business/report, business/email, business/press-release, business/meeting-notes, legal/contract, legal/statute, legal/judgment, legal/patent, docs/manual, docs/faq, docs/glossary, academic/paper, speech/address, speech/transcript
Turned off by the genre in
literature/fiction, literature/essay, literature/poetry, literature/play

Genres

Message

The balance "{balance}" is written, but the row above and this row give {computed}

This page is built from the rule's definition file:packages/chaff/rules/running-balance-mismatch.yaml