There is one thing that often goes unnoticed: most banks they already have APIs, they're public (accesible by anyone) but not documented. I'm talking about the APIs that provide data to their official mobile apps (is there any bank without a mobile app in 2016?).
For this very reason we've created Bankscrap, a Ruby gem to unlock those undocumented APIs. The main difference with the services behind apps like Mint is that:
A) We do not use screen scrapping.
B) It's all open source! Check it out: