Die Zahlungsart "Lastschrift" ist seit 2014 auf das SEPA-Verfahren umgestellt. Aufgrund der Abwärtskompatibilität finden Sie dennoch alle relevanten Informationen zur SEPA-Umstellung in diesem Wegweiser.

Wenn Sie das Lastschrift-Verfahren über einen Zahlungsdienstleister abwickeln wollen, steht Ihnen Paymorrow oder PayPal zur Verfügung:

Wegweiser: Paymorrow

Wegweiser: Lastschrift über PayPal Checkout

 

Inhalt

1 Bankverbindungen abfragen

2 Einführung des SEPA-Lastschriftverfahrens

3 IBAN-Konverter für Bankdaten-Eingabe

3.1 Integration in der Bankdatenverwaltung im Kundenkonto

3.2 Integration auf der Bestellübersichtsseite

3.3 Gestaltungsbeispiel für den IBAN-Konverter als Layer

3.4 Alle Funktionsparameter des benötigten JavaScriptes

4 SEPA-Umstellung für V7-Shops

5 SEPA-Umstellung für V8-Shops

 

1 Bankverbindungen abfragen

Die Eingabe, Verwaltung und Verwendung von Bankverbindungen ist ausgesprochen einfach und komfortabel.

Ein angemeldeter Käufer kann mehrere unterschiedliche Bankverbindungen speichern, ändern oder löschen. Während des Bestellprozesses kann er entscheiden, ob er eine hinterlegte Bankverbindung verwenden möchte und ob die Bankverbindung nur für diese Bestellung eingegeben und nicht gespeichert werden soll.

Ein nicht angemeldeter Käufer kann seine Bankverbindung am Ende des Bestellprozesses eingeben.

Zusätzlich haben Sie die Möglichkeit, Eingabefelder mit fehlerhaften Daten durch Fehlerstyles hervorzuheben oder die Fehlerfälle mithilfe von Bereichs-Tags zu klammern.


Hinweis:

Damit Bankverbindungen gespeichert werden können, muss in der Shopkonfiguration shop.config im Abschnitt <UserData> der Parameter SaveBankData-Allow auf yes gesetzt sein!

Wenn Sie für Lastschriftverfahren zulässige Länder festlegen wollen, sind dafür die Parameter SEPACountry-List und SEPACountry-Rule im Abschnitt <PaymentDebitNote-Txt> der Shopkonfiguration shop.config vorgesehen. Beispiele dazu siehe weiter unten: Einschränkung des Lastschriftverfahrens auf bestimmte Länder

<UserData>
   ...
   SaveBankData-Allow = yes
   ...
</UserData>

Referenz: UserData

Einstellungen

Die Eingabe einer Bankverbindung wird (unter anderem) durch folgende Einstellungen in der Shopkonfiguration shop.config konfiguriert:

Abschnitt

Parameter

Beschreibung

Templates

BankManage

Template für die Verwaltung der Bankdaten

PaymentDebitNote-Txt

UserDescr

Userbeschreibung der Bankverbindung

PaymentDebitNote-Txt

UserDescrRequired

Userbeschreibung der Bankverbindung ist Pflichtfeld

PaymentDebitNote-Txt

BankRequired

Name der Bank ist Pflichtfeld

PaymentDebitNote-Txt

Country

Land der Bank

PaymentDebitNote-Txt

SelectAccountNoSaveEntry

Erster Eintrag in der Dropdown-Liste zur Auswahl einer hinterlegten Bankverbindung, Bankverbindung nur temporär aufnehmen

PaymentDebitNote-Txt

SelectAccountEntryPrefix

Optionales Präfix vor jedem Eintrag der Auswahl

PaymentDebitNote-Txt

SelectAccountSeparator

Optionaler Trenner zwischen dem Eintrag NoSave und den hinterlegten Daten in der Dropdown-Liste

PaymentDebitNote-Txt

AccountDataNotProofed

Fehlermeldung, wenn bei SingleInput die Bankverbindung nicht geprüft wurde (Bestellprozess, PlaceOrder)

PaymentDebitNote-Country

(Liste 3-stelliger Länder-ISO-Codes; "other" für nicht aufgeführte Länder)

Die hier eingetragenen Werte sind die Klartext-Entsprechungen der als Parameter aufgeführten ISO-Codes der Länder, z. B. DEU = Deutschland

NotifyMessages-Txt

Bank-Saved

Text wird angezeigt, wenn die Bankverbindung gespeichert wurde

NotifyMessages-Txt

Bank-Deleted

Text wird angezeigt, wenn die Bankverbindung gelöscht wurde

Referenz: Templates
Referenz: PaymentDebitNote-Txt
Referenz: PaymentDebitNote-Country
Referenz: Abschnitt NotifyMessages-Txt

Templates

Für die Eingabe und die Verwaltung der Bankdaten werden folgende Templates verwendet:

BankManage = ws_bank_manage.htm

PlaceOrder = ws_place_order.htm

Das mit dem Parameter BankManage angegebene Template wird angezeigt, wenn der Käufer über das Kundenkonto seine Bankdaten verwalten bzw. neue anlegen will.

Das mit dem Parameter PlaceOrder angegebene Template wird während des Bestellablaufs verwendet. Hier kann der angemeldete Käufer entweder eine hinterlegte Bankverbindung auswählen oder eine neue Bankverbindung einmalig, nur für diese Bestellung, eingeben. Ein nicht angemeldeter Käufer kann hier seine Bankverbindung eingeben.

Besonderheiten der betroffenen Templates:

ws_bank_manage.htm

Das Template ist in drei Bereiche aufgeteilt:

BANK-Overview (Übersicht über die gespeicherten Bankverbindungen), BANK-Edit (Bearbeiten einer Bankverbindung) und BANK-ConfirmDelete (Bestätigung zum Löschen einer Bankverbindung).

Der Bereich BANK-ConfirmDelete wird in den Auslieferungs-Templates nur mit deaktiviertem JavaScript angezeigt, bei aktivem JavaScript wird die Sicherheitsabfrage mit einem Dialogfenster gestaltet.

Zusätzlich muss auf dem Template PlaceOrder und im Bereich BANK-Edit auf dem Template BankManage das 2-stufige Eingabeverfahren berücksichtigt werden. Dies wird durch die Tags BANK-InputStepOne und BANK-InputStepTwo realisiert.

ws_place_order.htm

Die Eingabe auf der Seite (Bank- und Kreditkartendaten) ist in 2 Bereiche gegliedert: ST-MultipleData und ST-SingleData.

Der Bereich ST-SingleData wird verwendet, wenn keine Speicherung der Daten erfolgt (also der Käufer nicht angemeldet ist oder der Parameter SaveBankData-Allow = no ist), ansonsten wird ST-MultipleData verwendet. Innerhalb dieser Bereiche erfolgt die Auswahl bzw. Eingabe der Bankdaten in den Bereichen BANK-SingleDataInput bzw. BANK-MultipleDataInput.

Wenn ein Käufer angemeldet ist, und das Speichern der Daten aktiv ist, hat der Käufer dennoch die Möglichkeit, seine Bankverbindung nur einmal zu verwenden und nicht zu speichern. Dazu wird innerhalb des Bereichs BANK-MultipleDataInput, der im Bereich ST-MultipleData liegen muss, unterschieden. Wenn der Käufer eine hinterlegte Bankverbindung gewählt hat (Bereich BANK-AccountSelected), wird diese Bankverbindung verwendet. Hat er keine Bankverbindung gewählt (negativer Bereich BANK-AccountSelected), müssen dort die Eingabefelder für die Bankverbindung angezeigt werden (Block- oder Einzelpositionierung). Werden diese ausgefüllt, werden die Daten nicht gespeichert.

Wegweiser: Rechnungs- und multiple Lieferadresse abfragen

Wegweiser: Volltextsuche für multiple Kundendaten anbieten

Zum Inhaltsverzeichnis

2 Einführung des SEPA-Lastschriftverfahren

Im Zuge der Vereinheitlichung des europäischen Zahlungsraums wurde das bisherige Lastschriftverfahren zum 01. Februar 2014 auf das jetzt europaweit einheitliche SEPA-Verfahren für bargeldlosen Zahlungsverkehr (Lastschriften, Überweisungen) umgestellt.


Hinweis:

Wenn Ihr WEBSALE Onlineshop nach dem 11.11.2013 bereitgestellt wurde, müssen Sie lediglich in der Konfiguration shop.config den Parameter SEPAMode = on setzen. Es sind bereits alle Eingabefelder, Fehlermeldungen usw. für das SEPA-Lastschriftverfahren enthalten.

WEBSALE SEPA-Unterstützung

Das SEPA-Verfahren wird von WEBSALE V8s/V8 und WEBSALE V7 unterstützt.

Der Parameter SEPAMode muss auf on gesetzt werden. Bei V8s-/V8-Shops geschieht dies in der Shopkonfiguration shop.config im Abschnitt <PaymentDebitNote-Txt>. Bei V7-Shops muss dieser Parameter in der Konfiguration websale.ini im Abschnitt <PaymentDebitNote-Txt> auf on gesetzt werden.

Einschränkung des Lastschriftverfahrens auf bestimmte Länder

Wenn Sie festlegen wollen, dass die Zahlungsart "Lastschrift" nur für bestimmte Länder gelten soll (was die Regel sein wird), müssen Sie in der Konfiguration Ihres Shops entsprechende Einstellungen vornehmen. Entscheidend für die Prüfung sind die Parameter SEPACountry-Rule und SEPACountry-List in der Shopkonfiguration shop.config im Abschnitt <PaymentDebitNote-Txt>.

Beispiel "Verbotene Länder" – In der Shopkonfiguration werden mit DenyCountries die Länder festgelegt, für die das Lastschriftverfahren nicht zulässig ist:

<PaymentDebitNote-Txt>
   ...
   SEPACountry-Rule = DenyCountries
   SEPACountry-List = AT
   ...
</PaymentDebitNote-Txt>

Eine Bezahlung mit einem österreichischen Konto wäre jetzt nicht zulässig. Daher würde der Shop für eine österreichische IBAN keine weitere Prüfung vornehmen, sondern den Fehler BankAccountIBANCountryError-Txt ausgeben.

Für IBANs, die nicht in der Liste stehen, z. B. DE, GB usw., wird der Shop nach internationalem Bankenstandard eine Prüfung vornehmen.

Beispiel "Erlaubte Länder" – In der Shopkonfiguration werden mit AllowCountries die Länder festgelegt, für die das Lastschriftverfahren zulässig ist:

<PaymentDebitNote-Txt>
   ...
   SEPACountry-Rule = AllowCountries
   SEPACountry-List = AT
   ...
</PaymentDebitNote-Txt>

Eine Bezahlung mit einem österreichischen Konto wäre jetzt zulässig. Daher würde der Shop für eine österreichische IBAN jetzt eine Prüfung nach internationalem Bankenstandard vornehmen.

Für IBANs, die nicht in der Liste stehen, z. B. DE, GB usw., wird der Shop keine weitere Prüfung vornehmen, sondern den Fehler BankAccountIBANCountryError-Txt ausgeben.

Referenz: Fehlermeldungen VerifyCustomerData

Referenz: Abschnitt PaymentDebitNote-Txt

Klassische Lastschrift vs. SEPA-Lastschrift

Bei der klassischen Lastschrift werden bisher folgende Daten abgefragt und verarbeitet:

Name des Kontoinhabers

Kontonummer

BLZ

Kreditinstitut (wird in der Regel automatisch ausgefüllt)

Bei der SEPA-Lastschrift werden demgegenüber folgende Daten abgefragt:

Name des Kontoinhabers

IBAN

BIC

Mit dem PDF-Formular zur Lastschrift-Mandatserteilung werden zusätzliche Daten abgefragt, die in den Integrationsanleitungen weiter unten beschrieben sind.

Was ändert sich in der Shopoberfläche für SEPA?

Je Bankverbindung werden im Shop zwei neue Felder, IBAN und BIC, aufgenommen.

Lastschrift-Mandat vom Kunden einholen

Die rechtliche Legitimation für den Einzug von SEPA-Lastschriften sind SEPA-Mandate. Bei jeder Bestellung mit Zahlung per Lastschrift können Sie optional vom Shop ein Lastschrift-Mandat als PDF-Anhang der Bestelleingangsbestätigung generieren lassen. Hierzu stellen wir Ihnen eine Vorlage bereit, in der folgende Datenfelder vorausgefüllt werden können:

alle notwendigen Adressfelder des Kunden

IBAN und BIC des Kunden

eine vom Shop/Subshop automatisch generierte Mandatsreferenz.

eine je Shop/Subshop hinterlegte Gläubiger-Identifikationsnummer des Händlers. Sie muss vom Shopbetreiber behördlich beantragt werden!

In den Bestelldaten wird zu jeder dieser Bestellungen vermerkt, ob ein Mandat als PDF-Anhang versendet wurde.

Je Bankverbindung und Bestellung wird eine eigene Mandatsreferenz (max. 35 Zeichen) generiert und in das versendete PDF-Mandat eingefügt. Je Subshop lässt sich ein optionaler fester Präfix (z. B. "DE-") sowie ein erforderlicher Startwert für die Nummerierung (z. B. 320001) definieren, der dann bei jeder neu vergebenen Mandatsreferenz hochgezählt wird (z. B. DE-3200001). Ob ein Präfix verwendet werden kann oder nur die Nummerierung, ist von den angeschlossenen Systemen (z. B. Warenwirtschaft) abhängig.

Beispiel:

Startwert (7 Zeichen, subshop-übergreifend): 1.000.000

Optionale, frei wählbare Länder-Kennung (subshop-spezifisch). Z. B. "DEU-"

Im Shop wird pro Bankverbindung jeweils die zuletzt generierte Mandatsreferenz gespeichert. Diese kann auch in der Shopoberfläche im Kundenkonto bei der Bankverbindung angezeigt werden. Ob Mandatsnummern generiert sowie PDF-Anhänge erstellt und versendet werden, können Sie durch Ihre Einstellungen im Abschnitt <CustomerMail> der Shopkonfiguration shop.config festlegen.

Lastschrift-Art: Basislastschrift oder Firmenlastschrift

Es muss vom Händler festgelegt werden, welche(s) Mandat(e) mit welchem Inhalt für eine Firma bzw. für einen Endkunden gesendet wird.

Beispiel: Ist das Feld "Firma" bei den Adressdaten ausgefüllt, können Sie automatisch mit der Bestelleingangsbestätigung in dem PDF-Dokument sowohl eine Basis- als auch eine Firmen-Lastschrift senden lassen. Der Besteller entscheidet dann selbst, welche Lastschrift-Art er erteilen möchte. An einen Endkunden (das Feld "Firma" ist leer) darf in jedem Fall nur eine Basis-Lastschrift gesendet werden.

Welche Lastschrift-Art der Kunde unterzeichnet an den Händler zurückgesendet hat, wird mit den Kundendaten über die Warenwirtschafts-Schnittstelle an den Shop übermittelt oder über den Online-Servicebereich vom Händler bzw. seinem Dienstleister manuell verwaltet.

Mandat-Art: "einmalig" oder "wiederkehrend"

Der Kunde kann entweder ein einmaliges oder ein wiederkehrendes Mandat erteilen. Diese Auswahl kann je nach Wunsch des Händlers auf dem PDF integriert werden oder nicht und wird im Mandatstext entsprechend eingepflegt. Ein wiederkehrendes Mandat hat für den Kunden und den Händler Vorteile: Kunden, die öfter im Shop bestellen, müssen nicht bei jeder Bestellung erneut ein Mandat für den Händler erteilen, und der Händler muss nicht mehrere Mandate für denselben Kunden verwalten.


Hinweis:

Wenn vom Händler im Shop das Merkmal "wiederkehrendes Mandat" bei einer Bankverbindung gesetzt wurde, können die zugehörigen Bankdaten im Shop-Kundenkonto nicht mehr bearbeitet werden, sondern der Kunde muss zur Änderung dieser Bankdaten eine neue Bankverbindung anlegen (und ggf. die alte Bankverbindung löschen). Wir empfehlen, für diese Situation einen entsprechenden Hinweistext im Shop vorzusehen.

Hier finden Sie Anleitungen für die Integration des SEPA-Lastschriftverfahrens:

Wegweiser: SEPA-Umstellung für V7-Shops

Wegweiser: SEPA-Umstellung für V8-Shops

Zum Inhaltsverzeichnis

3 IBAN-Konverter für Bankdaten-Eingabe

Mit dem IBAN-Konverter kann der Kunde aus seinen bisherigen Bankdaten (z. B. "alte" Kontonummer und Bankleitzahl) eine IBAN generieren lassen. Sie wird anhand der eingegebenen Basisdaten, die je nach Land unterschiedlich sein können, individuell zusammengesetzt.


Achtung:

Dieses JavaScript prüft nicht auf die inhaltliche Korrektheit der Angaben!

Dieses JavaScript-Tool kann über einen Layer auf allen Shop-Templates eingefügt werden, die Bankdaten abfragen. Es wird über eine Schaltfläche auf dem entsprechenden Formular gestartet. Hier ein Beispiel für die Darstellung des IBAN-Konverters:

3.1 Integration in der Bankdatenverwaltung im Kundenkonto

Die Integration erfolgt im Template ws_bank_manage.htm

Schritt 1: Einbinden der benötigten Bibliotheken und Scripte

Setzen Sie im HTML-Header des Templates einen Script-Link zur JavaScript-Bibliothek (achten Sie darauf, mindestens die Version 1.8.1 zu verwenden):

<script type="text/javascript" language="JavaScript" src="/$WS/ws_sysdata/js/ws-system-1.8.1.js"></script>

Binden Sie die folgende JavaScript-Datei im HTML-Header des Templates ein:

<script type="text/javascript" src="/$WS/ws_sysdata/js/ws-iban-converter-1.0.0.min.js"></script>

Integrieren Sie im HTML-Header den folgenden Funktionsaufruf:

<script type="text/javascript">
    $(document).ready(function() {
            // Erzeugt die Liste für die Länderauswahl          
            var countryList = [
            ["DE","Deutschland"],
            ["AT","Österreich"]
        ];
        $("#~BANK-IBAN_input~").ws_iban_converter({
            countryList: countryList
        // Hier können weitere Optionen hinzugefügt werden (siehe Beispiel "Funktionsparameter des benötigten Javascriptes")
        });
    });
</script>

Die unter var countryList = eingetragenen Länder erzeugen die Länderliste, die im IBAN-Konverter für den Kunden zur Auswahl steht.

In diesem Funktionsaufruf ist #~BANK-IBAN_input~ die ID des Feldes, auf welches sich das JavaScript bezieht.

Beachten Sie, dass nicht alle verfügbaren Optionen enthalten sind und die Länderliste nur ein Beispiel darstellt.

Im Abschnitt "3.4 Alle Funktionsparameter des benötigten JavaScriptes" finden Sie alle möglichen Funktionsparameter zu dem hier gezeigten Funktionsaufruf.

Schritt 2: ID und technischen Namen für das IBAN-Eingabefeld vergeben

Vergeben Sie dem Eingabefeld für die IBAN-Nummer die folgende ID und den folgenden Namen. Auf die ID ~BANK-IBAN_input~ des Feldes bezieht sich der Funktionsaufruf des JavaScriptes.

<input type="text" value="~BANK-IBAN~"  id="~BANK-IBAN_input~" name="~BANK-IBAN_input~">

Schritt 3: Integration des Buttons zum Öffnen des IBAN-Konverters

Der Button muss im Bereich {BANK-Edit} innerhalb von <form action="~FORM-BankManage~"> eingefügt werden.

Dem Button muss die Klasse ibanConverterOpen zugewiesen werden. Diese Klasse wird im JavaScript in der Option openField verwendet.

{BANK-Edit}
   ...
   <form action="~FORM-BankManage~">
      ...
      <input type="button" class="ibanConverterOpen" value="IBAN-Konverter">
      ...
   </form>
   ...
{/BANK-Edit}

Schritt 4: Integration des Quellcodes für den IBAN-Konverter

Fügen Sie den Layer für die Darstellung des IBAN-Konverters im Bereich {BANK-Edit} innerhalb von <form action="~FORM-BankManage~"> ein.

Die im Layer verwendeten Klassen werden im JavaScript in den Options verwendet.

Im Abschnitt "4. Alle Funktionsparameter des benötigten JavaScriptes" finden Sie eine detaillierte Erklärung der verwendeten Options und der zugewiesenen Klassen.

{BANK-Edit}
...
<form action="~FORM-BankManage~">
...
<div class="ibanConverter">
<h2>IBAN erstellen</h2>
   
    <div class="ibanStep1">
        Land:
        <select class="ibanCountry"></select>
    </div>
   
    <div class="ibanStep2">
        <div class="ibanAccountNumber">Kontonummer: <input type="text"></div>
        <div class="ibanBankCode">BLZ: <input type="text"></div>
        <div class="ibanAgency">Filiale: <input type="text"></div>
        <div class="ibanCheckDigit">Prüfziffer: <input type="text"></div>
        <div class="ibanAccountType">Kontotyp: <input type="text"></div>
        <div class="ibanRegionCode">Region-Code: <input type="text"></div>
   
        <input type="button" class="ibanBuild" value="IBAN generieren">
    </div>
   
    <div class="ibanStep3">
        <div class="ibanField">IBAN:<input type="text" class="ibanResult" readonly /></div>
        <input type="button" class="ibanAssume" value="IBAN übernehmen">
    </div>
 
    <div class="ibanClose">Layer schliessen</div>
</div>

...
</form>
...
{/BANK-Edit}

3.2 Integration auf der Bestellübersichtsseite

Die Integration erfolgt auf dem Template ws_place_order.htm

Schritt 1: Einbinden der benötigten Bibliotheken und Scripte im Template

Setzen Sie im HTML-Header des Templates einen Script-Link zur JavaScript-Bibliothek (achten Sie darauf, mindestens die Version 1.8.1 zu verwenden):

<script type="text/javascript" language="JavaScript" src="/$WS/ws_sysdata/js/ws-system-1.8.1.js"></script>

Binden Sie die folgende JavaScript-Datei ebenfalls im HTML-Header des Templates ein:

<script type="text/javascript" src="/$WS/ws_sysdata/js/ws-iban-converter-1.0.0.min.js"></script>

Integrieren Sie im HTML-Header den folgenden Funktionsaufruf:

<script type="text/javascript">
    $(document).ready(function() {
            // Erzeugt die Liste für die Länderauswahl          
            var countryList = [
            ["DE","Deutschland"],
            ["AT","Österreich"]
        ];
        $("#~BANK-IBAN_input~").ws_iban_converter({
            countryList: countryList
        // Hier können weitere Optionen hinzugefügt werden (siehe Beispiel "Funktionsparameter des benötigten Javascriptes")
        });
    });
</script>

Die unter var countryList = eingetragenen Länder erzeugen die Länderliste, die im IBAN-Konverter für den Kunden zur Auswahl steht.

In diesem Funktionsaufruf ist #~BANK-IBAN_input~ die ID des Feldes, auf welches sich das JavaScript bezieht.

Beachten Sie, dass nicht alle verfügbaren Optionen enthalten sind und die Länderliste nur ein Beispiel darstellt.

Im Abschnitt "4. Alle Funktionsparameter des benötigten JavaScriptes" finden Sie alle möglichen Funktionsparameter zu dem hier gezeigten Funktionsaufruf.

Schritt 2: ID und technischen Namen für das IBAN-Eingabefeld vergeben

Vergeben Sie dem Eingabefeld für die IBAN-Nummer die folgende ID und den folgenden Namen. Auf die ID ~BANK-IBAN_input~ des Feldes bezieht sich der Funktionsaufruf des JavaScriptes.

<input type="text" value="~BANK-IBAN~"  id="~BANK-IBAN_input~" name="~BANK-IBAN_input~">

Schritt 3: Integration des Buttons zum Öffnen des IBAN-Konverters

Der Button muss im Bereich {BANK-MultipleDataInput} und {BANK-SingleDataInput} innerhalb von <form action="~FORM-PlaceOrder~"> eingefügt werden.

