zilverline/mt940 — pull request #8 by klausmeyer (2014-04-10 07:41:53+00:00)
Title: add support for files from deutsche bank (germany)

As promised here my implementation for parsing MT940 files from deutsche bank (:de:).

Beside the new parser this adds a few new fields (which I needed) to the transaction model:

* customer_reference (Reference number given by the customer)
* bank_reference (Reference number given by the bank)
* contra_bic (BIC code of contra account)
* sepa_business_code (SEPA business code, e.g. 171 for direct debit incoming)
* date_accounting (Accounting date in addition to the value date)

In the files from deutsche bank a lot of informations are encoded inside the field `:86:` using tags like:

:86:171?00SEPA-GUTSCHRIFT?101717/682?20EREF+NOTPROVIDED?21SVWZ+DE38XX
+Z76536723768 335?960.484.7561 7SF91D5 DFA48?30GENODE61KA1?31DE42
+2938944551657098369?32PETRA TESTER

* `?00` = Type of the transaction
* `?10` = Primanota nr
* `?2x` = Subject of the transaction
* `?30` = BIC
* `?31` = IBAN
* `?32` = Holder

I've tested the parser with a file containing real data in deutsche bank, but we aren't using it in production yet. But it would be really great to get the changes into upstream :sunglasses: