1 Über eps

1.1 Allgemeines zu eps

In Österreich unterstützt das 1cs Online Bezahlsystem die Online-Überweisungen mit dem Electronic Payment Standard (EPS), der sich in den letzten Jahren in Österreich etabliert hat und ebenfalls eine Zahlungsgarantie bietet. Dabei nutzt der Kunde das ihm bekannte und vertrauenswürdige Online-Banking seines eigenen Kreditinstitutes – genau wie beim Online-Banking.

Logo

InfoTyp
In Österreich ist die Online-Überweisung mit eps im E-Commerce weit verbreitet und damit eine interessante Ergänzung im Zahlungsmix. Zusätzlich erhält der Händler eine Zahlungsgarantie.Zahlungen per Onlineüberweisung

Weitere Informationen finden Sie auch auf der Webseite von eps / STUZZA (www.stuzza.at).

1.2 Diagramm zum Prozessablauf

eps Prozessablauf

2 1cs Online Bezahlsystem Schnittstelle

2.1 Definitionen

2.1.1 Datenformate:

FormatBeschreibung
aalphabetisch
asalphabetisch mit Sonderzeichen
nnumerisch
analphanumerisch
ansalphanumerisch mit Sonderzeichen
nsnumerisch mit Sonderzeichen
boolBool’scher Ausdruck (true oder false)
3feste Länge mit 3 Stellen/Zeichen
..3variable Länge mit maximal 3 Stellen/Zeichen
enumAufzählung erlaubter Werte
dttmISODateTime (JJJJ-MM-TTThh:mm:ss)

2.1.2 Abkürzungen

AbkürzungBeschreibungKommentar
CNDBedingung (condition) 
MPflicht (mandatory)Wenn ein Parameter Pflicht ist, dann muss er vorhanden sein
OoptionalWenn ein Parameter optional ist, dann kann er vorhanden sein, ist aber nicht erforderlich
Cbedingt (conditional)Wenn ein Parameter bedingt ist, dann gibt es eine Bedingungsregel, die angibt, ob er Pflicht oder optional ist

Hinweis: Bitte beachten Sie, dass die Bezeichnungen der Parameter in Groß- oder Kleinbuchstaben zurückgegeben werden können.

2.2 Aufruf der eps-Schnittstelle

Die Anbindung zu eps mit einem 1cs Online Bezahlsystem-Formular erfolgt direkt.

Um in Österreich eine Zahlung mit der eps Online-Überweisung über ein 1cs Online Bezahlsystem-Formular abzuwickeln, rufen Sie folgende URL auf:

https://www.computop-paygate.com/eps.aspx

Hinweis: Aus Sicherheitsgründen lehnt das 1cs Online Bezahlsystem alle Zahlungsanfragen mit Formatfehlern ab. Bitte übergeben Sie deshalb bei jedem Parameter den korrekten Datentyp.

Hinweis: Bitte beachten Sie, dass eine eps-Anbindung im Shop per iFrame aufgrund von eps-Regularien nicht möglich ist und technisch verhindert wird.

Die folgende Tabelle beschreibt die verschlüsselten Übergabeparameter:

