Simple CSV Export for Business Banking - equivalent of PDF statement

The problem:
The format of the CSV export for business banking is too complicated and I’ve found it unsuitable when importing it into my accounting provider’s tool.

E.g. below are some of the issues

  • There’s no balance figure
  • The datetime is not a simple date format
  • It makes all transactions to and from pots look like transactions to different bank accounts thus making it hard to explain and reconcile them in the accounts. From an accounting perspective I still want to treat Monzo as just one account - including all pots.

Proposed Solution:
The PDF statements format is much simpler and looks closer to something I’m sure everyone will find simpler to work with. As a next step, could we please just have the same information as in that statement downloadable as a CSV?

It still has the limitation that each row shows the balance just for the current account and not across all pots. It would be really awesome if there could be an additional column in the CSV export (and perhaps the PDF statement too) showing the total balance across all pots for each row


Created a separate thread for the overall balance idea. Show overall balance for each row in statements

We can treat this thread to track the proposal for creating a simple CSV export identical to the statements as they currently stand

1 Like

Came here to write exactly this after having issues with my bookkeeper. Also, what’s with the emojis :sweat_smile:

1 Like

My accountant is also confused with these statements - I think the Monzo team need to decide whether to treat pots as savings accounts, and either have the functionality to download Pot Statements, or to simply include them in the account balance. I imagine when/if they start offering interest on these accounts it’ll confuse matters even more.

For now - I have thrown together a script which should be fairly straightforward to generate statements without any of the point transactions showing (it’ll show the balance of the entire account, inclusive of pots)

Haven’t included an executable, as it’d be a bit trusting of people to download a random file and run it locally. Instead, code is attached below (go isn’t my language, but thought i’d give it a go)

To run it you’ll need golang on your machine

  1. Get access token from
  2. Paste code from below link into a file named main.go
  3. Add access token as an environment variable e.g. export MONZO_ACCESS_TOKEN=xxx
  4. Execute via terminal/cli go run main.go
  5. Follow instructions (it’s a stepped process)

It’s actually incredibly inefficient. Part of this reason is because Monzo’s Transaction API endpoint doesn’t return the “account_balance” value, so this has to be calculated manually - meaning I need to take the current accounts balance and work backwards (maintaining a running total)


Thanks for the script @kja . I’d like to push on this issue a bit more… It’s been a while now and the original issue is still present. My accountant also doesn’t want to see the pots movement in the statement, it’s hard to explain why the money looks to be moving around. Also, the CSV is unusable without a balance.

Is this issue on the roadmap?

Many thanks

1 Like

Agreed. +1 from me. I love the bank account but the statements make accounting a nightmare. My accountant has asked me to move my business account back to a different bank, I’m pushing back on that for the moment but really the whole pots/statement thing is unfit for purpose. Unfortunately however much noise there is here nothing ever seems to happen.

I’m back… I love Monzo and I want to stay as a business customer.

Here’s a Google Chrome extension that get’s a CSV statement with a balance from the portal. It’s not on the Chrome web store, but you can download it and run it as an extension in Developer mode.
chrome://extensions in your browser.

Hope this helps a bit.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.