class ParameterSegment(FinTS3Segment): max_number_tasks = DataElementField(type='num', max_length=3, _d="Maximale Anzahl Aufträge") min_number_signatures = DataElementField(type='num', length=1, _d="Anzahl Signaturen mindestens") security_class = IntCodeField(SecurityClass, length=1, _d="Sicherheitsklasse")
class HKIDN2(FinTS3Segment): """Identifikation, version 2 Source: FinTS Financial Transaction Services, Schnittstellenspezifikation, Formals""" bank_identifier = DataElementGroupField(type=BankIdentifier, _d="Kreditinstitutskennung") customer_id = DataElementField(type='id', _d="Kunden-ID") system_id = DataElementField(type='id', _d="Kundensystem-ID") system_id_status = CodeField(enum=SystemIDStatus, length=1, _d="Kundensystem-Status")
class HICAZ1(FinTS3Segment): """Kontoumsätze rückmelden/Zeitraum, version 1 Source: HBCI Homebanking-Computer-Interface, Schnittstellenspezifikation""" account = DataElementGroupField(type=KTI1, _d="Kontoverbindung Auftraggeber") camt_descriptor = DataElementField(type='an', _d="camt-Deskriptor") statement_booked = DataElementGroupField(type=BookedCamtStatements1, _d="Gebuchte Umsätze") statement_pending = DataElementField(type='bin', required=False, _d="Nicht gebuchte Umsätze")
class HIUPA4(FinTS3Segment): """Userparameter allgemein""" user_identifier = DataElementField(type='id', _d="Benutzerkennung") upd_version = DataElementField(type='num', max_length=3, _d="UPD-Version") upd_usage = CodeField(UPDUsage, length=1, _d="UPD-Verwendung") username = DataElementField(type='an', max_length=35, required=False, _d="Benutzername") extension = DataElementField(type='an', max_length=2048, required=False, _d="Erweiterung, allgemein")
class HKVVB3(FinTS3Segment): """Verarbeitungsvorbereitung, version 3 Source: FinTS Financial Transaction Services, Schnittstellenspezifikation, Formals""" bpd_version = DataElementField(type='num', max_length=3, _d="BPD-Version") upd_version = DataElementField(type='num', max_length=3, _d="UPD-Version") language = CodeField(enum=Language2, max_length=3, _d="Dialogsprache") product_name = DataElementField(type='an', max_length=25, _d="Produktbezeichnung") product_version = DataElementField(type='an', max_length=5, _d="Produktversion")
class HICAZ1(FinTS3Segment): """Kontoumsätze rückmelden/Zeitraum, version 1 Source: HBCI Homebanking-Computer-Interface, Schnittstellenspezifikation""" account = DataElementGroupField(type=KTI1, _d="Kontoverbindung Auftraggeber") camt_descriptor = DataElementField(type='an', _d="camt-Deskriptor") # According to specification, statement_booked is a DEG with one binary XML *per day*. However, banks apparently # send just one XML instead. statement_booked = DataElementField(type='bin', _d="Gebuchte Umsätze") statement_pending = DataElementField(type='bin', required=False, _d="Nicht gebuchte Umsätze")
class HIPRO4(FinTS3Segment): """Statusprotokoll rückmelden, version 4 Source: FinTS Financial Transaction Services, Schnittstellenspezifikation, Formals""" reference_message = DataElementGroupField(type=ReferenceMessage, _d="Bezugsnachricht") reference = DataElementField(type='num', max_length=3, required=False, _d='Bezugssegment') date = DataElementField(type='dat', _d="Datum") time = DataElementField(type='tim', _d="Uhrzeit") responses = DataElementGroupField(type=Response, _d="Rückmeldung")
class HKCCM1(FinTS3Segment): """SEPA-Sammelüberweisung, version 1 Source: FinTS Financial Transaction Services, Schnittstellenspezifikation, Messages -- Multibankfähige Geschäftsvorfälle """ account = DataElementGroupField(type=KTI1, _d="Kontoverbindung international") sum_amount = DataElementGroupField(type=Amount1, _d="Summenfeld") request_single_booking = DataElementField(type='jn', _d="Einzelbuchung gewünscht") sepa_descriptor = DataElementField(type='an', max_length=256, _d="SEPA Descriptor") sepa_pain_message = DataElementField(type='bin', _d="SEPA pain message")
class HIUPD6(FinTS3Segment): """Kontoinformationen""" account_information = DataElementGroupField(type=AccountInformation, required=False, _d="Kontoverbindung") iban = DataElementField(type='an', max_length=34, _d="IBAN") customer_id = DataElementField(type='id', _d="Kunden-ID") account_type = DataElementField(type='num', max_length=2, _d="Kontoart") account_currency = DataElementField(type='cur', _d="Kontowährung") name_account_owner_1 = DataElementField(type='an', max_length=27, _d="Name des Kontoinhabers 1") name_account_owner_2 = DataElementField(type='an', max_length=27, required=False, _d="Name des Kontoinhabers 2") account_product_name = DataElementField(type='an', max_length=30, required=False, _d="Kontoproduktbezeichnung") account_limit = DataElementGroupField(type=AccountLimit, required=False, _d="Kontolimit") allowed_transactions = DataElementGroupField( type=AllowedTransaction, count=999, required=False, _d="Erlaubte Geschäftsvorfälle") extension = DataElementField(type='an', max_length=2048, required=False, _d="Erweiterung, kontobezogen")
class HKPRO3(FinTS3Segment): """Statusprotokoll anfordern, version 3 Source: FinTS Financial Transaction Services, Schnittstellenspezifikation, Formals""" date_start = DataElementField(type='dat', required=False, _d="Von Datum") date_end = DataElementField(type='dat', required=False, _d="Bis Datum") max_number_responses = DataElementField(type='num', max_length=4, required=False, _d="Maximale Anzahl Einträge") touchdown_point = DataElementField(type='an', max_length=35, required=False, _d="Aufsetzpunkt")
class HITAN5(FinTS3Segment): """Zwei-Schritt-TAN-Einreichung Rückmeldung, version 5 Source: FinTS Financial Transaction Services, Schnittstellenspezifikation, Sicherheitsverfahren PIN/TAN""" tan_process = DataElementField(type='code', length=1, _d="TAN-Prozess") task_hash_value = DataElementField(type='bin', max_length=256, required=False, _d="Auftrags-Hashwert") task_reference = DataElementField(type='an', max_length=35, required=False, _d="Auftragsreferenz") challenge = DataElementField(type='an', max_length=2048, required=False, _d="Challenge") challenge_hhduc = DataElementField(type='bin', required=False, _d="Challenge HHD_UC") challenge_valid_until = DataElementGroupField( type=ChallengeValidUntil, required=False, _d="Gültigkeitsdatum und -uhrzeit für Challenge") tan_list_number = DataElementField(type='an', max_length=20, required=False, _d="TAN-Listennummer") ben = DataElementField(type='an', max_length=99, required=False, _d="BEN") tan_medium_name = DataElementField(type='an', max_length=32, required=False, _d="Bezeichnung des TAN-Mediums")
class HNHBK3(FinTS3Segment): """Nachrichtenkopf""" message_size = ZeroPaddedNumericField( length=12, _d="Größe der Nachricht (nach Verschlüsselung und Komprimierung)") hbci_version = DataElementField(type='num', max_length=3, _d="HBCI-Version") dialog_id = DataElementField(type='id', _d="Dialog-ID") message_number = DataElementField(type='num', max_length=4, _d="Nachrichtennummer") reference_message = DataElementGroupField(type=ReferenceMessage, required=False, _d="Bezugsnachricht")
class HKSAL5(FinTS3Segment): """Saldenabfrage, version 5 Source: HBCI Homebanking-Computer-Interface, Schnittstellenspezifikation""" account = DataElementGroupField(type=Account2, _d="Kontoverbindung Auftraggeber") all_accounts = DataElementField(type='jn', _d="Alle Konten") max_number_responses = DataElementField(type='num', max_length=4, required=False, _d="Maximale Anzahl Einträge") touchdown_point = DataElementField(type='an', max_length=35, required=False, _d="Aufsetzpunkt")
class HKSAL6(FinTS3Segment): """Saldenabfrage, version 6 Source: FinTS Financial Transaction Services, Schnittstellenspezifikation, Messages -- Multibankfähige Geschäftsvorfälle """ account = DataElementGroupField(type=Account3, _d="Kontoverbindung Auftraggeber") all_accounts = DataElementField(type='jn', _d="Alle Konten") max_number_responses = DataElementField(type='num', max_length=4, required=False, _d="Maximale Anzahl Einträge") touchdown_point = DataElementField(type='an', max_length=35, required=False, _d="Aufsetzpunkt")
class HNSHA2(FinTS3Segment): """Signaturabschluss, version 2 Source: FinTS Financial Transaction Services, Sicherheitsverfahren HBCI""" security_reference = DataElementField(type='an', max_length=14, _d="Sicherheitskontrollreferenz") validation_result = DataElementField(type='bin', max_length=512, required=False, _d="Validierungsresultat") user_defined_signature = DataElementGroupField( type=UserDefinedSignature, required=False, _d="Benutzerdefinierte Signatur")
class HKKOM4(FinTS3Segment): """Kommunikationszugang anfordern, version 4 Source: FinTS Financial Transaction Services, Schnittstellenspezifikation, Formals""" start_bank_identifier = DataElementGroupField( type=BankIdentifier, required=False, _d="Von Kreditinstitutskennung") end_bank_identifier = DataElementGroupField( type=BankIdentifier, required=False, _d="Bis Kreditinstitutskennung") max_number_responses = DataElementField(type='num', max_length=4, required=False, _d="Maximale Anzahl Einträge") touchdown_point = DataElementField(type='an', max_length=35, required=False, _d="Aufsetzpunkt")
class HNVSK3(FinTS3Segment): """Verschlüsselungskopf, version 3 Source: FinTS Financial Transaction Services, Sicherheitsverfahren HBCI""" security_profile = DataElementGroupField(type=SecurityProfile, _d="Sicherheitsprofil") security_function = DataElementField(type='code', max_length=3, _d="Sicherheitsfunktion, kodiert") security_role = CodeField(SecurityRole, max_length=3, _d="Rolle des Sicherheitslieferanten, kodiert") security_identification_details = DataElementGroupField( type=SecurityIdentificationDetails, _d="Sicherheitsidentifikation, Details") security_datetime = DataElementGroupField( type=SecurityDateTime, _d="Sicherheitsdatum und -uhrzeit") encryption_algorithm = DataElementGroupField( type=EncryptionAlgorithm, _d="Verschlüsselungsalgorithmus") key_name = DataElementGroupField(type=KeyName, _d="Schlüsselname") compression_function = CodeField(CompressionFunction, max_length=3, _d="Komprimierungsfunktion") certificate = DataElementGroupField(type=Certificate, required=False, _d="Zertifikat")
class HKKAZ7(FinTS3Segment): """Kontoumsätze anfordern/Zeitraum, version 7 Source: FinTS Financial Transaction Services, Schnittstellenspezifikation, Messages -- Multibankfähige Geschäftsvorfälle """ account = DataElementGroupField(type=KTI1, _d="Kontoverbindung international") all_accounts = DataElementField(type='jn', _d="Alle Konten") date_start = DataElementField(type='dat', required=False, _d="Von Datum") date_end = DataElementField(type='dat', required=False, _d="Bis Datum") max_number_responses = DataElementField(type='num', max_length=4, required=False, _d="Maximale Anzahl Einträge") touchdown_point = DataElementField(type='an', max_length=35, required=False, _d="Aufsetzpunkt")
class HKKAZ5(FinTS3Segment): """Kontoumsätze anfordern/Zeitraum, version 5 Source: HBCI Homebanking-Computer-Interface, Schnittstellenspezifikation""" account = DataElementGroupField(type=Account2, _d="Kontoverbindung Auftraggeber") all_accounts = DataElementField(type='jn', _d="Alle Konten") date_start = DataElementField(type='dat', required=False, _d="Von Datum") date_end = DataElementField(type='dat', required=False, _d="Bis Datum") max_number_responses = DataElementField(type='num', max_length=4, required=False, _d="Maximale Anzahl Einträge") touchdown_point = DataElementField(type='an', max_length=35, required=False, _d="Aufsetzpunkt")
class HKTAN5(FinTS3Segment): """Zwei-Schritt-TAN-Einreichung, version 5 Source: FinTS Financial Transaction Services, Schnittstellenspezifikation, Sicherheitsverfahren PIN/TAN""" tan_process = DataElementField(type='code', length=1, _d="TAN-Prozess") segment_type = DataElementField(type='an', max_length=6, required=False, _d="Segmentkennung") account = DataElementGroupField( type=KTI1, required=False, _d="Kontoverbindung international Auftraggeber") task_hash_value = DataElementField(type='bin', max_length=256, required=False, _d="Auftrags-Hashwert") task_reference = DataElementField(type='an', max_length=35, required=False, _d="Auftragsreferenz") tan_list_number = DataElementField(type='an', max_length=20, required=False, _d="TAN-Listennummer") further_tan_follows = DataElementField(type='jn', length=1, required=False, _d="Weitere TAN folgt") cancel_task = DataElementField(type='jn', length=1, required=False, _d="Auftrag stornieren") sms_charge_account = DataElementGroupField(type=KTI1, required=False, _d="SMS-Abbuchungskonto") challenge_class = DataElementField(type='num', max_length=2, required=False, _d="Challenge-Klasse") parameter_challenge_class = DataElementGroupField( type=ParameterChallengeClass, required=False, _d="Parameter Challenge-Klasse") tan_medium_name = DataElementField(type='an', max_length=32, required=False, _d="Bezeichnung des TAN-Mediums")
class HIBPA3(FinTS3Segment): """Bankparameter allgemein, version 3 Source: FinTS Financial Transaction Services, Schnittstellenspezifikation, Formals""" bpd_version = DataElementField(type='num', max_length=3, _d="BPD-Version") bank_identifier = DataElementGroupField(type=BankIdentifier, _d="Kreditinstitutskennung") bank_name = DataElementField(type='an', max_length=60, _d="Kreditinstitutsbezeichnung") number_tasks = DataElementField( type='num', max_length=3, _d="Anzahl Geschäftsvorfallarten pro Nachricht") supported_languages = DataElementGroupField(type=SupportedLanguages2, _d="Unterstützte Sprachen") supported_hbci_version = DataElementGroupField( type=SupportedHBCIVersions2, _d="Unterstützte HBCI-Versionen") max_message_length = DataElementField(type='num', max_length=4, required=False, _d="Maximale Nachrichtengröße") min_timeout = DataElementField(type='num', max_length=4, required=False, _d="Minimaler Timeout-Wert") max_timeout = DataElementField(type='num', max_length=4, required=False, _d="Maximaler Timeout-Wert")
class HKTAN2(FinTS3Segment): """Zwei-Schritt-TAN-Einreichung, version 2 Source: FinTS Financial Transaction Services, Schnittstellenspezifikation, Sicherheitsverfahren PIN/TAN""" tan_process = DataElementField(type='code', length=1, _d="TAN-Prozess") task_hash_value = DataElementField(type='bin', max_length=256, required=False, _d="Auftrags-Hashwert") task_reference = DataElementField(type='an', max_length=35, required=False, _d="Auftragsreferenz") tan_list_number = DataElementField(type='an', max_length=20, required=False, _d="TAN-Listennummer") further_tan_follows = DataElementField(type='jn', length=1, required=False, _d="Weitere TAN folgt") cancel_task = DataElementField(type='jn', length=1, required=False, _d="Auftrag stornieren") challenge_class = DataElementField(type='num', max_length=2, required=False, _d="Challenge-Klasse") parameter_challenge_class = DataElementGroupField(type=ParameterChallengeClass, required=False, _d="Parameter Challenge-Klasse")
class DKKKU2(FinTS3Segment): """Kreditkartenumsätze anfordern, version 2 Source: Reverse engineered""" account = DataElementGroupField(type=Account2, _d="Kontoverbindung Auftraggeber") credit_card_number = DataElementField(type='an', _d="Kreditkartennummer") subaccount = DataElementField(type='an', required=False, _d="Subaccount?") date_start = DataElementField(type='dat', required=False, _d="Von Datum") date_end = DataElementField(type='dat', required=False, _d="Bis Datum") max_number_responses = DataElementField(type='num', max_length=4, required=False, _d="Maximale Anzahl Einträge") touchdown_point = DataElementField(type='an', max_length=35, required=False, _d="Aufsetzpunkt")
class HNHBS1(FinTS3Segment): """Nachrichtenabschluss""" message_number = DataElementField(type='num', max_length=4, _d="Nachrichtennummer")
class HIWPD5(FinTS3Segment): """Depotaufstellung rückmelden, version 5 Source: HBCI Homebanking-Computer-Interface, Schnittstellenspezifikation""" holdings = DataElementField(type='bin', _d="Depotaufstellung")
class HIWPD6(FinTS3Segment): """Depotaufstellung rückmelden, version 6 Source: FinTS Financial Transaction Services, Schnittstellenspezifikation, Messages -- Multibankfähige Geschäftsvorfälle """ holdings = DataElementField(type='bin', _d="Depotaufstellung")