Integration
Grundlagen
FAQ
Bluecode
Kreditkarte
Lastschrift
eps
iDEAL
Klarna
Maestro
Pay by bank
Payment Page
PayPal
Tools
Fehlernummern
Ergebniscode
Testdaten
Grundlagen
FAQ
Bluecode
Kreditkarte
Lastschrift
eps
iDEAL
Klarna
Maestro
Pay by bank
Payment Page
PayPal
Tools
Fehlernummern
Ergebniscode
Testdaten
Bei den Tests werden Sie immer auf das selbe Formular weitergeleitet, in dem je nach gewähltem Fall die folgenden Felder auszufüllen sind.
Interne Simulation (ohne Weiterleitung):
Formularfeld | Eingabewert |
---|---|
IBAN | DE63123456791212121212 |
Dann mit „Weiter“ bestätigen und erfolgreich beenden.
Deutsche Bank Sandbox:
Formularfeld | Eingabewert |
---|---|
IBAN | DE17215730140403340300 [dann mit OK bestätigen] |
Filiale | 615 |
Konto | 4033403 |
Testfälle für negative Ausgänge über Centbeträge oder ähnliches, gibt es hier nicht.
Durch eine erfolgreiche Initialisierung wird eine Referenznummer erstellt sowie ein Weiterleitunslink (redirect) an den Händler übermittelt. Der übermittelte Link führt zu einem Formular des Rechenzentrums, wo die Zahlungsdaten eingegeben und dann i.d.R. (je nach Kundenbank) zur Bank des Käufers weitergeleitet und weitere Informationen abgefragt und/oder Bestätigungen eingeholt werden. Er muss an diese URL weitergeleitet werden. Dies kann durch einen HTTP-Redirect-Header, eine HTML-Seite mit entsprechendem Meta-Tag oder Javascript erfolgen.
URL: https://payment.girosolution.de/girocheckout/api/v2/transaction/start
Bereitzustellen von: GiroCheckout
Aufzurufen von: Händler
Name | Pflicht | Type | Beschreibung |
---|---|---|---|
merchantId | Ja | Integer | Händler-ID des Shops |
projectId | Ja | integer | Projekt-ID eines Pay-by-bank-Projekts |
merchantTxId | Ja | String(255) | Eindeutige Transaktions-ID des Händlers (z.b. Bestellnummer). Zulässige Zeichen: beliebige Buchstaben (inkl. sprachl. Sonderzeichen), 0-9, Zeichen & = + , : ; . _ ! ? # / |
amount | Ja | Integer | Betrag in Cent |
currency | Ja | String(3) | Währung der Transaktion EUR = Euro (default) |
purpose | Ja | String(27) | Verwendungszweck der Überweisung (erscheint auf dem Kontoauszug) |
urlRedirect | Ja | String(2048) | URL, an die der Kunde nach der Zahlung geschickt werden soll. |
urlNotify | Ja | String(2048) | URL, an die der Zahlungsausgang gemeldet werden soll. |
kassenzeichen | Optional | String(255) | Optionales Feld für die Übergabe eines Kassenzeichens. Dieses wird dann im GiroCockpit in den Transaktionsdetails angezeigt und mit den Transaktionsdaten exportiert und es kann dort auch danach gesucht werden. Zulässige Zeichen sind alle UTF-8-Zeichen. |
hash | Ja | String(32) | HMAC MD5 hash über alle Werte des Aufrufs. Siehe hash generieren |
curl -d "merchantId=1234567" \ -d "projectId=1234" \ -d "merchantTxId=1234567890" \ -d "amount=100" \ -d "currency=EUR" \ -d "purpose=Beispieltransaktion" \ -d "urlRedirect=http://www.my-domain.de/girocheckout/redirect" \ -d "urlNotify=http://www.my-domain.de/girocheckout/notify" \ -d "hash=256b7bb16edbc76871c830d0d623c303" \ https://payment.girosolution.de/girocheckout/api/v2/transaction/start
Die Antwort enthält ein JSON Objekt. Das Feld rc liefert einen Fehlercode zurück. Wird rc = 0 zurückgeliefert, wurde die Transaktion erfolgreich initialisiert. Es wird als Antwort eine Transaktionsnummer und die redirectURL zum Online Banking des Käufers zurückgeliefert.
Name | Pflicht | Type | Beschreibung |
---|---|---|---|
rc | Ja | Integer | Fehlernummer |
msg | Ja | String(255) | Zusätzliche Informationen im Fehlerfall |
reference | Ja | String(36) | Eindeutige GiroCheckout Transaktions-ID |
redirect | Ja | String(2048) | Redirect URL zur Weiterleitung des Kunden zum Online Banking |
HEADER Parameter | |||
hash | Ja | String(32) | HMAC MD5 hash über alle Werte der Rückmeldung. Siehe hash der Rückantwort |
hash : 177a0db9c9745b94e1b8d31b22cc7876
{"reference":"c6edadaa-b507-49f1-a548-013675fb5c83","redirect":"https://test-payform.girocheckout.de/web-api/de_DE/R.po?n=wUcNog4zKHgZcO6_Psg6N7KHiemkJSnAg7v0lyh4eKo54k","rc":"0","msg":""}
hash : 98d9d8b133acf97eb92601fa72d804a0
{"reference":"f84e606f-817d-439f-ada1-d37e85cb6314","redirect":"","rc":"5100","msg":"Fehler beim Zahlungsabwickler"}
Der Ausgang einer Pay by bank Zahlung wird an die im urlNotify Parameter angegebene URL übermittelt. Diese Rückmeldung dient dazu, dem Händler den Ausgang der Transaktion mitzuteilen. Durch diese Information kann der Transaktionsstatus beim Händler geändert werden. Der Zahlungausgang der Transaktion steht im Feld gcResultPayment.
URL: notifyUrl aus der Transaktionsinitialisierung
Bereitzustellen von: Händler
Aufzurufen von: GiroCheckout
Name | Pflicht | Type | Beschreibung |
---|---|---|---|
gcReference | Ja | String(36) | GiroCheckout Transaktions-ID |
gcMerchantTxId | Ja | String(255) | Händler Transaktions-ID |
gcBackendTxId | Ja | String(8) | Zahlungsabwickler Transaktions-ID |
gcAmount | Ja | Integer | Bei Dezimalwährungen den Betrag in der kleinsten Währungseinheit angeben, z.B. Cent |
gcCurrency | Ja | String(3) | Währung (i.d.R. EUR) |
gcResultPayment | Ja | Integer | Ergebniscodes der Zahlung |
gcHash | Ja | String(32) | HMAC MD5 Hash über alle Werte des Aufrufs. Siehe hash generieren |
Als Antwort auf den GET-Request wird einer der folgenden HTTP Statuscodes erwartet.
HTTP Statuscode | Beschreibung |
---|---|
200 (OK) | Die Benachrichtigung wurde korrekt verarbeitet. |
400 (Bad Request) | Der Händler hat die Benachrichtigung nicht verarbeitet, möchte aber auch nicht erneut benachrichtigt werden. |
Alle anderen | Die Benachrichtigung wird max. 10 Mal alle 30 Minuten wiederholt, bis der Händler den HTTP Statuscode 200 oder 400 zurückgibt. |
Nach Beendigung der Zahlung wird der Kunde automatisch zurück zum Händler geleitet.
URL: redirectUrl aus der Transaktionsinitialisierung
Bereitzustellen von: Händler
Aufzurufen von: GiroCheckout
Name | Pflicht | Type | Beschreibung |
---|---|---|---|
gcReference | Ja | String(36) | GiroCheckout Transaktions-ID |
gcMerchantTxId | Ja | String(255) | Händler Transaktions-ID |
gcBackendTxId | Ja | String(8) | Zahlungsabwickler Transaktions-ID |
gcAmount | Ja | Integer | Bei Dezimalwährungen den Betrag in der kleinsten Währungseinheit angeben, z.B. Cent |
gcCurrency | Ja | String(3) | Währung (i.d.R. EUR) |
gcResultPayment | Ja | Integer | Ergebnis der Zahlung |
gcHash | Ja | String(32) | HMAC MD5 Hash über alle Werte des Aufrufs. Siehe hash generieren |