simonmichael / hledger

Robust, fast, intuitive plain text accounting tool with CLI, TUI and web interfaces.
https://hledger.org
GNU General Public License v3.0
3.05k stars 321 forks source link

No transaction without reference document // Implementing German (DACH) bookkeeping requirements #2144

Open benjaminweb opened 11 months ago

benjaminweb commented 11 months ago

German bookkeeping requirements are prevalent in Germany, Austria and Switzerland. It requires every transaction to have its reference document (proof).

“No transaction without reference document.”

The books are usually furthered starting from the reference documents:

  1. sort reference documents chronologically
  2. enumerate them sequentially with unique identifier, without any leap
  3. assignment to specific account to book the document to (group them by target account)
  4. make the actual transaction per account

As you see, the process is driven by the reference documents.

Reference documents can be:

Semantically:

Hard requirements: a. Progressive validity: Starting from each reference document every transaction must be verifiable. b. Retrograde validity: Starting from each transaction, each reference document must be verifiable.

Implementation requirements:

Available hledger functionality:

Additional required hledger functionality: It would be helpful to be able to

How to organise digital references?

Beancount suggests one scenario to organise the digital references by mirroring the accounts hierarchy.

simonmichael commented 11 months ago

support for viewing such attachments in hledger-web would be great. It sounds like an easy project. Just needs a bit of design - perhaps the simplest would be to reserve the file: tag and link that. (That would work for a single attachment per transaction or posting or account. Though I guess you could repeat it too. )