Auftragsanlage Allgemeines Die Batch Schnittstelle zur Anlage von Abonnement-Aufträgen ermöglicht es der Gegenseite, Abonnements in einer Datei zu sammeln und diese dann zur weiteren Verarbeitung an dsb zu übermitteln. Die Schnittstelle basiert auf XML. (eXtensible Markup Language). Die gesamte Struktur wird im Gegensatz zu den Web-Service Anbindungen in einer Datei übertragen. Die XML-Struktur besteht im wesentlichen aus einem Header-Teil, in dem zusätzlich zu den üblichen Dokumentenbeschreibungen (XML-Version, encoding, etc.) verarbeitungsspezifische Daten (z.B. Dateibeschreibung, Zielmandant) hinterlegt werden, die für die gesamte Datei gelten. Die auftragsspezifischen Daten werden innerhalb des Tags hinterlegt. Zu einem Auftrag können mehrere Geschäftspartner in ihren jeweils erforderlichen Bedeutungen (Rollen) angelegt werden, es können mehrere Prämien und mehrere Nachrichten angegeben werden. Die Dateien werden per FTP auf den FTP-Server der DSB übertragen. Details hierzu, sowie zur Dateinamenskonventionen werden ihnen vor Einsatz von der AVS/3-Kundenbetreuung mitgeteilt. Eine Vielzahl von Feldattributen sind abhängig von mandantenspezifischen Einstellungen (Stammdaten oder Customizing) in AVS/3 und können in dieser Schnittstellenbeschreibung nicht explizit ausgeprägt werden. Bei Unklarheiten oder konkreten Fragen stimmen Sie dies bitte mit ihrem entsprechenden Ansprechpartner der AVS/3-Kundenbetreuung ab. Gesamtstruktur Alle Aufträge werden innerhalb eines XML-Dokuments und damit einer .xml-Datei versendet. Im Header stehen Verwaltungsinformationen, wie zum Beispiel der Zielmandant im AVS/3-System, in den die Daten übernommen werden sollen. Die Aufträge(Abonnements) werden innerhalb des <body> -Tags zusammengefasst. Ein einzelner Auftrag (Abonnement) wird mit seinen Elementen innerhalb eines Tags geführt. Die Adressdaten werden innerhalb der <business-partner>-Tags geführt. Pro Rolle (=Funktion), die ein Geschäftspartner annehmen kann und für die eine Adresse angelegt werden soll, wird ein eigenes Element eines <business-partner>-Tags gebildet. Zum Beispiel für den Auftraggeber (Rolle ‚AG‘), für einen abweichenden Warenempfänger (Rolle ‚WE‘), bei Prämienabos für den Vermittler (Rolle ‚VM‘). Die Rolle des Geschäftspartners kann sowohl über die Struktur ‚subscription-to-business-partner-relationship‘ übermittelt werden als auch direkt als Attribut in der Struktur ‚business-partner‘. Es wird empfohlen, die Rolle über die Struktur ‚business-partner‘ zu übermitteln. Es ist für jede Prämie eine Struktur mit dem Namen ‚premium‘ einzufügen. Wichtig ist, dass alle genannten Elemente, die zu einem bestimmten Auftrag gehören von einem - Tag umschlossen sind, da sonst keine eindeutige Zuordnung erfolgen kann. Die Reihenfolge der Elemente ist wie dargestellt einzuhalten. Dateien, die diesbezügliche Fehler aufweisen werden als Ganzes abgelehnt. Ein zentrales Feld ist das Feld „BQ“ (Bestellquelle) in der Struktur „subscription“. Dieser Wert entspricht der Werbeaktionsnummer und ihm können verschiedene Werte hinterlegt werden. Die so hinterlegten Werte sind dann nicht mehr über die Schnittstelle zu übergeben, sondern werden bei DSB zugesteuert. Einige Felder sind als Konstanten anzusehen (wie z.B. das Feld „client“ im Header). Die Belegung dieser Felder wird ihnen noch mitgeteilt. Da alle von Ihnen gesendeten Dateien maschinell weiterverarbeitet werden, müssen die Dateinamen einer speziellen Konvention folgen. Ein Dateiname hat normalerweise folgenden Aufbau: <System><Dienstleister><Mandant><Datum><fortlaufende Nummer>.xml.pgp Feld LängeBeschreibung System 2 Identifiziert das Zielsystem v3 = VHS/3 a3 = AVS/3 z3 = ZHS/3 Dienstleister 3 Kennzeichnet den Dienstleister, der diese Datei erzeugt hat. Mandant 3 - 43 bzw. 4stellige Nummer des Mandanten im Zielsystem Mandantennummer. Datum 8 Datum der Dateierstellung bzw. Übertragung im Format YYYYMMDD Fortlaufende Nummer3 Einfacher Zähler Aufgrund der maschinellen Weiterverarbeitung ist es notwendig, dass Sie nach der Übertragung der eigentlichen Dateien noch eine sog. OK-Datei übertragen. Diese Datei hat den gleichen Namen wie die Datendatei aber noch zusätzlich die Dateierweiterung „.ok“. Diese Datei kann leer sein und der Inhalt wird nicht weiter beachtet. Der Grund für diese OK-Datei liegt darin, dass es nicht möglich ist festzustellen, ob eine Datei bereits komplett von Ihnen übertragen wurde. Falls nun der Upload noch im Gange ist und wir bereits mit der Verarbeitung der Datei beginnen würden, könnte dies zum Verlust von Daten führen. Aus diesem Grund müssen Sie nach erfolgreicher Übertragung noch eine OK-Datei mit auf den FTP Server stellen. Erst wenn zu einer Datendatei eine zugehörige OK-Datei existiert, wird mit der Verarbeitung begonnen. Das heißt aber auch, dass Dateien ohne entsprechende OK-Datei auf unserer Seite nicht verarbeitet werden. Beispiel: Falls Sie am 14.02.2003 Ihre 15. Übertragung mit dem Ziel (VHS/3) durchgeführt hätten, Ihre Dienstleister Kennung „dke“ und Ihr Mandant „4711“ wäre, dann müssten sich nach der Übertragung folgende Dateien im Verzeichnis 'an_dsb' auf unserem FTP-Server befinden. v3dke471120030214015.xml.pgp v3dke471120030214015.xml.pgp.ok Schematische Darstellung (neu): <?xml version='1.0' encoding='ISO-8859-1'?> <message version='1.0' system='avs/3'> <header> <creation-date></creation-date> <creation-time></creation-time> <collection-office></collection-office> <file-name></file-name> <file-number></file-number> <client></client> <number-of-entries></number-of-entries> </header> <body> <!-- umfasst einen Auftrag --> <subscription> <!—Felder und Elemente gemäß Beschreibung --> <business-partner> <!-- Aufbau und Elementdefinition gemäß Beschreibung --> </business-partner> <premium> <!-- Aufbau und Elementdefinition gemäß Beschreibung --> </premium> <order-attribute> <!-- Aufbau und Elementdefinition gemäß Beschreibung --> </order-attribute> </subscription> <subscription> <!-- weiterer Auftrag --> </subscription> <subscription> <!-- weiterer Auftrag, usw. --> </subscription> </body> </message> Die Struktur der zu liefernden XML-Fragmente subscription, hat im Batch Modus den gleichen Aufbau wie im Realtime Modus. Bitte verwenden Sie daher die Beschreibugen der angeführten Request Struktur: Request Struktur Aufbau Request <subscription> <promotion-source> </promotion-source> <promotion-source-variant> </promotion-source-variant> <sales-promotion> </sales-promotion> <advertising-level> </advertising-level> <offer-code> </offer-code> <publication> </publication> <edition> </edition> <mix-type> </mix-type> <purchase-frequency> </purchase-frequency> <delivery-type> </delivery-type> <quantity> </quantity> <sales-organization> </sales-organization> <sales-suborganization> </sales-suborganization> <sales-bureau> </sales-bureau> <distribution-channel> </distribution-channel> <division> </division> <customer-purchase-order-number> </customer-purchase-order-number> <customer-purchase-order-type> </customer-purchase-order-type> <customer-purchase-order-date> </customer-purchase-order-date> <valid-from> </valid-from> <valid-to> </valid-to> <issue-number-from> </issue-number-from> <issue-number-to> </issue-number-to> <archive-reference></archive-reference> <payment-method> </payment-method> <payment-method-details> <!-- entweder 'payment-method-cheque' --> <payment-method-cheque> <cheque-bank-clearing-account></cheque-bank-clearing-account> <cheque-number></cheque-number> <cheque-amount></cheque-amount> <cheque-currency-code></cheque-currency-code> <cheque-bank-code></cheque-bank-code> <cheque-bank-control-key></cheque-bank-control-key> <cheque-bank-country-code></cheque-bank-country-code> <cheque-bank-account-number></cheque-bank-account-number> <cheque-holder></cheque-holder> </payment-method-cheque> <!-- oder 'payment-method-other' --> <payment-method-other> <other-bank-clearing-account></other-bank-clearing-account> <other-amount></other-amount> <other-currency-code></other-currency-code> <other-payee-note></other-payee-note> </payment-method-other> </payment-method-details> <total-paid-currency-code></total-paid-currency-code> <total-paid-amount></total-paid-amount> <wallet-part-payment-amount></wallet-part-payment-amount> <extra-pay-discount> <currency-code></currency-code> <discount></discount> </extra-pay-discount> <extra-pay-voucher> <bank-clearing-account></bank-clearing-account> <amount></amount> <currency-code></currency-code> <payee-note></payee-note> </extra-pay-voucher> <print-invoice> </print-invoice> <purchase-reason> </purchase-reason> <delivery-end-reason> </delivery-end-reason> <billing-from> </billing-from> <issue-billing-from> </issue-billing-from> <currency-code></currency-code> <price-list-type> </price-list-type> <fixed-price-list-and-currency-code>N</fixed-price-list-and-currency-code> <debit-account> <debit-account-id></debit-account-id> <debit-bank-code> </debit-bank-code> <debit-country-code> </debit-country-code> <debit-account-number> </debit-account-number> <debit-account-holder> </debit-account-holder> <debit-continuous> </debit-continuous> <debit-due-date> </debit-due-date> <iban></iban> <bic></bic> </debit-account> <cc-account> <cc-account-id></cc-account-id> <cc-company-code> </cc-company-code> <cc-number> </cc-number> <cc-expiry> </cc-expiry> </cc-account> <sepa-mandate> <creation-type></creation-type> <transaction-type></transaction-type> <details> <b2b-mandate></b2b-mandate> <mandate-ref-pre-creditor></mandate-ref-pre-creditor> <previous-creditor-id></previous-creditor-id> <previous-bic></previous-bic> <last-due-date></last-due-date> </details> </sepa-mandate> <price-key-in-trialterm> </price-key-in-trialterm> <billing-frequency-in-trialterm> </billing-frequency-in-trialterm> <price-group-in-trialterm> </price-group-in-trialterm> <duration-in-trialterm></duration-in-trialterm> <unit-in-trialterm></unit-in-trialterm> <price-key-in-normalterm1> </price-key-in-normalterm1> <billing-frequency-in-normalterm1> </billing-frequency-in-normalterm1> <price-group-in-normalterm1> </price-group-in-normalterm1> <duration-in-normalterm1></duration-in-normalterm1> <unit-in-normalterm1></unit-in-normalterm1> <price-key> </price-key> <billing-frequency> </billing-frequency> <price-group> </price-group> <duration> </duration> <unit> </unit> <postage-key> </postage-key> <dsb-media1> </dsb-media1> <dsb-media2> </dsb-media2> <dsb-media3> </dsb-media3> <dsb-media4> </dsb-media4> <dsb-media2b> </dsb-media2b> <dsb-media7> </dsb-media7> <rule-id> </rule-id> <external-order-number></external-order-number> <input-office> </input-office> <input-date> </input-date> <input-user> </input-user> <stack-name></stack-name> <save-in-system> </save-in-system> <post-at-once> </post-at-once> <skip-doi-process>false</skip-doi-process> <adjust-upper-and-lower-case> </adjust-upper-and-lower-case> <order-rating></order-rating> <stack-lock-code> </stack-lock-code> <agent-number> </agent-number> <agent-organisation> </agent-organisation> <cost-center> </cost-center> <matriculated>N</matriculated> <matriculated-to> </matriculated-to> <advance-billing>false</advance-billing> <previously-billed-to> </previously-billed-to> <issue-previously-billed-to> </issue-previously-billed-to> <delivery-start-statistical> </delivery-start-statistical> <issue-delivery-start-statistical> </issue-delivery-start-statistical> <dispatch-type> </dispatch-type> <dispatch-text> </dispatch-text> <ivw-group> </ivw-group> <statistic-group> </statistic-group> <dsb-trx-id-for-ctp> </dsb-trx-id-for-ctp> <dsb-trx-id-for-epayment> </dsb-trx-id-for-epayment> <dsb-trx-id-for-solvency-check> </dsb-trx-id-for-solvency-check> <!—- one for each business partner --> <subscription-to-business-partner-relation> ... </subscription-to-business-partner-relation> <renewal> <renewal-order-number></renewal-order-number> <automatic-renewal></automatic-renewal> </renewal> <!—- one up to 3 --> <business-partner id=””> ... </business-partner> <!—- 0 to n possible --> <premium> ... </premium> <premium-payment> <premium-payment-method></premium-payment-method> <!-- either --> <debit-account> . . . </debit-account> <!-- or --> <cc-account> . . . </cc-account> </premium-payment> <!—- 0 to n possible --> <order-attribute> ... </order-attribute> <core-wbz-conditions> <wbz-wkz> </wbz-wkz> <wbz-wkz-fix> </wbz-wkz-fix> <wbz-condition> </wbz-condition> </core-wbz-conditions> <complaint> <type>delivery</type> <complaint-reason>G01</complaint-reason> <number-of-issues>5</number-of-issues> <text>Test</text> </complaint> <complaints> <!-- 1 ... n--> <complaint> <type>test</type> <complaint-reason>G01</complaint-reason> <number-of-issues>5</number-of-issues> <amount>4.20</amount> <text>Test</text> </complaint> </complaints> </subscription> Elementdefinition Wichtiger Hinweis: Längenangaben in Klammern beziehen sich auf VHS/3 Standalone. Hier sind teilweise längere Werte möglich. Feldname LängeTypText m = Muss k = Kann (m) = bedingtes MussBemerkung, Feldversorgung oder Umschlüsselung promotion-source 10 C Bestellquelle (in AVS/3) m promotion-source-variant 1 C Bestellquellen Variante (m) reference-doc 20 C Referenzbeleg - Enthält die Auftragsnummer des Alt-Systems. Ist ansonsten identisch mit dem Feld order-number. ACHTUNG! Dieses Feld gibt es in der WSI Schnittstelle NICHT!! Es existiert hierzu aber eine alternative Lösung: Die alte Abo-Nummer als Auftragsmerkmal einstellen. DSB kann diese dann per Programm in das Feld „Referenz-Nummer“ stellen. Beispiel: <order-attribute> <type>ABOALT</type> <value>4241407</value> </order-attribute> sales-promotion 8 C Werbeaktion (m) Falls mehrere Werbeaktionen für eine BQ angelegt wurden, so muss hier übergeben werden, welche benutzt werden soll advertising-level 2 N Werbestufe k Werbestufe des akzeptierten Angebots(0-99 ) offer-code 5 C (Erneuerungs-)Angebot (m) publication 8 C Druckerzeugnis (m) wenn blank, dann automatische Ermittlung aus dem BQ edition 8 NCPlanvertriebsausgabe (m) wenn blank, dann automatische Ermittlung aus Druckerzeugnis. mix-type 2 C Bezugstyp (m) Wert ist abhängig vom Mandant und können z. B. sein: 01 = Vollabo, 10 = mit CD, 11 = mit DVD Dies aber bitte mit der Kundenbetreuung abklären. Wenn blank, dann automatische Ermittlung aus dem BQ. purchase-frequency 2 C Bezugsperiodizität (m) Muss nur angegeben werden wenn sie nicht eindeutig ist für den Mandanten. Mögliche Werte sind: VA = Vollabo Restliche Werte sind mandantenspezifisch delivery-type 2 C Lieferart k Die Werte sind mandantenspezifisch. Bitte wenden Sie sich an Ihren Kundenberater. quantity 6 N Menge der Kundenauftrag-Verlag-Position-Einteilung (m) Falls nicht angegeben, so wird die Menge 1 angenommen sales-organization 4 C Verkaufsorganisation (m) Muss nicht gefüllt werden, falls es über den BQ ermittelt werden kann oder in der PVA (Feld 'edition') eindeutig ist. sales-suborganisation 5 C Unter-Organisation der vkorg k sales-bureau 4 C annehmendes Verkaufsbüro (m) Ermittlung anhand des Feldes „inputuser“. Ansonsten: 0001 Restliche Werte sind mandantenspezifisch distribution-channel 2 C Vertriebsweg (m) Muss nur angegeben werden, falls der Wert sich nicht eindeutig aus der PVA (Feld 'edition') ableiten lässt. division 2 C Sparte Auftragskopf (m) Muss nur angegeben werden, falls der Wert sich nicht eindeutig aus dem Druckerzeugnis (Feld 'publication') ableiten lässt. customer-purchase-order-number 20 C Bestellnummer des Kunden k customer-purchase-order-type 4 C Bestellart des Kunden k z.B. 'I' → Internet; 'T' → telefonisch customer-purchase-order-date 10 D Bestelldatum des Kunden k Format YYYY-MM-DD valid-from 10 D EVT-Termin, ab welchem das nächste Heft geliefert werden soll. k Falls das Datum kein Erstverkaufstag (EVT) ist, so wird auf den nächsten EVT-Termin hochgerechnet. Dieses Feld und „issue-number-from“ schließen sich gegenseitig aus. valid-to 10 D EVT-Termin bis zu welchem die Lieferung der Hefte erfolgen soll k Falls das Datum kein Erstverkaufstag (EVT) ist, so wird zum letzten EVTTermin heruntergerechnet. Dieses Feld und „issue-number-to“ schließen sich gegenseitig aus. issue-number-from 9 C Heftnummer der ersten zu liefernden Vertriebsausgabe. Standard Format: HHHH/YYYY oder mandantespezifisches Format/Freitext. k Default: nächstes Heft im Versand. Dieses Feld und „valid-from“ schließen sich gegenseitig aus. issue-number-to 9 C Heftnummer der letzten zu liefernden Vertriebsausgabe. Standard Format: HHHH/YYYY oder mandantespezifisches Format/ Freitext.k Default: unbefristet bzw. die im BQ eingetragene Dauer. Dieses Feld und „valid-to“ schließen sich gegenseitig aus. archive-reference 20 C Ablagenummer, Referenzbeleg k payment-method 1 C Zahlweg m E → Zahlung per Bankeinzug(national) D → Zahlung per Bankeinzug(SEPA DirectDebit) K→ Zahlung per Kreditkarte R → Zahlung per Rechnung. P → Zahlung per Paypal Für ausländische Kunden sind evtl. noch weitere Zahlwege vorgesehen payment-method-details - payment-method-cheque - cheque-bank-clearing-account 10 C Bankverrechnungskonto (m) Pflichtfeld, wenn unterhalb des Elements 'payment-method-details' Struktur 'payment-method-cheque' angegeben ist - cheque-number 13 C Schecknummer (m) Pflichtfeld, wenn unterhalb des Elements 'payment-method-details' Struktur 'payment-method-cheque' angegeben ist - cheque-amount 9,2 N Betrag in Transaktionswährung mit Vorzeichen (m) Pflichtfeld, wenn unterhalb des Elements 'payment-method-details' Struktur 'payment-method-cheque' angegeben ist - cheque-currency-code 3 C Währungskennzeichen (m) Pflichtfeld, wenn unterhalb des Elements 'payment-method-details' Struktur 'payment-method-cheque' angegeben ist Währung als ISO-Währungscode EUR Euro CHF Schweizer Franken GBP Britische Pfund usw. - cheque-bank-code 15 C Bankleitzahl k Kann, wenn unterhalb des Elements 'payment-method-details' Struktur 'payment-method-cheque' angegeben ist - cheque-bank-control-key 2 C Bankenkontrolschlüssel k Kann, wenn unterhalb des Elements 'payment-method-details' Struktur 'payment-method-cheque' angegeben ist - cheque-bank-country-code 3 C Länderschlüssel der Bank k Kann, wenn unterhalb des Elements 'payment-method-details' Struktur 'payment-method-cheque' angegeben ist - cheque-bank-account-number 18 C Bankkontonummer k Kann, wenn unterhalb des Elements 'payment-method-details' Struktur 'payment-method-cheque' angegeben ist - cheque-holder 60 C Name des Auftraggebers, Scheckaussteller, Karteninhabers k Kann, wenn unterhalb des Elements 'payment-method-details' Struktur 'payment-method-cheque' angegeben ist - payment-method-other - other-bank-clearing-account 10 C Bankverrechnungskonto (m) Pflichtfeld, wenn unterhalb des Elements 'payment-method-details' Struktur 'payment-method-other' angegeben ist - other-amount 9,2 N Betrag in Transaktionswährung mit Vorzeichen (m) Pflichtfeld, wenn unterhalb des Elements 'payment-method-details' Struktur 'payment-method-other' angegeben ist - other-currency-code 3 C Währungskennzeichen (m) Pflichtfeld, wenn unterhalb des Elements 'payment-method-details' Struktur 'payment-method-other' angegeben ist Währung als ISO-Währungscode EUR Euro CHF Schweizer Franken GBP Britische Pfund usw. - other-payee-note 80 C Text zur verwendung der Zahlung k Kann, wenn unterhalb des Elements 'payment-method-details' Struktur 'payment-method-other' angegeben ist total-paid-currency-code 3 C Währungskennzeichen k wird momentan für Renewal genutzt total-paid-amount 9,2 N Der gezahlte Gesamtbetrag k wird momentan für Renewal genutzt wallet-part-payment-amount9,2NDer mit Gutschein bezahlte Teilbetragkwird momentan für Renewal genutzt extra-pay-discount - currency-code 3 C Währungskennzeichen des Zu-/ Abschlags (m) wird momentan für Renewal genutzt - discount 9,2 N Rabatt (m) - extra-pay 9,2 N Zuschlag (m) wird zur Zeit über die Schnittstelle nicht genutzt extra-pay-voucher BETA - bank-clearing-account 10 C BETA Bankverrechnungskonto (m) Pflichtfeld, wenn Struktur 'extra-pay-voucher' angegeben ist - amount 9,2 N BETA Betrag in Transaktionswährung mit Vorzeichen (m) Pflichtfeld, wenn Struktur 'extra-pay-voucher' angegeben ist - currency-code 3 C BETA Währungskennzeichen (m) Pflichtfeld, wenn Struktur 'extra-pay-voucher' angegeben ist Währung als ISO-Währungscode EUR Euro CHF Schweizer Franken GBP Britische Pfund usw. - payee-note 80 C BETA Text zur verwendung der Zahlung k Kann print-invoice 1 C Kennzeichen Rechnung drucken k Y = Rechnung drucken N = keine Rechnung drucken purchase-reason 3 C Bezugsgrund k delivery-end-reason 3 C Lieferende Grund k Mandantenabhängig. Aufstellung nach Rücksprache mit ihrer AVS/3-Kundenbetreuung. billing-from 10 D Berechnungsbeginn k Datum, ab welchem berechnet werden soll issue-billing-from 9 C Berechnungsbeginn k Heftnummer, ab welcher berechnet werden soll currency-code 3 C Währung k Währung als ISO-Währungscode EUR Euro CHF Schweizer Franken GBP Britische Pfund usw. price-list-type 2 C Preislistentyp (m) wenn blank, Ermittlungslogik aus: /DSB/JOT_PL_FIND fixed-price-list-and-currency-code1C Y/N debit-account Bitte Struktur komplett weglassen, wenn nicht die entsprechende payment-method(D) angegeben ist - debit-account-id 4 C debit account id k - debit-bank-code 15 C Bankschlüssel (m) Muss, wenn entsprechender Zahlweg. - debit-country-code 3 C ISO-Ländercode der Bank k ISO-Ländercode der Bankverbindung bei entsprechendem Zahlweg. - debit-account-number 18 C Bankkontonummer (m) Muss, wenn entsprechender Zahlweg. - debit-account-holder 60 C Name des Kontoinhabers (m) Muss, wenn entsprechender Zahlweg. - debit-continuous 1 C Liegt eine Einzugsermächtigung vor? (m) Y = ja N = nein - debit-due-date 2 C Fälligkeitsdatum für Bankeinzug (m) Tag des Monats (1-31) - iban 34 C Internationale Bank Account Nummer (m) Siehe auch Element „sepa-mandate“ - bic 11 C Bank Identifier Code (m) cc-account - cc-account-id 6 C Interne ID als Referenz auf vorhandene Kreditkarte im System k - cc-company-code 4 C Zahlungskarten-Art (m) Muss, wenn entsprechender Zahlweg (Kreditkarte) Codierung siehe Anhang - cc-number 25 C Zahlungskarten-Nummer (m) Muss, wenn entsprechender Zahlweg (Kreditkarte) - cc-expiry 6 D Zahlungskarten-Gültig bis (m) Muss, wenn entsprechender Zahlweg (Kreditkarte). Format YYYYMM sepa-mandate Bitte Struktur komplett weglassen, wenn nicht die entsprechende payment-method(D) und iban angegeben ist:!: - creation-type 1 C (m) „ “ = kein Mandat angelegt „N“ = Neues Mandat anlegen „T“ l= Mandatsumstellung (momentan nicht zu verwenden) „M“ = Mandatsmigration(momentan nicht zu verwenden) Muss angegeben werden, wenn eine IBAN vorhanden ist! - transaction-type 1 C k „1“ = 1x Mandat „N“ = Mehrfach Mandat (default) - details - b2b-mandate 1 C B2B-Mandat „Y” oder „N” (Wird bisher nicht unterstützt) - mandate-ref-per-creditor 35 C Eindeutige Referenz auf das Mandat pro Kreditor / Bisherige Mandats-ID (Nur für Umstellungen relevant creation-type „T“ und „M“) - previous-creditor-id 35 C Kreditorkennung (landesübergreifend eindeutig) / Bisherige Gläubiger-ID (Nur für Umstellungen relevant creation-type „T“ und „M“) - previous-bic 11 C Bisheriger BIC-Code (Nur für Umstellungen relevant „T“ und „M“) - last-due-date 10 C Wenn Vorlagemandat verwendet wurde mit Datum der letzten Verwendung (Fälligkeit) füllen Initialwert für Übernahmen (Typ „M“) notwendig, falls noch nicht eingezogen wurde „YYYY-MM-DD“ price-key-in-trialterm 4 C Preisschlüssel der Probeposition k gem. Aufstellung. Die Attribute sind mandantenabhängig. Eine Aufstellung erhalten Sie von Ihrer AVS/3- Kundenbetreuung. billing-frequency-in-trialterm 2 C Fakturaperiodizität in der Probeposition k 01 1 Lieferung 02 2 Lieferungen 03 3 Lieferungen usw. A0 100 Lieferungen A1 101 Lieferungen A2 102 Lieferungen A3 103 Lieferungen usw. B0 110 Lieferungen J1 1 Jahr J2 2 Jahre J3 3 Jahre M1 1 Monat M2 2 Monate M3 3 Monate M4 4 Monate price-group-in-trialterm 2 C Preisgruppe Kunde in der Probeposition k Preisgruppe der Probeposition duration-in-trialterm 3 C Positionsdauer der Probeposition k Dauer der Position unit-in-trialterm 3 C Einheit der Dauer der Probeposition k z.B.: MON Monate WCH Wochen TAG Tage price-key-in-normalterm1 4 C Preisschlüssel der Normalposition 1 k gem. Aufstellung. Die Attribute sind mandantenabhängig. Eine Aufstellung erhalten Sie von Ihrer AVS/3- Kundenbetreuung. billing-frequency-in-normalterm1 2 C Fakturaperiodizität der Normalposition 1 k 01 1 Lieferung 02 2 Lieferungen 03 3 Lieferungen usw. A0 100 Lieferungen A1 101 Lieferungen A2 102 Lieferungen A3 103 Lieferungen usw. B0 110 Lieferungen J1 1 Jahr J2 2 Jahre J3 3 Jahre M1 1 Monat M2 2 Monate M3 3 Monate M4 4 Monate price-group-in-normalterm1 2 C Preisgruppe Kunde für die Normalposition 1 k duration-in-normalterm1 3 C Positionsdauer der Normalposition 1 k Dauer der Position unit-in-normalterm1 3 C Einheit der Dauer der Normalposition 1 k z.B.: MON Monate WCH Wochen TAG Tage price-key 4 C Preisschlüssel der Normalposition k gem. Aufstellung. Die Attribute sind mandantenabhängig. Eine Aufstellung erhalten Sie von Ihrer AVS/3-Kundenbetreuung. billing-frequency 2 C Fakturaperiodizität der Normalposition k 01 1 Lieferung 02 2 Lieferungen 03 3 Lieferungen usw. A0 100 Lieferungen A1 101 Lieferungen A2 102 Lieferungen A3 103 Lieferungen usw. B0 110 Lieferungen J1 1 Jahr J2 2 Jahre J3 3 Jahre M1 1 Monat M2 2 Monate M3 3 Monate M4 4 Monate M5 5 Monate M6 6 Monate price-group 2 C Preisgruppe Kunde für die Normalposition k duration 3 C Positionsdauer der Normalposition k Dauer der Position unit 3 C Einheit der Dauer der Normalposition k z.B.: MON Monate WCH Wochen TAG Tage postage-key 2 C Portoschlüssel (für Versandkostenermittlung) k Wenn hier ein Portoschlüssel angegeben wird, dann wird dieser gefixed ans AVS übertragen. D.h. ein evtl. vorhandenes customizing /Optimierung des Portos im Backend wird deaktiviert. Sollte das mandantenspezifische customizing greifen, so muss der postage-key einfach leer übertragen werden. dsb-media1 1 C k Feld zur freien Verfügung. Wird zum Auftrag gespeichert. dsb-media2 2 C k Feld zur freien Verfügung. Wird zum Auftrag gespeichert. dsb-media3 3 C k Feld zur freien Verfügung. Wird zum Auftrag gespeichert. dsb-media4 4 C k Feld zur freien Verfügung. Wird zum Auftrag gespeichert. dsb-media2b 2 C k Feld zur freien Verfügung. Wird zum Auftrag gespeichert. dsb-media7 7 C k Feld zur freien Verfügung. Wird zum Auftrag gespeichert. rule-id 3 C k Eindeutige Identifikationsnummer einer Abgleichsregel für die Auftragsbewertung Feld ist leer = es wird eine eventuell vorhandene Regel-ID aus der BQ gezogen Feldwert ist 999 = keine Regel anwenden (eine eventuell vorhandene Regel-ID aus der BQ wird nicht verwendet) external-order-number 35 C Externe Auftragsnummer (m) Dieses Feld ist beim Weberservice 'createOrderBuffered' ein Pflichtfeld. Dies verhindert das doppelte Einspielen von Abos. In diesem Feld wird eine mandantenweit eindeutige externe Auftragsnummer erwartet. Diese dient gleichzeitig als Primärschlüssel in der Datenbank. Dieses Feld wird NICHT im AVS/3 gespeichert und kann nicht als Referenz verwendet werden. Bitte verwenden Sie für diesen Zweck ein Auftragsmerkmal. input-office 12 C Erfassungsbüro m input-date 10 D Erfassungsdatum m Format YYYY-MM-DD input-user 12 C Erfassungsuser m stack-name 17 C Stapelname k save-in-system 1 C m 'Y' Die übergebenen Daten werden gespeichert. (Default) 'N' Es erfolgt nur eine Prüfung der Daten ohne Speichern. post-at-once 1 C m 'Y' Die übergebenen Daten werden sofort verbucht. 'N' Die übergebenen Daten werden erst durch einen Sachbearbeiter verbucht. skip-doi-process B Soll der double opt in Prozess übersprungen werden? Normalerweise wird dieses Flag gesetzt, wenn der Shop bereits den DOI Prozess anstößt. Default ist false. Dies ist nur bei Mandanten relevant, die diesen Prozess nutzen. adjust-upper-and-lower-case 1 C k 'Y' Adressdaten werden von nur Großbuchstaben oder nur Kleinbuchstaben in Groß- und Kleinbuchstaben geändert. (Default) bzw. Namensanalyse ist eingeschalten 'N' Schreibweise der Adresse bleibt erhalten bzw. Namensalnalyse wird ausgeschalten \\ order-rating 1 C k 'Y' = Auftragsbewertung ist an/aktiv (Default) 'N' = die Auftragsbewertung ist inaktiv / ausgeschaltet stack-lock-code 1 C Stapelsperre k W=Webservice D=Datei agent-number 10 C Vertreternummer extern k Dies kann in Verbindung des Vertreters zur Provisionsabrechnung genutzt werden agent-organisation 5 C externe Vertreterorganisation k cost-center 10 C Kostenstelle k zu belastende Kostenstelle matriculated 1 C Kennzeichen Immatrikulationsbescheinigung vorhanden k 'Y' → Immatrikulationsbescheinigung vorhanden 'N' → keine Immatrikulationsbescheinigung vorhanden Wenn hier ein Y angegeben ist, muss auch das Datum gefüllt werden. matriculated-to 10 D Immatrikulationsbescheinigung bis (m) Muss, wenn „matriculated“ auf Y gesetzt ist. advance-billing B Vorausfaktur Flag (Default: false) previously-billed-to 10 D Fakturiert bis k Datum „fakturiert bis“ im Vorsystem issue-previously-billed-to 9 C Fakturiert bis k Heftnummer „fakturiert bis“ im Vorsystem delivery-start-statistical 10 D Statistischer Lieferbeginn k Datum für den statistischen Lieferbeginn issue-delivery-start-statistical 9 C Statistischer Lieferbeginn k Heftnummer für den statistischen Lieferbeginn dispatch-type 2 C Versandart k LP = Luftpost dispatch-text 5 C Versandtext k Weiteres Trennkriterium im Versand ivw-group 2 C Spezielle Gruppierung für IVWAuswertung k statistic-group 2 C Kürzel der Statistikgruppe k ct-commitment-period 2 N Bindungsfrist k Vertragsbedingung:Dauer der Bindungsfrist (reguläreKündig. nach x Monaten möglich) ct-cancelation-period 2 N Kündigungsfrist k Vertragsbedingungen: Kündigungsfrist ct-renewal 2 N Verlängerung k Vertragsbedingung: (autom.) Verlängerung der Bindungsfrist dsb-trx-id-for-ctp 36 C Kreditkarten-Autorisierungs-GUID k Kreditkarten-Autorisierungs-GUID im dsb-Webservice-Umfeld. Hier muss die bei einem vorhergehenden CardTransactionProcessing Notify Request(Bsp. notifyCardTransactionWithWirecard) zurückkommende „cc-dsbtransaction-id“ eingestellt werden. dsb-trx-id-for-epayment 36 C E-Payment-GUID k E-Payment-GUID im dsb-WSI. Hier muss die bei einem vorhergehenden EPayment Notify Request (Bsp. notifyTrxWirecard) zurückkommende „dsb-transaction-id“ eingestellt werden. dsb-trx-id-for-solvency-check 36 C Bonitätsprüfungs-GUID k Bonitätsprüfungs-GUID im dsb-WSI (z.Zt. ohne Funktion im AVS/3) subscription-to-business-partner-relation Siehe Beschreibung unten. Bitte nur verwenden, wenn das einfache Rollenkonzept des „businesspartner“ nicht ausreicht. renewal - renewal-order-number 10 C Auftragsnummer des zu erneuernden Auftrags - automatic-renewal 1 C Kunde wünscht automatische Erneuerung 'Y' / 'N' business-partner Siehe Beschreibung unten premium Siehe Beschreibung unten premium-payment Siehe Beschreibung unten order-attribute Siehe Beschreibung unten core-wbz-conditions - wbz-wkz 1 C Werbekostenzuschußschlüssel k - wbz-wkz-fix 1 C WKZ-Schlüssel Fixierung k Bei 'Y' ist der WKZ-Schlüssel fixiert( x), 'N' nicht fixiert - wbz-condition 3 C WBZ-Kondition k Aboart im Datenaustausch complaint Gutscheinabwicklung über SHOP/REKLA - type C delivery / debit(Belastung) / credit(Gutschrift), mandatory - complaint-reason C 4 Reklamationsgrund k mandatory) - number-of-issues N 3 Anzahl Heftfolgen k (mandatory wenn type=delivery) - amount N 8,2 Betrag k (mandatory wenn type = debit/credit) - text C 35 Freitext für Gutschrift/Belastung k (optional) complaints Gutscheinabwicklung über SHOP/REKLA Array von complaint 1 … n Strukturen [^1]SEPA Direkt Debit benötigt ein SEPA-Mandat und eine Bankverbindung mit IBAN Aufbau <business-partner> <business-partner id="" role-type=""> <salutation-code></salutation-code> <prefix> </prefix> <titel-code-academic></titel-code-academic> <titel-academic></titel-academic> <titel-code-royal></titel-code-royal> <titel-royal></titel-royal> <job-titel></job-titel> <last-name1></last-name1> <last-name2></last-name2> <first-name></first-name> <nick-name></nick-name> <street></street> <street-suffix></street-suffix> <street-number></street-number> <street-number-suffix></street-number-suffix> <address-line-1></address-line-1> <address-line-2></address-line-2> <address-line-3></address-line-3> <zipcode></zipcode> <country-code></country-code> <city></city> <district></district> <region-code></region-code> <region-text></region-text> <company1></company1> <company2></company2> <company3></company3> <company4></company4> <department></department> <po-box></po-box> <po-box-zipcode></po-box-zipcode> <po-box-city></po-box-city> <po-box-country-code></po-box-country-code> <major-customer-zipcode></major-customer-zipcode> <address-source></address-source> <language>DE</language> <advertisement></advertisement> <bp-number></bp-number> <bp-number-external></bp-number-external> <bp-group></bp-group> <eu-sales-tax-number></eu-sales-tax-number> <date-of-birth></date-of-birth> <postal-check></postal-check> <purge-check></purge-check> <dublicate-check></dublicate-check> <bic-master-number></bic-master-number> <sector></sector> <email-bp></email-bp> <net-invoice></net-invoice> <!—- 0 to n possible --> <communication> <communication-type></communication-type> <communication-value></communication-value> </communication> <!—- 0 to n possible --> <attribute> <attribute-type></attribute-type> <attribute-value></attribute-value> </attribute> </business-partner> Elementdefinition FeldnameLängeTypTextm = Muss / k = Kann / (m) = bedingtes MussBemerkung, Feldversorgung oder Umschlüsselung business-partner →Attribut: id n.aCEntspricht der bp-reference in der Struktur purchase-order-to-business-partner-relationship (m)Bitte nur in Ausnahmefällen verwenden. Wenn kein Bedarf für die Beschreibung der Beziehung besteht das Attribute „role-type“ verwenden. business-partner →Attribut: role-type 2CRolle des Geschäftspartners(m)AG = Auftraggeber WE = Warenempfänger VM = Vermittler salutation-code 2CAnredem01 = Herr 02 = Frau 99 = unbekannt weitere Codes sind in einer Codetabelle hinterlegt, bei Bedarf bitte anfragen. Falls eine Firmenadresse übergeben wird, so handelt es sich hierbei um die Anrede des Ansprechpartners (falls vorhanden). prefix 4CVorsatzwort zum Namen (Schlüssel)kDie entsprechenden Schlüssel sind von der Kundenbetreuung zu erfragen. titel-code-academic 4CCodewert für den akademischen Titelk z.B. 0027 = Dr. Die Codes sind in einer Codetabelle hinterlegt. Diese können Sie von Ihrem Kundenbetreuer erhalten. titel-academic 15CAkademischer Titel im Klartext (z. B. Dr.) titel-code-royal 4CCodewert für den Adelstitelk Die Codes sind in einer Codetabelle hinterlegt. Diese können Sie von Ihrem Kundenbetreuer erhalten. title-royal 15CAdels-Titel im Klartextk job-titel 35CBerufs-Bezeichnung für Druck kNur für UK relevant last-name1 35CNachname1(m)Falls eine Firmenadresse übergeben wird, ist dies der Ansprechpartner last-name2 35CNachname2kFalls eine Firmenadresse übergeben wird, ist dies der Ansprechpartner first-name 35CVorname(n)(m)Falls eine Firmenadresse übergeben wird, ist dies der Ansprechpartner nick-name 35CRufname(n)kFalls eine Firmenadresse übergeben wird, ist dies der Ansprechpartner street 50CStrasse(m)Pflicht, falls eine Straßenadresse übergeben werden soll. Feld darf nicht gesetzt sein, wenn eines der Felder address-line-1, address-line-2 oder address-line-3 gefüllt ist. street-suffix 40CStrassen Zusatzk Feld darf nicht gesetzt sein, wenn eines der Felder address-line-1, address-line-2 oder address-line-3 gefüllt ist. street-number 10CHaus-Nummer(m)Pflicht, falls eine Straßenadresse übergeben werden soll. Feld darf nicht gesetzt sein, wenn eines der Felder address-line-1, address-line-2 oder address-line-3 gefüllt ist. street-number-suffix 8CHaus-Nummer - Zusatzk Feld darf nicht gesetzt sein, wenn eines der Felder address-line-1, address-line-2 oder address-line-3 gefüllt ist. address-line-1 35CAdresse Zeile 1 für UK Adressenk address-line-2 35CAdresse Zeile 2 für UK Adressenk address-line-3 35CAdresse Zeile 3 für UK Adressenk zipcode 10CPostleitzahl(m)Pflicht, falls eine Straßenadresse übergeben werden soll. country-code 3CLand (KFZ Nationalitätskennzeichen)mCodierung siehe Tabelle im Anhang country-code →codetype 3CArt des Ländercodes im Feld 'country-code’kiso - Ländercode als ISO Länderkennung (default) iso3 –Ländercode als ISO3 Länderkennung car – Ländercode als KFZ Länderkennung city 40COrt(m)Pflicht, falls eine Straßenadresse übergeben werden soll. district 25CZusatz zum Ort (z. B. Ortsteil, Bezirk, Gebiet, …)k region-code 3Cregion-code Codetabelle, Inhalt legt Fachbereich festk region-text 25CRegion als Klartext (z.B. Bundesland, County…)k company1 35CFirma Zeile 1(m) company2 35CFirma Zeile 2k company3 40CFirma Zeile 3k company4 40CFirma Zeile 4k department 30CAbteilungkAchtung: diese Funktionalität steht im Moment in der Schnittstelle nicht zur Verfügung! po-box 10CPostfach(m)Pflicht, falls eine Postfachadresse übergeben werden soll po-box-zipcode 10CPostfach-PLZ(m)Pflicht, falls eine Postfachadresse übergeben werden soll po-box-city 40COrt zum Postfach(m)Pflicht, falls eine Postfachadresse übergeben werden soll po-box-country-code 3CLand zum Postfach(m)Pflicht, falls eine Postfachadresse übergeben werden soll po-box-country-code →code-type 3CArt des Ländercodes im Feld 'po-box-country-code’kiso - Ländercode als ISO Länderkennung (default) iso3 –Ländercode als ISO3 Länderkennung car – Ländercode als KFZ Länderkennung major-customer-zipcode 10CGroßkunden-PLZ(m) address-source 10CAdressquelle Codetabelle, Inhalt legt Fachbereich festk language 2CSprache des Geschäftspartners kISO-Code advertisement 1CKennzeichen, ob Werbung zugesendet werden soll.k'N' → Keine Werbung zusenden 'Y' → Werbung zusenden category2CAdreßart Achtung: diese Funktionalität steht im Moment in der Schnittstelle nicht zur Verfügung! bp-number 10COptional, bei Bestandskunde Kundennummerk bp-number-external 20CGeschäftspartner-Nr. eines externen Systemsk bp-group 4CKundengruppe Codetabelle, Inhalt legt Fachbereich festkAchtung: diese Funktionalität steht im Moment in der Schnittstelle nicht zur Verfügung! eu-sales-tax-number 14CEG-UST Identnummerk date-of-birth 10DGeburtstag Format: JJJJ-MM-TTk postal-check 1CPrüfung Kundenanschrift:: postalischkY = Prüfung, N = keine Prüfung keine Angabe (Defaulteinstellung wird benutzt) Achtung: diese Funktionalität steht im Moment in der Schnittstelle nicht zur Verfügung! purge-check 1CPrüfung Kundenanschrift:: PurgemY = Prüfung, N = keine Prüfung Achtung: diese Funktionalität steht im Moment in der Schnittstelle nicht zur Verfügung! dublicate-check 1CPrüfung Kundenanschrift:: DublettemY = Prüfung, N = keine Prüfung bic-master-number 10CPartner-ID des Masters (z.B. Firma des Ansprechpartners)k sector 10CBranchek email-bp1 C Email Geschäftspartnerk Y = Ja, N = Nein(Default) keine Angabe (Defaulteinstellung wird benutzt) net-invoice1 C Nettofakturk communication 0 … n - communicationtype 2CKommunikationsart(m)Wertebereich Achtung : es ist jeweils nur 1 Telefonnummer, 1 Emailadresse ,1 Faxnummer und 1 mobile Telefonnummer zulässig ! - communcationvalue 50CWert der Kommunikationsart(m)Achtung : es ist jeweils nur 1 Telefonnummer, 1 Emailadresse 1 Faxnummer und 1 mobile Telefonnummer zulässig ! attribute 0 … n - attribute-type 6CFunktion des Geschäftspartner Merkmals z. B. Adressart(m) - attribute-value 50CWert des Geschäftspartner Merkmals(m) Grundsätzlich sind Prämienelemente nicht zwingend in der Darstellung. Wenn allerdings Prämien angelegt werden sollen, muss ein vollständig versorgtes Prämienelement vorhanden sein. Beim Element premium-payment, ist zu beachten, das entweder eine debit-account oder cc-account angegeben werden darf. Aufbau <premium> <premium> <role> </role> <material-number> </material-number> <referral></referral> </premium> Elementdefinition Feldname LängeTypText m = Muss k = Kann (m) = bedingtes MussBemerkung, Feldversorgung oder Umschlüsselung role 2 C Partner, der die Prämie erhalten soll m AG, RE, WE, VM material-number18 C Materialnummer Sachprämie k wenn blank, aus BQ. referral1 C Prämie aufgrund einer Weiterempfehlung erhalten k Y / N (default). Aufbau <premium-payment> <premium-payment> <premium-payment-method></premium-payment-method> <!-- either --> <debit-account> <debit-account-id></debit-account-id> <debit-bank-code></debit-bank-code> <debit-country-code></debit-country-code> <debit-account-number></debit-account-number> <debit-account-holder></debit-account-holder> <debit-continuous></debit-continuous> <iban></iban> <bic></bic> </debit-account> <!-- or --> <cc-account> <cc-account-id></cc-account-id> <cc-company-code></cc-company-code> <cc-number></cc-number> <cc-expiry></cc-expiry> </cc-account> </premium-payment> Elementdefinition Beschreibung 'debit-account' und 'cc-account' siehe oben unter 'business-partner' Struktur. Grundsätzlich sind Merkmale zum Auftrag nicht zwingend notwendig. Sie können jedoch dazu benutzt werden, weitere auftragsspezifische Informationen weiterzugeben. Aufbau <order-attribute> <order-attribute> <type> </type> <value> </value> </order-attribute> Elementdefinition FeldnameLängeTypTextm = Muss k = Kann (m) = bedingtes MussBemerkung, Feldversorgung oder Umschlüsselung type 6 C m Kennzeichnet die Art des Merkmals und muss eindeutig sein. value 50 C m Eigentlicher Merkmalswert Größe der Dateien Die Dateien sind prinzipiell keiner Größenbeschränkung unterworfen. Da die Verarbeitung von großen XML-Dateien recht speicherintensiv ist, sollten die übermittelten Dateien nicht mehr als 1.500 Aufträge enthalten. Falls mehr Aufträge übermittelt werden sollten, so sollten diese auf mehrere XML-Dateien aufgeteilt werden. Durch den Zähler am Ende des Dateinamens bleiben die Dateinamen eindeutig. Die entsprechenden Dateien werden dann sequentiell verarbeitet. Verschlüsselung von Kundendaten Prinzipiell existieren zwei verschiedene Möglichkeiten Kundendaten zu verschlüsseln: Symmetrische Verschlüsselung: hier werden die Daten mittels eines Passwortes verschlüsselt. Der Vorteil bei diesem Verfahren liegt darin, dass es recht einfach zu implementieren bzw. anzuwenden ist. Die Stärke der Verschlüsselung hängt im wesentlichen von der Qualität des Passworts ab. Public-Key Verschlüsselung: hier werden die Daten mit dem öffentlichen Schlüssel von dsb verschlüsselt. dsb bietet beide dieser Möglichkeiten der Verschlüsselung von Kundendaten an. Die Beispiele wurden mit GnuPG bzw. der Windows Variante Gpg4win getestet: https://www.gnupg.org/ (am Besten die Kommandozeilen-Version verwenden). Symmetrische Verschlüsselung Verwendung von gpg: Um eine Kundendatei mit dem Namen a3fnk5251510200201.xml zu verschlüsseln wird einfach folgende Kommandozeile eingegeben: gpg --symmetric a3fnk5251510200201.xml oder gpg --c a3fnk5251510200201.xml Hierbei steht „-c“ für symmetrische Verschlüsselung. Danach muss das Passwort zur Verschlüsselung eingegeben werden und das Programm erzeugt automatisch die verschlüsselte Datei a3fnk5251510200201.xml.gpg. Diese Datei kann dann (mit der OK-Datei a3fnk5251510200201.xml.gpg.ok) auf den Server bei dsb gestellt werden, von wo sie weiterverarbeitet werden kann. Das Passwort zur Verschlüsselung wird Ihnen von der Kundenbetreuung vor Produktivstart mitgeteilt und ist dann bei jeder Verschlüsselung der Daten zu verwenden. Asymmetrische Verschlüsselung Verwendung von gpg: Um den von dsb eingesetzten Schlüssel einzubinden ist folgender Befehl einzugeben: gpg --import Schlüsseldatei Der öffentliche Schlüssel ist hier hinterlegt. Mittels gpg -k kann überprüft werden, ob der Schlüssel ordnungsgemäß eingebunden ist. (Es wird eine Liste der public keys im Key Ring ausgegeben). Danach ist GnuPG bereit, Kundendateien zu verschlüsseln. Um die Datei mit dem Namen a3fnk5251510200201.xml per Public Key Verfahren zu verschlüsseln, ist folgendes auf der Kommandozeile einzugeben: gpg --default-recipient <ID dsb public key> --encrypt a3fnk5251510200201.xml Das Programm erzeugt dann automatisch die verschlüsselte Datei a3fnk5251510200201.xml.gpg. Diese Datei kann dann (mit der OK-Datei a3fnk5251510200201.xml.gpg.ok) auf den Server von dsb gestellt werden, von wo sie weiterverarbeitet werden kann. Hinweis: Die verschlüsselte Datei darf keine Signatur enthalten bzw. darf nicht signiert sein. XML-Definition: Header Aufbau <header> <creation-date></creation-date> <creation-time></creation-time> <collection-office></collection-office> <file-name></file-name> <file-number></file-number> <client></client> <number-of-entries></number-of-entries> </header> Name Typ / LängeText Kann / MussBeschreibung creation-date 10 /C Erstellungsdatum der Datei m creation-time 8/ C Erstellungszeit der Datei m collection-office12 /C Erfassungsbüro m Soll denselben Inhalt haben wie das Feld ‚input-office‘ im Auftrag. Dieses Feld dient zum Versenden der Berichtsemail. Der Inhalt wird Ihnen von der Kundenbetreuung mitgeteilt. file-name 30 / C Dateiname (dient der Verifizierung) m file-number 2/ N Fortlaufende Dateinummer (vom Erfassungsbüro zu vergeben.)m Beginnend bei 01 bis 99 (rollierend). client 3/ N Name des Zielmandanten m Nach Rücksprache mit AVS/3-Kundenbetreuung. number-of-entries8/ N Anzahl der Einträge m Anzahl der ‚subscription‘ Einträge in der Datei. Änderungen der XML-Strukturen DSB behält sich vor die in diesem Dokument beschrieben XML-Strukturen ohne Vorankündigung anzupassen, solange diese Anpassungen komplett abwärtskompatibel bleiben. In der Praxis sind dies hauptsächlich Ergänzungen von Elementen und Attributen. Beispiel 1: Neues Element Neue Elemente können hinzugeführt werden. Alle Clients sollten so auf die Elemente zugreifen (z. B. nur über den Namen), dass keine Anpassung notwendig ist. Struktur VOR der Erweiterung/Anpassung: <existing-element1>ABCD</existing-element1> <existing-element2>1234</existing-element2> Struktur NACH der Erweiterung/Anpassung: <existing-element1>ABCD</existing-element1> <new-element>XYZ</new-element1> <existing-element2>1234</existing-element2> Beispiel 2: Neues Attribut Attribute zu Elementen können hinzugeführt werden. Alle Clients sollten so auf die Elemente zugreifen (z.B. nur über den Namen), dass keine Anpassung notwendig ist. Struktur VOR der Erweiterung/Anpassung: <existing-element1>ABCD</existing-element1> Struktur NACH der Erweiterung/Anpassung: <existing-element1 new-attribute="XYZ">ABCD</existing-element1> Um dies auf Seite des Clients sicherstellen zu können, gibt es einen speziellen Webservice, mit dem geprüft werden kann, wie der Client auf solche Erweiterungen reagiert. Siehe hierzu Abschnitt zum Service checkUpgradeCompatibility. Cookies helfen bei der Bereitstellung von Inhalten. Durch die Nutzung dieser Seiten erklären Sie sich damit einverstanden, dass Cookies auf Ihrem Rechner gespeichert werden. OK Weitere Information