ParameterFormatCNDBeschreibung
MerchantIDans..30MHändlerID, die von der First Cash Solution vergeben wird. Dieser Parameter ist zusätzlich auch unverschlüsselt zu übergeben.
TransIDans..64MIhre eigene TransaktionsID, die für jede Zahlung eindeutig sein muss
RefNrns..30MEindeutige Referenznummer. Es sind ausschließlich ASCII-Zeichen erlaubt. Sonderzeichen wie (“Umlaute”, …) sind nicht erlaubt und müssen ggf. durch ASCII-Zeichen ersetzt werden (z.B. ü → ue, é → e, …).
Amountn..10MBetrag in der kleinsten Währungseinheit (z.B. EUR Cent). Bitte wenden Sie sich an den Helpdesk, wenn Sie Beträge < 100 (kleinste Währungseinheit) buchen möchten.
Currencya3MWährung, drei Zeichen DIN / ISO 4217. z.B. EUR, USD, GBP. Hier eine Übersicht: Währungstabelle
OptionDateans10CGewünschter Ausführungstermin der Zahlung im Format YYYY-MM-DD
OrderDescans..768MVerwendungszweck auf dem Kontoauszug (hier nur 35 Zeichen)
OrderDesc2ans..384CAnzahl u. Beschreibung der gekauften Waren, Einzelpreise; kommaseparierte Liste, keine Sonderzeichen erlaubt
AccOwnerans..50OName des Kontoinhabers
IBANans..34OInternational Bank Account Number für SEPA
BICans..11OBank Identifier Code für SEPA
MACan64MHash Message Authentication Code (HMAC) mit SHA-256-Algorithmus. Details finden Sie hier: HMAC-Authentisierung (Anfrage) HMAC-Authentisierung (Notify)
UserDataans..1024OWenn beim Aufruf angegeben, übergibt das 1cs Online Bezahlsystem die Parameter mit dem Zahlungsergebnis an den Shop
URLSuccessans..256MVollständige URL, die das 1cs Online Bezahlsystem aufruft, wenn die Zahlung erfolgreich war. Die URL darf nur über Port 443 aufgerufen werden. Diese URL darf keine Parameter enthalten: Um Parameter durchzureichen, nutzen Sie stattdessen den Parameter UserData. Allgemeine Hinweise: Wir empfehlen, den Parameter “response=encrypt” zu verwenden, um eine verschlüsselte Antwort vom 1cs Online Bezahlsystem zu erhalten Betrüger könnten das verschlüsselte DATA-Element kopieren, welches an URLFailure gesendet wurde, und betrügerisch dasselbe DATA an URLSuccess senden. Überprüfen Sie daher unbedingt den “code”-Wert des DATA-Elements. Nur eine Antwort mit “code=00000000” sollte als erfolgreich angesehen werden.
URLFailureans..256MVollständige URL, die das 1cs Online Bezahlsystem aufruft, wenn die Zahlung gescheitert ist. Die URL darf nur über Port 443 aufgerufen werden. Diese URL darf keine Parameter enthalten: Um Parameter durchzureichen, nutzen Sie stattdessen den Parameter UserData. Allgemeine Hinweise: Wir empfehlen, den Parameter “response=encrypt” zu verwenden, um eine verschlüsselte Antwort vom 1cs Online Bezahlsystem zu erhalten Betrüger könnten das verschlüsselte DATA-Element kopieren, welches an URLFailure gesendet wurde, und betrügerisch dasselbe DATA an URLSuccess senden. Überprüfen Sie daher unbedingt den “code”-Wert des DATA-Elements. Nur eine Antwort mit “code=00000000” sollte als erfolgreich angesehen werden.
Responsea7ODie Status-Rückmeldung, die das 1cs Online Bezahlsystem an URLSuccess und URLFailure sendet, sollte verschlüsselt werden. Dazu übergeben Sie den Parameter Response=encrypt.
URLNotifyans..256OVollständige URL, die das 1cs Online Bezahlsystem aufruft, um den Shop zu benachrichtigen. Die URL darf nur über Port 443 aufgerufen werden. Sie darf keine Parameter enthalten: Nutzen Sie stattdessen den Parameter UserData. Allgemeine Hinweise: Wir empfehlen, den Parameter “response=encrypt” zu verwenden, um eine verschlüsselte Antwort vom 1cs Online Bezahlsystemzu erhalten Betrüger könnten das verschlüsselte DATA-Element kopieren, welches an URLFailure gesendet wurde, und betrügerisch dasselbe DATA an URLSuccess senden. Überprüfen Sie daher unbedingt den “code”-Wert des DATA-Elements. Nur eine Antwort mit “code=00000000” sollte als erfolgreich angesehen werden.
ReqIDans..32OUm Doppelzahlungen zu vermeiden, übergeben Sie einen alphanumerischen Wert, der Ihre Transaktion identifiziert und nur einmal vergeben wer­den darf. Falls die Transaktion mit derselben ReqID erneut eingereicht wird, führt das 1cs Online Bezahlsystem keine Zah­lung aus sondern gibt nur den Status der ursprüng­lichen Transaktion zurück. Bitte beachten Sie, dass das 1cs Online Bezahlsystem für die erste initiale Aktion einen abgeschlossenen Transaktionsstatus haben muss. Einreichungen mit identischer ReqID auf einen offenen Status werden regulär verarbeitet. Bitte beachten Sie, dass eine ReqID nur 12 Monate gültig ist, danach wird sie vom 1cs Online Bezahlsystem gelöscht.
Plainans..50OEin von Händler zu setzender Wert, um Informationen wieder unverschlüsselt zurückzugeben, z.B. die MID
Customans..1024ODer Händler kann mehrere Werte durch | getrennt übergeben, die unverschlüsselt durch & getrennt zurückgegeben werden. Custom=session=123|id=456 wird in der Antwort zu Session=123&id=456

Parameter für Online-Überweisungen mit eps

Die folgende Tabelle beschreibt die Ergebnis-Parameter, die das 1cs Online Bezahlsystem an Ihre URLSuccess, URLFailure und URLNotify übergibt. Wenn Sie den Parameter Response=encrypt angegeben haben, werden die folgenden Parameter mit Blowfish verschlüsselt an Ihr System übergeben:

  • es können jederzeit neue Parameter hinzugefügt bzw. die Reihenfolge geändert werden
  • die Parameter (z.B. MerchantId, RefNr) sollten nicht auf Groß-/Kleinschreibung geprüft werden 
ParameterFormatCNDBeschreibung
MIDans..30MHändlerID, die von der First Cash Solution vergeben wird
PayIDan32MVom 1cs Online Bezahlsystem vergebene ID für die Zahlung, z.B. zur Referenzierung in Batch-Dateien
XIDan32MVom 1cs Online Bezahlsystem vergebene ID für alle einzelnen Transaktionen (Autorisierung, Buchung, Gutschrift), die für eine Zahlung durchgeführt werden
TransIDans..64MIhre eigene TransaktionsID, die eindeutig sein muss
Statusa..50MOK, AUTHORIZED (URLSuccess) oder FAILED (URLFailure).
Descriptionans..1024MNähere Beschreibung bei Ablehnung der Zahlung. Bitte nutzen Sie nicht den Parameter Description sondern Code für die Auswertung des Transaktionsstatus!
Coden8MFehlercode gemäß 1cs Online Bezahlsystem Antwort Codes (Fehlercodes)
RefNrns..30OReferenznummer des Händlers. Es sind ausschließlich ASCII-Zeichen erlaubt. Sonderzeichen wie (“Umlaute”, …) sind nicht erlaubt und müssen ggf. durch ASCII-Zeichen ersetzt werden (z.B. ü → ue, é → e, …).
UserDataans..1024OWenn beim Aufruf angegeben, übergibt das 1cs Online Bezahlsystem die Parameter mit dem Zahlungsergebnis an den Shop
MACan64M
Hash Message Authentication Code (HMAC) mit SHA-256-Algorithmus. Details finden Sie hier: HMAC-Authentisierung (Anfrage) HMAC-Authentisierung (Notify)  
AccOwnerans..50MName des Kontoinhabers
IBANans..34OInternational Bank Account Number für SEPA
BICans..11OBank Identifier Code für SEPA
Plainans..50OEin einzelner Wert, der von Ihnen gesetzt werden kann, um Informationen wieder unverschlüsselt in der Antwort bzw. im Notify zurückzugeben, z.B. die MID. Da der “Plain”-Parameter Teil des verschlüsselten “Data” im 1cs Online Bezahlsystem ist, ist dieser vor Manipulationen geschützt.  
Customans..1024ODer “Custom”-Parameter wird vor der Verschlüsselung an den Aufruf angehängt und ist Teil des verschlüsselten “Data” im 1cs Online Bezahlsystem Aufruf. Dadurch ist der Wert gegen Manipulation geschützt.  Der Custom-Wert wird dann in Klartext an die1cs OBS-Antwort angehängt und dabei wird “|” durch “&” ersetzt. Dadurch können Sie einen Custom-Wert übergeben und bekommen mehrere Key-Value-Paare zu Ihrer eigenen Verwendung in der Antwort zurück. Custom=session=123|id=456 wird in der Antwort zu Session=123&id=456

Ergebnis-Parameter für URLNotify, URLSuccess und URLFailure bei eps

2.3 Gutschrift mit Referenz

Gutschriften sind über eine Server-zu-Server-Kommunikation möglich. Für eps sind Gutschriften nur bei der PPRO-Anbindung möglich. Das Paygate erlaubt für eps nur Gutschriften, die sich auf eine vorher über das Paygate getätigte Buchung beziehen. Die Höhe der Gutschrift ist auf die Höhe der vorangegangen Buchung beschränkt.

