Microservice for bank statement parsing/transforming
Version 1.0
_______________________________________________________________________________________________
1. Description:
This microservice is responible for transforming any bank statement file to a unified json structure.
_______________________________________________________________________________________________
2. Methods:
Documentation:
GET /
Parameters: none
Response: text
Description: Displays this info
GET /list
Parameters: none
Description: Returns an array of implemented banks/parsers
Bank info:
GET /{bank_name}
Parameters: none
Response: text
Example: /mbank
Description: Presents basic information about bank implementation
Bank test:
GET /{bank_name}/test
Parameters: none
Response: JSON collection of transaction object
Example: /mbank/test
Description: Generates JSON output based on example file embeded in the implementation
Bank parser
POST /{bank_name}
Parameters: content
- content - bank statement text data
Response: JSON collection of transaction object
Example: /mbank
content = ":20:ST050112CYC/1
:25:PL58114020200000111111001002
:28C:8/1
:60F:C050112EUR0,00
:61:0501120112CR10000,00NFEXNONE//FX0501200004
306-TRANSAKCJA WYMIANY WALUT
:86:306 TRANSAKCJA WYMIANY WALUT; KURS: 4.09; TNR: 145271016138277.000001
:61:0501120112DR10000,00NTRFTOW789//FT05012999000010
983-POLECENIE WYPŁATY MT
:86: 983 Polecenie wypłaty wychodzące CompanyNet; na rach.: 35109010560000000006093440; dla:
Nazwa Adres; tyt.: ST 1.53; waluta: EUR; kwota: 1,53; kurs: 3,8649; prow. zagr.: PLN25,00; data
NOSTRO: 11.10.2007; ref. MT103: FT07282102000031; TNR: 145270005844139.000003
:62F:C050112EUR0,00
:64:C050112EUR0,00 "
Description: Generates JSON output for date pased in content field
_______________________________________________________________________________________________
3. Transaction object
Microservice returns a collection of transation objects that contains:
id - TNR - transaction number
date - transaction date, format yyyy-mm-dd
value - transaction value
currency - transaction currency code {PLN, USD, EUR ...}
acount - customer iban account number
customer - customer details
title - transaction description
description - bank transaction description
details - unparsed bank statement data or its subset
Example:
_______________________________________________________________________________________________
4. Implemented providers:
Name: mBank
Endpoint: /mbank
Parser: Mt940->transaction collection
Name: Ban
Endpoint: /bank
Parser: Default empty implementation