skip to navigation
skip to content

python-dta 0.2

Swiss DTA payment record generator library

Generator library for Swiss DTA (“Datenträgeraustauschverfahren”) electronic payment records.

Features

  • Support for transaction types 826, 827, 836 and 890
  • Implements various integrity checks according to record description manual
  • Supports decimal and date input values

Getting started

Generate a DTA file containing one transaction of type 826:

from datetime import date
from decimal import Decimal

from dta import DTA
from dta.records import DTAHeader, DTARecord826, DTARecord890

dta = DTA()

header = DTAHeader()
header.sequence_nr = 1
header.sender_id = 'ABCDE'
header.client_clearing_nr = '248'
header.creation_date = date(2013, 4, 23)
header.processing_date = date(2013, 5, 10)

record = DTARecord826(header)
record.reference = '002013-0058'
record.liability_account = '248 110079.01Z'
record.currency = 'CHF'
record.amount = Decimal('114.35')
record.client_address1 = 'LEUCHTER OPEN SOURCE SOLUTIONS'
record.client_address3 = 'WINKELRIEDSTRASSE 45'
record.client_address4 = '6003 LUZERN'
record.recipient_account = '010723327'
record.recipient_address1 = 'TESTLIEFERANT'
record.recipient_address3 = 'TESTSTRASSE 10'
record.recipient_address4 = '6005 LUZERN'
record.esr_reference = '182171015574297'
dta.records.append(record)

header = DTAHeader()
header.sequence_nr = 2
header.sender_id = 'ABCDE'
header.client_clearing_nr = '248'
header.creation_date = date(2013, 4, 23)

record = DTARecord890(header)
record.amount = Decimal('114.35')
dta.records.append(record)

with open('demo.leu', 'w') as f:
    f.write(dta.generate())
 
File Type Py Version Uploaded on Size
python-dta-0.2.tar.gz (md5) Source 2014-08-14 18KB