是否有银行通过任何形式的API提供个人账户的数据馈送?我基本上是想在没有登录他们网站的情况下查看账户余额。
我记得在某些时候阅读有关通用银行协议的内容......也许mint.com使用它来访问帐户? mint.com是否与每家银行有特殊关系,还是可以利用他们的方法?
修改:根据我的要求,我只对访问自己的财务数据感兴趣。
答案 0 :(得分:28)
在网络上查找Open Financial Exchange(OFX)格式。那(我相信)是银行业的通用格式。
答案 1 :(得分:22)
API访问
如果他们提供直接访问的API,您需要与每个机构核实。有些将通过拨号线提供访问,其他则提供更现代的IP服务。每个人都可能要求您注册并支付费用。
更容易要求用户从银行下载他们的声明并将其导入您的应用程序。大多数在线银行系统都提供此功能。
<强>格式强>
无论哪种方式,银行都支持多种格式(taken from here)。
您可能会看到OFX称为Quickbooks,Microsoft Money 2005或Sage Line 50. QIF有时称为Quicken 98或2000,或Microsoft Money 2003。
CSV格式将是每个机构专有的,并且需要为每个实例开发解析逻辑。
谁使用的是什么格式
支持OFX或QIF格式的英国银行是:
答案 2 :(得分:12)
可以编写基本的屏幕抓取工具来从您的Mint.com帐户中提取帐户交易。当然,这意味着您必须在那里设置一个帐户,让他们为您做肮脏的工作。
CasperJS是一个非常好的工具,你需要安装Casper和PhantomJS,它是构建它的框架。
var casper = require('casper').create();
casper.start('https://wwws.mint.com/login.event', function() {
this.fill('form#form-login', {
username: 'mintusername',
password: 'mintpassword'
}, true);
}).then(function() {
this.echo('Downloading transaction history...')
this.download('https://wwws.mint.com/transactionDownload.event', '/path/to/save/transactions.csv');
});
casper.run(function() {
this.echo('Done.').exit();
});
此脚本会登录到您的Mint帐户,并将您的交易记录(作为CSV文件)下载到您指定的任何位置。从那里,您可以使用数据做您喜欢的事情。当然,这个脚本可以显着扩展以进行更高级的操作,或者过滤它所扯下的事务,但是作为最佳实践,我建议尽可能简单地保持屏幕抓取并在程序结束时添加逻辑
您可以使用适用于Mac OS X的launchd或cron定期运行此脚本以用于大多数Linux版本。
答案 3 :(得分:4)
Intuit正在推出新的数据服务,通过安全的apis访问超过18000家金融机构。我不知道他们是否会包括英国的银行和金融机构,但这里有链接:
答案 4 :(得分:0)
你可以试试Swift(见message types),它不是你可以设置的那种东西,你必须和你想要合作的每个机构说话。
答案 5 :(得分:0)
有一种称为OFX(ofx.net)的标准协议可能满足您的需求。 Microsoft Money和Quicken都使用它来更新数据。
答案 6 :(得分:0)
对于那些并非过分担心付费用于OFX转换器(旨在处理全国范围的FlexAccount)的人,电子储蓄和信用卡会尝试Nationwide OFX Converter。
对于其他银行和信用卡,请尝试iCreateOFX Basic,对于投资文件,请尝试iCreateOFX Investment。
答案 7 :(得分:0)
在欧洲,您可以使用www.agregadorfinanciero.com API。