API/protocolo de banca
banking onlinebanking (8)
¿Hay bancos que ofrezcan feeds de datos de cuentas personales mediante algún tipo de API? Básicamente busco verificar los saldos en las cuentas sin iniciar sesión en su sitio web.
Recuerdo haber leído acerca de un protocolo bancario universal en algún momento ... ¿y tal vez mint.com lo usa para acceder a las cuentas? ¿Tiene mint.com una relación especial con cada banco, o puedo aprovechar su método?
Editar: para mis requisitos, solo estoy interesado en acceder a mis propios datos financieros.
Busque el formato Open Financial Exchange (OFX) en la web. Ese (creo) es un formato genérico para la industria bancaria.
En Europa, podría usar API de www.agregadorfinanciero.com .
Es posible escribir un raspador de pantalla básico para sacar transacciones de cuenta de su cuenta de Mint.com . Por supuesto, esto significa que tendrá que tener una cuenta configurada allí y dejar que el trabajo sucio para usted.
CasperJS es una gran herramienta que hace que esto sea bastante trivial; necesitará instalar tanto Casper como PhantomJS, el marco en el que está construido.
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();
});
Esta secuencia de comandos inicia sesión en su cuenta Mint y descarga su historial de transacciones (como un archivo CSV ) en cualquier lugar que especifique. A partir de ahí, puede hacer lo que quiera con los datos. Por supuesto, este script podría ampliarse significativamente para hacer cosas más avanzadas o para filtrar las transacciones que extrae, pero como una buena práctica, le aconsejaría mantener el raspado de la pantalla lo más simple posible y agregar la lógica al final de su programa. .
Puede hacer que este script se ejecute periódicamente utilizando launchd para Mac OS X o cron para la mayoría de los sabores de Linux.
Existe un protocolo estándar conocido como OFX (ofx.net) que puede satisfacer sus necesidades. Microsoft Money y Quicken lo usan para actualizar datos.
Intuit lanza nuevos servicios de datos con acceso a más de 18000 instituciones financieras a través de apis seguros. No tengo conocimiento de si incluirán bancos del Reino Unido e instituciones financieras, pero aquí está el enlace:
Para aquellos que no están abiertamente preocupados por pagar un fiver por un convertidor OFX, diseñado para manejar Nationwide FlexAccount, e-Savings y Creditcards prueben el Convertidor OFX de Nationwide .
Para otros bancos y tarjetas de crédito pruebe iCreateOFX Basic y para los archivos de inversión pruebe iCreateOFX Investment .
Podrías probar Swift (ver tipos de mensajes ), aunque no es el tipo de cosas que puedes configurar, tendrías que hablar con cada institución con la que quisieras trabajar.
Acceso API
Deberá consultar con cada institución si proporcionan una API para el acceso directo. Algunos proporcionarán acceso a través de una línea telefónica, otros tienen un servicio más moderno basado en IP. Es probable que cada uno requiera que se registre y pague una tarifa.
Más fácil es requerir que el usuario descargue su extracto del banco e importarlo a su aplicación. La mayoría de los sistemas de banca en línea brindan esta funcionalidad.
Formatos
De cualquier manera, hay varios formatos compatibles con los bancos ( tomados de aquí ).
- OFX (Open Financial Exchange)
- QIF (Formato de intercambio Quicken)
- CSV (valor separado por coma)
Es posible que vea OFX denominado Quickbooks, Microsoft Money 2005 o Sage Line 50. QIF a veces se denomina Quicken 98 o 2000 o Microsoft Money 2003.
Los formatos CSV serán propietarios por institución y requieren una lógica de análisis desarrollada para cada instancia.
Quién usa qué formato
Los bancos del Reino Unido que admiten formatos OFX o QIF son:
- Abbey (QIF, pero no Abbey Business)
- Alliance y Leicester (OFX y QIF)
- Barclays (OFX)
- Clydesdale (QIF)
- Coutts & Co (OFX y QIF)
- First Direct (QIF)
- Halifax (OFX y QIF)
- HSBC (OFX)
- Lloyds (QIF)
- NatWest (OFX)
- Nationwide (OFX)
- Royal Bank of Scotland (OFX y QIF)
- Tesco (OFX y QIF)
- Yorkshire (QIF)