2013-11-12

Why not just email me an encrypted XML bank statements every day?

I am really fed up with banks not making it easy to get your banking data. I want the data for business and for personal accounts every banking day.

The really simple thing that the bank could do is simply email an encrypted XML statement of the days transactions after closing the banking day.
  1. It saves banks resources as it is done on the banks timescale, not having to handle peak load from customers as happens with on-line banking. It is a traditional batch processing job which banks know and love.
  2. It does not allow any control of the account just the data, but it is safe as it is encrypted.
  3. Using XML is easy, extensible, and allows anyone to machine process the data simply. It would allow more data (such as sending sort-code/account) and properly formatted data.
  4. The data could go to authorised parties such as accountants without giving up on-line banking login details.
Ultimately it will save resources for the bank as it will reduce load on on-line banking.

Of course, this is just a first step. I would like live data of transactions during the day, especially incoming fast payments. That would require a more detailed API where the bank push the data to me. Ultimately, including things like card authorisations, would help tackle fraud and save the bank money. Even if they emailed an encrypted file when transactions come in, it would work well enough. Email is simple and reliable and again a batch processing function, but can also be very quick.

Ultimately, things like account transfers and payments via an API would be useful, but this could even just be a matter of allowing something relatively safe to be automated like inter-account transfers.

Apparently there are third party companies that already screen scrape data feeds from banks. It seems the banks do not approve, and it means giving your on-line banking details to them, breaking terms with the bank and possibly causing problems if there is any fraud later. There are even people that sell anti-screen-scraping systems to help the banks and the like avoid the "problem". The solution is for the banks to provide an official API or data feed and that would put these companies out of business over night.

If there is a bank that does this - someone tell me - I'd be prepared to consider moving all our accounts for a proper API.

21 comments:

  1. If there was a bank that offered that I'd be over to it like a shot. US banks have a data format standard for this sort of stuff that they provide downloadable statements as, it's compatible with gnucash, but UK banks aren't into it...

    ReplyDelete
  2. Me too. On a similar note, is there an ISP who provides a simple XML interface to a customer's DSL line data / controls yet? (hint hint)

    ReplyDelete
    Replies
    1. LOL, OK, I can take a hint. I believe we do now have an internal engineering ticket on this. The problem is that we keep tackling this as a large project to provide a general API to clueless. And that becomes a large thing to get started and design. We may well do some smaller and simpler API fragments, I guess.

      Delete
    2. If you approached it as a simple REST-based API it would be easily extensible when you wanted new functionality

      Delete
  3. What's really annoying is that often these nterfaces obviously exist in some form. I have a Nationwide app on my phone that gives me account visibility and lets me make payments etc. It seems to be more than just a skin around a browser interface so clearly there's some sort of client-server API going on. Why not just publish the interface?

    ReplyDelete
  4. I wouldn't mind if I could just find a bank which would permit me to download statements in a sensible way. HSBC seem to go out of their way to make downloading statements as difficult and time-consuming as possible. You can't just print what's on screen, you can't scrape what's on the screen and if you want to download it, it's half a dozen clicks or more for each month. Oh, and it seems that for business accounts they will not stop sending paper copies.

    ReplyDelete
  5. Bank Link - http://www.bankstream.co.uk/ - offers a "bank approved" method to get lists of transactions (it's used by our accountants http://crunch.co.uk for HSBC and others ) and I believe Cater Allen also offer their own API system of some sorts (as Crunch was offering integration with them before they teamed up with BankLink).

    Joseph - I believe the problem isn't financial (as such, it still need £1m capital and a high capital ratio), but more regulation wise (see http://www.telegraph.co.uk/finance/newsbysector/banksandfinance/6111158/Why-its-an-ideal-time-to-set-up-a-bank.html ). I think some companies have got around it by buying other banks (Virgin buying Northern Rock) - Metro Bank was the first "new bank" for over 150 years when it opened March 2010. However, if RevK wants to start a bank - he's got my backing - "Banking done right!"

    ReplyDelete
  6. Natwest / Royal Bank - it's possible to get CSV data out with about half a dozen clicks. Almost always offers a "Download data since last download" option.

    ReplyDelete
    Replies
    1. I can get a csv from barclays with a couple of clicks. How does that help me?

      Delete
    2. Unfortunately my psychic powers are weak, I couldn't discern what exactly your current bank offered so commented in good faith...

      Delete
    3. Sorry, this is the underlying problem - having to screen scrape bank web interfaces. I should have made that clear.

      Delete
  7. Natwest / Royal Bank - it's possible to get CSV data out with about half a dozen clicks. Almost always offers a "Download data since last download" option.

    ReplyDelete
    Replies
    1. I can get a csv from barclays with a couple of clicks. How does that help me? You are back at screen scraping again, and all the maintenance headache of that.

      Delete
  8. This comment has been removed by the author.

    ReplyDelete
  9. When I started using Xero we had to fill out bank feed forms
    HSBC are the only Partner bank in the UK for Xero.
    How often they can* pull data I don't know but they provide it daily

    ReplyDelete
  10. HSBC have BTR bank feeds and are the only Bank that partner with Xero to do it.
    They supply the data daily, but how often xero could pull and show data, I have no idea.
    We had to fill out an hsbc bank feed form. I imagine if you were pulling the data it would be possible to pull it more often than xero do.

    ReplyDelete
  11. It appears that Barclays offer "Barclays DataServices" where certain accounting packages (such as FreeAgent) can access automated data feeds direct from Barclays Business accounts. One presumes that if accounting packages can access such a feed, then it's something that Barclays might be persuaded to offer access to? Press release relating to FreeAgent is at http://www.sourcewire.com/news/71148/barclays-business-and-freeagent-partner-to-deliver-automated-bank-data

    ReplyDelete
  12. It would be so amazing if I could invoice a client and it could be marked paid automatically via some banking integration.

    I think Bitcoin this is easier to script and hence banks should get their sh!t together.

    ReplyDelete
  13. It's not really quite what you're asking, but you can almost achieve this with HSBC accounts, if you using xero.com (cloud accounting software).

    Xero have a daily feed of HSBC accounts into your xero ledgers (it's a proper feed, none of the screenscraping nonsense; costs £3 a month for the feed paid to hsbc but billed via xero, plus say £20/month for your xero subscription).

    Xero also have a proper API you can integrate to: http://developer.xero.com/documentation/api/banktransactions/

    It still doesn't solve the 'immediate' case, but at least you're getting the data automatically within 24ish hours.

    ReplyDelete
  14. Its a long time since this thread was last discussed ... but that's how long (5 years?) it takes to innovate solutions!

    I have a banking app that runs (continuously) and will download your last 24 hours transactions AUTOMATICALLY (no clicks, no screen scraping) just as long as you keep it running. Run it for a year? and you'll get 365 statements (all dated of course) r-a-y-_-c-h-a-p-m-a-n-at-h-o-t-m-a-i-l-.-c-o-m

    ReplyDelete

Comments are moderated purely to filter out obvious spam, but it means they may not show immediately.

Missing unix/linux/posix file open option

What I would like is a file open option for "create replacement file". The idea is that this makes a new inode in the same mount p...