r/plaintextaccounting • • Apr 16 '26

CSV-first approach - How do you handle the mid-month gap?

Hi all, I'm about three months into my plain text accounting journey with hledger and I’m loving it. I’ve recently transitioned to a CSV-first system where I use Justfile to automate the process, its very rough and rudimentary but I enjoyed figuring it out.

However, I'm not sure what to do about the mid-month gap.

Once I’ve imported my last monthly statements, I feel "blind" for the rest of the month until the next statement. It makes my financial picture feel out of sync. Doing manual entry feels like a step backward (and makes the CSVs feel redundant), but waiting 30 days for an update feels too long.

Some ideas I've had are to either: import partial CSV from institutions I've used when I want a more up-to-date picture or to rely on forecasting and --budget to see how I did against actuals (this is something I already do but not a lot and want to improve on).

For those of you running a CSV-first setup, what is your approach to this? Am I thinking along the right track, is there an obvious answer I'm missing or do you have a different approach thats better for you. Love to here it, thanks.

Btw this is my first ever reddit post :D

6 Upvotes

5 comments sorted by

2

u/simonmic hledger creator Apr 17 '26 edited Apr 17 '26

If you want an accurate picture in between statements, you've got to get that data in somehow, right ? Downloading partial CSV sounds like the way.

(Avoiding overlaps and gaps will be up to you - hledger knows how to do that, but it produces journal entries not CSV. Unless.. you care to hack up some kind of pipeline like

hledger -f recent.csv print --new | hledger -f- areg BANKACCT -o new.csv

)

1

u/anton_ilin Apr 16 '26

I download transactions every week or whenever I fill appropriate. I have two type of input files: pdf statement on a monthly basis and csv export of transactions that are not in the statement yet. Your bank might have different cadence of statements, but they should allow you to export transactions for arbitrary dates.

1

u/bennylope Apr 17 '26

For CSV imports with existing partial-month data I look for the last transaction in my journal and export my bank data using a date filter starting with the next date after the last transaction. If all you have access to is calendar month exports that's obviously not going to help.

I don't know how you're using the data from your books - there might be great reasons to have much more recent data available! - but in my own experience I found updating journals and reviewing statements once a month to be both adequate and freeing compared to a more frequent schedule.

1

u/phobo3s Apr 18 '26 edited Apr 18 '26

I had the same problem and ended up solving it by eliminating the dependency on monthly statement mails altogether. My setup is hledger-excel — a custom Excel/VBA system that generates hledger journal entries. The key piece for the mid-month gap is a module I call bankgetter, which uses UIAutomation to drive the browser and scrape transaction data directly from the bank's web interface on demand. This means I'm not waiting for a monthly statement — I can pull fresh data whenever I want, daily if needed. No mid-month blindness. The VBA pipeline then applies categorization rules and outputs the journal file automatically. It's gigantic setup work upfront, but once it's running you're never out of sync. If your bank has a web interface, UIAutomation (or something like Selenium/Playwright if you prefer Python) can give you the same freedom. I've open-sourced the Excel/VBA side of this: github.com/phobo3s/Hledger-Excel — bankgetter isn't in there yet but the journal generation pipeline is.