@@ -310,21 +310,32 @@ particular program activity an expense is toward (e.g., funding travel to
some specific conference).
The Program tag is always a string with the same format as a Ledger CLI
account (primarily for use with Ledger CLI's `--pivot` and `--group-by`,
[as described later](#testing-program-success).
### Expense Account Documentation
### Account Type Documentation Requirements
Each account type has different documentation requirements. Based on the
type of the account, it requires a different set of tags.
When Ledger CLI's `--pedantic` option is used, these rules are enforced by
ledger itself via the configurations found in `config-tags.ledger` and
`config-accounts.ledger`.
#### Expense Account Documentation
Each `Expense:` account entry must be tagged with the following tags:
* One of: [`Invoice:`](#invoice-tag) [`Receipt:`](#receipt-tag), or
[`Statement`](#statement-tag). (The only exception to this rule: an entry
does not need an `Invoice:`, `Receipt`, nor a `Statement` tag if the
[payee was never charged](#never-charged-payee).
* A [`Program:`] tag.
#### NEVER CHARGED Payee
The only exception to the standard tagging requirement is when the payee has
been modified to indicate that the expense was `NEVER CHARGED`. This is an
historical special-case. The solution was originally design for the
following scenario: