node-fints
FinTS client library.
Last updated 5 months ago by uniorg-consulting .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install node-fints 
SYNC missed versions from official npm registry.

node-fints

npm

A client library for communicating with FinTS servers.

Fork from npm fints

Example

###Typescript Example

import { PinTanClient } from "node-fints";

const startDate = new Date("2018-08-10T12:00:00Z");
const endDate = new Date("2018-10-10T12:00:00Z");

const client = new PinTanClient({
    url: "https://example.com/fints",
    name: "username",
    pin: 12345,
    blz: 12345678,
});

const accounts = await client.accounts();
console.info(accounts); // List of all accounts.

const statements = await client.statements(accounts[0], startDate, endDate);
console.info(statements); // List of all statements with transactions in specified date range.

###JavaScript Example

function getAccountStatements( client, accounts, statements, callback ) {
  for ( let i in accounts ) {
    let account = accounts[i]

    if ( !account.hasOwnProperty( "statementsIsSet" ) || (account.hasOwnProperty( "statementsIsSet" ) && !account.statementsIsSet) ) {
      client
        .statements( account, new Date( moment().subtract( 1, 'day' ).startOf( 'day' ) ), new Date() )
        .then( function( statementsBack ) {
          statements.push( statementsBack )
          account.statementsIsSet = true
          account.statements = ((statementsBack.length > 0) ? statementsBack[0] : {})
          let accountsFilter = accounts.filter( function( account ) {
            return (account.hasOwnProperty( "statementsIsSet" ))
          } )
          if ( accountsFilter.length === accounts.length ) {
            callback( statements, accounts )
            return
          } else {
            getAccountStatements( client, accounts, statements, callback )
          }
        } );
      break
    }
  }
}


const client = new PinTanClient( {
                                   url: "https://example.com/fints",
                                   name: "username",
                                   pin: 12345,
                                   blz: 12345678,
                                 } );
let fintsObject = {
  accounts: null,
  statements: null
}
client.accounts().then( function( accounts ) {
  fintsObject.accounts = accounts
  getAccountStatements( client, accounts, [], ( statements, accountsBack ) => {
    fintsObject.statements = statements;

    console.log( fintsObject );
  } )
} ).catch( ( error ) => {
  console.log( error );
} )

##Test Javascript Example with runKit Javascript Example

nodjs Service Example

Example Application with nodejs middleware and web application for view banking transactions.

###Nodejs application for the fints data processing

###IOS Application work with the nodejs application

Features

  • Load list of accounts.
  • Load list of statements and transactions in specified range.
  • booked Transactions and pending Transactions
  • Parse statement MT940 format.
  • Parse transaction descriptions.
  • Extract reference tags from transactions.
  • List supported TAN methods.
  • Parse basic metadata.

Missing

  • Get current balance.
  • List holdings.
  • Initiate any kind of SEPA transfers or debits.

Resources

Current Tags

  • 0.4.0                                ...           latest (5 months ago)

5 Versions

  • 0.4.0                                ...           5 months ago
  • 0.3.5                                ...           5 months ago
  • 0.3.4                                ...           5 months ago
  • 0.3.3                                ...           5 months ago
  • 0.3.2                                ...           5 months ago
Maintainers (1)
Downloads
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 0
Dependencies (8)
Dev Dependencies (15)
Dependents (0)
None

Copyright 2014 - 2017 © taobao.org |