21 ms·
Aaaaaaaaarrrrrrrgggggggghhhhh! I just want a bank account and to have that bank record my spending and let me download it, securely, and automatically. I mean
by lifeisstillgood 6y ago
Aaaaaaaaarrrrrrrgggggggghhhhh!
I just want a bank account and to have that bank record my spending and let me download it, securely, and automatically.
I mean the European Union has taken years to force, yes force banks to do this, and it is basically still broken.
I don't want to spend this much effort on something so obviously solvable. It just offends me. Yes that is the right word.
And, finally, none of this matters if I have trouble with the real problem - sticking to a budget. Solving that one is what I want personal finance apps to help
me with. Keeping track of my finances should be a solved problem, locked in a box and forgotten about.
- djhaskin987 6y agoTracking your own finances independent of any other party is very much not a solved problem and is more a matter of trust than of technicalities. This is your finances were talking about here. As to financial discipline no amount of tooling is going to help you out with that. Tools can help you you what you already want to do but they can't make you want to do something that you don't want.
- andrepd 6y agoEvery bank I've used lets you download your transactions as a csv or qfx, which is then trivial to import onto gnucash (I still need to spend ~20m each month carefully sorting things in categories).
- TeMPOraL 6y agoDo they let you download it programmatically? Because if not, it's next to worthless for any kind of frequent use.
- xupybd 6y agoOnce a week I do this. It's far from worthless. It's how I do my budget. Ever dollar earned goes into a spending category. I spend out of the categories. It works amazingly well. Before I had a mortgage I just had 11 bank accounts one for each category. That paired with a stack of automatic payments to allocate each pay check and had pretty well automated my budget.
- TeMPOraL 6y agoWell, worthless is a strong word, it's better than nothing as it saves you typing. But having programmatic access to that data - even being able to skip the auth - would enable series of different usecases, like keeping the budget always in sync with your spending, or being able to preview your last activity conveniently, or trigger further actions on the basis of that, or just make a banking frontend that doesn't suck. (Case in point: every month I have to send a bunch of PDFs with transaction details to my accountant; every month I waste almost an hour, a really frustrating hour, on fighting my bank's broken React SPA, and then manually renaming the PDFs I've managed to tear from the mouth of that beast. An hour on doing things that would take 30 seconds with a shell script if I could only trigger a list of transactions and a PDF summary request via an API. An hour on manually doing the only thing that's preventing me from completely automating away my regular interactions with the accountant.)
- IndexPointer 6y agoYou can always try selenium to download it programmatically if they don't let you. Or make a script to download it.
- anitil 6y agoI know you're not asking directly for advice, but if you'd be interested, I find the following is the easiest way of keeping a budget. 0. Forget about tracking things down to the dollar, or even the tens of dollars. That level of precision is unnecessary. If a coffee here or there is going to break your budget, it's already broken and you need to go in to panic mode. 1. Have a spreadsheet with vague monthly costs like 'transport', 'food' and the like. Combine that with your monthly income, and you'll know what your approximate monthly savings should be 2. Every month, manually record your savings. 3. Over time, compare your actual savings with your expected savings 4. If there's a discrepancy of a meaningful amount (however, remember step 0) then you might need to bury in to the details a little bit more. Given that sort-of system, you have enough manual touchpoints that the budget is in your mind when you're making discretionary purchases, but not so much that it's stressing you out. I've made a sheet that does basically the above with example budgeting for what I'm familiar with in Sydney - https://docs.google.com/spreadsheets/d/1KW3i-m8BtJ2O9lKurhJrynaN50w8v0wzgySByMzlU-A/edit?usp=sharing https://docs.google.com/spreadsheets/d/1KW3i-m8BtJ2O9lKurhJr...
- 6510 6y agoNice! I just stop spending money unless I absolutely have to. A cup of coffee and a bit of candy at the gas station every other day (2+4 euro) * (365/2) * 10 years. Thats ELEVEN THOUSAND euro I could probably be doing something more interesting with. At 7 euro/kg and 30 gr/liter 11k is 52380 liters of coffee or 314285 cups or 86 cups/day for 10 years. 2/3 was candy (we are not buying that) so we only have 28 cups left per day. At 2 cups per day (which is 4 times as much) it still is 140 years of coffee every 10 years. I pick 10 years because its short. If we take 50 years it is 55 000 euro. Now imagine throwing money around like that all day long. Think about that when you get a free coffee. I know it doesn't sound very convincing but most people manage to match their spending with their income. It really doesn't matter how much you earn. Real wealth is in not spending it. Also, if you hoard enough cash and enough discipline it eventually stops making sense to work. More time to enjoy life! (jay!) Also, that bag of candy is probably killing me. If I'm hungry I must have planned things poorly.
- nacs 6y ago
- 6510 6y agoImagine simple government software that acts as a middle man and sends out automatic fines if the api is not up to spec. I would like to see a complete log of every purchase made like my bank keeps only with much more detail, each bill broken down to well described products with pictures, serial numbers and manuals. As that involves sensitive data we would have to think of some way to wrap it. I also want tax office to have real time access to a relevant sub set. One administration with every purchase in the country and ever hour worked. Then do salaries and taxes by the second and split off tax payments right where the transaction happens. Might as well aggregate everything for sale into one giant government web store. If everything is made insanely convenient it doesn't matter what it costs. No more sloppy fuzzy business but everything by spec. I wonder how many people want to start a business but are simply to terrified by the paperwork.
- vimslayer 6y ago> automatic fines if the api is not up to spec Fines As A Service?
- safog 6y ago> Then do salaries and taxes by the second and split off tax payments right where the transaction happens. ACH literally takes O(days) to move a few bytes of data from one bank account to another and the system simply stops working evenings and weekends, so this is a bit much :) If / when BTC and LN become ubiquitous, you can probably achieve this without much effort.
- 6510 6y agoSlow banks would still be a thing, they just cant (be allowed to) process these transactions. Also, the bytes don't really have to flow from A to B. The payload is much to predicable. For 8 hours money flows into the account and flows out of the other account at a fixed rate. A daily or weekly validation would be enough. (with automatic fines for not updating the work schedule)
- vasergen 6y agoThere is software provided by TPP (third party provider) that acts as a middle man between user and bank. User just "connect" all banks, and then TPP can retrieve the data using differen sources
- aidenn0 6y ago> I just want a bank account and to have that bank record my spending and let me download it, securely, and automatically. My (US based) bank and both my credit cards do this just fine and I download them to gnucash; it does this with a third-party library AqBanking, which includes both a GUI configuration program and a command-line tool for downloading to a CSV, which you can the process with whatever you like.
- Consultant32452 6y agoSticking to a budget is an emotional problem, not a mathematical one. Helping solve emotional problems is extremely difficult.
- somebrody 6y agoYep, emotional solutions work better for many. An example: 1) Pay rent and all bills on time, fully. This is sacred. It is called the Golden Rule for a reason. 2) After rent and bills, take the rest out in cash. a) Split the cash into the number of weeks it needs to cover. b) Split the cash for each week into two equal parts. Put one half in an envelope labeled "Monday" and the other half in one labeled "Friday". c) Hide each week's envelope in a different part of your room or house. 3) Put the first week's "Monday" money in your pocket. Spend it until it is gone or not. You decide. If you overspend, hopefully it was on a Wednesday because you must make do. Eat oatmeal, eat rice, eat spinach. Get through it. 4) On "Friday" put the other half of the week's budget in your pocket and spend it before you go to bed on Sunday. 5) Repeat
- biddlesby 6y agoI would love to do this, but I live in a country where cash isn't a thing. It's explicitly not accepted in most places. How can I spend the same effect if I only have a debit card? I am wondering if two accounts or a currency card is a good idea. But it's just not the same as having a physical pile of cash that you can judge how fast it's going down and how much is left
- 72deluxe 6y agoEvery purchase can involve a receipt. Put the value of the receipt onto a spreadsheet after each purchase. Discard the receipt. Get into a habit of doing it. Also, spend on a credit card instead of debit. The credit card takes the fall in case of fraud or scam but this is not the case with debit cards and you'll be out of pocket. Alternatively, spend each item on different credit cards, eg. fuel on one, food on another, partying/treats on another. You will be able to quickly see how much you're spending using their apps, or the realisation of how often you're getting one particular card out of your wallet.
- crowbahr 6y agoI have my financial institutions send me an email every time there is a transaction. Those emails are then scraped and forwarded on to a spreadsheet. It works Ok, but I hit my zapier limit sometimes. I'm currently working on setting up my personal server to receive emails from my account and parse them into a table locally, which I can then connect into Google sheets with an API key.
- xyzzy_plugh 6y agoIt never occurred to me that this might be an option. Great idea. I wonder if credit cards have this too... I've been downloading monthly statements manually and feeding them into my data woodchopper, but email sounds like a good alternative (or maybe complimentary?).
- adamnew123456 6y agoI have a similar pipeline (bank and credit cards included) although I run my own SMTP server to capture the transactions as they're forwarded from my main email account. It's a pain to setup the first time but not hard to maintain if you lock it down. It started out fairly basic (just CSV files dumped somewhere monthly) but the more history is there the more I find to do with it. I recently rewrote the whole thing and added auto-reconcile support, so it can tell if my record in Ledger is wrong and point out the exact discrepancies. I have a tendency to be lazy about recording things so making the machine check everything is nice. It sucks that there aren't any good APIs for this sort of thing. But until that happens I'm stuck running Postfix and scraping HTML out of mbox files.
- jnfr 6y agoWhat personal finance apps have you tried with budgeting? There are a few on the market, the most popular being YNAB and Mint. My personal opinion is that Mint tries to do too much while YNAB forces you into a rigid philosophy. I made Lunch Money (https://lunchmoney.app https://lunchmoney.app) as a potential happy medium between the two. If you end up trying it out, feel free to let me know what you think!
- purerandomness 6y agoJen, thank you so much for LunchMoney. It feels like you really love developing it, and it shows. I've first heard of it from the IndieHackers podcast featuring you [1] and remember myself signing up and thinking "wow, this is exactly how I would design and build something like that". Everything is polished, thought through, and the pace with which you push out new features is crazy. Thank you! [1] https://www.indiehackers.com/podcast/150-jen-yip-of-lunch-money https://www.indiehackers.com/podcast/150-jen-yip-of-lunch-mo...
- jnfr 6y agoThat's so awesome to hear, thanks for sharing!
- QuixoticQuibit 6y agoI’ve been meaning to get a sense of my day-to-day finances for a while now and I have to say that your site is great. Concise, answers all the obvious questions, and directly compares to the two most popular solutions on the market. Amazing work! Q: Have you ever considered alternative payment schemes, e.g., student pricing, loyalty pricing (pay $X first year and then $Y for all subsequent years, Y < X)?
- jnfr 6y agoThanks! We raise our prices every few months so you will be grandfathered into the pricing plan at sign up. Aside from that and occasional coupon codes for first year subscriptions, we don't have any other payment schemes (yet!).
- Moodles 6y agoIf you just want to know what businesses you tend to spend money on, many credit cards in the US do this. E.g. Chase has pie charts showing dining vs travel vs utilities, etc. If you want more fine grained data, you can download statements for the month or year to date, etc If you want to see your net worth across every bank/brokerage over time you can use an app like weslthfront or personal capital
- mgkimsal 6y ago> Chase has pie charts showing dining vs travel vs utilities, etc. Bank software almost always miscategorizes something. My bank categorizes my purchases from the liquor store as 'home improvement'. The house certainly looks better when I'm drunk, but that's probably not what they had in mind.
- TeMPOraL 6y agoWhereas what I would want is to not use an app, not log in onto the site to download statements, just use an API endpoint to get a list of all the transactions since last time I called it, dump it into SQLite database, and run SQL queries against it. In my own software. That fetches the statements several times a day, or - better - updates whenever a new transaction is recorded by the bank.
- julianeon 6y agoThis reminds me of that Upton Sinclair quote: 'It is difficult to get a man to understand something when his salary depends upon his not understanding it.' I think banks benefit from a certain amount of sloppiness. Get hit by a finance charge here, accumulating unnecessary interest on a credit card there? Who cares! Let the bank handle it, don't worry, banking should be convenient... So despite endless paeans to customer service and 'community' and whatever horns the banks are tooting these days, seeing how you spend your money simply remains difficult. By design. Which is why the fix is not coming, and never will be coming, unless you implement it yourself. Because it is difficult to get a bank to build a tool when the bank's profits are improved by them not building it.
- slavoingilizov 6y agoYou're overestimating banks abilities: https://en.wikipedia.org/wiki/Hanlon%27s_razor https://en.wikipedia.org/wiki/Hanlon%27s_razor
- TeMPOraL 6y agoI don't think it applies. Your bank's website and app are two best places they can use to upsell you their financial products. Exposing the data in a sane way would cut directly into their profits.
- endgame 6y agoIn Australia, the "consumer data right" is about giving fintechs (and probably AUSTRAC too) standardised access to banking data, but if you go and say "I'm a consumer and want to access my data", the banks are all "lol no": https://github.com/ConsumerDataStandardsAustralia/standards/issues/89 https://github.com/ConsumerDataStandardsAustralia/standards/...
- TeMPOraL 6y agoSame in EU as far as I've investigated.
- Pmop 6y agoWouldn't it be nice if they provided all of that and more with a REST API?
- someuser54541 6y agoThis is what's confusing me about this chain of comments. All the big banks i'm aware of have APIs (Wells, Capital One, etc.). Most of the "neobanks" do as well (Monzo, Mercury, etc.) If that's not enough, you can just use Plaid. Am I missing something here?
- jonahbenton 6y agoGenerally speaking, bank APIs are for use by businesses that want to be able to pull bank customer data. There are integration hoops and so forth. They are not for end user use. Plaid has, or used to have, a mode where in preprod you could give it your credentials to a limited number of organizations and then pull in your data. Not sure that survived the Visa acquisition, but even if it did- personally implementing a Plaid integration gave me the willies. Handing over creds was in clear violation of bank terms of service. Plaid seemed to be playing fast and loose from a security perspective (IMO) and retained the right to keep your data even if you removed credentials. Was not comfortable. Having implemented scrapers to pull my data- that option also painful. OP is not wrong.
- imnotreallynew 6y ago> Generally speaking, bank APIs are for use by businesses that want to be able to pull bank customer data. Generally speaking, yes, presumably because API access to checking and savings accounts is only applicable to businesses 99% of the time. Most consumers, even programmers, don’t have a real need for API access to their accounts that isn’t already covered by simple CSVs or Plaid.
- TeMPOraL 6y agoIt's not about the format, it's about the access. I'd be fine with a CSV of my bank transactions, even the completely broken pseudo-CSV that my bank outputs. What I need is the ability to pull that CSV with an API call automatically, instead of having to log in to the bank (which takes almost a minute and involves retyping numbers from a mobile device), and navigate to the right place to find the CSV download (which takes another minute). Basically, the bank UX sucks for my needs - and I'm guessing, for most people's needs[0]. Cynic in me says that the reason I can't get an API access is because somebody then would make an interface that doesn't suck, and the banks would lose the best place they can upsell people with financial products. -- [0] - There's a reason why "preview your balance and last transaction" feature shows up in mobile banking apps these days.
- zelly 6y agoif only there were a currency that existed completely transparently on a public ledger that can be integrated into any finance tracking application without asking a company for API keys or scraping wouldn't it be crazy if someone made something like that money without permissions
- mulmen 6y agoPlus it’s really easy to track your finances when you don’t have any transactions.
- ramblerman 6y agoThe EU had the right intentions, but made a big mistake in pushing this onto the banks. Which indeed results in each bank now having a "mandatory" shitty expenses section. What they should have done instead, is standardize a secure export function of all your expenses, allowing open source, and vendors to provide statistics and utilities based on this format.
- koonsolo 6y agoEspecially when you are a customer at multiple banks.
- TeMPOraL 6y agoDoubly especially when you're a developer that can handle a proper API themselves, and do a better job at it than all the startups that will pop up to sell you a budget management service, nothankyou. All these years I wanted a widget that would display three numbers and a graph on my phone's home page. A total sum of money on all my non-savings accounts across all banks, the amount I already spent today, and a "burndown graph" for the month showing how much of this month's income I've already spent. I can write that widget myself, and I will do a better job than any of the startups - by virtue of not needing to include tracking, telemetry, not needing to make it a webview rendering React because $multiplatform, etc. But I can't do this, because the API endpoints needed don't exist unless you're a company with a large enough budget to afford it.
- imnotreallynew 6y ago> because the API endpoints needed don't exist unless you're a company with a large enough budget to afford it. I’m pretty sure Plaid’s free tier is more than enough for the use case you suggest.
- TeMPOraL 6y agoTook a look, it looks promising. With two caveats. One: Plaid supports institutions in the following countries: Canada ( 'CA' ) France ( 'FR' ) Ireland ( 'IE' ) Netherlands ( 'NL' ) Spain ( 'ES' ) United Kingdom ( 'GB' ) United States ( 'US' ) My country (Poland) is unfortunately not on the list. Two, there's some mention that "Some European institutions use an OAuth authentication flow, ...". I can't find any info on how long the OAuth tokens are valid, but I suspect they'll be short-lived enough to destroy any possibility of having a script placed in cron.
- zhdc1 6y agoWe've pretty much given up. Waiting for N26 or another neobank to support CHF deposits (not likely going to happen though). Until then we've been using a mix of Excel and YNAB.
- dugite-code 6y agoI feel this, I ended up writing a python script with a selenium browser to scrape the data off of my banks website so I could automatically insert it into my firefly-iii instance. Originally I had it going into a complicated google sheets spreadsheet. Only breaks three times a year for the last 7 years.
- rakoo 6y agoThere are tons of third-party doing this for you, and I'll just cite one because it makes sense here: https://www.budgea.com/ https://www.budgea.com/. It's much like any other, except they're a commercial entity that was born out of an open source project called weboob (https://weboob.org/ https://weboob.org/). That project aims at getting information out of website without having to use websites' javascript or restrictive APIs; it's still browsing the web, but not with a browser. weboob has many capabilities, such as "listing messages" or "listening to music" and an important one is "getting financial information out of an account". Each capability is in the middle of 2 things: - Applications, which want to implement a given capability; a basic one is boobank (https://weboob.org/applications/boobank https://weboob.org/applications/boobank) but you can write anything - Modules, listed in the same page; a module is a website The weboob project is completely open source and written in Python. If you use the boobank application you can use it to download and store all your financial transactions, and automate it as needed. As the example on the homepage shows, you can pipe it into munin (or any other graphing tool) and see the evolution in your accounts automatically.
- TeMPOraL 6y agoDon't know about GP, but I don't want to touch any third party. Beyond data concerns, I haven't seen one that would provide me with necessary amount of control (which amounts to being able to run SELECTs against my finacial data and graph them how they like). Thanks for the link to weboob project, I haven't seen that one. boobank looks much more like something I want to have, though I can't find anything on how it works - how are the banking modules implemented? In particular, are they accessing an API, or just scrapping the bank's page? The reason myself and others are pushing for consumer-open API access is because, while scrapping is something a competent programmer can do (+/- jumping through the increasingly arcane authorization hoops), it's technically against ToS, and I'm personally not willing to risk my bank thinking I'm trying to "hack" them.
- rakoo 6y agoI only mentioned the third party to show it can be done with the project that is behind. I do agree with you on the reluctance to depend on third parties for things like that. Weboob relies entirely on web scraping: like I said, it's a form of browsing the site, just not with the usual browser. I do agree that services should provide APIs, but webood is targeted at websites won't/don't want to do it.
- xupybd 6y agoI agree totally. The worst part is loyalty card companies have an easier time tracking my spending than I do.
- bigbizisverywyz 6y agoWell, my swiss banks both provide a download in this format: CAMT.053: Bank to customer account statement. Detailed and structured payment data. https://en.wikipedia.org/wiki/ISO_20022 But quite what motivated them to move from their proprietary .csv they used to have I'm not sure.
- barrucadu 6y ago> I just want a bank account and to have that bank record my spending and let me download it, securely, and automatically. I don't think this solves the problem, unless you use incredibly broad categories for budgeting such that you never want to split a single transaction over two categories.
- carterklein13 6y agoSo the issue is that large banks (I feel like I can speak with a bit of authority as I work at one and know many colleagues who work at others) have no desire to give up user data, and I don't think this problem will be solvable without governments stepping in to force banks to comply. They're in a better position than more traditionally tech-centric companies in this regard because they fall under heavy regulation, and can do all kinds of legal hand-waving to show why their data must remain private. There are a lot of great APIs that banks provide, but my personal opinion is that they're largely meant to distract from the fact that the vast majority of your data ISN'T accessible through an API. A lot of banks are building genuinely great tools for developers - thinking specifically of JPM's Quorum and Capital One's Cloud Custodian. But these aren't open banking tools. Plaid and similar services are great, and the best we can currently do, but they have inherent shortcomings in that they face the same restrictions as any other developer trying to get information directly from a bank. It's largely the same picture in healthcare. The government is trying to force healthcare companies to open up their environment, and healthcare companies are fighting tooth and nail to stop that. The CEO of EPIC Systems got the heads of many, many major hospitals to directly oppose a rule the HHS is trying to pass basically forcing health record companies to open up. For the time being EPIC has their "App Orchard" which... well, go visit apporchard.epic.com and you'll get a picture for how much they care about giving individuals the right to their health data and developers the right to build more systems on top of their own.
- deleted 6y ago[deleted]
- IndexPointer 6y agoCan't you scrape / download a bank statement? Or if you use a credit card scrape the card pdf statement.