Hotwire Your Bank

We might often complain about the grip banks have over our personal details and credit. And they certainly try to make the best of it. There won't be Flickr-style APIs for you Lloyds bank account any time soon. It's worth thinking about the fact that there doesn't really need to be.

You can scrape anything on the web, whether, or not, the site owner wants you to. There are a dozen sites who'll collect data from your financial accounts, aggregate it and try to work out how much money you shouldn't be spending on sashimi. And, as far as it goes, these are great. (I am a very happy Yodlee user.) But the potential for this is so much more.

Imagine an Oracle that can answer any statement about anyone's bank account. For example, does this person have more than X disposable income? Do they have a mortgage? How long have they had their job? Obviously, it could only answer positive questions. There is no way of knowing about a person's job from their bank account if they were paid by cash (or handwritten cheques).

If we all entrust our bank logins to a single Oracle, and we assume a personal Genie to automatically enter transactions on the owner's own account, we can do some cool stuff. Like replacing credit cards.

Guy: Can I buy these jeans?
Shopkeeper: That'll be £20.  There's a QR code by the till.
Guy to Genie by QR: Send £20 by BACS to Shopkeeper.
Payment Q-R Code
<< Genie pushes buttons on Guy's online banking account >>

Genie to Oracle: Tell Shopkeeper his money is on the way.

<< Oracle logs in and reads the recent transactions on his account. >>

Oracle to Shopkeeper: Someone's sent you £20, you'll receive it in 3 days
and they're rich enough not to try to reverse it.

Shopkeeper: Thank you, here's a free pair of socks for not using a
credit card. 

Or income verification.

Loan Officer: I need to see your income for the last 5 years.

Guy to Genie: What do I need to show for my last 5 years income?

<< Oracle reads lots of old statments >>

Genie: These 57 transactions from these two sources.

Guy to Genie: Add these four payments for contract work, sum it by
quarter, strip out the details and send it to Loan Officer.

Genie: Guy received $X in 1st Qtr 2010, $Y in 2nd etc etc.  This came from
two regular sources, and 4 one-off payments.

There are some technical issues in building the Genie and the Oracle. The bank website needs to think the Oracle is you to allow the login; the Oracle needs to login itself to know that the data is true. So an Oracle implementation will probably have to proxy its connection through your home PC. (So it doesn't look as if the Oracle server is trying to login to 100s of accounts at the same time.) The Genie can be under your control (the Oracle can check its actions) and so is easier. As banks roll out 2-factor authentication, both systems will need run through smart phones equiped with hardware to handle this.

Square's iPhone Card Reader

Hopefully, banks will be clever enough to create great smartphone clients. But not clever enough to stop us all from tampering with them :-)