Über giropay
Allgemeines zu giropay
giropay ist ein Standard, den Sparkassen, Postbank sowie Volks- und Raiffeisenbanken gegründet haben. Die giropay Online-Überweisung hat für den Händler gleich mehrere Vorteile: Zum einen gewährt giropay dem Verkäufer eine Zahlungsgarantie bis 10.000 Euro, zum anderen ist die Überweisung eine Vorauszahlung, die das Zahlungsziel minimiert. Und nicht zuletzt nutzt der Kunde das ihm bekannte und vertrauenswürdige Online-Banking seines eigenen Kreditinstitutes – genau wie beim Online-Banking.
Im ersten Schritt wählt der Kunde im Online-Shop an der Kasse die Zahlungsmethode giropay und wählt sein Kreditinstitut aus. Er wird dann direkt mit seiner Sparkasse oder Bank verbunden und meldet sich wie gewohnt mit seiner PIN an. Daraufhin erscheint ein vorausgefüllter Überweisungsträger, so dass der Kunde nur noch seine TAN eingeben muss, um die Zahlung zu bestätigen.
Wie beim Online-Banking üblich, sind auch bei der Online-Überweisung die übermittelten Daten mit SSL (Secure Sockets Layer) verschlüsselt und so gegen Manipulation gesichert.
Weitere Informationen finden Sie auch auf der Webseite von giropay (http://www.giropay.de).
Diagramm zum Prozessablauf
giropay Prozessablauf
Paygate-Schnittstelle
Datenformate: 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) Abkürzungen: CND Bedingung (condition) M Pflicht (mandatory) O optional C bedingt (conditional) Hinweis: Bitte beachten Sie, dass die Bezeichnungen der Parameter in Groß- oder Kleinbuchstaben zurückgegeben werden können.Definitionen
Format Beschreibung Abkürzung Beschreibung Kommentar Wenn ein Parameter Pflicht ist, dann muss er vorhanden sein Wenn ein Parameter optional ist, dann kann er vorhanden sein, ist aber nicht erforderlich Wenn ein Parameter bedingt ist, dann gibt es eine Bedingungsregel, die angibt, ob er Pflicht oder optional ist
Aufruf der giropay-Schnittstelle
Um eine Zahlung per Online-Überweisung mit giropay abzuwickeln, rufen Sie folgende URL auf:
Hinweis: Aus Sicherheitsgründen lehnt das Paygate alle Zahlungsanfragen mit Formatfehlern ab. Bitte übergeben Sie deshalb bei jedem Parameter den korrekten Datentyp.
Hinweis: Bitte beachten Sie, dass eine Anbindung im Shop per iFrame aufgrund von 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 Computop vergeben wird. Dieser Parameter ist zusätzlich auch unverschlüsselt zu übergeben. |
TransID | ans..64 | M | TransaktionsID, die für jede Zahlung eindeutig sein muss |
RefNr | ns..30 | OC | Eindeutige Referenznummer. Bei PPRO: Nur die Zeichen a-zA-Z0-9,-_ sind erlaubt, Format ans..40. |
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 |
OrderDesc | ans..384 | M | Beschreibung der gekauften Waren, Einzelpreise etc. Bitte beachten Sie: Die ersten 27 Zeichen erscheinen auf dem Kontoauszug des Kunden. In Computop Analytics können Sie die kompletten Daten einsehen. |
MAC | an64 | M | Hash Message Authentication Code (HMAC) mit SHA-256-Algorithmus |
UserData | ans..1024 | O | Wenn beim Aufruf angegeben, übergibt das Paygate die Parameter mit dem Zahlungsergebnis an den Shop |
URLSuccess | ans..256 | M | Vollständige URL, die das Paygate 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. |
URLFailure | ans..256 | M | Vollständige URL, die das Paygate 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. |
Response | a7 | O | Die Status-Rückmeldung, die das Paygate 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 Paygate 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. |
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 Paygate keine Zahlung aus sondern gibt nur den Status der ursprünglichen Transaktion zurück. Bitte beachten Sie, dass das Paygate für die erste initiale Aktion einen abgeschlossenen Transaktionsstatus haben muss. Einreichungen mit identischer ReqID auf einen offenen Status werden regulär verarbeitet. |
SellingPoint | ans..50 | C | Nur bei PPRO: Verkaufsstelle |
Service | ans..50 | C | Nur bei PPRO: verkaufte Produkte oder Dienstleistungen |
Channel | ans..64 | OC | Nur bei PPRO: Konfigurationskanal des PPRO-Vertrags (Account und ContractID sind im System hinterlegt). Wenn vorhanden, überschreibt er eventuell im System hinterlegten Channel. |
Language | a2 | O | Nur bei PPRO: 2-stelliger Sprachcode (z.B. de), der für die Zahlungsseiten für den Kunden bevorzugt werden soll |
AccOwner | a..50 | C | Nur bei PPRO: Name des Kontoinhabers im Format <Vorname><Leerzeichen><Nachname><Leerzeichen> |
Scheme | enum | O | Gibt das Schema vor: „gir“ oder „eps“ |
BIC | ans..11 | O | Bank Identifier Code |
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 |
expirationTime | ans..19 | O | Zeitstempel für den Endzeitpunkt der Transaktionsverarbeitung, Angabe in UTC. Format: YYYY-MM-ddTHH:mm:ss |
IBAN | ans..34 | C | Nur bei EVO: International Bank Account Number (bei Gutschriftenfunktion und bei Account Prüfung über EVO Pflicht) |
Parameter für Online-Überweisungen mit giropay
Die folgende Tabelle beschreibt die Ergebnis-Parameter, die das Paygate 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:
Parameter | Format | CND | Beschreibung | |
---|---|---|---|---|
MID | ans..30 | M | HändlerID, die von Computop vergeben wird | |
PayID | an32 | M | Vom Paygate vergebene ID für die Zahlung, z.B. zur Referenzierung in Batch-Dateien | |
XID | an32 | M | Vom Paygate vergebene ID für alle einzelnen Transaktionen (Autorisierung, Buchung, Gutschrift), die für eine Zahlung durchgeführt werden | |
TransID | ans..64 | M | Transaktionsnummer des Händlers | |
Status | a..50 | M | OK (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äß Paygate Antwort-Codes (A4 Fehlercodes) | |
RefNr | ans..30 | OC | Referenznummer des Händlers. Bei PPRO: Nur die Zeichen a-zA-Z0-9,-_ sind erlaubt, Format ans..40. | |
UserData | ans..1024 | O | Wenn beim Aufruf angegeben, übergibt das Paygate die Parameter mit dem Zahlungsergebnis an den Shop | |
MAC | an64 | M | Hash Message Authentication Code (HMAC) mit SHA-256-Algorithmus | |
PaymentPurpose | ans..26 | C | Nur bei PPRO: Zahlungszweck | |
PaymentGuarantee | a..12 | C | Nur bei PPRO: NONE= keine Zahlungsgarantie, VALIDATED= Kundenkonto valide, aber keine Zahlungsgarantie, FULL= Zahlungsgarantie Hinweis: Dieser Parameter wird nur zurückgegeben, falls der Status=OK ist. | |
ErrorText | ans..128 | C | Nur bei PPRO: detaillierte PPRO Fehlermeldung. Hinweis: Wird nur bei Status=FAILED zurückgegeben. Nutzung nur in Abstimmung mit dem Computop Support möglich. | |
TransactionID | an..20 | O | Nur bei PPRO: Eindeutige Transaktionsnummer bei PPRO | |
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 |
Ergebnis-Parameter für URLNotify, URLSuccess und URLFailure bei giropay
Prüfung des Online-Status von giropay-Banken
Im Paygate können Händlern vor dem eigentlichen Zahlungsablauf prüfen, welche Banken online sind und somit die giropay-Zahlung ermöglichen. Für diese Prüfung rufen Sie folgende URL auf:
Die folgende Tabelle beschreibt die verschlüsselten Übergabeparameter:
Parameter | Format | CND | Beschreibung |
---|---|---|---|
MerchantID | ans..30 | M | HändlerID, die von Computop vergeben wird. Dieser Parameter ist zusätzlich auch unverschlüsselt zu übergeben. |
Tabelle: Parameter für zur Prüfung des Online-Status von giropay-Banken
Bitte übergeben Sie die Merchant-ID sowohl im unverschlüsselten als auch im verschlüsselten String.
Die folgende Tabelle beschreibt die Ergebnis-Parameter, die das Paygate als Antwort sendet:
Parameter | Format | CND | Beschreibung |
---|---|---|---|
MID | ans..30 | M | HändlerID, die von Computop vergeben wird |
BICList | ans.. | M | Der Parameter BICList enthält sämtliche Banken, die zum Zeitpunkt der Abfrage online sind, als kommaseparierte Werte. Beispiel: BICList=TESTBIC1,TESTBIC2,… |
Tabelle: Ergebnis-Parameter zur Abfrage der giropay-Banken
Gutschrift mit Referenz
Gutschriften sind über eine Server-zu-Server-Kommunikation möglich. Das Paygate erlaubt für giropay 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:
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:
Parameter | Format | CND | Beschreibung |
---|---|---|---|
MerchantID | ans..30 | M | HändlerID, die von Computop vergeben wird. Dieser Parameter ist zusätzlich auch unverschlüsselt zu übergeben. |
PayID | an32 | M | Vom Paygate vergebene ID für die gutzuschreibende Transaktion |
TransID | ans..64 | M | Vom Händler initial vergebene ID für den gutzuschreibenden Zahlungsvorgang |
MAC | an64 | M | Hash Message Authentication Code (HMAC) mit SHA-256-Algorithmus |
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 | a..3 | M | Währungskürzel, drei Zeichen DIN / ISO 4217 |
OrderDesc | ans..768 | OC | Beschreibung der gutgeschriebenen Artikel, Einzelpreise, Händlerkommentar etc. |
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 Paygate keine Zahlung aus sondern gibt nur den Status der ursprünglichen Transaktion zurück. Bitte beachten Sie, dass das Paygate für die erste initiale Aktion einen abgeschlossenen Transaktionsstatus haben muss. Einreichungen mit identischer ReqID auf einen offenen Status werden regulär verarbeitet. |
Parameter für Gutschrift von giropay-Zahlungen
Die folgende Tabelle beschreibt die Ergebnis-Parameter, die das Paygate als Antwort zurückgibt:
Parameter | Format | CND | Beschreibung |
---|---|---|---|
MID | ans..30 | C | HändlerID, die von Computop vergeben wird |
PayID | an32 | M | Vom Paygate vergebene ID für die Zahlung, z.B. zur Referenzierung in Batch-Dateien |
XID | an32 | M | Vom Paygate vergebene ID für alle einzelnen Transaktionen (Autorisierung, Buchung, Gutschrift), die für eine Zahlung durchgeführt werden |
TransID | ans..64 | M | Transaktionsnummer des Händlers |
Status | a..30 | M | OK oder FAILED und nur bei PPRO AUTHORIZE_REQUEST |
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äß Paygate Antwort-Codes (A4 Fehlercodes) |
RefNr | ans..30 | OC | Referenznummer des Händlers |
ErrorText | ans..128 | OC | Nur bei PPRO: detaillierte PPRO-Fehlermeldung Hinweis: Wird nur bei Status=FAILED zurückgegeben. Nutzung nur in Abstimmung mit dem Computop Support möglich. |
Ergebnis-Parameter für Gutschrift von giropay-Zahlungen
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 giropay-Zahlung ü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 giropay nur über die PPRO-Anbindung möglich ist.
Folgende Tabelle gibt eine Übersicht der pro Aktion jeweils möglichen Batch-Versionen und ihrer Besonderheiten:
Aktion | Version | Beschreibung |
---|---|---|
Credit | 1.0 / 2.0 | Standardversion ohne Rückgabe von 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 giropay-Zahlung in einer einzureichenden Batch-Datei sieht folgendermaßen aus:
HEAD,<MerchantID>,<Date>,<Version> GIROPAY,Credit,<Amount>,<Currency>,<TransID>,(<RefNr>,)<PayID> 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:
Parameter | Format | CND | Beschreibung |
---|---|---|---|
Type | a..11 | M | HEAD für Header, FOOT für Footer, GIROPAY für giropay |
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 Helpdesk, wenn Sie Beträge < 100 (kleinste Währungseinheit) buchen möchten. |
Currency | a3 | M | Währungskürzel, drei Zeichen DIN / ISO 4217 |
TransID | ans..64 | M | TransaktionsID, die für jede Zahlung eindeutig sein muss |
RefNr | ans..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> GIROPAY,Credit,<Amount>,<Currency>,<TransID>,(<RefNr>,)<PayID>,<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):
Parameter | 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 oder FAILED |
Code | n8 | M | Fehlercode gemäß Paygate Antwort-Codes (A4 Fehlercodes) |
Beschreibung der Ergebnis-Parameter im Datensatz von Batch-Dateien