# @philippdormann/fints

> FinTS client library

Latest version **0.5.0** (published 2022-05-04) · MIT license · 0 weekly downloads

## Install

```sh
npm install @philippdormann/fints
pnpm add @philippdormann/fints
yarn add @philippdormann/fints
bun add @philippdormann/fints
```

## Health

**Score 20/100 (F)** — status: abandoned.

Positive: has types; no vulnerabilities.

Warnings: low downloads; no esm support; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.5.0 |
| Published | 2022-05-04 |
| First published | 2022-05-04 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | CommonJS |
| Dependencies | 8 |
| Unpacked size | 213.9 KB |
| Known vulnerabilities | 0 (+2 in 1 direct dependencies) |
| Install scripts | no |
| Maintainers | philippdormann |

## Links

- npm: https://www.npmjs.com/package/@philippdormann/fints
- npm.io page: https://npm.io/package/@philippdormann/fints

## Dependencies (8)

- [winston](https://npm.io/package/winston.md) ^3.7.2
- [date-fns](https://npm.io/package/date-fns.md) ^2.9.0
- [mt940-js](https://npm.io/package/mt940-js.md) ^0.6.0
- [invariant](https://npm.io/package/invariant.md) ^2.2.4
- [iconv-lite](https://npm.io/package/iconv-lite.md) ^0.5.2
- [bind-decorator](https://npm.io/package/bind-decorator.md) ^1.0.11
- [fast-xml-parser](https://npm.io/package/fast-xml-parser.md) ^3.21.1
- [isomorphic-fetch](https://npm.io/package/isomorphic-fetch.md) ^2.2.1

## Recent versions

- 0.5.0 (latest) — 2022-05-04

## README

# FinTS Node.js Client

A client library for communicating with [FinTS servers](https://www.hbci-zka.de/).

## Example

```typescript
import { PinTanClient } from "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.
```

[Further code examples](README_advanced_usage.md)

## Features

- Load list of accounts.
- Load list of statements and transactions in specified range.
- Parse statement [MT940](https://en.wikipedia.org/wiki/MT940) format.
- Parse transaction descriptions.
- Extract [reference tags](https://www.dzbank.de/content/dam/dzbank_de/de/home/produkte_services/Firmenkunden/PDF-Dokumente/transaction%20banking/elektronicBanking/SEPA-Belegungsregeln_MT940-DK_082016.~644b217ec96b35dfffcaf18dc2df800a.pdf) from transactions.
- List supported TAN methods.
- Parse basic metadata.

## Missing

- Get current balance.
- List holdings.
- Initiate any kind of SEPA transfers or debits.

## Resources

- [API Reference](https://prior99.gitlab.io/fints)
- [Official specification](https://www.hbci-zka.de/spec/3_0.htm)
- [Database of banks with their URLs](https://github.com/jhermsmeier/fints-institute-db)

## Credits + About
Big thanks to <https://github.com/Prior99/fints> for the initial implementation.

I needed to apply some fixes and simplifications - this fork is by no means supported or a stable implementation

---
_Source: https://npm.io/package/@philippdormann/fints · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
