Skip to content

14. Evaluate Beancount for fiscal host bookkeeping

Date: 2025-12-04

Status

Proposed

Context

StartMeUp.nz is live as a fiscal host on Open Collective and needs transparent, auditable bookkeeping. We want to trial Beancount (open-source, double-entry, Python ecosystem) to maintain an internal ledger that can align with OC “Add Funds”/expenses and remain portable to Xero if/when we adopt it. OpsDev.nz is acting as our internal R&D/project space for this evaluation.

There are community efforts and scripts for Beancount↔️Xero/CSV bridges, so an evaluation does not preclude later Xero adoption. Costs are low to trial, and we prefer Python-based tooling.

Decision

Run a Beancount evaluation led by OpsDev.nz:

  • Stand up a pilot ledger (Assets:Checking, Assets:Spot, founder loan, interest/RWT, expenses) under finance/beancount/.
  • Import recent bank data (Spot/Checking), record founder loan tranches and interest (net of RWT), and mirror OC “Add Funds” with notes.
  • Generate basic reports (balance sheet, income statement) and confirm they reconcile to bank/OC.
  • Document an export path (CSV) suitable for Xero import to keep migration optional.

No commitment to replace Xero; this is an evaluation phase.

Consequences

Pros - Low-cost, transparent ledger aligned with our Python stack. - Faster experimentation on finance workflows before committing to paid tooling. - Clear migration story if we later move to Xero (exports/CSV mapping).

Cons / Risks - Learning curve and setup time for Beancount (CLI, config). - Dual maintenance if we later run Xero in parallel. - OC remains source for public ledger; need discipline to keep OC and Beancount reconciled.

Mitigations - Keep scope tight: small pilot ledger, reconcile against OC/bank, then decide. - Tag OC transaction IDs in Beancount; run regular checks (bean-check/reports). - If adopted, document a handoff plan to Xero or continuing dual use.