~~NOCACHE~~
====== Lastschrift ======
Informationen zur Lastschrift sind unter https://www.girosolution.de/girocheckout/fuer-haendler/ zu finden.
Eine Lastschrift kann **ausschließlich** mit der Währung **EURO** verwendet werden.
===== Testdaten =====
{{page>testdata:directdebit&noheader&nofooter}}
===== Workflow =====
Die Integration einer Zahlung per Lastschrift kann auf zwei Wege erfolgen.
* Sind die Kontodaten (IBAN oder Kontonummer und Bankleitzahl) des Käufers bekannt, kann die Transaktion über eine direkte Schnittstelle abgewickelt weden.
* Alternativ kann der Formularservice verwendet werden.
**Lastschriftzahlung mit Formularservice**
hide footbox
participant "Kunde" as customer
participant "Shop" as shop
participant "GiroCheckout" as girocheckout
participant "Zahlungsabwickler" as za
autonumber
customer -> shop:
shop -> girocheckout:
girocheckout -> za:
za -> girocheckout:
girocheckout -> shop:
shop -> customer:
customer -> za:
za -> customer:
customer -> za
za -> za:
za -> girocheckout:
girocheckout -> shop
shop -> shop:
shop -> girocheckout:
girocheckout -> za:
za -> shop:
center footer (c)2016 by GiroSolution AG
- Käufer wählt Zahlart Lastschrift aus
- Shop initiiert Lastschriftzahlung ([[girocheckout:directdebit:start#initialisierung_einer_lastschrifttransaktion_mit_formularservice|Initialisierung]])
- GiroCheckout initialisiert Transaktion bei Zahlungsabwickler
- Zahlungsabwickler übermittelt Ergebnis an GiroCheckout
- Shop bekommt Rückmeldung über Initialisierungsausgang (bei Fehler ist Transaktion beendet)
- Shop sendet Redirect URL an Kundenbrowser
- Kundenbrowser leitet zum Zahlungsabwickler weiter
- Zahlungsabwickler zeigt Zahlformular an
- Kunde autorisiert Transaktion
- Zahlungsabwickler führt Transaktion durch
- Zahlungsabwickler übermittelt Ergebnis an GiroCheckout
- GiroCheckout benachrichtigt Shop über Transaktionsausgang ([[girocheckout:directdebit:start#benachrichtigung_ueber_den_zahlungsausgang|Benachrichtigung]])
- Shop verarbeitet Transaktionsausgang
- Shop sendet HTTP Statuscode an GiroCheckout
- GiroCheckout sendet Rücksprung zum Händler an Zahlungsabwickler
- Kunde klickt "Zurück zum Shop" ([[girocheckout:directdebit:start#rueckleitung_des_kunden_zum_haendler|Rücksprung]])
**Lastschriftzahlung ohne Formularservice**
hide footbox
participant "Kunde" as customer
participant "Shop" as shop
participant "GiroCheckout" as girocheckout
participant "Bank" as bank
autonumber
customer -> shop:
shop -> girocheckout:
girocheckout -> bank:
bank -> girocheckout:
girocheckout -> shop:
shop -> customer:
center footer (c)2013 by GiroSolution AG
- Käufer wählt Zahlart Lastschrift aus und gibt seine Kontodaten (IBAN) ein
- Shop sendet Lastschriftzahlung an GiroCheckout ([[girocheckout:directdebit:start#durchführen_einer_lastschrifttransaktion_ohne_formularservice|Lastschrift ohne Formularservice]])
- GiroCheckout reicht Zahlung bei Bank ein
- Bank gibt Ausgang der Zahlung an GiroCheckout weiter
- GiroCheckout leitet Antwort an Händler weiter
- Händler informiert Kunde über Zahlungsausgang
===== API-Funktionen =====
==== Übersicht =====
Wie im Workflow mit Formularservice dargestellt gibt es mehrere API-Aufrufe während einer Lastschrift-Transaktion.
- Transaktion initiieren
- Kontoabfrage beim Käufer
- Bezahlinformation an Händler übermitteln
- Bezahlinformation mit Käuferbrowserweiterleitung zurück zum Händler (durch Käufer nach Zahlung ausgelöst)
Wie im Workflow Direkt dargestellt gibt es einen API-Aufruf während einer Lastschrift-Transaktion.
- Transaktion durchführen
Im Folgenden werden die API-Felder und Aufrufe näher erläutert.
==== Initialisierung einer Lastschrifttransaktion mit Formularservice ====
Durch eine erfolgreiche Initialisierung wird eine Referenznummer erstellt sowie ein Weiterleitunslink (redirect) an den Händler übermittelt. Der übermittelte Link führt zum Bezahlformular. Der Kunde muss an diese URL weitergeleitet werden. Dies kann durch einen HTTP-Redirect-Header, eine HTML-Seite mit entsprechendem Meta-Tag oder Javascript erfolgen.
=== Anfrage ===
**URL:** https://payment.girosolution.de/girocheckout/api/v2/transaction/start \\
**Bereitzustellen von:** GiroCheckout \\
**Aufzurufen von:** Händler
== POST Parameter ==
^Name ^Pflicht ^Type ^Beschreibung ^
|merchantId |Ja |Integer |Händler-ID eines Lastschrift Projekts |
|projectId |Ja |integer |Projekt-ID eines Lastschrift Projekts |
|merchantTxId |Ja |String(255) |eindeutige Transaktions-ID des Händlers |
|amount |Ja |Integer |Bei Dezimalwährungen den Betrag in der kleinsten Währungseinheit angeben, z.B. Cent, Penny |
|currency |Ja |String(3) |Währung der Transaktion, gemäß [[http://de.wikipedia.org/wiki/ISO_4217#Aktuell_g.C3.BCltige_W.C3.A4hrungen|ISO 4217]]\\ EUR = Euro |
|purpose |Ja |String(50) |Verwendungszweck der Lastschrift Transaktion. Diese Information erscheint auf dem Kontoauszug. |
|type |Optional |String |Transaktionsart (siehe [[girocheckout:transactiontypes:start]]) \\ SALE = Verkauf wird sofort gebucht (default) \\ AUTH = Reservierung des Betrags|
|locale |Optional |String(4) |Sprache des Lastschriftformulars. \\ de = deutsch (default) \\ en = englisch \\ es = spanisch \\ fr = französisch \\ it = italienisch \\ pt = portugiesisch \\ nl = niederländisch \\ cs = tschechisch \\ sv = schwedisch \\ da = dänisch \\ pl = polnisch \\ spde = deutsch Spende \\ spen = englisch Spende \\ de_DE_stadtn = deutsch Kommunen |
|mobile |Optional |Boolean |Definiert, ob das Formular für Smartphones und mobile Browser optimiert angezeigt werden soll. \\ 0 = nein (default) \\ 1 = ja |
|mandateReference | Optional |String(35) |Mandatsreferenz \\ Wird keine angegeben, wird eine eindeutige Mandatsreferenz generiert. Die Mandatsreferenz ist in der Antwort enthalten. \\
Ziffern: 0 – 9
Buchstaben: A – Z und a – z
Sonderzeichen: ' : \ , ? - + . ( ) /
||
|mandateSignedOn | Optional |String(10)| Datum im Format JJJJ-MM-TT, wann das SEPA-Lastschriftmandat erteilt wurde. Wenn kein Datum angegeben wird, wird das aktuelle Datum verwendet. |
|mandateReceiverName |Optional |String(70)| Names des Empfängers, der im SEPA Mandat verwendet wurde. Falls nichts angegeben, wird der in den Stammdaten hinterlegte Firmenname verwendet. \\
Ziffern: 0 – 9
Buchstaben: A – Z und a – z
Sonderzeichen: & / = + , : ; . _ - ! ?
|
|mandateSequence | Optional |Integer |Sequenztyp der SEPA-Lastschrift. Falls nichts angegeben, wird eine Einmalzahlung angenommen. \\ 1 = Einmalzahlung (default) \\ 2 = erste Zahlung einer Sequenz \\ 3 = Folgezahlung \\ 4 = letzte Zahlung einer Sequenz |
|pkn |Optional |String |Das Feld dient dazu eine erneute Transaktion, ohne erneute Eingabe der Bankverbindung, zu starten. \\ create = neue Pseudo-Kartennummer für die verwendete Bankverbindung generieren \\ [Pseudo-Kartennummer] = Kartennumer der zu verwendenden Bankverbindung (siehe [[girocheckout:directdebit:start#pseudo-kartennummer_pkn|Pseudokartennummer]])\\ **Für diese Funktion ist eine separate Einrichtung erforderlich und es fallen einmalige Einrichtungsgebühren an.**|
|urlRedirect |Ja |String |URL, an die der Kunde nach der Zahlung geschickt werden soll. |
|urlNotify |Ja |String |URL, an die der Zahlungsausgang gemeldet werden soll. |
|hash |Ja |String |HMAC MD5 hash über alle Werte des Aufrufs. Siehe [[girocheckout:general:start#hash_generieren|hash generieren]] |
== Beispiel ==
{{page>codesamples:directdebit#transactionstart.request&noheader&nofooter}}
=== Antwort ===
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. Sie bekommen als Antwort eine Transaktionsnummer und die redirectURL zum Zahlformular zurück.
== Parameter ==
^Name ^Pflicht ^Type ^Beschreibung ^
|rc |Ja |Integer |[[girocheckout:errorcodes|Fehlernummer]] |
|msg |Ja |String |zusätzliche Informationen im Fehlerfall |
|reference |Optional |String |eindeutige GiroCheckout Transaktions-ID |
|mandateReference|Optional |String |eindeutige Mandatsreferenz-ID |
|redirect |Optional |String |Redirect URL zur Weiterleitung des Kunden zum Zahlungsformular |
^HEADER Parameter^^^^
|hash |Ja |String |HMAC MD5 hash über alle Werte der Rückmeldung. Siehe [[girocheckout:general:start#uebermittlung_von_daten_ueber_einen_schnittstellenaufruf_an_den_haendler|hash der Rückantwort]] |
== Beispiel im Erfolgsfall ==
{{page>codesamples:directdebit#transactionstart.response.true&noheader&nofooter}}
== Beispiel im Fehlerfall ==
{{page>codesamples:directdebit#transactionstart.response.false&noheader&nofooter}}
==== Benachrichtigung über den Zahlungsausgang ====
Der Ausgang einer Zahlung wird, an die im //urlNotify// Paramter 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 einer Transaktion steht im Feld gcResultPayment.
=== Anfrage ===
**URL:** notifyUrl aus der Transaktionsinitialisierung \\
**Bereitzustellen von:** Händler \\
**Aufzurufen von:** GiroCheckout
== GET Parameter ==
^Name ^Pflicht ^ Type ^Beschreibung ^
|gcReference |Ja |String | GiroCheckout Transaktions-ID |
|gcMerchantTxId |Ja |String | Händler Transaktions-ID |
|gcBackendTxId |Ja |String | Zahlungsabwickler Transaktions-ID |
|gcAmount |Ja |Integer | bei Dezimalwährungen den Betrag in der kleinsten Währungseinheit angeben, z.B. Cent, Penny |
|gcCurrency |Ja |String | Währung |
|gcResultPayment |Ja |Integer | [[girocheckout:resultcodes#zahlungsausgang|Ergebniscodes der Zahlung]]|
|gcHash |Ja |String | HMAC MD5 hash über alle Werte des Aufrufs. Siehe [[girocheckout:general:start#hash_generieren|hash generieren]] |
=== Antwort ===
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. |
==== Rückleitung des Kunden zum Händler ====
Nach Beendigung der Zahlung kann der Kunde über einen Link zurück zum Händler kommen. Eine Weiterleitung erfolgt erst, wenn der Käufer den „Abbrechen“ oder „Zurück zum Shop“ Button drückt. Diese Rückleitung erfolgt nicht automatisch.
=== Anfrage ===
**URL:** redirectUrl aus der Transaktionsinitialisierung \\
**Bereitzustellen von:** Händler \\
**Aufzurufen von:** GiroCheckout
== GET Parameter ==
^Name ^Pflicht ^Type ^Beschreibung ^
|gcReference |Ja |String | GiroCheckout Transaktions-ID |
|gcMerchantTxId |Ja |String | Händler Transaktions-ID |
|gcBackendTxId |Ja |String | Zahlungsabwickler Transaktions-ID |
|gcAmount |Ja |Integer | bei Dezimalwährungen den Betrag in der kleinsten Währungseinheit angeben, z.B. Cent, Penny |
|gcCurrency |Ja |String | Währung |
|gcResultPayment |Ja |Integer | [[girocheckout:resultcodes#zahlungsausgang|Ergebnis der Zahlung]]|
|gcHash |Ja |String | HMAC MD5 hash über alle Werte des Aufrufs. Siehe [[girocheckout:general:start#hash_generieren|hash generieren]] |
==== Durchführen einer Lastschrifttransaktion ohne Formularservice ====
Sie übermitteln die Transaktionsdaten und erhalten direkt das Ergebnis der Lastschrift Zahlung.
=== Anfrage ===
**URL:** https://payment.girosolution.de/girocheckout/api/v2/transaction/payment \\
**Bereitzustellen von:** GiroSolution AG \\
**Aufzurufen von:** Händler
== POST Parameter ==
^Name ^Pflicht ^Type ^Beschreibung ^
|merchantId |Ja |Integer |Händler-ID eines Lastschrift Projekts |
|projectId |Ja |integer |Projekt-ID eines Lastschrift Projekts |
|merchantTxId |Ja |String(255) |Eindeutige Transaktions-ID des Händlers |
|amount |Ja |Integer |Bei Dezimalwährungen den Betrag in der kleinsten Währungseinheit angeben, z.B. Cent, Penny |
|currency |Ja |String(3) |Währung der Transaktion, gemäß [[http://de.wikipedia.org/wiki/ISO_4217#Aktuell_g.C3.BCltige_W.C3.A4hrungen|ISO 4217]]\\ EUR = Euro |
|purpose |Ja |String(50) |Verwendungszweck der Lastschrift Transaktion. Diese Information erscheint auf dem Kontoauszug. |
|type |Optional |String |Transaktionsart (siehe [[girocheckout:transactiontypes:start]]) \\ SALE = Verkauf wird sofort gebucht (default) \\ AUTH = Reservierung des Betrags|
|bankcode |Optional |String(8) |Bankleitzahl \\ **Plicht, wenn keine IBAN angegeben ist.** |
|bankaccount |Optional |String(10) |Kontonummer \\ **Plicht, wenn keine IBAN angegeben ist.** |
|iban |Optional |String(34) | IBAN-Nummer des Käufers **ohne Leerzeichen** |
|accountHolder |Ja |String(27) | Kontoinhaber |
|mandateReference | Optional |String(35) |Mandatsreferenz \\ Wird keine angegeben, wird eine eindeutige Mandatsreferenz generiert. Die Mandatsreferenz ist in der Antwort enthalten. \\
Ziffern: 0 – 9
Buchstaben: A – Z und a – z
Sonderzeichen: ' : \ , ? - + . ( ) /
|
|mandateSignedOn | Optional |String(10)| Datum im Format JJJJ-MM-TT, wann das SEPA-Lastschriftmandat erteilt wurde. Wenn kein Datum angegeben wird, wird das aktuelle Datum verwendet. |
|mandateReceiverName |Optional |String(70)| Names des Empfängers, der im SEPA Mandat verwendet wurde. Falls nichts angegeben, wird der in den Stammdaten hinterlegte Firmenname verwendet. \\
Ziffern: 0 – 9
Buchstaben: A – Z und a – z
Sonderzeichen: & / = + , : ; . _ - ! ?
|
|mandateSequence | Optional |Integer |Sequenztyp der SEPA-Lastschrift. Falls nichts angegeben, wird eine Einmalzahlung angenommen. \\ 1 = Einmalzahlung (default) \\ 2 = erste Zahlung einer Sequenz \\ 3 = Folgezahlung \\ 4 = letzte Zahlung einer Sequenz |
|pkn |Optional |String |Das Feld dient dazu eine erneute Transaktion, ohne erneute Eingabe der Bankverbindung, zu starten. \\ create = neue Pseudo-Kartennummer für die verwendete Bankverbindung generieren \\ [Pseudo-Kartennummer] = Kartennumer der zu verwendenden Bankverbindung (siehe [[girocheckout:directdebit:start#pseudo-kartennummer_pkn|Pseudokartennummer]])\\ **Für diese Funktion ist eine separate Einrichtung erforderlich und es fallen einmalige Einrichtungsgebühren an.**|
|urlNotify |Optional |String |URL, an die der Zahlungsausgang gemeldet werden soll. |
|hash |Ja |String |HMAC MD5 hash über alle Werte des Aufrufs. Siehe [[girocheckout:general:start#hash_generieren|hash generieren]] |
== Beispiel ==
{{page>codesamples:directdebit#authorize.request&noheader&nofooter}}
=== Antwort ===
Die Antwort ist ein JSON Objekt. Wenn **rc = 0** zurückgeliefert wird, war der Aufruf fehlerfrei und das Ergebnis der Lastschrift Transaktion ist dem Parameter **resultPayment** zu entnehmen.
== Parameter ==
^Name ^Pflicht ^Type ^Beschreibung ^
|rc |Ja |Integer |Antwortcode |
|msg |Ja |String |zusätzliche Informationen im Fehlerfall |
|reference |Optional |String |eindeutige GiroCheckout Transaktions-ID |
|backendTxId |Optional |String |Zahlungsabwickler Transaktions-ID |
|mandateReference |Optional |String |Mandatsreferenz der SEPA Lastschrift |
|resultPayment |Optional |Integer |[[girocheckout:resultcodes#zahlungsausgang|Ergebnis der Lastschrift Zahlung]] |
^HEADER Parameter^^^^
|hash |Ja |String |HMAC MD5 hash über alle Werte der Rückmeldung. Siehe [[girocheckout:general:start#uebermittlung_von_daten_ueber_einen_schnittstellenaufruf_an_den_haendler|hash der Rückantwort]] |
== Beispiel im Erfolgsfall ==
{{page>codesamples:directdebit#authorize.response.true&noheader&nofooter}}
== Beispiel im Fehlerfall ==
{{page>codesamples:directdebit#authorize.response.false&noheader&nofooter}}
===== Pseudo-Kartennummer (PKN) =====
Für diese Funktion ist eine separate Einrichtung erforderlich und es fallen einmalige Einrichtungsgebühren an.
Eine Pseudo-Kartennummer ist eine Referenz auf eine vom Käufer verwendete Bankverbindung (Kontoinhaber, Kontonummer, Bankleitzahl / IBAN). Durch diese Referenz wird dem Händler ermöglicht, eine bereits verwendete Bankverbindung zur Auswahl anzubieten. Wird die Nummer bei der Initiierung einer Lastschrift-Transaktion mitgeschickt, wird die Bankverbindung im Zahlformular vorausgefüllt oder die Zahlung direkt durchgeführt (je nach Wunsch, also mit oder ohne Formularservice).
==== Pseudo-Kartennummer Informationen abfragen ====
Durch diese Funktion werden PKN-Informationen bereitgestellt. Sie liefert als Ergebnis eine PKN sowie die hinterlegte Bankverbindung (Kontoinhaber, Kontonummer, Bankleitzahl / IBAN), welche für eine bereits durchgeführte Transaktion verwendet wurde.
=== Anfrage ===
**URL:** https://payment.girosolution.de/girocheckout/api/v2/directdebit/pkninfo \\
**Bereitzustellen von:** GiroCheckout \\
**Aufzurufen von:** Händler
== POST Parameter ==
^Name ^Pflicht ^Type ^Beschreibung ^
|merchantId |Ja |Integer |Händler-ID eines Lastschrift Projekts |
|projectId |Ja |Integer |Projekt-ID eines Lastschrift Projekts |
|reference |Ja |String(36)|Eindeutige GiroCheckout Transaktions-ID |
|hash |Ja |String(32)|HMAC MD5 hash über alle Werte des Aufrufs. Siehe [[girocheckout:general:start#hash_generieren|hash generieren]]|
== Beispiel ==
{{page>codesamples:creditcard#pkninfo.request&noheader&nofooter}}
=== Antwort ===
Die Antwort besteht aus einem JSON Objekt. Das Feld rc liefert einen Fehlercode zurück. Wird rc = 0 zurückgeliefert, wurde die Anfrage erfolgreich abgesetzt. Die Antwort enthält die PKN-Nummer, den Kontoinhaber und die Bankverbindung.
== Parameter ==
^Name ^Pflicht ^Type ^Beschreibung ^
|rc |Ja |Integer |[[girocheckout:errorcodes|Fehlernummer]] |
|msg |Ja |String |zusätzliche Informationen im Fehlerfall |
|pkn |Ja |String |Pseudo-Kartennummer |
|holder |Ja |String |Kontoinhaber |
|bankcode |Ja |String |Bankleitzahl |
|bankaccount |Ja |String |Kontonummer |
|iban |Ja |String |IBAN |
^HEADER Parameter^^^^
|hash |Ja |String |HMAC MD5 hash über alle Werte der Rückmeldung. Siehe [[girocheckout:general:start#uebermittlung_von_daten_ueber_einen_schnittstellenaufruf_an_den_haendler|hash der Rückantwort]] |
== Beispiel im Erfolgsfall ==
{{page>codesamples:creditcard#pkninfo.response.true&noheader&nofooter}}
== Beispiel im Fehlerfall ==
{{page>codesamples:creditcard#pkninfo.response.false&noheader&nofooter}}
===== Weitere Transaktionsarten =====
Diese Transaktionen referenzieren eine zuvor erfolgte Transaktion. Die Transaktion basiert auf einer Server zu Server Kommunikation und erfordert keine Kundenaktion (Eingabe von Daten).
Bereitzustellen von: GiroCheckout \\
Aufzurufen von: Händler \\
==== Workflow ====
hide footbox
participant "Shop" as shop
participant "GiroCheckout" as girocheckout
participant "Abwickler" as cc
autonumber
shop -> girocheckout:
girocheckout -> cc:
cc -> girocheckout:
girocheckout -> shop:
center footer (c)2016 by GiroSolution AG
- Shop sendet referenzierende Transaktion
- GiroCheckout leitet Transaktion zum Abwickler
- Abwickler übermittelt Ergebnis an GiroCheckout
- Shop bekommt Rückmeldung über Transaktionsausgang ([[girocheckout:directdebit:start#benachrichtigung_ueber_den_zahlungsausgang|Benachrichtigung]])
==== Buchung (CAPTURE) ====
{{page>girocheckout:transactiontypes:descriptions#capture.desc&noheader&nofooter}}
==== Erstattung (REFUND) ====
{{page>girocheckout:transactiontypes:descriptions#refund.desc&noheader&nofooter}}
=== POST Parameter ===
URL CAPTURE: https://payment.girosolution.de/girocheckout/api/v2/transaction/capture \\
URL REFUND: https://payment.girosolution.de/girocheckout/api/v2/transaction/refund
^Name ^Pflicht ^Type ^Beschreibung ^
|merchantId |Ja |Integer |Händler-ID eines Lastschrift Projekts |
|projectId |Ja |Integer |Projekt-ID eines Lastschrift Projekts |
|merchantTxId |Ja |String(255) |eindeutige Transaktions-ID des Händlers |
|amount |Ja |Integer |Bei Dezimalwährungen den Betrag in der kleinsten Währungseinheit angeben, z.B. Cent, Penny |
|currency |Ja |String(3) |Währung der Transaktion, gemäß [[http://de.wikipedia.org/wiki/ISO_4217#Aktuell_g.C3.BCltige_W.C3.A4hrungen|ISO 4217]].\\ EUR = Euro |
|purpose |Optional |String(27) |Verwendungszweck der Erstattung. Diese Information erscheint auf dem Kontoauszug. |
|reference |Ja |String |GiroCheckout Transaktions-ID, für die eine Buchung oder Erstattung durchgeführt werden soll |
|hash |Ja |String |HMAC MD5 hash über alle Werte des Aufrufs. Siehe [[girocheckout:general:start#hash_generieren|hash generieren]] |
== Beispiel ==
{{page>codesamples:directdebit#refund.request&noheader&nofooter}}
=== Antwort ===
Die Antwort besteht aus einem JSON Objekt. Das Feld rc liefert einen Fehlercode zurück. Wird rc = 0 zurückgeliefert, wurde die Transaktion erfolgreich initialisiert. Sie bekommen als Antwort eine Transaktionsnummer und die redirectURL zum Formular service zurück.
=== Parameter ===
^Name ^Pflicht ^Type ^Beschreibung ^
|rc |Ja |Integer |Antwortcode |
|msg |Ja |String |zusätzliche Informationen im Fehlerfall |
|reference |Ja |String | GiroCheckout Transaktions-ID |
|merchantTxId |Ja |String | Händler Transaktions-ID |
|backendTxId |Ja |String | Zahlungsabwickler Transaktions-ID |
|amount |Ja |Integer | bei Dezimalwährungen den Betrag in der kleinsten Währungseinheit angeben, z.B. Cent, Penny |
|currency |Ja |String | Währung |
|resultPayment |Ja |Integer | [[girocheckout:resultcodes#zahlungsausgang|Ergebnis der Transaktion]]|
|hash |Ja |String | HMAC MD5 hash über alle Werte des Aufrufs. Siehe [[girocheckout:general:start#hash_generieren|hash generieren]] |
== Beispiel im Erfolgsfall ==
{{page>codesamples:directdebit#refund.response.true&noheader&nofooter}}
== Beispiel im Fehlerfall ==
{{page>codesamples:directdebit#refund.response.false&noheader&nofooter}}
==== Stornierung (VOID) ====
{{page>girocheckout:transactiontypes:descriptions#void.desc&noheader&nofooter}}
=== POST Parameter ===
URL VOID: https://payment.girosolution.de/girocheckout/api/v2/transaction/void
^Name ^Pflicht ^Type ^Beschreibung ^
|merchantId |Ja |Integer |Händler-ID eines Lastschrift Projekts |
|projectId |Ja |Integer |Projekt-ID eines Lastschrift Projekts |
|merchantTxId |Ja |String(255) |eindeutige Transaktions-ID des Händlers |
|reference |Ja |String |GiroCheckout Transaktions-ID, für die eine Stornierung durchgeführt werden soll |
|hash |Ja |String |HMAC MD5 hash über alle Werte des Aufrufs. Siehe [[girocheckout:general:start#hash_generieren|hash generieren]] |
== Beispiel ==
{{page>codesamples:directdebit#void.request&noheader&nofooter}}
=== Antwort ===
Die Antwort besteht aus einem JSON Objekt. Das Feld rc liefert einen Fehlercode zurück. Wird rc = 0 zurückgeliefert, wurde die Transaktion erfolgreich initialisiert. Sie bekommen als Antwort eine Transaktionsnummer und weitere Informationen zurück.
== Parameter ==
^Name ^Pflicht ^Type ^Beschreibung ^
|rc |Ja |Integer |[[girocheckout:errorcodes|Fehlernummer]] |
|msg |Ja |String |zusätzliche Informationen im Fehlerfall |
|reference |Ja |String | GiroCheckout Transaktions-ID |
|referenceParent |Ja |String | GiroCheckout Transaktions-ID der zugrundeliegenden Ursprungstransaktion |
|merchantTxId |Ja |String | Händler Transaktions-ID |
|backendTxId |Ja |String | Zahlungsabwickler Transaktions-ID |
|amount |Ja |Integer | Stornierter Betrag, bei Dezimalwährungen den Betrag in der kleinsten Währungseinheit angeben, z.B. Cent, Penny |
|currency |Ja |String | Währung |
|resultPayment |Ja |Integer | [[girocheckout:resultcodes#zahlungsausgang|Ergebnis der Transaktion]]|
|hash |Ja |String | HMAC MD5 hash über alle Werte des Aufrufs. Siehe [[girocheckout:general:start#hash_generieren|hash generieren]] |
== Beispiel im Erfolgsfall ==
{{page>codesamples:directdebit#void.response.true&noheader&nofooter}}
== Beispiel im Fehlerfall ==
{{page>codesamples:directdebit#void.response.false&noheader&nofooter}}