Dem Button muss die Klasse ibanConverterOpen zugewiesen werden. Diese Klasse wird im JavaScript in der Option openField verwendet.

...
<form action="~FORM-PlaceOrder~">
   ...
 
   {BANK-MultipleDataInput}
      <input type="button" class="ibanConverterOpen" value="IBAN-Konverter">
   {/BANK-MultipleDataInput}
 
   {BANK-SingleDataInput}
      <input type="button" class="ibanConverterOpen" value="IBAN-Konverter">
   {/BANK-SingleDataInput}
   ...
</form>
...

Schritt 4: Integration des Layers für die Darstellung des IBAN-Konverters im Template ws_place_order.htm

Fügen Sie den Layer für die Darstellung des IBAN-Konverters im Bereich {BANK-MultipleDataInput} und {BANK-SingleDataInput} innerhalb von <form action="~FORM-PlaceOrder~"> ein.

Die im Layer verwendeten Klassen werden im JavaScript in den Options verwendet.

Im Abschnitt "4. Alle Funktionsparameter des benötigten JavaScriptes" finden Sie eine detaillierte Erklärung der verwendeten Options und der zugewiesenen Klassen.

Beispiel für die Integration im Bereich {BANK-MultipleDataInput}:

...
<form action="~FORM-PlaceOrder~">
...

 {BANK-MultipleDataInput}  

<div class="ibanConverter">
<h2>IBAN erstellen</h2>
   
    <div class="ibanStep1">
        Land:
        <select class="ibanCountry"></select>
    </div>
   
    <div class="ibanStep2">
        <div class="ibanAccountNumber">Kontonummer: <input type="text"></div>
        <div class="ibanBankCode">BLZ: <input type="text"></div>
        <div class="ibanAgency">Filiale: <input type="text"></div>
        <div class="ibanCheckDigit">Prüfziffer: <input type="text"></div>
        <div class="ibanAccountType">Kontotyp: <input type="text"></div>
        <div class="ibanRegionCode">Region-Code: <input type="text"></div>
   
        <input type="button" class="ibanBuild" value="IBAN generieren">
    </div>
   
    <div class="ibanStep3">
        <div class="ibanField">IBAN:<input type="text" class="ibanResult" readonly /></div>
        <input type="button" class="ibanAssume" value="IBAN übernehmen">
    </div>
 
    <div class="ibanClose">Layer schliessen</div>
</div>

{/BANK-MultipleDataInput}
...
</form>
... 

3.3 Gestaltungsbeispiel für den IBAN-Konverter als Layer

Um das dargestellte Gestaltungsbeispiel (am Beginn des Kapitels) zu integrieren, führen Sie die oben genannten Integrationsschritte durch und ersetzen Sie den in Schritt 4 aufgeführten durch den folgenden Quellcode:

<div class="ibanConverter" style="display:none">
  <div class="ibanClose">schließen</div>
  <h2>Kontonummer statt IBAN verwenden</h2>
   
  <div class="column_left">
    <p class="subheadline">IBAN aus Kontonummer errechnen</p>
      <div class="ibanStep1 bankdiv_inputbox">
          <label class="bankdiv_label">Land:</label>
          <select class="ibanCountry select_country"></select>
      </div>
          
      <div class="ibanStep2">
          <div class="ibanAccountNumber">
              <label class="bankdiv_label">Konto-Nr.:</label>
              <input type="text" class="bank_text_input_descr">
          </div>
          <div class="ibanBankCode">
              <label class="bankdiv_label">BLZ:</label>
              <input type="text" class="bank_text_input_descr">
          </div>
          <div class="ibanAgency">
              <label class="bankdiv_label">Filiale:</label>
              <input type="text" class="bank_text_input_descr">
          </div>
          <div class="ibanCheckDigit">
              <label class="bankdiv_label">Prüfziffer:</label>
              <input type="text" class="bank_text_input_descr">
          </div>
          <div class="ibanAccountType">
              <label class="bankdiv_label">Kontotyp:</label>
              <input type="text" class="bank_text_input_descr">
          </div>
          <div class="ibanRegionCode">
              <label class="bankdiv_label">Region-Code:</label>
              <input type="text" class="bank_text_input_descr">
          </div>
          <input type="button" class="ibanBuild" value="IBAN generieren">
          <br class="clear_both">
      </div>
          
      <div class="ibanStep3">
          <div class="ibanField">
            <label class="bankdiv_label">IBAN:</label>
            <input type="text" class="ibanResult" readonly>
          </div>
          <input type="button" class="ibanAssume" value="IBAN übernehmen">
          <br class="clear_both">  
      </div>
           
  </div>
  <div class="column_right">
      <div class="accordion" id="accordion">
          <a class="acc_header acc_header_1">Kann ich weiterhin mit meiner Kontonummer bestellen?</a>
          <div class="acc_body">Falls Sie Ihre IBAN noch nicht kennen sollten, können Sie weiter unten die Funktion "IBAN aus Kontonummer errechnen" nutzen.<br>Wenn Sie dort Ihre Kontonummer und Bankleitzahl eingeben, wird daraus eine IBAN errechnet. Aus rechtlichen Gründen und wegen teilweise anderer Ermittlung der IBAN durch einige Banken findet die Errechnung ohne Gewähr statt. Bitte lassen Sie sich daher baldmöglichst Ihre IBAN von Ihrem Finanzinstitut mitteilen.</div>
     
          <a class="acc_header">Was ist IBAN?</a>
          <div class="acc_body">Die IBAN ersetzt mit der Einführung des internationalen SEPA-Zahlungsstandards die Kontonummer und Bankleitzahl.</div>
         
          <a class="acc_header">Wo erhalte ich meine IBAN ?</a>
          <div class="acc_body">Die IBAN für Ihr Konto erhalten Sie bei Ihrem Finanzinstitut.<br>Auf den meisten Kontokarten ist sie bereits vorn oder hinten aufgedruckt.</div>
      </div>   
  </div>
</div>

Accordion-Funktion

Für die Darstellung der Informationen / Erklärungstexte wird ein Aufklapp-Effekt ("Accordion") verwendet, der eine kompakte Darstellung dieser Informationen ermöglicht. Binden Sie hierfür die folgende JavaScript-Datei in den HTML-Head Ihre Seite ein:

<script type="text/javascript" src="../js/jquery.accordion.js"></script>

Download der Datei unter Referenz: Accordion-Funktion

Styles

Um das dargestellte Aussehen des Layers zu realisieren, benötigen Sie die Styles, die unter "Materialien" zur Verfügung stehen.

Fügen Sie diese Styles in Ihre CSS-Datei ein.

Download der Datei unter Referenz: Styleanweisungen für den IBAN-Konverter

3.4 Alle Funktionsparameter des benötigten JavaScripts

<script type="text/javascript">
    $(document).ready(function() {
            // Erzeugt die Liste für die Länderauswahl          
            var countryList = [
                [ "AD","Andorra"],
    [ "AE","Vereinigte Arabische Emirate"],
    [ "AL","Albanien"],
    [ "AT","Österreich"],
    [ "AZ","Aserbaidschan"],
    [ "BA","Bosnien und Herzegowina"],
    [ "BE","Belgien"],
    [ "BG","Bulgarien"],
    [ "BH","Bahrain"],
    [ "BR","Brasilien"],
    [ "CH","Schweiz"],
    [ "CR","Costa Rica"],
    [ "CY","Zypern"],
    [ "CZ","Tschechien"],
    [ "DE","Deutschland"],
    [ "DK","Dänemark"],
    [ "DO","Dominikanische Republik"],
    [ "EE","Estland"],
    [ "ES","Spanien"],
    [ "FI","Finnland"],
    [ "FO","Färöer"],
    [ "FR","Frankreich"],
    [ "GB","Vereinigtes Königreich"],
    [ "GE","Georgien"],
    [ "GI","Gibraltar"],
    [ "GL","Grönland"],
    [ "GR","Griechenland"],
    [ "GT","Guatemala"],
    [ "HR","Kroatien"],
    [ "HU","Ungarn"],
    [ "IE","Irland"],
    [ "IL","Israel"],
    [ "IS","Island"],
    [ "IT","Italien"],
    [ "KW","Kuwait"],
    [ "KZ","Kasachstan"],
    [ "LB","Libanon"],
    [ "LI","Liechtenstein"],
    [ "LT","Litauen"],
    [ "LU","Luxemburg"],
    [ "LV","Lettland"],
    [ "MC","Monaco"],
    [ "MD","Moldawien"],
    [ "ME","Montenegro"],
    [ "MK","Mazedonien"],
    [ "MR","Mauretanien"],
    [ "MT","Malta"],
    [ "MU","Mauritius"],
    [ "NL","Niederlande"],
    [ "NO","Norwegen"],
    [ "PK","Pakistan"],
    [ "PL","Polen"],
    [ "PS","Palästinensische Autonomiegebiete"],
    [ "PT","Portugal"],
    [ "RO","Rumänien"],
    [ "RS","Serbien"],
    [ "SA","Saudi-Arabien"],
    [ "SE","Schweden"],
    [ "SI","Slowenien"],
    [ "SK","Slowakei"],
    [ "SM","San Marino"],
    [ "TN","Tunesien"],
    [ "TR","Türkei"],
    [ "VG","Britische Jungferninseln"]
        ];
        $("#~BANK-IBAN_input~").ws_iban_converter({
   openField: ".ibanConverterOpen",
   ibanConverter: ".ibanConverter",
   closeField: ".ibanClose",
   buildField: ".ibanBuild",
   assumeField: ".ibanAssume",
   countryField: ".ibanCountry",
   bankField: ".ibanBankCode",
   agencyField: ".ibanAgency",
   accountField: ".ibanAccountNumber",
   checkDigitField: ".ibanCheckDigit",
   accountTypeField: ".ibanAccountType",
   regionField: ".ibanRegionCode",
   ibanField: ".ibanField",
   step2: ".ibanStep2",
   step3: ".ibanStep3",
   errorMissingFields: "Es wurden nicht alle Felder ausgefüllt!",
   errorBankOnlyNumeric: "Die Bankleitzahl darf nur Zahlen beinhalten!",
   errorAccountOnlyNumeric: "Die Kontonummer darf nur Zahlen beinhalten!",
   errorAgencyOnlyNumeric: "Die Filialnummer darf nur Zahlen beinhalten!",
   errorCheckDigitkOnlyNumeric: "Die Prüfziffern dürfen nur Zahlen sein!",
   errorAccountTypeOnlyNumeric: "Der Kontotyp darf nur Zahlen beinhalten!",
   errorRegionOnlyNumeric: "Der Regioncode darf nur Zahlen beinhalten!",
   countryList: countryList,
   onInit: null,
   onOpen: null,
   onClose: null,
   onBuild: null,
   onAssume: null //
});
        });
    });
</script>

Beschreibung der verfügbaren Funktionsparameter:

Parameter

Beschreibung

Typ

openField

Selektor des Elements zum Öffnen des Layers

string

ibanConverter

Selektor auf den Layer

string

closeField

Selektor zum Schließen des Layers

string

buildField

Selektor zum Generieren der IBAN

string

assumeField

Selektor zum Übernehmen der IBAN in das Formular

string

countryField

Selektor der Dropdown-Liste zur Auswahl des Landes

string

bankField

Selektor des Wrappers um das BLZ-Feld

string

agencyField

Selektor des Wrappers um das Filial-Feld

string

accountField

Selektor des Wrappers um das Kontonummer-Feld

string

checkDigitField

Selektor des Wrappers um das Kennziffer-Feld

string

accountTypeField

Selektor des Wrappers um das Kontotyp-Feld

string

regionField

Selektor des Wrappers um das Region-Feld

string

ibanField

Selektor des Wrappers um das IBAN-Feld im Layer

string

step2

Selektor für den Bereich, der nach der Auswahl des Landes angezeigt werden soll

string

step3

Selektor für den Bereich, der nach dem Generieren der IBAN angezeigt werden soll

string

errorMissingFields

Fehlermeldung, wenn nicht alle benötigten Felder befüllt sind

string

errorBankOnlyNumeric

Fehlermeldung, wenn die BLZ nicht-numerische Zeichen enthält