Um eine Gutschrift (Credit) mit Referenztransaktion auszuführen, verwenden Sie bitte folgende URL:

https://www.computop-paygate.com/credit.aspx

Hinweis: Aus Sicherheitsgründen lehnt das Paygate alle Zahlungsanfragen mit Formatfehlern ab. Bitte übergeben Sie deshalb bei jedem Parameter den korrekten Datentyp.

Die folgende Tabelle beschreibt die verschlüsselten Übergabeparameter:

KeyRESTFormatCNDBeschreibung
MerchantIDBasicAuth.Usernameans..30MHändlerID, die von 1cs vergeben wird. Dieser Parameter ist zusätzlich auch unverschlüsselt zu übergeben.
PayID“paymentId”: “…”an32MVom Paygate vergebene ID für die gutzuschreibende Zahlung
TransID“transactionId”: “…”ans..64MIhre eigene TransaktionsID, die für jede Zahlung eindeutig sein muss
MACan64MHash Message Authentication Code (HMAC) mit SHA-256-Algorithmus. Details finden Sie hier: HMAC-Authentisierung (Anfrage)HMAC-Authentisierung (Notify)
Amount“amount”: { “value”: …}n..10MBetrag in der kleinsten Währungseinheit (z.B. EUR Cent). Bitte wenden Sie sich an den service@1cs.de, wenn Sie Beträge < 100 (kleinste Währungseinheit) buchen möchten.
Currency“amount”: { “currency”: “…”}a3MWährung, drei Zeichen DIN / ISO 4217, z.B. EUR, USD, GBP. Hier eine Übersicht: A1 Währungstabelle
ReqId“requestId”: “…”ans..32OUm Doppelzahlungen (z.B. durch ETM) zu vermeiden, übergeben Sie einen alphanumerischen Wert, der Ihre Transaktion oder Aktion identifiziert und nur einmal vergeben werden darf. Falls die Transaktion oder Aktion mit derselben ReqID erneut eingereicht wird, führt das Computop Paygate keine Zahlung oder weitere Aktion aus, sondern gibt nur den Status der ursprünglichen Transaktion oder Aktion zurück. Bitte beachten Sie, dass das Computop Paygate für die erste initiale Aktion (Authentifizierung/Autorisierung) einen abgeschlossenen Transaktionsstatus haben muss. Dies gilt nicht für 3-D Secure Authentifizierungen, die durch einem Timeout beendet werden. Der Status 3-D Secure Timeout gilt nicht als abgeschlossener Status, bei dem ReqID-Funktionalität am Paygate nicht greift. Einreichungen mit identischer ReqID auf einen offenen Status werden regulär verarbeitet. Hinweis: Bitte beachten Sie, dass eine ReqID nur 12 Monate gültig ist, danach wird sie vom Paygate gelöscht.

Parameter für Gutschrift von eps-Zahlungen

Die folgende Tabelle beschreibt die Parameter, die das 1cs Online-Bezahlsystem als Antwort zurückgibt:

(info) es können jederzeit neue Parameter hinzugefügt bzw. die Reihenfolge geändert werden

(info) die Parameter (z.B. MerchantId, RefNr) sollten nicht auf Groß-/Kleinschreibung geprüft werden

KeyRESTFormatCNDBeschreibung
mid“merchantId”: “…”ans..30MHändlerID, die von Computop vergeben wird
PayID“paymentId”: “…”an32MVom Paygate vergebene ID für die Zahlung; z.B. zur Referenzierung in Batch-Dateien sowie im Capture- oder Credit-Request.
XID“xId”: “…”an32MVom Paygate vergebene ID für alle einzelnen Transaktionen (Autorisierung, Buchung, Gutschrift), die für eine Zahlung durchgeführt werden
TransID“transactionId”: “…”ans..64MIhre eigene TransaktionsID, die für jede Zahlung eindeutig sein muss
Status“status”: “OK”“status”: “AUTHORIZED”“status”: “FAILED”a..50MOK oder AUTHORIZED (URLSuccess) sowie FAILED (URLFailure)
Description“description”: “…”ans..1024MNähere Beschreibung bei Ablehnung der Zahlung. Bitte nutzen Sie nicht den Parameter Description,sondernCode für die Auswertung des Transaktionsstatus!
Code“code”: …n8MFehlercode gemäß Paygate Antwort-Codes (A4 Fehlercodes)
ErrorText“errorText”: “…”ans..128CDetaillierte PPRO Fehlermeldung.Hinweis: Wird nur bei Status=FAILED zurückgegeben. Nutzung nur in Abstimmung mit dem service@1cs.de möglich.

