Email Receipts in Monzo

This has been requested by a number of my testers, so will very likely be done in the next batch!

I think that’s one of the huge benefits of these receipts - visibility of actual purchases. It adds a level of authenticity knowing what it was for, easier to refer back to, can be used to improve search (e.g. When did I buy that TV from Currys, not when did I shop at Currys). I’m there with you, I always forget what payment is for what!

There is a monzo.me link deep in the FAQs for those who hunt it out - It’s a hard line and want to avoid anyone thinking this is some sort of cash grab.

Knowing full well 99% of people aren’t going to send a pound means I have approached the setup in a way which makes the costs as trivial as possible. Looking at the usage stats on my site already I can see I’m soon going to run into problems (hence I’ve not linked the site publicly yet!) so I am going to look into this soon.

Fortunately from a purely email ingest (though remember this isn’t the only aspect of the project) I can fortunately handle several thousand emails for the price of a coffee all factors included. The other hosting is a bit more complicated, but being investigated.

I have been asked why I don’t take a small amount of each person to join the project or even a monthly subscription to use it - simply put that’s not why I built this, and is not what I want to do. Having said that donations don’t hurt your chances :joy: (they just don’t improve them)

3 Likes

It’s working pretty well.
That’s my 1Password screenshot in the original post and it was as simple as forwarding the email over to my unique address. Enriched within seconds.
A job well done @Sherlock :grin:

1 Like

I’d love to test if more testers are added soon.

In terms of other merchants, I’d like, generally, airlines, Trainline, Bulb, Netflix, Spotify (though I guess the latter don’t give receipts?)

1 Like

This looks really cool! :blush:

How are you extracting receipt information from the emails? Are you matching on particular HTML tags? Will it stop working if the merchant changes the format of their emails?

2 Likes

Transport is definitely a great sector and will be supporting a lot more merchants as the time goes.

Bulb is on the list. Netflix is difficult for, at least for me, the only email I get is a PayPal one and the description on that is empty. So all the information I have is “Netflix” “£7.49” which isn’t any more than you already have – I’d need the plan information for it to be useful. Spotify don’t send emails beyond the first month.

I do plan on doing a full technical breakdown, a handful of people have asked for it. though, it’s not as much looking for tags and exact DOM structure but more looking for reference points. For instance I often know that if I search for Subtotal and then look for the next digit then I can pull out the price with confidence.

Yes, if the merchant massively changes the format of emails then it will stop working. That’s mostly unavoidable with any solution like this (ideally you’d want a per-merchant API and then that’s no longer driven by email). However, the system I’ve built (and have plans to build) for adding merchants is quick enough that it’s not a huge task to manage.

As mentioned above, it takes (on average) less than 20 minutes to create a new merchant from scratch. Whenever I’ve had to make minor changes to structure to handle weird cases it’s been super easy.

This is of course one of those questions of scale though - a single person can easily manage 15 merchants. But at what point do you need a small team in order to keep on top of it all? This is something I hope I will better understand as I keep growing this.

6 Likes

Given the way you have described your app it sounds to me like an ideal use case for Azure Functions/AWS Lamda/Gcloud Functions where each receipt is processed within the single process operation. Should help keep the costs low so long as you write efficient code :slight_smile:

3 Likes

I really appreciate the comment and suggestion!

I think in the short term the effort involved for me (someone with major skills in iOS development, not backend architecture and this sort of stuff) to do this is far higher in value than the costs currently associated with running the project in the way I do.

That’s not to say I won’t revisit this idea though and maybe move to it in the future. I’ve intentionally built these systems all separately so when the time is right - it shouldn’t be a massive hurdle.

Makes complete sense. I have little to contribute from a development perspective but am a Solution Architect (platforms background). Would be intersted in testing at some point it if would be helpful.

1 Like

Happy to test. Let me know how.

1 Like

I would love to test and try this out! If you’re still taking beta users, sign me up :grin:

1 Like

Hey all :wave:

Made some great progress last night (as below.) I have set myself about 20 objectives to get finished (based on feedback from my testers) before I bring on any more testers - I hope to have this completed by the end of Sunday.

I appreciate all of those who are offering to help test, and especially those who have jumped on either of the Slacks and are primed ready to go! More information will be coming soon!