string

errorAccountOnlyNumeric

Fehlermeldung, wenn die Kontonummer numerische Zeichen enthält

string

errorAgencyOnlyNumeric

Fehlermeldung, wenn die Filiale nicht-numerische Zeichen enthält

string

errorCheckDigitkOnlyNumeric

Fehlermeldung, wenn die Prüfziffer nicht-numerische Zeichen enthält

string

errorAccountTypeOnlyNumeric

Fehlermeldung, wenn der Regional-Code nicht-numerische Zeichen enthält

string

errorRegionOnlyNumeric

Fehlermeldung, wenn der Regional-Code nicht-numerische Zeichen enthält

string

countryList

Optionaler Parameter zur Filterung der Länder-Liste (kommasepariert, zweistelliger ISO-Ländercode plus sprachabhängige Ländernamen - siehe Beispiel oben)

array

onInit

Optionaler Callback, der ausgeführt wird, wenn das Plugin initialisiert wurde

function

onOpen

Optionaler Callback, der ausgeführt wird, wenn das Plugin initialisiert wurde

function

onClose

Optionaler Callback, der ausgeführt wird, wenn das Plugin initialisiert wurde

function

onBuild

Optionaler Callback, der ausgeführt wird, wenn die IBAN generiert wurde

function

onAssume

Optionaler Callback, der ausgeführt wird, wenn die generierte IBAN in das Bankverbindungsformular übernommen wurde

function

Verweise

Wegweiser: Einführung des SEPA-Lastschriftverfahrens

Wegweiser: Bankverbindungen abfragen

Zum Inhaltsverzeichnis

4 SEPA-Umstellung für V7-Shops

Die folgende Anleitung ist für alle Shops geeignet, die WEBSALE E-Commerce Version 7 verwenden. Bei diesen Shops ist für die Umstellung auf das SEPA-Lastschriftverfahren die Einführung der erweiterten Kundendatenverwaltung erforderlich, falls dies noch nicht geschehen ist. In WEBSALE E-Commerce ab Version 8 ist diese Funktionalität als "Multiple Kundendaten" bereits standardmäßig implementiert.

Damit Sie die Integration des SEPA-Lastschriftverfahrens möglichst einfach und schnell durchführen können, lässt diese Anleitung jedoch die vollständige Verwaltung der erweiterten Kundendaten im Kundenkonto unberücksichtigt.

Integration

Die Shop-Integration gliedert sich in zwei Phasen. Zunächst wird (falls erforderlich) die Basis-Funktionalität der erweiterten Kundendatenverwaltung integriert und im Anschluss die SEPA-Lastschrift.

Erste Phase: Erweiterte Kundendatenverwaltung integrieren

Um die Basis-Funktionalität der erweiterten Kundendatenverwaltung zu implementieren, sind verschiedene Einstellungen in den Konfigurationen design.ini, websale.ini und authent.ini erforderlich. Außerdem müssen die beiden Templates "ws_address_manage.htm" und "ws_deliv_address_manage.htm" neu erstellt sowie die beiden Templates "ws_address.htm" und "ws_place_order.htm" angepasst werden.

Schritt 1: Einstellungen in der Konfiguration "design.ini"

Fügen Sie folgende Parameter im Abschnitt <Templates> ein:

<Templates
   ...
   AddressManage      =   <Ihr TemplateVerzeichnis>/ws_address_manage.htm
   DelivAddressManage =   <Ihr TemplateVerzeichnis>/ws_deliv_address_manage.htm
   ...
</Templates>

Beschreibung der Parameter:

Parameter

Zweck

Werte

AddresssManage

Name des Templates für die Rechnungsadressen-Verwaltung inkl. Angabe des Template-Verzeichnisnamens.

 

DelivAddresssManage

Name des Templates für die Lieferadressen-Verwaltung inkl. Angabe des Template-Verzeichnisnamens.

 

Diese beiden Templates müssen für V7-Shops neu erstellt werden (siehe weiter unten).

Schritt 2: Einstellungen in der Konfiguration "websale.ini"

Integrieren Sie die Elemente für die Dropdown-Liste zur Adressauswahl, die später auf dem Template "ws_address.htm" integriert wird:

<DeliveryAddressSelection>
   NoDeliveryAddress          =   Keine abweichende Lieferadresse verwenden
   DeliveryAddressPrefix      =   # Hinterlegte Lieferadresse:
   Separator                  =   --------
</DeliveryAddressSelection>

Integrieren Sie die benötigten Fehlermeldungen im Abschnitt <NotifyMessages-Txt>:

<NotifyMessages-Txt>
   ...
   Bank-Saved         =   Ihre Bankverbindung wurde erfolgreich gespeichert
   Bank-Deleted       =   Ihre Bankverbindung wurde erfolgreich gelöscht
   CCard-Saved        =   Ihre Kreditkartendaten wurden erfolgreich gespeichert
   CCard-Deleted      =   Ihre Kreditkartendaten wurden erfolgreich gelöscht
   Addr-Saved         =   Ihre Rechnungsadresse wurde erfolgreich gespeichert
   Addr-Deleted       =   Ihre Rechnungsadresse wurde erfolgreich gelöscht
   DelivAddr-Saved    =   Ihre Lieferadresse wurde erfolgreich gespeichert
   DelivAddr-Deleted  =   Ihre Lieferadresse wurde erfolgreich gelöscht
   DelivAddr-Invalid  =   Die angegebene Lieferadresse ist ungültig
   ...
</NotifyMessages-Txt>

Schritt 3: Einstellungen in der Konfiguration "authent.ini"

Fügen Sie folgende Parameter im Abschnitt <UserData> ein:

<UserData>
   SaveCreditCardData-Allow        =       no
   SaveBankData-Allow              =       no
</UserData>

Damit ist festgelegt, dass die erweiterte Kundendatenverwaltung ohne Speicherung im Kundenkonto erfolgt.

Schritt 4: Erstellung der Templates "ws_address_manage.htm" und "ws_deliv_address_manage.htm"

Diese beiden Templates für die Verwaltung der Rechnungs- und Lieferadressen stehen Ihnen hier zur Verfügung:

Materialien: ws_address_manage.htm

Materialien: ws_deliv_address_manage.htm

Schritt 5: Anpassung des Templates "ws_address.htm"

Auf diesem Template für die Abfrage der Rechnungsadresse im Bestellablauf müssen folgenden Anpassungen durchgeführt werden:

{!ST-Test} - Neg. Bereichsklammerung für den Radiobutton "Abweichende Lieferadresse ja/nein".

{ST-SingleData} - Neuer Bereich für den Radiobutton "Abweichende Lieferadresse ja/nein".

{ST-MultipleData} - Neuer Bereich für die Auswahlmöglichkeit einer abweichenden Lieferadresse.

{!ST-Test}
  ~BT-Addr_DelivAddr_yes~ An eine abweichende Lieferadresse<br>
  ~BT-Addr_DelivAddr_no~ An meine oben genannte Rechnungsadresse
{/!ST-Test}

{ST-Test} 
  {ST-SingleData}
    ~BT-Addr_DelivAddr_yes~ An eine abweichende Lieferadresse<br>
    ~BT-Addr_DelivAddr_no~ An meine oben genannte Rechnungsadresse
  {/ST-SingleData}
  
  {ST-MultipleData}
   ~WS-DelivAddr_list~
    {!D-Data}{D-NewDelivAddressLink} <input name="~BT-Addr_DelivAddr_new~" type="submit" value="Neue Lieferadresse anlegen">{/D-NewDelivAddressLink}{/!D-Data}
    {WS-DelivAddr}<a href="~WS-DelivAddrManageLink~">Lieferadresse ändern</a>{/WS-DelivAddr}
  {/ST-MultipleData}
{/ST-Test} 

Schritt 6: Anpassung des Templates "ws_place_order.htm"

Auf diesem Template (Bestellschritt 4 = Bestellübersichtsseite) müssen folgenden Anpassungen durchgeführt werden:

{!ST-Test} - Neg. Bereichsklammerung für die bisherigen Felder zur Kreditkartendaten- und Bankdaten-Eingabe.

{ST-Test} - Bereichsklammerung mit den neuen Bereichen {ST-MultipleData}, {ST-MultipleDataInput} sowie {ST-SingleData}, {ST-SingleDataInput}
und {BANK-SingleDataInput} für die Bankdaten- und Kreditkarten-Eingabefelder.

...
{!ST-Test}
  {WS-CCardFields}~WS-CCardFields~{/WS-CCardFields}
  {WS-DebitFields}~WS-DebitFields~{/WS-DebitFields}
{/!ST-Test}

{ST-Test}
  {ST-MultipleData}
   {WS-CCardFields}
    {CC-MultipleDataInput}
      {!CC-CardSelected}
      Bitte füllen Sie die unten stehenden Felder aus:
      ~CC-SingleDataInput~ (Tag ist veraltet)
      {/!CC-CardSelected}
    {/CC-MultipleDataInput}
   {/WS-CCardFields}
  
   {WS-DebitFields}
    {BANK-MultipleDataInput}
     {!BANK-AccountSelected}
     Bitte füllen Sie die unten stehenden Felder aus:
     ~BANK-SingleDataInput~
     {BT-BankChange}<input name="~BT-BankChange~"type="submit" value="Bankdaten ändern" class="button">{/BT-BankChange}
     {BT-BankProof}<input type="submit" name="~BT-BankProof~" value="Daten prüfen" class="button">{/BT-BankProof}
     {/!BANK-AccountSelected}
    {/BANK-MultipleDataInput}
   {/WS-DebitFields}
  {/ST-MultipleData}
  
  {ST-SingleData}
   {WS-CCardFields}
    {CC-SingleDataInput} (Tag ist veraltet)
    ~CC-SingleDataInput~ (Tag ist veraltet)
    {/CC-SingleDataInput} (Tag ist veraltet)
   {/WS-CCardFields}
   
   {WS-DebitFields}
    {BANK-SingleDataInput}
    ~BANK-SingleDataInput~  
    {BT-BankChange}<input name="~BT-BankChange~" type="submit" value="ändern">{/BT-BankChange}
    {BT-BankProof}<input type="submit" name="~BT-BankProof~" value="Bankdaten prüfen">{/BT-BankProof}
    {/BANK-SingleDataInput}
   {/WS-DebitFields}
  {/ST-SingleData}
{/ST-Test}
...

Schritt 7: Prüfen der Integration der erweiterten Kundendatenverwaltung

Mit dem folgenden Aufruf können Sie prüfen, ob die erweiterte Kundendatenverwaltung erfolgreich integriert wurde:

www.Ihre-domain.de/?websale7=<shopid>&test=on&multiple_user_data=yes

Führen Sie eine Testbestellung durch und überprüfen Sie, ob alle Daten korrekt übermittelt werden.

Schritt 8: Live-Schaltung der erweiterten Kundendatenverwaltung

Am Tag der Live-Schaltung muss der Shop für einige Minuten offline gehen.

Während der Offline-Phase

müssen alle {!ST-Test} und {ST-Test} Bereiche entfernt werden;

stellt die WEBSALE-Technik die neue Datenbank für multiple Kundendaten zur Verfügung.

Nach Rücksprache mit der WEBSALE Technik wird der Shop wieder online geschaltet. Der Shopbetreiber kann mit WEBSALE eine beliebige Uhrzeit für die Offline-Phase vereinbaren. Sie sollte auf Basis der Shop-Statistik im täglichen Zeitraum mit dem geringsten Shop-Traffic liegen.

Zweite Phase: SEPA-Lastschriftverfahren integrieren

Zunächst sind verschiedene Einstellungen in der Konfiguration websale.ini erforderlich. Anschließend müssen die Templates "ws_place_order.htm" und ggf. "ws_bank_manage.htm" angepasst werden.

Schritt 1: Einstellungen in der Konfiguration "websale.ini"

Fügen Sie folgende Parameter im Abschnitt <PaymentDebitNote-Txt> ein:

<PaymentDebitNote-Txt>
   ...
   SEPAMode                        = test
   IBAN                            = IBAN
   BIC                             = BIC
   BICRequired                     = yes
   SEPACreditorIdentifier          = DE999EXAMPLE999
   SEPAMandateGeneratorOffset      = 1000000
   SEPAMandateGeneratorPrefix      = DEU-
   SEPACountry-Rule                = 
   SEPACountry-List                = 
   ...
</PaymentDebitNote-Txt>

Beschreibung der Parameter:

Parameter

Zweck

Werte

SEPAMode

SEPA-Verfahren aktiv/inaktiv bzw. in Testmodus schalten.

on (aktivieren)

off (deaktivieren)

test (im Testmodus aktivieren)

Standard: off

IBAN

Internationale Bankkontonummer, in Deutschland 22-stellig.

 

BIC

Bankkennzeichen mit einer Länge von 8 oder 11 alphanumerischen Zeichen

 

BICRequired

Legt fest, ob das Bankkennzeichen erforderlich ist oder nicht.

yes (erforderlich

no (nicht erforderlich)

Standard: no

SEPACreditorIdentifier

Gläubiger-Identifikationsnummer (Pflichtangabe).

 

SEPAMandateGeneratorOffset

Startwert, ab dem der numerische Teil der automatisch vom Shop generierten Mandatsreferenz hochgezählt wird.

Beispiel: Der Wert 320001 bewirkt, dass im ersten erzeugten Mandats-PDF die Nummer 320001 verwendet wird, im zweiten PDF die Nummer 320002 usw.

 

SEPAMandateGeneratorPrefix

Präfix der vom Shop automatisch generierten Mandatsreferenz.

 

SEPACountry-Rule

Legt fest, für welche Länder die SEPA-Abfrage entweder erlaubt oder verboten ist.

AllowCountries

DenyCountries

Standard: DenyCountries

SEPACountry-List

Liste der Länderkürzel.

Optional: 2-stellige
SEPA-Länderkennung

Integrieren Sie die zugehörigen Fehlermeldungen im Abschnitt <VerifyCustomerData>:

<VerifyCustomerData>
...
BankAccountIBANError-Txt           = Die eingegebene IBAN ist nicht korrekt. Bitte überprüfen Sie Ihre Eingaben und versuchen Sie es erneut.
BankAccountIBANEmptyError-Txt      = Bitte geben Sie Ihre IBAN an und versuchen Sie es erneut.
BankAccountIBANLengthError-Txt     = Die Zeichenlänge der eingegebenen IBAN ist nicht korrekt. Bitte überprüfen Sie Ihre Eingaben und versuchen Sie es erneut.
BankAccountIBANChecksumError-Txt   = Die eingegebene IBAN ist nicht korrekt. Bitte überprüfen Sie Ihre Eingaben und versuchen Sie es erneut.
BankAccountIBANCountryError-Txt    = Das Länderkennzeichen Ihrer eingegebenen IBAN wird nicht unterstützt. Bitte überprüfen Sie Ihre Eingaben und versuchen Sie es erneut.
BankAccountBICError-Txt            = Die eingegebene BIC ist nicht korrekt. Bitte überprüfen Sie Ihre Eingaben und versuchen Sie es erneut.
BankAccountBICEmptyError-Txt       = Bitte geben Sie Ihre BIC an und versuchen Sie es erneut.
...
</VerifyCustomerData>

Definieren Sie die PDF-Anhänge für die Bestelleingangsbestätigungs-E-Mail, mit denen die Mandatserteilung erfolgt, im Abschnitt <CustomerMail>:

<CustomerMail>
   ...
   SEPACustomerPDFTemplate = pdf_sepa_customer.htm
   SEPACustomerPDFFileName = SEPA-DirectMandate_~BANK-IBAN~_~WS-OrderID~.pdf
   SEPACompanyPDFTemplate  = pdf_sepa_company.htm
   SEPACompanyPDFFileName  = SEPA-DirectMandate_~BANK-IBAN~_~WS-OrderID~.pdf
   ...
</CustomerMail>

Da beim SEPA-Verfahren zwischen Basis-Lastschrift und Firmenlastschrift unterschieden wird, sind in der Konfiguration zwei unterschiedliche PDF-Dateien vorgesehen, die vom Shop generiert werden. Die Templates für die Erzeugung der PDF-Anhänge zur Bestelleingangsbestätigungs-E-Mail stehen Ihnen hier zur Verfügung:
Materialien: Materialien zur SEPA-Integration


Hinweis:

Sie können verhindern, dass Mandatsnummern generiert sowie PDF-Anhänge erstellt und versendet werden, indem Sie für die Parameter SEPACustomerPDFTemplate, SEPACustomerPDFFileName, SEPACompanyPDFTemplate und SEPACompanyPDFFileName keine Werte eintragen.

Schritt 2: Anpassung des Templates "ws_place_order.htm"

Innerhalb der Bereiche {BANK-MultipleDataInput} und {BANK-SingleDataInput} sind die nachfolgend aufgeführten Änderungen erforderlich. Umschließen Sie die folgenden Bereiche mit {!BANK-SEPAMode}:

  {BT-BankChange} - Button zum Ändern der Bankverbindung

  {BT-BankProof} - Button zum Prüfen der Bankverbindung

{!BANK-SEPAMode}
   {BT-BankChange}<input name="~BT-BankChange~" type="submit" value="ändern">{/BT-BankChange}
   {BT-BankProof}<input type="submit" name="~BT-BankProof~" value="Daten prüfen">{/BT-BankProof}
{/!BANK-SEPAMode}

Schritt 3: Anpassung des Templates "ws_bank_manage.htm"

Dieses Template muss nur angepasst werden, wenn die Funktionalität "Multiple Kundendaten" bereits vollständig im Shop integriert ist. Folgende Bereiche sind relevant:

Anpassung des Bereichs {BANK-Overview}

Fügen Sie - wie im nachfolgenden Beispiel gezeigt - innerhalb der Schleife {@BANK-Data} die Bereiche {!BANK-SEPAMode} und {BANK-SEPAMode} ein.

{BANK-Overview}
   {BANK-Data}
      {@BANK-Data}
 
         {!BANK-UserDescr}
            ~BANK-Owner~,
            {BANK-SEPAMode}~BANK-IBAN~{/BANK-SEPAMode}
            {!BANK-SEPAMode}~Bank-KoNbr~{/!BANK-SEPAMode}
         {/!BANK-UserDescr}
 
      {/@BANK-Data}
   {/BANK-Data}
{/BANK-Overview}

Anpassung des Bereichs {BANK-Edit}

Auch im Bereich {BANK-Edit} müssen - wie im nachfolgenden Beispiel gezeigt - die Bereiche {!BANK-SEPAMode} und {BANK-SEPAMode} eingefügt werden.

Wir empfehlen, die folgenden Bereiche innerhalb von {!BANK-SEPAMode} einzuschließen:

  {BANK-InputStepOne} - Schritt 1 für die Eingabe der Bankdaten ohne SEPA.
  {BANK-InputStepTwo} - Schritt 2 für die Eingabe der Bankdaten ohne SEPA.
  {Bank-Mode_Manage} - Buttons und Links für den Aufruf der Seite/des Templates über das Kundenkonto.
  {Bank-Mode_Order} - Buttons und Links für den Aufruf der Seite/des Templates aus dem Bestellablauf.

Der Bereich {BANK-SEPAMode} wird verwendet, wenn SEPAMode auf on gesetzt ist. Hier müssen folgende Informationen enthalten sein:

Ob die zu bearbeitende Bankverbindung einem wiederkehrendem Mandat unterliegt.

Eingabefelder für die gewünschte Bezeichnung der Bankverbindung, Kontoinhaber, IBAN, BIC, Name der Bank.

{Bank-Mode_Manage} - Buttons und Links für den Aufruf der Seite/des Templates über das Kundenkonto.

{Bank-Mode_Order} - Buttons und Links für den Aufruf der Seite/des Templates aus dem Bestellablauf.

{BANK-Edit}

  {!BANK-SEPAMode}
    <h2>Bankverbindung bearbeiten {BANK-InputStepOne}Schritt 1: Eingeben der Daten{/BANK-InputStepOne}{BANK-InputStepTwo}Schritt 2: Prüfen der Daten{/BANK-InputStepTwo}</h2>
    <form action="~FORM-BankManage~" method="POST">
      {BANK-InputStepOne} 
        ~BANK-UserDescr_text~:
        <input type="text" name="~BANK-UserDescr_input~" value="~BANK-UserDescr~" class="input~BANK-UserDescr_error~">
      {/BANK-InputStepOne}
      {BANK-InputStepTwo}
        {BANK-UserDescr}~BANK-UserDescr~{/BANK-UserDescr}
      {/BANK-InputStepTwo}
      ~BANK-InputFields~
      {BANK-Mode_Manage}
        {BANK-NewBankLink}<a href="~BANK-NewBankLink~">Neue Bankverbindung</a>{/BANK-NewBankLink}
        <a href="~BANK-OverviewLink~">zurück zur Übersicht</a>
        {BT-BankChange}<input type="submit" name="~BT-BankChange~" value="ändern">{/BT-BankChange}
        {BANK-DeleteBankConfirm}<a href="~BANK-DeleteBankConfirm~">löschen</a>{/BANK-DeleteBankConfirm}
        {BT-BankProof}<input type="submit" name="~BT-BankProof~" value="Daten prüfen">{/BT-BankProof}
        {BT-BankSubmit}<input type="submit" name="~BT-BankSubmit~" value="speichern">{/BT-BankSubmit}
      {/BANK-Mode_Manage}
      
      {BANK-Mode_Order}
        <a href="~BANK-ToOrderLink~">zurück zur Bestellung</a>
        {BT-BankChange}<input type="submit" name="~BT-BankChange~" value="ändern">{/BT-BankChange}
        {BANK-DeleteBankConfirm}<a href="~BANK-DeleteBankConfirm~">löschen</a>{/BANK-DeleteBankConfirm}
        {BT-BankProof}<input type="submit" name="~BT-BankProof~" value="Daten prüfen">{/BT-BankProof}
        {BT-BankSubmit}<input type="submit" name="~BT-BankSubmit~" value="verwenden">{/BT-BankSubmit}
      {/BANK-Mode_Order}
    </form>
  {/!BANK-SEPAMode}

  {BANK-SEPAMode}
    <form action="~FORM-BankManage~" method="POST">
      ~BANK-UserDescr_text~:
      <input type="text" name="~BANK-UserDescr_input~" value="~BANK-UserDescr~" class="input~BANK-UserDescr_error~">
        
      {!BANK-SEPADirectMandateType(2)}Bitte geben Sie in untenstehende Felder Ihre Bankndaten ein. Felder mit einem "*" gekennzeichnet sind erforderlich. {/!BANK-SEPADirectMandateType(2)}
      {BANK-SEPADirectMandateType(2)}Für diese Bankverbindung liegt ein wiederkehrendes Mandat vor. Die Daten dieser Bankverbindung sind daher nicht änderbar. Legen Sie bitte bei Bedarf einfach eine neue Bankverbindung an.{/BANK-SEPADirectMandateType(2)}    
      ~BANK-InputFields~

      {BANK-Mode_Manage}
        {BANK-NewBankLink}<a href="~BANK-NewBankLink~">neue Bankverbindung</a>{/BANK-NewBankLink}
        {BANK-DeleteBankConfirm}<a href="~BANK-DeleteBankConfirm~">löschen</a>{/BANK-DeleteBankConfirm}
        {!BANK-SEPADirectMandateType(2)}{BT-BankSubmit}<input type="submit" name="~BT-BankSubmit~" value="speichern">{/BT-BankSubmit}{/!BANK-SEPADirectMandateType(2)}
      {/BANK-Mode_Manage}
      
      {BANK-Mode_Order}
        <a href="~BANK-ToOrderLink~">zurück zur Bestellung</a>
        {BT-BankChange}<input type="submit" name="~BT-BankChange~" value="ändern">{/BT-BankChange}
        {BANK-DeleteBankConfirm}<a href="~BANK-DeleteBankConfirm~">löschen</a>{/BANK-DeleteBankConfirm}
        {BT-BankSubmit}<input type="submit" name="~BT-BankSubmit~" value="verwenden">{/BT-BankSubmit}
      {/BANK-Mode_Order}
    </form>
  {/BANK-SEPAMode}

{/BANK-Edit} 

Schritt 4: Prüfen der SEPA-Integration

Mit dem folgenden Aufruf können Sie prüfen, ob die SEPA-Integration korrekt angezeigt wird:

www.Ihre-domain.de/?websale7=<shopid>&test=on

Nach dem Shop-Aufruf wird der SEPA-Modus mit dem nächsten Klick aktiviert. Führen Sie eine Testbestellung durch und überprüfen Sie, ob alle Daten korrekt übermittelt werden.

Schritt 5: Live-Schaltung der SEPA-Integration

Am Umstellungsdatum muss in der Konfiguration websale.ini im Abschnitt <PaymentDebitNote-Txt> der Parameter SEPAMode auf on gesetzt werden. Außerdem sollten Sie alle Template-Bereiche {!BANK-SEPAMode} entfernen.

Tags

Referenz: BANK-SEPAMode

Referenz: BANK-IBAN

Referenz: BANK-BIC

Referenz: BANK-SEPALastDirectMandate

Referenz: BANK-SEPADirectMandateType

Referenz: BANK-SEPADirectDebitType

Referenz: BANK-SEPACreditorIdentifier

Verweise

Wegweiser: Bankverbindung abfragen

Referenz: Abschnitt PaymentDebitNote-Txt

Referenz: Abschnitte PaymentXXX-Txt

Zum Inhaltsverzeichnis

5 SEPA-Umstellung für V8-Shops

Die folgende Anleitung ist für alle Shops geeignet, die WEBSALE E-Commerce Version 8 verwenden und vor dem 11.11.2013 bereitgestellt wurden.

Integration

Für die Shop-Integration sind Einstellungen in der Konfiguration shop.config und Anpassungen der drei Templates "ws_bank_manage.htm", "ws_place_order.htm" und "ws_order_history.htm" erforderlich:

Schritt 1: Einstellungen in der Shopkonfiguration shop.config

Fügen Sie folgende Parameter in den Abschnitt <PaymentDebitNote-Txt> ein:

<PaymentDebitNote-Txt>
   ...
   SEPAMode                    = test
   IBAN                        = IBAN
   BIC                         = BIC
   BICRequired                 = yes
   SEPACreditorIdentifier      = DE999EXAMPLE999
   SEPAMandateGeneratorOffset  = 1000000
   SEPAMandateGeneratorPrefix  = DEU-
   SEPACountry-Rule            = 
   SEPACountry-List            = 
   ...
</PaymentDebitNote-Txt>

Beschreibung der Parameter:

Parameter

Zweck

Werte

SEPAMode

SEPA-Verfahren aktiv/inaktiv bzw. in Testmodus schalten

on (aktivieren)

off (deaktivieren)

test (im Testmodus aktivieren)

Standard: off

IBAN

Internationale Bankkontonummer, in Deutschland 22-stellig

 

BIC

Bankkennzeichen mit einer Länge von 8 oder 11 alphanumerischen Zeichen

 

BICRequired

Legt fest, ob das Bankkennzeichen erforderlich ist oder nicht. Für Zahlungsverkehr innerhalb Deutschlands ist die Angabe des BIC nicht erforderlich.

yes (erforderlich

no (nicht erforderlich)

Standard: no

SEPACreditorIdentifier

Gläubiger-Identifikationsnummer (Pflichtangabe)

 

SEPAMandateGeneratorOffset

Startwert, ab dem der numerische Teil der automatisch vom Shop generierten Mandatsreferenz hochgezählt wird.

Beispiel: Der Wert 320001 bewirkt, dass im ersten erzeugten Mandats-PDF die Nummer 320001 verwendet wird, im zweiten PDF die Nummer 320002 usw.

 

SEPAMandateGeneratorPrefix

Präfix der vom Shop automatisch generierten Mandatsreferenz

 

SEPACountry-Rule

Legt fest, für welche Länder die SEPA-Abfrage entweder erlaubt oder verboten ist.

AllowCountries

DenyCountries

Standard: DenyCountries

SEPACountry-List

Liste der Länderkürzel

Optional: 2-stellige
SEPA-Länderkennung
gemäß ISO-3166-2

Integrieren Sie die zugehörigen Fehlermeldungen im Abschnitt <VerifyCustomerData>:

<VerifyCustomerData>
   ...
   BankAccountIBANError-Txt           = Die eingegebene IBAN ist nicht korrekt. Bitte überprüfen Sie Ihre Eingaben und versuchen Sie es erneut.
   BankAccountIBANEmptyError-Txt      = Bitte geben Sie Ihre IBAN an und versuchen Sie es erneut.
   BankAccountIBANLengthError-Txt     = Die Zeichenlänge der eingegebenen IBAN ist nicht korrekt. Bitte überprüfen Sie Ihre Eingaben und versuchen Sie es erneut.
   BankAccountIBANChecksumError-Txt   = Die eingegebene IBAN ist nicht korrekt. Bitte überprüfen Sie Ihre Eingaben und versuchen Sie es erneut.
   BankAccountIBANCountryError-Txt    = Das Länderkennzeichen Ihrer eingegebenen IBAN wird nicht unterstützt. Bitte überprüfen Sie Ihre Eingaben und versuchen Sie es erneut.
   BankAccountBICError-Txt            = Der eingegebene BIC ist nicht korrekt. Bitte überprüfen Sie Ihre Eingaben und versuchen Sie es erneut.
   BankAccountBICEmptyError-Txt       = Bitte geben Sie Ihre BIC an und versuchen Sie es erneut.
   ...
</VerifyCustomerData>

Definieren Sie die PDF-Anhänge für die Bestelleingangsbestätigungs-E-Mail, mit denen die Mandatserteilung erfolgt, im Abschnitt <CustomerMail>:

<CustomerMail>
   ...
   SEPACustomerPDFTemplate = pdf_sepa_customer.htm
   SEPACustomerPDFFileName = SEPA-DirectMandate_~BANK-IBAN~_~WS-OrderID~.pdf
   SEPACompanyPDFTemplate  = pdf_sepa_company.htm
   SEPACompanyPDFFileName  = SEPA-DirectMandate_~BANK-IBAN~_~WS-OrderID~.pdf
   ...
</CustomerMail>

Da beim SEPA-Verfahren zwischen Basis-Lastschrift und Firmenlastschrift unterschieden wird, sind in der Konfiguration zwei unterschiedliche PDF-Dateien vorgesehen, die vom Shop generiert werden. Die Templates für die Erzeugung der PDF-Anhänge zur Bestelleingangsbestätigungs-E-Mail stehen Ihnen hier zur Verfügung:
Materialien: Materialien zur SEPA-Integration


Hinweis:

Sie können verhindern, dass Mandatsnummern generiert sowie PDF-Anhänge erstellt und versendet werden, indem Sie für die Parameter SEPACustomerPDFTemplate, SEPACustomerPDFFileName, SEPACompanyPDFTemplate und SEPACompanyPDFFileName keine Werte eintragen.

Schritt 2: Anpassung des Templates "ws_bank_manage.htm"

Auf diesem Template müssen die Bereiche {BANK-Overview}, {BANK-Edit} und {BANK-ConfirmDelete} angepasst werden.

Anpassung des Bereichs {BANK-Overview}

Fügen Sie - wie im nachfolgenden Beispiel gezeigt - innerhalb der Schleife {@BANK-Data} die Bereiche {!BANK-SEPAMode} und {BANK-SEPAMode} ein.

Der Bereich {!BANK-SEPAMode} wird verwendet, wenn SEPAMode auf off gesetzt ist (d. h. maximal bis zum 01. Februar 2014). Hier müssen die Tags für Kontonummer, Bankleitzahl und Land des Kreditinstitutes enthalten sein (bisheriges Lastschriftverfahren).

Der Bereich {BANK-SEPAMode} wird verwendet, wenn SEPAMode auf on gesetzt ist (d. h. spätestens am 01. Februar 2014). Hier müssen folgende Informationen für das SEPA-Lastschriftverfahren enthalten sein:

IBAN

BIC

Anzeige der letzten Mandatsreferenz

Anzeige des Mandattyps

Anzeige der Lastschriftart

{BANK-Overview}
<!-- Bereich für die Anzeige aller angelegten Lieferadressen -->
  {BANK-Data}
    {@BANK-Data}        
    
    ~BANK-Owner_text~: ~BANK-Owner~
    
    {!BANK-SEPAMode}
      ~BANK-KoNbr_text~: ~BANK-KoNbr~
      ~BANK-BLZ_text~: ~BANK-BLZ~
      ~BANK-Country_text~: ~BANK-Country~
    {/!BANK-SEPAMode}
    
    ~BANK-Bank_text~ ~BANK-Bank~
    
    {BANK-SEPAMode}
      ~BANK-IBAN_text~: ~BANK-IBAN~
      ~BANK-BIC_text~: ~BANK-BIC~
      
      {BANK-SEPALastDirectMandate}
      Letzte Mandatsnummer: ~BANK-SEPALastDirectMandate~
      {/BANK-SEPALastDirectMandate}
      
      {!BANK-SEPADirectMandateType(0)}
      Mandatstyp: ~BANK-SEPADirectMandateType~ ({BANK-SEPADirectMandateType(1)}einmalig{/BANK-SEPADirectMandateType(1)}{BANK-SEPADirectMandateType(2)}wiederkehrend{/BANK-SEPADirectMandateType(2)})
      {/!BANK-SEPADirectMandateType(0)}
      
      {!BANK-SEPADirectDebitType(0)}
      Lastschriftart: ~BANK-SEPADirectDebitType~ ({BANK-SEPADirectDebitType(1)}Basis-Lastschrift{/BANK-SEPADirectDebitType(1)}{BANK-SEPADirectDebitType(2)}Firmen-Lastschrift{/BANK-SEPADirectDebitType(2)})
      {/!BANK-SEPADirectDebitType(0)}    
    {/BANK-SEPAMode}
    
    {/@BANK-Data}
  {/BANK-Data}
{/BANK-Overview}

Anpassung des Bereichs {BANK-Edit}

Auch im Bereich {BANK-Edit} müssen - wie im nachfolgenden Beispiel gezeigt - die Bereiche {!BANK-SEPAMode} und {BANK-SEPAMode} eingefügt werden.

Wir empfehlen, die folgenden Bereiche innerhalb von {!BANK-SEPAMode} einzuschließen:

  {BANK-InputStepOne} - Schritt 1 für die Eingabe der Bankdaten ohne SEPA.
  {BANK-InputStepTwo} - Schritt 2 für die Eingabe der Bankdaten ohne SEPA.
  {Bank-Mode_Manage} - Buttons und Links für den Aufruf der Seite/des Templates über das Kundenkonto.
  {Bank-Mode_Order} - Buttons und Links für den Aufruf der Seite/des Templates aus dem Bestellablauf.

Der Bereich {BANK-SEPAMode} wird verwendet, wenn SEPAMode auf on gesetzt ist. Hier müssen folgende Informationen enthalten sein:

Ob die zu bearbeitende Bankverbindung einem wiederkehrendem Mandat unterliegt.

Eingabefelder für die gewünschte Bezeichnung der Bankverbindung, Kontoinhaber, IBAN, BIC, Name der Bank.

{Bank-Mode_Manage} - Buttons und Links für den Aufruf der Seite/des Templates über das Kundenkonto.

{Bank-Mode_Order} - Buttons und Links für den Aufruf der Seite/des Templates aus dem Bestellablauf.

{BANK-Edit}
  <!-- Bereich für die Eingabe einer neuen Lieferadresse und Bearbeitungs-Bereich zum Ändern einer bestehenden Lieferadresse -->
  <form action="~FORM-BankManage~" method="POST" autocomplete="off">
  
    {!BANK-SEPAMode}

      {BANK-InputStepOne}
        <!-- Schritt 1 für die Eingabe der Bankdaten -->
        ~BANK-UserDescr_text~
        <input type="text" name="~BANK-UserDescr_input~" value="~BANK-UserDescr~">
        {BANK-UserDescr_error}~BANK-UserDescr_errortext~{/BANK-UserDescr_error}
                    
        <label >~BANK-Owner_text~ *</label>
        <input type="text" value="~BANK-Owner~" name="~BANK-Owner_input~">
        {BANK-Owner_error}~BANK-Owner_errortext~{/BANK-Owner_error}
        
        <label >~BANK-KoNbr_text~ *</label>
        <input type="text" value="~BANK-KoNbr~" name="~BANK-KoNbr_input~" autocomplete="off">
        {BANK-KoNbr_error}~BANK-KoNbr_errortext~{/BANK-KoNbr_error}
        
        <label>~BANK-BLZ_text~ *</label>
        <input type="text" value="~BANK-BLZ~" name="~BANK-BLZ_input~" autocomplete="off">
        {BANK-BLZ_error}~BANK-BLZ_errortext~{/BANK-BLZ_error}
        
        <label>~BANK-Country_text~ *</label>
        ~BANK-Country_list~
        {BANK-Country_error}~BANK-Country_errortext~{/BANK-Country_error}
      {/BANK-InputStepOne}
           
      {BANK-InputStepTwo}
        <!-- Schritt 2 für die Eingabe der Bankdaten -->
        {BANK-UserDescr}~BANK-UserDescr_text~: ~BANK-UserDescr~{/BANK-UserDescr}           
        ~BANK-Owner_text~: ~BANK-Owner~
        ~BANK-KoNbr_text~: ~BANK-KoNbr~
        ~BANK-BLZ_text~: ~BANK-BLZ~
        ~BANK-Bank_text~: ~BANK-Bank_list~
        ~BANK-Country_text~: ~BANK-Country~
      {/BANK-InputStepTwo}
            
      {BANK-Mode_Manage}
        <!-- Bereich, der angezeigt wird, wenn das Template über einen Kundenkonto-Link geöffnet wurde -->
        <a href="~BANK-OverviewLink~">Zurück zur Übersicht</a>
        {BANK-DeleteBankConfirm}<a href="~BANK-DeleteBankConfirm~">Löschen</a>{/BANK-DeleteBankConfirm}
        {BT-BankSubmit}<input type="submit" name="~BT-BankSubmit~" value="Speichern" >{/BT-BankSubmit}
        {BT-BankChange}<input type="submit" name="~BT-BankChange~" value="Ändern">{/BT-BankChange}
        {BT-BankProof}<input type="submit" name="~BT-BankProof~" value="Prüfen">{/BT-BankProof}
      {/BANK-Mode_Manage}
            
      {BANK-Mode_Order}
        <!-- Bereich, der angezeigt wird, wenn das Template aus dem Bestellprozess heraus aufgerufen wird -->
        <a href="~BANK-ToOrderLink~">Zurück zur Übersicht</a>
        {BANK-DeleteBankConfirm}<a href="~BANK-DeleteBankNoConfirm~">Löschen</a>{/BANK-DeleteBankConfirm}
        {BT-BankSubmit}<input type="submit" name="~BT-BankSubmit~" value="Speichern" >{/BT-BankSubmit}
        {BT-BankChange}<input type="submit" name="~BT-BankChange~" value="Ändern">{/BT-BankChange}
        {BT-BankProof}<input type="submit" name="~BT-BankProof~" value="Prüfen">{/BT-BankProof}
      {/BANK-Mode_Order}
    
    {/!BANK-SEPAMode}
            
            
    {BANK-SEPAMode}
    
      {BANK-SEPADirectMandateType(2)}
        Für diese Bankverbindung liegt ein wiederkehrendes Mandat vor. Die Daten dieser Bankverbindung sind daher nicht änderbar. Legen Sie bitte bei Bedarf einfach eine neue Bankverbindung an.
      {/BANK-SEPADirectMandateType(2)}
    
      <label>~BANK-UserDescr_text~</label>
      <input type="text" name="~BANK-UserDescr_input~" value="~BANK-UserDescr~" class="input~BANK-UserDescr_error~">
      {BANK-UserDescr_error}~BANK-UserDescr_errortext~{/BANK-UserDescr_error}
      
      <label>~BANK-Owner_text~ *</label>
      <input type="text" class="input_owner~BANK-Owner_error~" value="~BANK-Owner~" name="~BANK-Owner_input~">
      {BANK-Owner_error}~BANK-Owner_errortext~{/BANK-Owner_error}
      
      <label>~BANK-IBAN_text~ *</label>
      <input type="text" class="input_iban~BANK-IBAN_error~" value="~BANK-IBAN~" name="~BANK-IBAN_input~" autocomplete="off">
      {BANK-IBAN_error}~BANK-IBAN_errortext~{/BANK-IBAN_error}
      
      <label>~BANK-BIC_text~ *</label>
      <input type="text" class="input_bic~BANK-BIC_error~" value="~BANK-BIC~" name="~BANK-BIC_input~" autocomplete="off">
      {BANK-BIC_error}~BANK-BIC_errortext~{/BANK-BIC_error}
      
      <label>~BANK-BANK_text~ *</label>
      <input type="text" class="input_bank~BANK-BANK_error~" value="~BANK-BANK~" name="~BANK-BANK_input~" autocomplete="off">
      {BANK-BANK_error}~BANK-BANK_errortext~{/BANK-BANK_error}
      
              
      {BANK-Mode_Manage}
        <!-- Bereich, der angezeigt wird, wenn das Template über einen Kundenkonto-Link geöffnet wurde -->
        <a href="~BANK-OverviewLink~">Zurück zur Übersicht</a>
        {BANK-DeleteBankConfirm}<a href="~BANK-DeleteBankConfirm~">Löschen</a>{/BANK-DeleteBankConfirm}
        {!BANK-SEPADirectMandateType(2)}{BT-BankSubmit}<input type="submit" name="~BT-BankSubmit~" value="Speichern">{/BT-BankSubmit}{/!BANK-SEPADirectMandateType(2)}
      {/BANK-Mode_Manage}
                  
      {BANK-Mode_Order}
        <!-- Bereich, der angezeigt wird, wenn das Template aus dem Bestellprozess heraus aufgerufen wird -->
        <a href="~BANK-ToOrderLink~">Zurück zur Übersicht</a>
        {BANK-DeleteBankConfirm}<a href="~BANK-DeleteBankNoConfirm~">Löschen</a>{/BANK-DeleteBankConfirm}
        {BT-BankSubmit}<input type="submit" name="~BT-BankSubmit~" value="Verwenden">{/BT-BankSubmit}
      {/BANK-Mode_Order}
      
    {/BANK-SEPAMode}
  
  </form>    
{/BANK-Edit}

Anpassung des Bereichs {BANK-ConfirmDelete}

Innerhalb des Bereichs {BANK-ConfirmDelete} werden noch einmal alle Daten der Bankverbindung angezeigt, die gelöscht werden soll.

Fügen Sie einen Bereich {!BANK-SEPAMode} ein, der verwendet wird, wenn SEPAMode auf off gesetzt ist. Hier müssen die Tags für Kontonummer, Bankleitzahl und Land des Kreditinstitutes enthalten sein (bisheriges Lastschriftverfahren).

Fügen Sie einen Bereich {BANK-SEPAMode} ein, der verwendet wird, wenn SEPAMode auf on gesetzt ist. Hier müssen folgende Informationen für das SEPA-Lastschriftverfahren enthalten sein:

IBAN

BIC

Anzeige der letzten Mandatsreferenz

Anzeige des Mandattyps

Anzeige der Lastschriftart

{BANK-ConfirmDelete}
<!-- Bereich, der angezeigt wird, eine Lieferadresse erfolgreich gelöscht wurde -->
  ~BANK-Owner_text~: ~BANK-Owner~
  
  {!BANK-SEPAMode}
   ~BANK-KoNbr_text~: ~BANK-KoNbr~
   ~BANK-BLZ_text~: ~BANK-BLZ~
   ~BANK-Country_text~: ~BANK-Country~
  {/!BANK-SEPAMode}
  
  ~BANK-Bank_text~ ~BANK-Bank~
  
  {BANK-SEPAMode}
   ~BANK-IBAN_text~: ~BANK-IBAN~
   ~BANK-BIC_text~: ~BANK-BIC~
   
   {BANK-SEPALastDirectMandate}
   Letzte Mandatsnummer: ~BANK-SEPALastDirectMandate~
   {/BANK-SEPALastDirectMandate}
   
   {!BANK-SEPADirectMandateType(0)}
   Mandatstyp: ~BANK-SEPADirectMandateType~ ({BANK-SEPADirectMandateType(1)}einmalig{/BANK-SEPADirectMandateType(1)}{BANK-SEPADirectMandateType(2)}wiederkehrend{/BANK-SEPADirectMandateType(2)})
   {/!BANK-SEPADirectMandateType(0)}
   
   {!BANK-SEPADirectDebitType(0)}
   Lastschriftart: ~BANK-SEPADirectDebitType~ ({BANK-SEPADirectDebitType(1)}Basis-Lastschrift{/BANK-SEPADirectDebitType(1)}{BANK-SEPADirectDebitType(2)}Firmen-Lastschrift{/BANK-SEPADirectDebitType(2)})
   {/!BANK-SEPADirectDebitType(0)}    
  {/BANK-SEPAMode}
{/BANK-ConfirmDelete}

Schritt 3: Anpassung des Templates "ws_place_order.htm"

Auf diesem Template müssen die Bereiche {BANK-MultipleDataInput} und {BANK-SingleDataInput} angepasst werden.

Anpassung des Bereichs {BANK-MultipleDataInput}

Dieser Bereich enthält den Bereich {BANK-AccountSelected}. Fügen Sie hier den Bereich {!BANK-SEPAMode} mit den Tags für Kontonummer, Bankleitzahl, Land der Bank sowie einem "Ändern"-Link ein. Erstellen Sie dann den Bereich {BANK-SEPAMode} mit folgenden Informationen:

IBAN

BIC

Anzeige der letzten Mandatsreferenz

Anzeige des Mandattypes

Anzeige der Lastschriftart

Klammerung für die abhängige Anzeige des Ändern-Links

Innerhalb des Bereichs {!BANK-AccountSelected} sind die nachfolgend aufgeführten Änderungen erforderlich. Wir empfehlen, die folgenden Bereiche innerhalb von {!BANK-SEPAMode} einzuschließen:

  {BANK-InputStepOne} - Schritt 1 für die Eingabe der Bankdaten ohne SEPA
  {BANK-InputStepTwo} - Schritt 2 für die Eingabe der Bankdaten ohne SEPA
  {BT-BankChange} - Button zum Ändern der Bankverbindung
  {BT-BankProof} - Button zum Prüfen der Bankverbindung

Fügen Sie außerdem den Bereich {BANK-SEPAMode} mit folgenden Tags/Informationen neu hinzu:

Information, ob die zu bearbeitende Bankverbindung einem wiederkehrendem Mandat unterliegt.

Eingabefelder für die gewünschte Bezeichnung der Bankverbindung, Kontoinhaber, IBAN, BIC, Name der Bank.

{BANK-MultipleDataInput}
  
      {BANK-AccountSelected}
      
        ~BANK-Owner_text~: ~BANK-Owner~
        
        {!BANK-SEPAMode}
          ~BANK-KoNbr_text~: ~BANK-KoNbr~
          ~BANK-BLZ_text~: ~BANK-BLZ~
          ~BANK-Country_text~: ~BANK-Country~
        {/!BANK-SEPAMode}
        
        ~BANK-Bank_text~ ~BANK-Bank~
        
        {BANK-SEPAMode}
          ~BANK-IBAN_text~: ~BANK-IBAN~
          ~BANK-BIC_text~: ~BANK-BIC~
          
          {BANK-SEPALastDirectMandate}
          Letzte Mandatsnummer: ~BANK-SEPALastDirectMandate~
          {/BANK-SEPALastDirectMandate}
          
          {!BANK-SEPADirectMandateType(0)}
          Mandatstyp: ~BANK-SEPADirectMandateType~ ({BANK-SEPADirectMandateType(1)}einmalig{/BANK-SEPADirectMandateType(1)}{BANK-SEPADirectMandateType(2)}wiederkehrend{/BANK-SEPADirectMandateType(2)})
          {/!BANK-SEPADirectMandateType(0)}
          
          {!BANK-SEPADirectDebitType(0)}
          Lastschriftart: ~BANK-SEPADirectDebitType~ ({BANK-SEPADirectDebitType(1)}Basis-Lastschrift{/BANK-SEPADirectDebitType(1)}{BANK-SEPADirectDebitType(2)}Firmen-Lastschrift{/BANK-SEPADirectDebitType(2)})
          {/!BANK-SEPADirectDebitType(0)}    
        {/BANK-SEPAMode}
        
        {!BANK-SEPAMode}
            {BANK-EditLink}<a href="~BANK-EditLink~">Ändern</a>{/BANK-EditLink}
        {/!BANK-SEPAMode}
        
        {BANK-SEPAMode}
            {!BANK-SEPADirectMandateType(2)}{BANK-EditLink}<a href="~BANK-EditLink~">Ändern</a><div class="clear"></div>{/BANK-EditLink}{/!BANK-SEPADirectMandateType(2)}
            {BANK-SEPADirectMandateType(2)}Für diese Bankverbindung liegt ein wiederkehrendes Mandat vor. Die Daten dieser Bankverbindung sind daher nicht änderbar. Legen Sie bitte bei Bedarf einfach eine neue Bankverbindung an.{/BANK-SEPADirectMandateType(2)}
        {/BANK-SEPAMode}
      
      {/BANK-AccountSelected}
    
      {!BANK-AccountSelected}
      
        {!BANK-SEPAMode}
            {BANK-InputStepOne}
              <!-- Schritt 1 für die Eingabe der Bankdaten -->
              ~BANK-UserDescr_text~
              <input type="text" name="~BANK-UserDescr_input~" value="~BANK-UserDescr~">
              {BANK-UserDescr_error}~BANK-UserDescr_errortext~{/BANK-UserDescr_error}
                          
              <label >~BANK-Owner_text~ *</label>
              <input type="text" value="~BANK-Owner~" name="~BANK-Owner_input~">
              {BANK-Owner_error}~BANK-Owner_errortext~{/BANK-Owner_error}
              
              <label >~BANK-KoNbr_text~ *</label>
              <input type="text" value="~BANK-KoNbr~" name="~BANK-KoNbr_input~" autocomplete="off">
              {BANK-KoNbr_error}~BANK-KoNbr_errortext~{/BANK-KoNbr_error}
              
              <label>~BANK-BLZ_text~ *</label>
              <input type="text" value="~BANK-BLZ~" name="~BANK-BLZ_input~" autocomplete="off">
              {BANK-BLZ_error}~BANK-BLZ_errortext~{/BANK-BLZ_error}
              
              <label>~BANK-Country_text~ *</label>
              ~BANK-Country_list~
              {BANK-Country_error}~BANK-Country_errortext~{/BANK-Country_error}
            {/BANK-InputStepOne}
            {BANK-InputStepTwo}
              <!-- Schritt 2 für die Eingabe der Bankdaten -->
              {BANK-UserDescr}~BANK-UserDescr_text~: ~BANK-UserDescr~{/BANK-UserDescr}           
              ~BANK-Owner_text~: ~BANK-Owner~
              ~BANK-KoNbr_text~: ~BANK-KoNbr~
              ~BANK-BLZ_text~: ~BANK-BLZ~
              ~BANK-Bank_text~: ~BANK-Bank_list~
              ~BANK-Country_text~: ~BANK-Country~
            {/BANK-InputStepTwo}

       {BT-BankChange}<input name="~BT-BankChange~" type="submit" value="Ändern">{/BT-BankChange}
            {BT-BankProof}<input type="submit" name="~BT-BankProof~" value="Prüfen">{/BT-BankProof}
        {/!BANK-SEPAMode}
        



        {BANK-SEPAMode}

          {BANK-SEPADirectMandateType(2)}
            Für diese Bankverbindung liegt ein wiederkehrendes Mandat vor. Die Daten dieser Bankverbindung sind daher nicht änderbar. Legen Sie bitte bei Bedarf einfach eine neue Bankverbindung an.
          {/BANK-SEPADirectMandateType(2)}
        
          <label>~BANK-UserDescr_text~</label>
          <input type="text" name="~BANK-UserDescr_input~" value="~BANK-UserDescr~" class="input~BANK-UserDescr_error~">
          {BANK-UserDescr_error}~BANK-UserDescr_errortext~{/BANK-UserDescr_error}
          
          <label>~BANK-Owner_text~ *</label>
          <input type="text" class="input_owner~BANK-Owner_error~" value="~BANK-Owner~" name="~BANK-Owner_input~">
          {BANK-Owner_error}~BANK-Owner_errortext~{/BANK-Owner_error}
          
          <label>~BANK-IBAN_text~ *</label>
          <input type="text" class="input_iban~BANK-IBAN_error~" value="~BANK-IBAN~" name="~BANK-IBAN_input~" autocomplete="off">
          {BANK-IBAN_error}~BANK-IBAN_errortext~{/BANK-IBAN_error}
          
          <label>~BANK-BIC_text~ *</label>
          <input type="text" class="input_bic~BANK-BIC_error~" value="~BANK-BIC~" name="~BANK-BIC_input~" autocomplete="off">
          {BANK-BIC_error}~BANK-BIC_errortext~{/BANK-BIC_error}
          
          <label>~BANK-BANK_text~ *</label>
          <input type="text" class="input_bank~BANK-BANK_error~" value="~BANK-BANK~" name="~BANK-BANK_input~" autocomplete="off">
          {BANK-BANK_error}~BANK-BANK_errortext~{/BANK-BANK_error}

        {/BANK-SEPAMode}
        
    
      {/!BANK-AccountSelected}
  
    {/BANK-MultipleDataInput}         

Anpassung des Bereichs {BANK-SingleDataInput}

Fügen Sie, wie im Code-Beispiel gezeigt, einen Bereich {!BANK-SEPAMode} und einen Bereich {BANK-SEPAMode} ein.

{BANK-SingleDataInput}
  
      {!BANK-SEPAMode}
          ~MSG-BankNotProofed~
          {BANK-InputStepOne}
            <!-- Schritt 1 für die Eingabe der Bankdaten -->
            ~BANK-UserDescr_text~
            <input type="text" name="~BANK-UserDescr_input~" value="~BANK-UserDescr~">
            {BANK-UserDescr_error}~BANK-UserDescr_errortext~{/BANK-UserDescr_error}
                        
            <label >~BANK-Owner_text~ *</label>
            <input type="text" value="~BANK-Owner~" name="~BANK-Owner_input~">
            {BANK-Owner_error}~BANK-Owner_errortext~{/BANK-Owner_error}
            
            <label >~BANK-KoNbr_text~ *</label>
            <input type="text" value="~BANK-KoNbr~" name="~BANK-KoNbr_input~" autocomplete="off">
            {BANK-KoNbr_error}~BANK-KoNbr_errortext~{/BANK-KoNbr_error}
            
            <label>~BANK-BLZ_text~ *</label>
            <input type="text" value="~BANK-BLZ~" name="~BANK-BLZ_input~" autocomplete="off">
            {BANK-BLZ_error}~BANK-BLZ_errortext~{/BANK-BLZ_error}
            
            <label>~BANK-Country_text~ *</label>
            ~BANK-Country_list~
            {BANK-Country_error}~BANK-Country_errortext~{/BANK-Country_error}
          {/BANK-InputStepOne}
          {BANK-InputStepTwo}
            <!-- Schritt 2 für die Eingabe der Bankdaten -->
            {BANK-UserDescr}~BANK-UserDescr_text~: ~BANK-UserDescr~{/BANK-UserDescr}           
            ~BANK-Owner_text~: ~BANK-Owner~
            ~BANK-KoNbr_text~: ~BANK-KoNbr~
            ~BANK-BLZ_text~: ~BANK-BLZ~
            ~BANK-Bank_text~: ~BANK-Bank_list~
            ~BANK-Country_text~: ~BANK-Country~
          {/BANK-InputStepTwo}
          {BT-BankProof}<input type="submit" name="~BT-BankProof~" value="Prüfen">{/BT-BankProof}
          {BT-BankChange}<input name="~BT-BankChange~" type="submit" value="Ändern">{/BT-BankChange}
      {/!BANK-SEPAMode}
      


      {BANK-SEPAMode}
        {BANK-SEPADirectMandateType(2)}
          Für diese Bankverbindung liegt ein wiederkehrendes Mandat vor. Die Daten dieser Bankverbindung sind daher nicht änderbar. Legen Sie bitte bei Bedarf einfach eine neue Bankverbindung an.
        {/BANK-SEPADirectMandateType(2)}
      
        <label>~BANK-UserDescr_text~</label>
        <input type="text" name="~BANK-UserDescr_input~" value="~BANK-UserDescr~" class="input~BANK-UserDescr_error~">
        {BANK-UserDescr_error}~BANK-UserDescr_errortext~{/BANK-UserDescr_error}
        
        <label>~BANK-Owner_text~ *</label>
        <input type="text" class="input_owner~BANK-Owner_error~" value="~BANK-Owner~" name="~BANK-Owner_input~">
        {BANK-Owner_error}~BANK-Owner_errortext~{/BANK-Owner_error}
        
        <label>~BANK-IBAN_text~ *</label>
        <input type="text" class="input_iban~BANK-IBAN_error~" value="~BANK-IBAN~" name="~BANK-IBAN_input~" autocomplete="off">
        {BANK-IBAN_error}~BANK-IBAN_errortext~{/BANK-IBAN_error}
        
        <label>~BANK-BIC_text~ *</label>
        <input type="text" class="input_bic~BANK-BIC_error~" value="~BANK-BIC~" name="~BANK-BIC_input~" autocomplete="off">
        {BANK-BIC_error}~BANK-BIC_errortext~{/BANK-BIC_error}
        
        <label>~BANK-BANK_text~ *</label>
        <input type="text" class="input_bank~BANK-BANK_error~" value="~BANK-BANK~" name="~BANK-BANK_input~" autocomplete="off">
        {BANK-BANK_error}~BANK-BANK_errortext~{/BANK-BANK_error}
      {/BANK-SEPAMode}
  
{/BANK-SingleDataInput}

Schritt 4: Anpassung des Templates "ws_order_history.htm"

Wenn Sie auf der Bestellhistorie die Bankdaten Ihres Käufers anzeigen lassen, muss auf diesem Template jetzt die Anzeige von IBAN und BIC ergänzt werden. Wird auf diesem Template ausschließlich die gewählte Zahlungsart ohne Bankdaten usw. angezeigt, ist keine Änderung erforderlich. Standardeinstellung im Ausliefershop ist, dass diese Daten nicht angezeigt werden. Es wird nur dargestellt, welche Zahlungsart gewählt wurde - ohne zusätzliche Informationen.

Schritt 5: Prüfen der SEPA-Integration

Mit dem folgenden Aufruf können Sie prüfen, ob die SEPA-Integration korrekt angezeigt wird:

www.Ihre-domain.de/?websale8=<shopid>&test=on

Nach dem Shop-Aufruf wird der SEPA-Modus mit dem nächsten Klick aktiviert. Führen Sie eine Testbestellung durch und überprüfen Sie, ob alle Daten korrekt übermittelt werden.

Schritt 6: Live-Schaltung der SEPA-Integration

Am Umstellungsdatum muss in der Shopkonfiguration shop.config im Abschnitt <PaymentDebitNote-Txt> der Parameter SEPAMode auf on gesetzt werden. Dies kann manuell oder über die KampagnenSteuerung automatisiert erfolgen. Außerdem sollten Sie alle Template-Bereiche {!BANK-SEPAMode} entfernen.

Tags

Referenz: BANK-SEPAMode

Referenz: BANK-IBAN

Referenz: BANK-BIC

Referenz: BANK-SEPALastDirectMandate

Referenz: BANK-SEPADirectMandateType

Referenz: BANK-SEPADirectDebitType

Referenz: BANK-SEPACreditorIdentifier

Verweise

Wegweiser: Bankverbindung abfragen

Referenz: Abschnitt PaymentDebitNote-Txt

Referenz: Abschnitte PaymentXXX-Txt

Zum Inhaltsverzeichnis