Living Document Notice
Published 2026-09-17. The evolving architecture, revisions, and connected notes for this dispatch live in the Stax Digital Garden.
Automated Bank CSV Liberation and Parsing Pipelines
Connecting personal finance software directly to commercial bank APIs through third-party data brokers (such as Plaid or Yodlee) exposes banking credentials and personal transaction histories to privacy harvesting. Quartermaster replaces opaque bank feeds with automated local CSV ingestion pipelines.
Declarative Banking Schema Mappings
Because every financial institution formats CSV exports differently, Quartermaster defines YAML mapping profiles that normalize bank outputs into standard double-entry transactions:
institution: "FirstTech Credit Union"
delimiter: ","
skip_rows: 1
columns:
date: 0
date_format: "%m/%d/%Y"
description: 2
amount: 3
balance: 4
rules:
- match_desc: "SAFEWAY"
target_account: "Expenses:Food:Groceries"
- match_desc: "GITHUB"
target_account: "Expenses:Infrastructure:Software"The ingestion utility matches descriptions against deterministic regex rules to suggest account categorizations automatically.
Duplicate Prevention via Hash Signatures
To allow repeated CSV uploads without duplicating transactions, the ingestion engine calculates a deterministic hash for each line:
[ ext{Signature} = ext{SHA256}( ext{Date} + ext{Payee} + ext{Amount} + ext{Account}) ]
Existing signatures in the ledger are skipped automatically, making bank statement imports repeatable, safe, and completely offline.
- Directus Target: quartermaster
- Garden Source Reference: MOC - Personal Finance, Ledgers & Tax Manifests, MOC - Bosun PKM Tools
- Garden Source Reference: [QTM-1004 - Automated Bank CSV Liberation and Parsing Pipelines](QTM-1004 - Automated Bank CSV Liberation and Parsing Pipelines)