Ergebnis-Parameter für Gutschrift von eps-Zahlungen

3. Batch-Nutzung der Schnittstelle

Grundsätzliche Informationen zur Arbeit mit Batch-Dateien sowie zu deren Aufbau erfahren Sie im separaten Handbuch zum Batchmanager. Im Batch-Verfahren sind nicht alle Funktionen verfügbar, die für die Online-Schnittstelle verfügbar sind.

Dieses Kapitel beschreibt die Parameter, die Sie im Datensatz (Record) für die Ausführung einer eps-Gutschrift übergeben müssen und welche Informationen Sie der Antwort-Datei über den Status des Zahlungsvorgangs entnehmen können.

Hinweis: Beachten Sie bitte, dass eine Batch-Nutzung für eps nur über die PPRO-Anbindung möglich ist.

Folgende Tabelle gibt eine Übersicht der pro Aktion jeweils möglichen Batch-Versionen und ihrer Besonderheiten:

ActionVersionBeschreibung
Credit1.0 / 2.0Standardversion ohne Rückgabe von Parameter Code
1.x / 2.xmit RefNr (gilt für alle Versionen außer 1.0)

Beschreibung der möglichen Batch-Versionen

Der Aufbau für eine eps-Gutschrift in einer einzureichenden Batch-Datei sieht folgendermaßen aus:

HEAD,<MerchantID>,<Date>,<Version>EPS,Credit,<PayID>,<TransID>,(<RefNr>),<Amount>,<Currency>FOOT,<CountRecords>,<SumAmount>

Beispiel für Master-MID-Funktion:

HEAD,[Master]MerchantID,Date,2.xType,Action,[Slave]MID,Amount,Currency,TransID,Data (depends on Action)FOOT,CountRecords,SumAmount

Die folgende Tabelle beschreibt die einzelnen Felder und Werte, die im Datensatz (Record) innerhalb der Batch-Datei verwendet werden:

KeyFormatCNDBeschreibung
Typea..11MHEAD für Header, FOOT für Footer, EPS für eps
Actiona..20MDer Action-Parameter definiert die Art der Transaktion: Credit (Gutschrift)
Amountn..10MBetrag in der kleinsten Währungseinheit (z.B. EUR Cent). Bitte wenden Sie sich an den service@1cs.de, wenn Sie Beträge < 100 (kleinste Währungseinheit) buchen möchten.
Currencya3MWährung, drei Zeichen DIN / ISO 4217, z.B. EUR, USD, GBP. Hier eine Übersicht: A1 Währungstabelle
TransIDans..64MIhre eigene TransaktionsID, die für jede Zahlung eindeutig sein muss
RefNrns..30OEindeutige Referenznummer.Bei PPRO: Nur die Zeichen a-zA-Z0-9,-_ sind erlaubt, Format ans..40.
PayIDan32MVom Paygate vergebene ID für diese Transaktion

Beschreibung der Felder im Datensatz von Batch-Dateien

Der Record-Bereich in der Antwort-Datei zu Batch-Transaktionen sieht folgendermaßen aus:

HEAD,<MerchantID>,<Date>,<Version>EPS,Credit,<PayID>,<TransID>,(<RefNr>),<Amount>,<Currency>,<Status>,<Code>FOOT,<CountRecords>,<SumAmount>

Die folgende Tabelle beschreibt die Antwort-Parameter, die der Batch-Manager im Record-Bereich zu jeder Transaktion speichert (hier nicht erklärte Standardparameter wie etwa <TransID> oder <RefNR> und Aufrufparameter werden unverändert zum Aufruf wieder zurückgegeben und sind vorstehend beschrieben):

KeyFormatCNDBeschreibung
Actiona..20MDer Action-Parameter definiert die Art der Transaktion: Credit (Gutschrift)
PayIDan32MVom Paygate vergebene ID für diese Transaktion
Statusa..50MOK (URLSuccess) oder FAILED (URLFailure)
Coden8MFehlercode gemäß Paygate Antwort-Codes (A4 Fehlercodes)

Beschreibung der Ergebnis-Parameter im Datensatz von Batch-Dateien.