Changelog: 20th Sep
  • Added support for optional success and failure feed items. This is an early implementation of a longer-term goal which will help to improve the resiliency of the platform.


  • Various updates to the website including imagery.
  • Account page now tells you when your last receipt was accepted.
  • New email addresses have been setup for requesting new merchants and receiving technical support.
  • A tool has been created to quickly make Gmail Auto-Forwarding filters based on the currently supported merchants. (This currently assumes you want all merchants enabled, the ability to turn each one on/off will be coming soon)
  • Gmail Auto-Forwarding confirmation tokens will now show up inside of your account page.
5 Likes

Looks great, already submitted my support via Slack so fingers crossed for testing soon.

I’d love to have iTunes support with it :crossed_fingers:

Edit
Also not sure how possible this would be as I’ve never dug into the API but adding what is on the receipt to the notes of the transaction. Currently I add notes to certain transactions so this would help with that.

1 Like

This is doable from an API perspective, but given the super wide variety of things that could be in a receipt this isn’t always feasible to do. You’d need logic per merchant on how to handle this.

For instance if it’s a Domino’s order, would you expect your entire order? Just the first item in the order? If it’s an Uber trip, the first item is “Your UberX trip” which doesn’t really add anything under the title “Uber” - the value comes from the breakdown of costs which wouldn’t fit in the small area (this means you’d end up having to click into the transaction anyway).

This needs more thought because I can see how it’d be useful for certain merchants such as PayPal where it’s not always immediately obvious who you’ve sent money to. Or Amazon where the first item could be helpful.

I do love the idea though (a couple testers have been asking for this!). Another thing we’re looking at is just adding a tag for transactions that have receipts to make it more obvious - this too is being investigated.

6 Likes

Perfect, glad it’s possible and that it’s being thought about, that’s good enough for me. I can manually add that still which is no big deal. Maybe on a per-merchant level would make a lot more sense (re paypal for example).

The whole receipt stuff does really excite me. I can’t see it replacing paper receipts for physical stores but having digital receipts from online purchases is great. Thanks for taking the time to build and expand on this.

2 Likes

This is one of the benefits of something like Flux, being able to tackle those physical stores which is great. I think there’s still a lot of opportunity with online retailers (which honestly makes up the greatest proportion of my spending) even beyond email receipts.

I’ve got a fair few plans, I’ve got a clear focus for now but it has room to expand into giving you more details and context to payments. Watch this space!

:heart:

5 Likes

Made some more progress today, we now have a waitlist all setup and ready to go - this in conjunction with some new backend magic means I can easily onboard more users to the mix!

This also meant delving into sending emails, a little preview of which I’ve attached below :wink:


(This is likely to change!)

I started the weekend with 20 objectives (+ a couple more that I decided to add last night, who doesn’t love adding some more scope), we’re down to the final 4. Can’t wait to show even more of you what I’ve been working on!

10 Likes

Hey

I do love this idea as I use the tags, but I forget nearly every time and have to go back on myself haha :joy:

Have you thought about Argos, Arriva (bus and train ), same lines as Virgin and Trainline.com.
Also Morrisons and Tesco home shopping could be a good one.
The list could go on :see_no_evil:
Euro carparts, screwfix, Halfords etc

One i would love to see expanded but don’t know how many people would want it also is ecotricity electric car charge points and polar charging points.
Everything is done via an app on the phone and the receipt gives great details about how much electric you pulled, would be nice to compare in one place.

This is probably more than you wanted, but thought I’d get them out while I remembered lol :joy::see_no_evil:

1 Like

No! This is perfect!

Tesco and Morrisons I definitely want to do (as with any supermarket) but don’t currently have any proper sample emails for (which is why they’re not already done)!

Arriva/Virgin/Trainline and other apps are all great shouts and will 100% be done as soon as I can!

In general there isn’t an incorrect answer for what merchants should be supported - for me it’s a case of what order do I try to add them?

  1. Do I have enough email samples to make the merchant somewhat reliable and capture some edge cases?
  2. Does the contents of the email add value to the transaction? (I’ve had some emails where it’s like yeah you spent £8 at Company :man_shrugging:)
  3. How many people are going to use this merchant? (I need to logically prioritise the merchants people use the most)
  4. How easy is the email to add support for? (If it’s a super simple email format, then I’ll likely add it just cause)

Some merchants fall at the first hurdle, but a lot are just under the fifth point of “Have I gotten to it yet?” :joy:

I will be looking to add a proper submissions form soon where anybody can submit a merchant (with emails, and metadata) to help speed things up. Though this is very much to be seen!

2 Likes

I completely understand point 2… There’s no point if it doesn’t give you information.

If you need any example emails, please ask. Between me and my partner, we have a nice collection haha

I will almost definitely take you up on that offer! :raised_hands: Thanks