EPS
1.2 Diagaram zum Prozessablauf
2 1cs Online Bezahlsystem Schnittstelle
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
![](https://www.firstcashsolution.de/wp-content/uploads/2023/12/eps-NEU.png)
Info | Typ |
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
![](https://www.firstcashsolution.de/wp-content/uploads/2023/11/eps.jpg)
eps Prozessablauf
2 1cs Online Bezahlsystem Schnittstelle
2.1 Definitionen
2.1.1 Datenformate:
Format | Beschreibung |
a | alphabetisch |
as | alphabetisch mit Sonderzeichen |
n | numerisch |
an | alphanumerisch |
ans | alphanumerisch mit Sonderzeichen |
ns | numerisch mit Sonderzeichen |
bool | Bool’scher Ausdruck (true oder false) |
3 | feste Länge mit 3 Stellen/Zeichen |
..3 | variable Länge mit maximal 3 Stellen/Zeichen |
enum | Aufzählung erlaubter Werte |
dttm | ISODateTime (JJJJ-MM-TTThh:mm:ss) |
2.1.2 Abkürzungen
Abkürzung | Beschreibung | Kommentar |
CND | Bedingung (condition) | |
M | Pflicht (mandatory) | Wenn ein Parameter Pflicht ist, dann muss er vorhanden sein |
O | optional | Wenn ein Parameter optional ist, dann kann er vorhanden sein, ist aber nicht erforderlich |
C | bedingt (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:
Parameter | Format | CND | Beschreibung |
MerchantID | ans..30 | M | HändlerID, die von der First Cash Solution vergeben wird. Dieser Parameter ist zusätzlich auch unverschlüsselt zu übergeben. |
TransID | ans..64 | M | Ihre eigene TransaktionsID, die für jede Zahlung eindeutig sein muss |
RefNr | ns..30 | M | Eindeutige 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, …). |
Amount | n..10 | M | Betrag 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. |
Currency | a3 | M | Währung, drei Zeichen DIN / ISO 4217. z.B. EUR, USD, GBP. Hier eine Übersicht: Währungstabelle |
OptionDate | ans10 | C | Gewünschter Ausführungstermin der Zahlung im Format YYYY-MM-DD |
OrderDesc | ans..768 | M | Verwendungszweck auf dem Kontoauszug (hier nur 35 Zeichen) |
OrderDesc2 | ans..384 | C | Anzahl u. Beschreibung der gekauften Waren, Einzelpreise; kommaseparierte Liste, keine Sonderzeichen erlaubt |
AccOwner | ans..50 | O | Name des Kontoinhabers |
IBAN | ans..34 | O | International Bank Account Number für SEPA |
BIC | ans..11 | O | Bank Identifier Code für SEPA |
MAC | an64 | M | Hash Message Authentication Code (HMAC) mit SHA-256-Algorithmus. Details finden Sie hier: HMAC-Authentisierung (Anfrage) HMAC-Authentisierung (Notify) |
UserData | ans..1024 | O | Wenn beim Aufruf angegeben, übergibt das 1cs Online Bezahlsystem die Parameter mit dem Zahlungsergebnis an den Shop |
URLSuccess | ans..256 | M | Vollstä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. |
URLFailure | ans..256 | M | Vollstä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. |
Response | a7 | O | Die Status-Rückmeldung, die das 1cs Online Bezahlsystem an URLSuccess und URLFailure sendet, sollte verschlüsselt werden. Dazu übergeben Sie den Parameter Response=encrypt. |
URLNotify | ans..256 | O | Vollstä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. |
ReqID | ans..32 | O | Um Doppelzahlungen zu vermeiden, übergeben Sie einen alphanumerischen Wert, der Ihre Transaktion identifiziert und nur einmal vergeben werden darf. Falls die Transaktion mit derselben ReqID erneut eingereicht wird, führt das 1cs Online Bezahlsystem keine Zahlung aus sondern gibt nur den Status der ursprünglichen 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. |
Plain | ans..50 | O | Ein von Händler zu setzender Wert, um Informationen wieder unverschlüsselt zurückzugeben, z.B. die MID |
Custom | ans..1024 | O | Der 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
Parameter | Format | CND | Beschreibung |
MID | ans..30 | M | HändlerID, die von der First Cash Solution vergeben wird |
PayID | an32 | M | Vom 1cs Online Bezahlsystem vergebene ID für die Zahlung, z.B. zur Referenzierung in Batch-Dateien |
XID | an32 | M | Vom 1cs Online Bezahlsystem vergebene ID für alle einzelnen Transaktionen (Autorisierung, Buchung, Gutschrift), die für eine Zahlung durchgeführt werden |
TransID | ans..64 | M | Ihre eigene TransaktionsID, die eindeutig sein muss |
Status | a..50 | M | OK, AUTHORIZED (URLSuccess) oder FAILED (URLFailure). |
Description | ans..1024 | M | Nähere Beschreibung bei Ablehnung der Zahlung. Bitte nutzen Sie nicht den Parameter Description sondern Code für die Auswertung des Transaktionsstatus! |
Code | n8 | M | Fehlercode gemäß 1cs Online Bezahlsystem Antwort Codes (Fehlercodes) |
RefNr | ns..30 | O | Referenznummer 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, …). |
UserData | ans..1024 | O | Wenn beim Aufruf angegeben, übergibt das 1cs Online Bezahlsystem die Parameter mit dem Zahlungsergebnis an den Shop |
MAC | an64 | M | Hash Message Authentication Code (HMAC) mit SHA-256-Algorithmus. Details finden Sie hier: HMAC-Authentisierung (Anfrage) HMAC-Authentisierung (Notify) |
AccOwner | ans..50 | M | Name des Kontoinhabers |
IBAN | ans..34 | O | International Bank Account Number für SEPA |
BIC | ans..11 | O | Bank Identifier Code für SEPA |
Plain | ans..50 | O | Ein 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. |
Custom | ans..1024 | O | Der “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:
Key | REST | Format | CND | Beschreibung |
---|---|---|---|---|
MerchantID | BasicAuth.Username | ans..30 | M | HändlerID, die von 1cs vergeben wird. Dieser Parameter ist zusätzlich auch unverschlüsselt zu übergeben. |
PayID | “paymentId”: “…” | an32 | M | Vom Paygate vergebene ID für die gutzuschreibende Zahlung |
TransID | “transactionId”: “…” | ans..64 | M | Ihre eigene TransaktionsID, die für jede Zahlung eindeutig sein muss |
MAC | — | an64 | M | Hash Message Authentication Code (HMAC) mit SHA-256-Algorithmus. Details finden Sie hier: HMAC-Authentisierung (Anfrage)HMAC-Authentisierung (Notify) |
Amount | “amount”: { “value”: …} | n..10 | M | Betrag 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”: “…”} | a3 | M | Währung, drei Zeichen DIN / ISO 4217, z.B. EUR, USD, GBP. Hier eine Übersicht: A1 Währungstabelle |
ReqId | “requestId”: “…” | ans..32 | O | Um 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:
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
Key | REST | Format | CND | Beschreibung |
---|---|---|---|---|
mid | “merchantId”: “…” | ans..30 | M | HändlerID, die von Computop vergeben wird |
PayID | “paymentId”: “…” | an32 | M | Vom Paygate vergebene ID für die Zahlung; z.B. zur Referenzierung in Batch-Dateien sowie im Capture- oder Credit-Request. |
XID | “xId”: “…” | an32 | M | Vom Paygate vergebene ID für alle einzelnen Transaktionen (Autorisierung, Buchung, Gutschrift), die für eine Zahlung durchgeführt werden |
TransID | “transactionId”: “…” | ans..64 | M | Ihre eigene TransaktionsID, die für jede Zahlung eindeutig sein muss |
Status | “status”: “OK”“status”: “AUTHORIZED”“status”: “FAILED” | a..50 | M | OK oder AUTHORIZED (URLSuccess) sowie FAILED (URLFailure) |
Description | “description”: “…” | ans..1024 | M | Nähere Beschreibung bei Ablehnung der Zahlung. Bitte nutzen Sie nicht den Parameter Description,sondernCode für die Auswertung des Transaktionsstatus! |
Code | “code”: … | n8 | M | Fehlercode gemäß Paygate Antwort-Codes (A4 Fehlercodes) |
ErrorText | “errorText”: “…” | ans..128 | C | Detaillierte 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:
Action | Version | Beschreibung |
---|---|---|
Credit | 1.0 / 2.0 | Standardversion ohne Rückgabe von Parameter Code |
1.x / 2.x | mit 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.x Type,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:
Key | Format | CND | Beschreibung |
---|---|---|---|
Type | a..11 | M | HEAD für Header, FOOT für Footer, EPS für eps |
Action | a..20 | M | Der Action-Parameter definiert die Art der Transaktion: Credit (Gutschrift) |
Amount | n..10 | M | Betrag 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 | a3 | M | Währung, drei Zeichen DIN / ISO 4217, z.B. EUR, USD, GBP. Hier eine Übersicht: A1 Währungstabelle |
TransID | ans..64 | M | Ihre eigene TransaktionsID, die für jede Zahlung eindeutig sein muss |
RefNr | ns..30 | O | Eindeutige Referenznummer.Bei PPRO: Nur die Zeichen a-zA-Z0-9,-_ sind erlaubt, Format ans..40. |
PayID | an32 | M | Vom 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):
Key | Format | CND | Beschreibung |
---|---|---|---|
Action | a..20 | M | Der Action-Parameter definiert die Art der Transaktion: Credit (Gutschrift) |
PayID | an32 | M | Vom Paygate vergebene ID für diese Transaktion |
Status | a..50 | M | OK (URLSuccess) oder FAILED (URLFailure) |
Code | n8 | M | Fehlercode gemäß Paygate Antwort-Codes (A4 Fehlercodes) |
Beschreibung der Ergebnis-Parameter im Datensatz von Batch-Dateien.