{{indexmenu_n>3}} ====== Kreditkarte API Funktionen ====== ====== Kreditkarte über Formularservice ====== ===== Initialisierung der Kreditkarten Zahlung ===== Sie übermitteln die Transaktionsdaten und erhalten einen Link (Redirect-URL) als Antwort. Anschließend senden Sie Ihrem Kunden eine Weiterleitung zur Redirect-URL. Dies kann durch einen HTTP-Redirect-Header, eine HTML-Seite mit entsprechendem Meta-Tag oder Javascript erfolgen. Die eigentliche Zahlungsabwicklung erfolgt dann, indem der Kunde das Formular für die Kreditkartenzahlung ausfüllt und bestätigt. Die Benachrichtigung Ihrer Anwendung über den Ausgang der Zahlung erfolgt, indem Ihnen GiroCheckout einen GET-Request an die im Parameter urlNotify angegebene URL schickt und den Kunden nach der Zahlung zu urlRedirect weiterleitet. === Anfrage === **URL:** https://payment.girosolution.de/girocheckout/api/v2/transaction/start \\ **Bereitzustellen von:** GiroSolution AG \\ **Aufzurufen von:** Händler == Parameter == ^Name ^Pflicht ^Type ^Beschreibung ^ |merchantId |Ja |Integer |Händler-ID eines Kreditkarten Projekts | |projectId |Ja |integer |Projekt-ID eines Kreditkarten Projekts | |merchantTxId |Ja |String(255) |Eindeutige Transaktions-ID des Händlers | |amount |Ja |Integer |Betrag in Cent | |currency |Optional |String(3) |Währung der Transaktion als Währungscode gemäß [[http://de.wikipedia.org/wiki/ISO_4217#Aktuell_g.C3.BCltige_W.C3.A4hrungen|ISO 4217]]\\ EUR = Euro (default) | |purpose |Ja |String(27) |Verwendungszweck der Kreditkarten Transaktion. Diese Information erscheint auf der Kreditkartenabrechnung. | |locale |Optional |String(2) |Sprache des Kreditkartenformulars \\ 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 | |mobile |Optional |Integer |Definiert, ob das Formular für Smartphones und mobile Browser optimiert angezeigt werden soll. \\ 0 = nein (default) \\ 1 = ja | |pkn |Optional |String(50) |Pseudo-Kartennummer der zu verwendenden Kreditkarte oder \\ "create", damit eine neue Pseudo-Kartennummer für die verwendete Kreditkarte generiert wird. | |recurring |Optional |Integer |Definiert, ob es sich um eine wiederkehrende Kreditkartenzahlung handelt. \\ 0 = nein (default) \\ 1 = ja, weitere Informationen | |urlRedirect |Ja |String |URL, an die der Kunde nach Zahlung 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:creditcard#transactionstart.request&noheader&nofooter}} === Antwort === Die Antwort ist ein JSON Objekt. Wenn **rc = 0** zurückgeliefert wird, sind die Parameter reference und redirect gesetzt. Leiten Sie den Kunde bitte an die redirect URL weiter. == Parameter == ^Name ^Pflicht ^Type ^Beschreibung ^ |rc |Ja |Integer |Antwortcode | |msg |Ja |String |Zusätzliche Informationen im Fehlerfall | |reference |Optional |String |Eindeutige GiroCheckout Transaktions-ID | |redirect |Optional |String |Redirect URL zur Weiterleitung des Kunden | == Beispiel im Erfolgsfall == {{page>codesamples:creditcard#transactionstart.response.true&noheader&nofooter}} == Beispiel im Fehlerfall == {{page>codesamples:creditcard#transactionstart.response.false&noheader&nofooter}} ===== Benachrichtigung über den Ausgang der Zahlung ===== Nach Beendigung der Kreditkarten Zahlung erhalten Sie einen GET-Request an die im Parameter //urlNotify// angegebene URL. Bitte nutzen Sie diese Meldung, um z.B. den Status der Bestellung zu ändern und eine Bestellbestätigung zu verschicken. === Anfrage === **URL:** notifyUrl aus dem Transaktionsstart \\ **Bereitzustellen von:** Händler \\ **Aufzurufen von:** GiroSolution AG == GET Parameter == ^Name ^Pflicht ^Type ^Beschreibung ^ |gcReference |Ja |String |Eindeutige GiroCheckout Transaktions-ID | |gcMerchantTxId |Ja |String |Transaktions-ID des Händlers | |gcBackendTxId |Ja |String |Backend Transaktions-ID | |gcAmount |Ja |Integer |Betrag in Cent | |gcCurrency |Ja |String |Währung | |gcResultPayment |Optional |Integer |[[girocheckout:resultcodes#zahlungsausgang|Ergebnis der Kreditkarten 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 folgendes HTTP Statuscodes erwartet. ^HTTP Statuscode ^Beschreibung ^ |200 (OK) |Die Benachrichtigung wurde korrekt verarbeitet. | |400 (Bad Request) |Der Shop 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 Shop den HTTP Statuscode 200 oder 400 zurückgibt. | ===== Rückleitung des Kunden zum Shop ===== Nach Beendigung der Kreditkarten Zahlung wird der Kunden zurück zum Shop geleitet. === Anfrage === **URL:** redirectUrl aus dem Transaktionsstart \\ **Bereitzustellen von:** Händler \\ **Aufzurufen von:** GiroSolution AG == GET Parameter == ^Name ^Pflicht ^Type ^Beschreibung ^ |gcReference |Ja |String |Eindeutige GiroCheckout Transaktions-ID | |gcMerchantTxId |Ja |String |Transaktions-ID des Händlers | |gcBackendTxId |Ja |String |Backend Transaktions-ID | |gcAmount |Ja |Integer |Betrag in Cent | |gcCurrency |Ja |String |Währung | |gcResultPayment |Optional |Integer |[[girocheckout:resultcodes#zahlungsausgang|Ergebnis der Kreditkarten Zahlung]]| |gcHash |Ja |String |HMAC MD5 hash über alle Werte des Aufrufs. Siehe [[girocheckout:general:start#hash_generieren|hash generieren]] |