Benutzer-Werkzeuge

Webseiten-Werkzeuge


girocheckout:giropay-id-kvs:start

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

girocheckout:giropay-id-kvs:start [2016/03/16 17:03]
thorstenmarx [Initialisierung einer giropay-ID Altersverifikation]
girocheckout:giropay-id-kvs:start [2021/04/12 14:32]
Zeile 1: Zeile 1:
-====== giropay-ID Kontoverifikation ====== 
- 
-Bei der giropay-ID Kontoverifikation bestätigt die Bank des Kunden die IBAN und BIC sowie den Namen des Kontoinhabers. Diese „Klarinformationen" erhält man als Antwort.  
- 
-Man kann entweder: 
-  * direkt eine IBAN und BIC mitgeben und die so verifizieren lassen oder 
-  * gibt nichts mit und erhält die Kontoverbindung 
- 
-===== Testdaten ===== 
-<WRAP center round important 60%> 
-Es steht noch keine Testmöglichkeit zur Verfügung. 
-</WRAP> 
- 
-{{page>testdata:giropay-id-kvs&noheader&nofooter}} 
- 
- 
-===== Workflow ===== 
- 
-<uml> 
-hide footbox 
- 
-participant "Käufer/Kunde" as customer 
-participant "Shop" as shop 
-participant "GiroCheckout" as girocheckout 
-participant "giropay" as giropay 
-participant "Online-Banking" as bank 
- 
-autonumber 
- 
-customer -> shop:  
-shop -> girocheckout:  
-girocheckout -> shop:  
-shop -> girocheckout: 
-girocheckout -> giropay:  
-giropay -> girocheckout:  
-girocheckout -> shop:  
-shop -> customer:  
-customer -> bank: 
-bank -> customer:  
-customer -> bank: 
-bank -> bank:  
-bank -> giropay: 
-giropay -> girocheckout: 
-girocheckout -> shop 
-shop -> shop:  
-shop -> girocheckout:  
-girocheckout -> giropay:  
-giropay -> shop:  
- 
- 
-center footer (c)2016 by GiroSolution AG 
-</uml> 
- 
-  - Kunde wählt seine Bank aus 
-  - Shop prüft Bankstatus ([[girocheckout:giropay:start#bankstatus_prüfen|Bankstatus prüfen]]) 
-  - Shop bekommt Rückmeldung, ob Bank giropay-ID Kontoverifikation unterstützt 
-  - Shop initiiert giropay-ID Kontoverifikation Transaktion ([[girocheckout:giropay:start#initialisierung_einer_giropay_zahlung|Initialisierung]]) 
-  - GiroCheckout initialisiert Transaktion bei giropay 
-  - giropay übermittelt Ergebnis an GiroCheckout 
-  - Shop bekommt Rückmeldung über Initialisierungsausgang (bei Fehler ist Transaktion beendet) 
-  - Shop sendet Redirect URL an Käufer-/Kundenbrowser  
-  - Käufer-/Kundenbrowser leitet zum Online-Banking weiter 
-  - Online-Banking zeigt Loginseite an 
-  - Käufer/Kunde autorisiert Transaktion 
-  - Bank führt Auftrag durch 
-  - Bank übermittelt Ergebnis an giropay 
-  - giropay übermittelt Ergebnis an GiroCheckout 
-  - GiroCheckout benachrichtigt Shop über Ausgang ([[girocheckout:giropay:start#Benachrichtigung_über_den_Zahlungsausgang|Benachrichtigung]]) 
-  - Shop verarbeitet Ausgang 
-  - Shop sendet HTTP Statuscode an GiroCheckout 
-  - GiroCheckout sendet Rücksprung zum Händler an giropay 
-  - Käufer/Kunde klickt "Zurück zum Shop" ([[girocheckout:giropay:start#Rückleitung_des_Kunden_zum_Händler|Rücksprung]]) 
- 
-===== API-Funktionen ===== 
- 
-==== Übersicht ===== 
- 
-Wie im Workflow dargestellt gibt es mehrere API-Aufrufe während einer giropay Transaktion oder giropay-ID Abfrage. Eine giropay Transaktion kann zusätzlich mit einer giropay-ID Abfrage kombiniert gesendet werden. 
- 
-  - Bankstatus prüfen 
-  - Transaktion initiieren 
-  - Bezahlinformation an Händler übermitteln 
-  - Bezahlinformation mit Käuferbrowserweiterleitung zurück zum Händler (durch Käufer nach Zahlung ausgelöst) 
- 
-Im Folgenden werden die API-Felder und Aufrufe näher erleutert. 
-==== Bankstatus prüfen ==== 
-Es wird geprüft ob eine Bank giropay-ID Kontoverifikation unterstützt. Diesbezüglich wird die BIC des Käufer-Girokontos übermittelt. Die Antwort zeigt ob eine giropay-ID Kontoverifikation Abfrage möglich ist. Es wid empfohlen vor jeder Initiierung einer giropay-ID Kontoverifikation Abfrage den Bankstatus zu prüfen, da dadurch unnötige Abbrüche verhindert werden können. 
- 
-=== API-Aufruf === 
-**URL:** https://payment.girosolution.de/girocheckout/api/v2/giropay/bankstatus \\ 
-**Bereitzustellen von:** GiroCheckout \\ 
-**Aufzurufen von:** Händler 
- 
-== POST-Parameter == 
-^Name           ^Pflicht  ^Type      ^Beschreibung   ^ 
-|merchantId     |Ja       |Integer   |Händler-ID eines giropay-ID Kontoverifikation Projekts | 
-|projectId      |Ja       |Integer   |Projekt-ID eines giropay-ID Kontoverifikation Projekts | 
-|bic            |Ja       |String(11)|BIC der Käuferbank (8 oder 11-stellig), die geprüft werden soll (durch [[tools:bankstatus_widget|Bankauswahl Widget]] ermittelbar)| 
-|hash           |Ja       |String(32)|HMAC MD5 hash über alle Werte des Aufrufs (siehe [[girocheckout:general:start#hash_generieren|hash generieren]])| 
- 
-== Beispiel == 
-{{page>codesamples:giropay#bankstatus.request&noheader&nofooter}} 
- 
-=== Antwort === 
-Die Antwort besteht aus einem JSON Objekt. Das Feld rc liefert einen Fehlercode. Wird **rc = 0** zurückgeliefert, unterstützt die angefragte Bank giropay, sonst enthält er einen entsprechenden Fehlercode. Zusätzliche Informationen zur Unterstützung von giropay und giropay-ID sind den Elementen //giropay// und //giropayid// zu entnehmen. Sind zusätzliche Informationen zur Bank bekannt, werden diese ebenfalls zurückgeliefert. 
- 
-== JSON-Parameter == 
-^Name           ^Pflicht  ^Type      ^Beschreibung   ^ 
-|rc             |Ja       |Integer   |[[girocheckout:errorcodes|Fehlernummer]] | 
-|msg            |Ja       |String    |zusätzliche Informationen im Fehlerfall | 
-|bankcode       |Optional |Integer   |Bankleitzahl| 
-|bic            |Optional |String    |BIC, wenn vorhanden | 
-|bankname       |Optional |String    |Bankname | 
-|giropay        |Optional |Integer   |0 = giropay Zahlung wird nicht unterstützt \\ 1 = giropay Zahlung wird unterstützt | 
-|giropayid      |Optional |Integer   |0 = giropay-ID und giropay-ID + giropay wird nicht unterstützt \\ 1 = giropay-ID und giropay-ID + giropay wird unterstützt | 
-^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:giropay#bankstatus.response.true&noheader&nofooter}} 
- 
-== Beispiel im Fehlerfall == 
-{{page>codesamples:giropay#bankstatus.response.false&noheader&nofooter}} 
- 
- 
-==== giropay Bankenabfrage ==== 
-Gibt eine Liste zurück, welche alle giropay-ID Kontoverifikation Banken enthält. Aus dieser Bankenliste muss der Käufer seine Bank auswählen.  
- 
-**URL:** https://payment.girosolution.de/girocheckout/api/v2/giropay/issuer \\ 
-**Bereitzustellen von:** GiroSolution AG \\ 
-**Aufzurufen von:** Händler 
- 
-== POST Parameter == 
-^Name           ^Pflicht  ^Type      ^Beschreibung   ^ 
-|merchantId     |Ja       |Integer   |Händler-ID eines giropay-ID Kontoverifikation Projekts | 
-|projectId      |Ja       |Integer   |Projekt-ID eines giropay-ID Kontoverifikation Projekts | 
-|hash           |Ja       |String(32)|HMAC MD5 hash über alle Werte des Aufrufs. Siehe  [[girocheckout:general:start#hash_generieren|hash generieren]]| 
- 
-== Beispiel == 
-{{page>codesamples:giropay#issuer.request&noheader&nofooter}} 
- 
-=== Antwort === 
-Die Antwort enthält ein JSON Objekt. Wenn **rc = 0** zurückgeliefert wird, enthält das Element **issuer** die zur Verfügung stehenden Banken.  
- 
-== Parameter == 
-^Name           ^Pflicht  ^Type      ^Beschreibung   ^ 
-|rc             |Ja       |Integer   |[[girocheckout:errorcodes|Fehlernummer]] | 
-|msg            |Ja       |String    |Zusätzliche Informationen im Fehlerfall | 
-|issuer         |Optional |Array     |Liste der giropay issuer Banken bestehend aus dem Key BIC und dem Bankname | 
-^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 == 
-{{page>codesamples:giropay#issuer.response&noheader&nofooter}} 
- 
- 
-==== Initialisierung einer giropay-ID Kontoverifikation ==== 
- 
-Durch eine erfolgreiche Initialisierung wird eine Referenznummer erstellt sowie ein Weiterleitunslink (redirect) an den Händler übermittelt. Der übermittelte Link führt zum Onlinebanking des Käufers. Er 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 giropay Projekts | 
-|projectId      |Ja       |integer     |Projekt-ID eines giropay Projekts | 
-|merchantTxId   |Ja       |String(255) |eindeutige Transaktions-ID des Händlers | 
-|bic            |Optional |String(11)  |BIC der Käuferbank (8 oder 11-stellig) (durch [[tools:bankstatus_widget|Bankauswahl Widget]] ermittelbar)| 
-|iban           |Optional |String(34)  |IBAN der zu prüfenden Kontoverbindung **ohne Leerzeichen**| 
-|info1Label     |Optional |String(30)  |zusätzliche Information zur Anzeige im Online Banking (Feldname) | 
-|info1Text      |Optional |String(80)  |zusätzliche Information zur Anzeige im Online Banking (Information) | 
-|info2Label     |Optional |String(30)  |zusätzliche Information zur Anzeige im Online Banking (Feldname) | 
-|info2Text      |Optional |String(80)  |zusätzliche Information zur Anzeige im Online Banking (Information) | 
-|info3Label     |Optional |String(30)  |zusätzliche Information zur Anzeige im Online Banking (Feldname) | 
-|info3Text      |Optional |String(80)  |zusätzliche Information zur Anzeige im Online Banking (Information) | 
-|info4Label     |Optional |String(30)  |zusätzliche Information zur Anzeige im Online Banking (Feldname) | 
-|info4Text      |Optional |String(80)  |zusätzliche Information zur Anzeige im Online Banking (Information) | 
-|info5Label     |Optional |String(30)  |zusätzliche Information zur Anzeige im Online Banking (Feldname) | 
-|info5Text      |Optional |String(80)  |zusätzliche Information zur Anzeige im Online Banking (Information) | 
-|urlRedirect    |Ja       |String      |URL, an die der Kunde nach der Kontoverifikation geschickt werden soll. | 
-|urlNotify      |Ja       |String      |URL, an die der Ausgang der Kontoverifikation gemeldet werden soll. | 
-|hash           |Ja       |String      |HMAC MD5 hash über alle Werte des Aufrufs. Siehe  [[girocheckout:general:start#hash_generieren|hash generieren]] | 
- 
- 
-<WRAP center round info 60%> 
-Mit den info Parametern können zusätzliche Informationen zur Anzeige im Online Banking übermitteln werden. Es sind max. 5 Elemente möglich. Eine Information besteht immer aus einem Label und einer Information. 
-</WRAP> 
- 
- 
-== Beispiel == 
-{{page>codesamples:giropay#transactionstart.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. Es wird als Antwort eine Transaktionsnummer und die redirectURL zum Online Banking des Käufers zurückgeliefert. 
- 
-== 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 | 
-|redirect       |Optional |String    |Redirect URL zur Weiterleitung des Kunden an sein Online Banking| 
-^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:giropay#transactionstart.response.true&noheader&nofooter}} 
- 
-== Beispiel im Fehlerfall == 
-{{page>codesamples:giropay#transactionstart.response.false&noheader&nofooter}} 
- 
-==== Benachrichtigung über Ergebnis der Kontoverifikation ==== 
- 
-Der Ausgang einer Kontoverifikation 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 Transaktionsausgang der giropay-ID Kontoverifikation steht im Feld gcResultAVS.  
- 
-Aufgrund des giropay Ablaufes findet **keine automatische Rückleitung des Käufers** an die im Parameter //urlRedirect// angegebene URL statt. Eine Weiterleitung erfolgt erst, wenn der Käufer den "Abbrechen" oder "Zurück zum Shop" Button drückt. 
- 
- 
-=== 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 | 
-|gcResultPayment  |Optional|Integer     | [[girocheckout:resultcodes#zahlungsausgang|Ergebniscodes der giropay Zahlung]]| 
-|gcResultAVS      |Ja      |Integer     | [[girocheckout:resultcodes#kontoverifikation|Ergebniscodes der giropay Kontoverifikation]] | 
-|gcAccountHolder  |Ja      |String      | Kontoinhaber des verifizierten Kontos | 
-|gsAccountIban    |Ja      |String      | IBAN des verifizierten Kontos | 
-|gsAccountBic     |Ja      |String      | BIC des verifizierten Kontos | 
-|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 giropay-ID Kontoverifikation 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 | 
-|gcResultPayment  |Optional|Integer     | [[girocheckout:resultcodes#zahlungsausgang|Ergebniscodes der giropay Zahlung]]| 
-|gcResultAVS      |Ja      |Integer     | [[girocheckout:resultcodes#kontoverifikation|Ergebniscodes der giropay-ID Kontoverifikation]] | 
-|gcHash           |Ja      |String      | HMAC MD5 hash über alle Werte des Aufrufs. Siehe  [[girocheckout:general:start#hash_generieren|hash generieren]] | 
  
girocheckout/giropay-id-kvs/start.txt · Zuletzt geändert: 2021/04/12 14:32

Seiten-Werkzeuge