#plaintextaccounting — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #plaintextaccounting, aggregated by home.social.
-
feeling a little sheepish that I'm just now closing the financial books on 2024 & 2025.
The data was all in my ledger(1) #plaintextaccounting files. But when I'm dealing with household finances at the rollover of a new year, I tend to drag my feet at the beginning of the year because uncleared transactions throw a wrench in things. And just never got back to it. So apparently I dragged my feet for 2.5yr 😆
I log about 1000 transactions (~150KB of data) annually, so ledger was running a little slow. With those ~2000 transactions/300KB of data archived off, it's back to being quite snappy.
Tangentially, it's all stored in git and synced to various local & remote hosts, so I can maintain finances from any of those machines and have a nigh-instant snapshot of household finances.
-
feeling a little sheepish that I'm just now closing the financial books on 2024 & 2025.
The data was all in my ledger(1) #plaintextaccounting files. But when I'm dealing with household finances at the rollover of a new year, I tend to drag my feet at the beginning of the year because uncleared transactions throw a wrench in things. And just never got back to it. So apparently I dragged my feet for 2.5yr 😆
I log about 1000 transactions (~150KB of data) annually, so ledger was running a little slow. With those ~2000 transactions/300KB of data archived off, it's back to being quite snappy.
Tangentially, it's all stored in git and synced to various local & remote hosts, so I can maintain finances from any of those machines and have a nigh-instant snapshot of household finances.
-
@richiekhoo
I can recommend SimpleFIN too. Some notes here: -
@richiekhoo
I can recommend SimpleFIN too. Some notes here: -
Been looking into plain text accounting recently, there are a couple command line based apps that support plain text based accounting... and this resources is excellent:
https://plaintextaccounting.org
That said I've never until now found way to be able to automatically import bank transactions UNTIL NOW.
The BeanHub tool sent me down a rabbit hole] [1] and while they've done excellent work, paying their full USD $15/month [for access to just get their bank data direct connect feature does not add up.
But looks like we can go to the source folks, BeanHub uses something called Plaid to get the bank data from 140+ banks worldwide.
And multiple folks have worked out a direct Plaid to Plain Text Accounting tools.
https://beancount.io/forum/t/my-journey-setting-up-plaid-with-beancount-a-complete-walkthrough/119
https://github.com/chandler150/beancount-plaid-importer
https://github.com/OliverF21/Ledger/blob/main/docs/PLAID_
[1] https://beanhub.io/blog/2025/01/16/direct-connect-repository/)
#PlainTextAccounting #LedgerCLI #BeenCounter #hLedger #Plaid #BankImports #BankConnect #CLITools
cc: @jadehopepunk @teq
-
Been looking into plain text accounting recently, there are a couple command line based apps that support plain text based accounting... and this resources is excellent:
https://plaintextaccounting.org
That said I've never until now found way to be able to automatically import bank transactions UNTIL NOW.
The BeanHub tool sent me down a rabbit hole] [1] and while they've done excellent work, paying their full USD $15/month [for access to just get their bank data direct connect feature does not add up.
But looks like we can go to the source folks, BeanHub uses something called Plaid to get the bank data from 140+ banks worldwide.
And multiple folks have worked out a direct Plaid to Plain Text Accounting tools.
https://beancount.io/forum/t/my-journey-setting-up-plaid-with-beancount-a-complete-walkthrough/119
https://github.com/chandler150/beancount-plaid-importer
https://github.com/OliverF21/Ledger/blob/main/docs/PLAID_
[1] https://beanhub.io/blog/2025/01/16/direct-connect-repository/)
#PlainTextAccounting #LedgerCLI #BeenCounter #hLedger #Plaid #BankImports #BankConnect #CLITools
cc: @jadehopepunk @teq
-
I'm trying to write some Python scripts to loop through a csv of my bank transactions, do some aggregations and subtotals, then create some html layouts using Jinja.
It's working fairly well, and is reasonably quick to run, though it does feel like I'm doing a lot of creating JSON objects. It doesn't feel the most efficient, but a database brings other problems.
-
I'm trying to write some Python scripts to loop through a csv of my bank transactions, do some aggregations and subtotals, then create some html layouts using Jinja.
It's working fairly well, and is reasonably quick to run, though it does feel like I'm doing a lot of creating JSON objects. It doesn't feel the most efficient, but a database brings other problems.
-
I'm pleased to announce hledger 2.0 preview release 3!
Highlights:
- conventional file layout for rules/data/prices
- get command
- commodity aliases
- print aligns by decimal mark
- more intuitive precision behaviour
- more robust lot detection
- average cost basis methods
- customisable report titles
- prices --summary report
- a more robust roi report
- and many other improvements and fixes.https://hledger.org/relnotes.html#2026-06-24-hledger-1993
https://hledger.org/install -
I'm pleased to announce hledger 2.0 preview release 3!
Highlights:
- conventional file layout for rules/data/prices
- get command
- commodity aliases
- print aligns by decimal mark
- more intuitive precision behaviour
- more robust lot detection
- average cost basis methods
- customisable report titles
- prices --summary report
- a more robust roi report
- and many other improvements and fixes.https://hledger.org/relnotes.html#2026-06-24-hledger-1993
https://hledger.org/install -
`hledger bal -t --drop=1 -D -T -A -N --pretty-tables Expenses`
hledger is pretty cool and the more i dig into the built in help and the flags and switches, it just keeps me surprising me in the most joyful way.
what do the switches here do?
1. -t for tree style display of accounts and subaccounts
2. --drop=1 since my top level is Expenses, it will just show the overall totals anyways.
3. -D for day by day multi column report of account balances in the current month by default
4. -T print the row wise totals. this means the total spent in a particular account across all the days from start of month till date by default
5. -A same as -T but for row wise averages.
6. -N this is optional and to remove the final total row. try with on or off. in this case, i could have also instead removed --drop=1 and that row would have shown the day wise Expenses totals as well.
7. --pretty-tables uses unicode characters for a better looking tabular output.
lots more flags to go through, but this itself was so useful to see trends at a glance.
Thank you @simonmic for letting me feel cool using the terminal. Love the project
#pta #plaintextaccounting #hledger #tips -
`hledger bal -t --drop=1 -D -T -A -N --pretty-tables Expenses`
hledger is pretty cool and the more i dig into the built in help and the flags and switches, it just keeps me surprising me in the most joyful way.
what do the switches here do?
1. -t for tree style display of accounts and subaccounts
2. --drop=1 since my top level is Expenses, it will just show the overall totals anyways.
3. -D for day by day multi column report of account balances in the current month by default
4. -T print the row wise totals. this means the total spent in a particular account across all the days from start of month till date by default
5. -A same as -T but for row wise averages.
6. -N this is optional and to remove the final total row. try with on or off. in this case, i could have also instead removed --drop=1 and that row would have shown the day wise Expenses totals as well.
7. --pretty-tables uses unicode characters for a better looking tabular output.
lots more flags to go through, but this itself was so useful to see trends at a glance.
#pta #plaintextaccounting #hledger #tips -
For USAians who received a tax refund from the IRS, did it happen to match what you submitted? Strangely ours was $0.60 short of the amount in box 35a ("Amount you want refunded").
It feels like the perfect scam. $0.60 is not enough to be readily noticed, or enough for anybody to actually spend time contacting the IRS over. But multiply that by the ~102 million tax-refunds that were issued, that's possibly over $60m skimmed from the American tax-payers. Like something out of a heist novel.
-
For USAians who received a tax refund from the IRS, did it happen to match what you submitted? Strangely ours was $0.60 short of the amount in box 35a ("Amount you want refunded").
It feels like the perfect scam. $0.60 is not enough to be readily noticed, or enough for anybody to actually spend time contacting the IRS over. But multiply that by the ~102 million tax-refunds that were issued, that's possibly over $60m skimmed from the American tax-payers. Like something out of a heist novel.
-
Hi @simonmic,
thanks for clarifying, so cleaned up, without header and simpler names.Just the + sign with liabilities:vat looks odd:
; I am renting out for a monthly fee, receive payments and owe the VAT to the tax authorities.
2026-04-01 rent april per contract
assets:receivable:customer 20 €
equity:customer2026-04-03 rent april payment
assets:bank:customer 20 €
assets:receivable:customer2026-04-08 rent april billing/tax
assets:bank:customer -20 €
liabilities:vat:customer 3,19 €
revenues:customer 18,81 € -
Hi @simonmic,
thanks for clarifying, so cleaned up, without header and simpler names.Just the + sign with liabilities:vat looks odd:
; I am renting out for a monthly fee, receive payments and owe the VAT to the tax authorities.
2026-04-01 rent april per contract
assets:receivable:customer 20 €
equity:customer2026-04-03 rent april payment
assets:bank:customer 20 €
assets:receivable:customer2026-04-08 rent april billing/tax
assets:bank:customer -20 €
liabilities:vat:customer 3,19 €
revenues:customer 18,81 € -
Envelope budgeting: planning ahead for known expenses by regularly putting money into pre-determined categories, or envelopes. This week I show how I’m doing that in plain text accounting, specifically, Beancount.
Medium (includes blog link) https://medium.com/@miscellaneplans/ptpl-206-plain-text-accounting-envelope-budgeting-in-beancount-8a5b49b3281b
Blog https://ellanew.com/2026/05/04/ptpl-206-beancount-envelope-budgeting
#plainTextAccounting #budgeting #plainText -
Envelope budgeting: planning ahead for known expenses by regularly putting money into pre-determined categories, or envelopes. This week I show how I’m doing that in plain text accounting, specifically, Beancount.
Medium (includes blog link) https://medium.com/@miscellaneplans/ptpl-206-plain-text-accounting-envelope-budgeting-in-beancount-8a5b49b3281b
Blog https://ellanew.com/2026/05/04/ptpl-206-beancount-envelope-budgeting
#plainTextAccounting #budgeting #plainText -
Constat réel :
Il n'existe pas de logiciel de compta open source / libre en France, pour les petites structures soumises à la TVA.
Oui Dolibarr, mais soyons réalistes, c'est compliqué pour les petites structures / indé.
Quoi d'autre ?
Faites moi mentir j'adorerais ça
#comptabilité #erp #plaintextaccounting #pta #gnu #opensource -
Constat réel :
Il n'existe pas de logiciel de compta open source / libre en France, pour les petites structures soumises à la TVA.
Oui Dolibarr, mais soyons réalistes, c'est compliqué pour les petites structures / indé.
Quoi d'autre ?
Faites moi mentir j'adorerais ça
#comptabilité #erp #plaintextaccounting #pta #gnu #opensource -
G'day all. I'm pleased to announce hledger 2.0 preview release 2, with many refinements to lot tracking, based on user testing.
(And also hledger 1.52.1, which adds hledger 2-compatible G and U account types to hledger 1.)
- https://github.com/simonmichael/hledger/releases/tag/1.99.2
- https://hledger.org/relnotes.html#2026-04-28-hledger-1992
- https://hledger.org/installRelease contributors: Simon Michael, Joshua Chapman.
-
G'day all. I'm pleased to announce hledger 2.0 preview release 2, with many refinements to lot tracking, based on user testing.
(And also hledger 1.52.1, which adds hledger 2-compatible G and U account types to hledger 1.)
- https://github.com/simonmichael/hledger/releases/tag/1.99.2
- https://hledger.org/relnotes.html#2026-04-28-hledger-1992
- https://hledger.org/installRelease contributors: Simon Michael, Joshua Chapman.
-
I also have a Beancount repository that has every penny I've made for writing since the beginning. And almost every expense so I know exactly how much in the red I am for my relatively inexpensive hobby. :D
-
I also have a Beancount repository that has every penny I've made for writing since the beginning. And almost every expense so I know exactly how much in the red I am for my relatively inexpensive hobby. :D
-
G'day all. A poll:
Should hledger 2 always infer market prices from @/@@ transacted prices, like Ledger ? (and drop the --infer-market-prices flag)
- Yes, having this always on would be harmless and more useful
- No, having it always on, or changing it, would be harmful
- Other, see my replyOr vote in the matrix poll: https://matrix.to/#/!6BCfAOV-btRKuqChph9Z_ppkIj8KttMoIL_rB4eU0Os/$JveSoLuLOWS_Mg10JDUJKnu33RAclZML03JQ4Lp46qY?via=asgard.chat&via=matrix.org&via=tchncs.de
-
G'day all. A poll:
Should hledger 2 always infer market prices from @/@@ transacted prices, like Ledger ? (and drop the --infer-market-prices flag)
- Yes, having this always on would be harmless and more useful
- No, having it always on, or changing it, would be harmful
- Other, see my replyOr vote in the matrix poll: https://matrix.to/#/!6BCfAOV-btRKuqChph9Z_ppkIj8KttMoIL_rB4eU0Os/$JveSoLuLOWS_Mg10JDUJKnu33RAclZML03JQ4Lp46qY?via=asgard.chat&via=matrix.org&via=tchncs.de
-
Glad it has helped you! A few things that might help:
- other rust projects linked at plaintextaccounting.org
- https://hledger.org/SPEC-journal.html
- https://hledger.org/hledger.html#amounts (manual is a kind of spec)
- amountp and friends in Hledger.Read.Common -
Glad it has helped you! A few things that might help:
- other rust projects linked at plaintextaccounting.org
- https://hledger.org/SPEC-journal.html
- https://hledger.org/hledger.html#amounts (manual is a kind of spec)
- amountp and friends in Hledger.Read.Common -
https://youtu.be/hshDr2Af2RU
Getting off another locked in platform
#hledger #plaintextaccounting -
And, hledger 2.0 preview 1 (AKA 1.99.1), which adds
automated lot tracking and capital gains calculation,
improvements to `print`'s beancount output,
and a new policy for AI-assisted development.This is the first hledger release to explore AI-assisted development, so please do check out the evolving AI policy/FAQ: https://hledger.org/AI.html
- https://github.com/simonmichael/hledger/releases/1.99.1
- https://hledger.org/relnotes.html#2026-03-28-hledger-1991 -
And, hledger 2.0 preview 1 (AKA 1.99.1), which adds
automated lot tracking and capital gains calculation,
improvements to `print`'s beancount output,
and a new policy for AI-assisted development.This is the first hledger release to explore AI-assisted development, so please do check out the evolving AI policy/FAQ: https://hledger.org/AI.html
- https://github.com/simonmichael/hledger/releases/1.99.1
- https://hledger.org/relnotes.html#2026-03-28-hledger-1991 -
I'm pleased to announce a #hledger double release! First, hledger 1.52, with
more robust paging,
faster valuation,
commodity tags,
and cost basis annotations which are preserved and can be exported (examples provided).- https://github.com/simonmichael/hledger/releases/1.52
- https://hledger.org/relnotes.html#2026-03-20-hledger-152
- https://hledger.org/install -
I'm pleased to announce a #hledger double release! First, hledger 1.52, with
more robust paging,
faster valuation,
commodity tags,
and cost basis annotations which are preserved and can be exported (examples provided).- https://github.com/simonmichael/hledger/releases/1.52
- https://hledger.org/relnotes.html#2026-03-20-hledger-152
- https://hledger.org/install -
https://shinglyu.com/blog/2026/03/18/hledger-and-ai.html
“Once you see how clean the numbers are — and how easy it is to verify them — going back to spreadsheets feels like going back to a flip phone.”
#plaintextaccounting @shinglyu -
@Bebef ahso - ich verwende client-seitig kein Excel oder ähnliches.
Hab eine selbstgebaute Pipeline, welche mit Hilfe von "mlr" die exportierten CSVs normalisiert und dann basierend auf teils generierten, teils manuell definierten Regeln mit "hledger import..." meine Journals generiert.Ich sehe also die CSVs im plain-text.
-
@Bebef ahso - ich verwende client-seitig kein Excel oder ähnliches.
Hab eine selbstgebaute Pipeline, welche mit Hilfe von "mlr" die exportierten CSVs normalisiert und dann basierend auf teils generierten, teils manuell definierten Regeln mit "hledger import..." meine Journals generiert.Ich sehe also die CSVs im plain-text.
-
Support question for the #hledger #plaintextaccounting community:
Prefacing this by acknowledging that I know I'm probably trying to do something weird, but I’m just getting started so please be patient.
I’m trying to import a large CSV file and am running into unbalance transaction errors. For example:
> hledger: Error: /Users/cris/checking.csv:1751-1750:
> 1751 | 2025-03-21 Starting Balance
> | SBA $-100
>
> This transaction is unbalanced.
> The real postings' sum should be 0 but is: $-100The line from the CSV file is:
> SBA,,03/21/2025,Starting Balance,,,,,$100,$0.00,ClearedAnd the relevant rule from my import rules:
> fields account1, , date, description, , , account2, comment, amount-out, amount-in,I can manually add the above transaction without issues, so I guess I need some clarity as to what I'm doing wrong with my import file.
Thanks!
-
Support question for the #hledger #plaintextaccounting community:
Prefacing this by acknowledging that I know I'm probably trying to do something weird, but I’m just getting started so please be patient.
I’m trying to import a large CSV file and am running into unbalance transaction errors. For example:
> hledger: Error: /Users/cris/checking.csv:1751-1750:
> 1751 | 2025-03-21 Starting Balance
> | SBA $-100
>
> This transaction is unbalanced.
> The real postings' sum should be 0 but is: $-100The line from the CSV file is:
> SBA,,03/21/2025,Starting Balance,,,,,$100,$0.00,ClearedAnd the relevant rule from my import rules:
> fields account1, , date, description, , , account2, comment, amount-out, amount-in,I can manually add the above transaction without issues, so I guess I need some clarity as to what I'm doing wrong with my import file.
Thanks!
-
This aside, I understand the wish to have your accounting be on a rock solid foundation - I feel the same. No software is perfect, but you can still achieve it: keep your data, and if you need extra assurance, your reports, in version control; use double entry bookkeeping; regularly reconcile with real world balances; and perhaps run extra correctness checks. (#plaintextaccounting FTW.)
It is now very hard to miss any mistake made by your software - you'll see and address it right away. -
This aside, I understand the wish to have your accounting be on a rock solid foundation - I feel the same. No software is perfect, but you can still achieve it: keep your data, and if you need extra assurance, your reports, in version control; use double entry bookkeeping; regularly reconcile with real world balances; and perhaps run extra correctness checks. (#plaintextaccounting FTW.)
It is now very hard to miss any mistake made by your software - you'll see and address it right away. -
Me! 👋
Don't Skip The Docs.
For emacs tips, start at https://hledger.org/editors.html#emacs.Don't assume you need hledger-mode (ledger-mode also works well, I use it).
With flycheck-hledger (or a VCS precommit hook), don't feel you need maximal error checking - do what's most useful now, you can always do stricter checks manually.
Don't try for perfect accounts/files/workflow up front - expect evolution.
Don't limit yourself with an ancient hledger version - get the latest.
-
Me! 👋
Don't Skip The Docs.
For emacs tips, start at https://hledger.org/editors.html#emacs.Don't assume you need hledger-mode (ledger-mode also works well, I use it).
With flycheck-hledger (or a VCS precommit hook), don't feel you need maximal error checking - do what's most useful now, you can always do stricter checks manually.
Don't try for perfect accounts/files/workflow up front - expect evolution.
Don't limit yourself with an ancient hledger version - get the latest.
-
@platymew That is a pretty big space ... maybe too much for a video to cover. Are you thinking mobile apps or web or desktop or plain text accounting? Or all of the above? Or you didn't know #plaintextaccounting was a thing?
-
@platymew @msdropbear42 Oh I'd love to make videos about #hledger and #plaintextAccounting, has been on my TODO list for a long time, but I just have to prioritise other stuff. But I'll get there eventually 👍
-
Hi Caleb, I'm so excited to find that I'm not the only person interested in the breakdown of #beancount or other #plaintextaccounting
My current progress: Given this receipt
It generates such beancount output:
-
If you are a user of my HLedger Formatter VSCode extension, you might like my just-released `hledger-fmt` CLI tool! It allows you to do the same format/sort as you can with the VSCode extension, but in your CLI. I am using this a lot in my codex skills to keep the journals consistently formatted.
https://www.npmjs.com/package/@iiatlas/hledger-fmt
https://github.com/iiAtlas/hledger-formatter/blob/main/packages/cli/README.md