Integration
Grundlagen
FAQ
eps
giropay
iDEAL
Kreditkarte
Lastschrift
Bluecode
Maestro
Payment Page
PayPal
Tools
Fehlernummern
Ergebniscode
Testdaten
Grundlagen
FAQ
eps
giropay
iDEAL
Kreditkarte
Lastschrift
Bluecode
Maestro
Payment Page
PayPal
Tools
Fehlernummern
Ergebniscode
Testdaten
giropay kann ausschließlich mit der Währung EURO verwendet werden.
Bitte verwenden Sie für Tests ausschließlich das giropay Testinstitut!
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.
Im Folgenden werden die API-Felder und Aufrufe näher erleutert.
Dieser Aufruf sollte nicht mehr verwendet werden, alle giropay-Transaktionen werden jetzt mit einer externen Bankenabfrage durchgeführt!
Es wird geprüft ob eine Bank am giropay Bezahlverfahren oder einer giropay-ID Abfrage teilnimmt. Diesbezüglich wird die BIC des Käufer-Girokontos übermittelt. Die Antwort zeigt ob eine giropay Transaktion oder giropay-ID Abfrage möglich ist. Es wid empfohlen vor jeder Initiierung einer giropay Transaktion oder giropay-ID Abfrage den Bankstatus zu prüfen, da dadurch unnötige Verkaufsabbrüche verhindert werden können.
URL: https://payment.girosolution.de/girocheckout/api/v2/giropay/bankstatus
Bereitzustellen von: GiroCheckout
Aufzurufen von: Händler
Name | Pflicht | Type | Beschreibung |
---|---|---|---|
merchantId | Ja | Integer | Händler-ID eines giropay, giropay-ID oder giropay-ID + giropay Projekts |
projectId | Ja | Integer | Projekt-ID eines giropay, giropay-ID oder giropay-ID + giropay Projekts |
bic | Ja | String(11) | BIC der Käuferbank (8 oder 11-stellig), die geprüft werden soll |
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 "shoppingCartType=DIGITAL" \ -d "shippingAddresseFirstName=Max" \ -d "shippingAddresseLastName=Mustermann" \ -d "shippingEmail=mmuster@example.com" \ -d "urlRedirect=http://www.ihre-domein.de/girocheckout/redirect" \ -d "urlNotify=http://www.ihre-domein.de/girocheckout/notify" \ -d "hash=2017e2f4d694e24a3396d83a20b3828b" \ https://payment.girosolution.de/girocheckout/api/v2/transaction/start
hash : f56b5f91094cd22ace93b76ef250aa62
{"reference":"9ce6c641-4082-4f75-ae54-333309febcc5","redirect":"https://giropay.starfinanz.de/ftg/a/go/07i2j1k00pp0u109biywcswh;jsessionid=B1D575F122ED8D4B4B4EB0F83E85897F","rc":"0","msg":""}
hash : baf3c9b7217f362c29dd5cf6f098320c
{"reference":null,"redirect":null,"rc":5033,"msg":"Währung ungütig"}
curl -d "merchantId=1234567" \ -d "projectId=1234" \ -d "reference=9ce6c641-4082-4f75-ae54-333309febcc5" \ -d "hash=246d1fa2ed97ecff895de974c560f9ec" \ https://payment.girosolution.de/girocheckout/api/v2/giropay/senderinfo
hash : cde71b6b98e8dae709fdc1e17aef885f
{"accountholder":"Max Mustermann","iban":"DE87123456781234567890","bic":"TESTDETT421","rc":0,"msg":""}
hash : f1d186103b8c4cb59c54ae7b987a9d4c
{"accountholder":null,"iban":null,"bic":null,"rc":5034,"msg":"Transaktion nicht vorhanden"}
curl -d "merchantId=1234567" \ -d "projectId=1234" \ -d "merchantTxId=1234567890" \ -d "amount=10000" \ -d "currency=EUR" \ -d "purpose=Beispiel-Capture" \ -d "reference=dd724940-5e86-4072-8442-2c2ba2aebc79" \ -d "final=true" \ -d "hash=e4e57b71b094d7fa197374f4fbdd4ca9" \ https://payment.girosolution.de/girocheckout/api/v2/transaction/capture
hash : 36dc1f4622d0c1260fe5da76fe83fbd3
{"reference":"ehd82947-5e86-4072-8442-2c2ba2ae74a","referenceParent":null,"merchantTxId":"123456","backendTxId":"5720d913a1338","amount":"100","currency":"EUR","resultPayment":4000,"rc":0,"msg":""}
hash : c7dcb2d7d5e6719c6a51d81705bfc3af
{"reference":null,"rc":5030,"msg":"Betrag ungültig"}
curl -d "merchantId=1234567" \ -d "projectId=1234" \ -d "merchantTxId=1234567890" \ -d "reference=fb70602d-c137-4413-8432-7dcc69a9d891" \ -d "hash=edb7459114db25c2991d1783d4ab5388" \ https://payment.girosolution.de/girocheckout/api/v2/transaction/void
{"reference":"ef27303f-87b3-465e-9c39-fabfb749d253","referenceParent":"5a101478-df14-4a79-86af-f743784c2c24","merchantTxId":"58e39be91fce8","backendTxId":"1226723_01","amount":"100","currency":"EUR","resultPayment":"4000","rc":0,"msg":""}
{"reference":null,"referenceParent":null,"merchantTxId":null,"backendTxId":null,"amount":null,"currency":null,"resultPayment":null,"rc":5200,"msg":"Transaktion nicht akzeptiert"}
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.
Name | Pflicht | Type | Beschreibung |
---|---|---|---|
rc | Ja | Integer | 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 hash der Rückantwort |
curl -d "merchantId=1234567" \ -d "projectId=1234" \ -d "merchantTxId=1234567890" \ -d "amount=100" \ -d "currency=EUR" \ -d "purpose=Beispieltransaktion" \ -d "shoppingCartType=DIGITAL" \ -d "shippingAddresseFirstName=Max" \ -d "shippingAddresseLastName=Mustermann" \ -d "shippingEmail=mmuster@example.com" \ -d "urlRedirect=http://www.ihre-domein.de/girocheckout/redirect" \ -d "urlNotify=http://www.ihre-domein.de/girocheckout/notify" \ -d "hash=2017e2f4d694e24a3396d83a20b3828b" \ https://payment.girosolution.de/girocheckout/api/v2/transaction/start
hash : f56b5f91094cd22ace93b76ef250aa62
{"reference":"9ce6c641-4082-4f75-ae54-333309febcc5","redirect":"https://giropay.starfinanz.de/ftg/a/go/07i2j1k00pp0u109biywcswh;jsessionid=B1D575F122ED8D4B4B4EB0F83E85897F","rc":"0","msg":""}
hash : baf3c9b7217f362c29dd5cf6f098320c
{"reference":null,"redirect":null,"rc":5033,"msg":"Währung ungütig"}
curl -d "merchantId=1234567" \ -d "projectId=1234" \ -d "reference=9ce6c641-4082-4f75-ae54-333309febcc5" \ -d "hash=246d1fa2ed97ecff895de974c560f9ec" \ https://payment.girosolution.de/girocheckout/api/v2/giropay/senderinfo
hash : cde71b6b98e8dae709fdc1e17aef885f
{"accountholder":"Max Mustermann","iban":"DE87123456781234567890","bic":"TESTDETT421","rc":0,"msg":""}
hash : f1d186103b8c4cb59c54ae7b987a9d4c
{"accountholder":null,"iban":null,"bic":null,"rc":5034,"msg":"Transaktion nicht vorhanden"}
curl -d "merchantId=1234567" \ -d "projectId=1234" \ -d "merchantTxId=1234567890" \ -d "amount=10000" \ -d "currency=EUR" \ -d "purpose=Beispiel-Capture" \ -d "reference=dd724940-5e86-4072-8442-2c2ba2aebc79" \ -d "final=true" \ -d "hash=e4e57b71b094d7fa197374f4fbdd4ca9" \ https://payment.girosolution.de/girocheckout/api/v2/transaction/capture
hash : 36dc1f4622d0c1260fe5da76fe83fbd3
{"reference":"ehd82947-5e86-4072-8442-2c2ba2ae74a","referenceParent":null,"merchantTxId":"123456","backendTxId":"5720d913a1338","amount":"100","currency":"EUR","resultPayment":4000,"rc":0,"msg":""}
hash : c7dcb2d7d5e6719c6a51d81705bfc3af
{"reference":null,"rc":5030,"msg":"Betrag ungültig"}
curl -d "merchantId=1234567" \ -d "projectId=1234" \ -d "merchantTxId=1234567890" \ -d "reference=fb70602d-c137-4413-8432-7dcc69a9d891" \ -d "hash=edb7459114db25c2991d1783d4ab5388" \ https://payment.girosolution.de/girocheckout/api/v2/transaction/void
{"reference":"ef27303f-87b3-465e-9c39-fabfb749d253","referenceParent":"5a101478-df14-4a79-86af-f743784c2c24","merchantTxId":"58e39be91fce8","backendTxId":"1226723_01","amount":"100","currency":"EUR","resultPayment":"4000","rc":0,"msg":""}
{"reference":null,"referenceParent":null,"merchantTxId":null,"backendTxId":null,"amount":null,"currency":null,"resultPayment":null,"rc":5200,"msg":"Transaktion nicht akzeptiert"}
curl -d "merchantId=1234567" \ -d "projectId=1234" \ -d "merchantTxId=1234567890" \ -d "amount=100" \ -d "currency=EUR" \ -d "purpose=Beispieltransaktion" \ -d "shoppingCartType=DIGITAL" \ -d "shippingAddresseFirstName=Max" \ -d "shippingAddresseLastName=Mustermann" \ -d "shippingEmail=mmuster@example.com" \ -d "urlRedirect=http://www.ihre-domein.de/girocheckout/redirect" \ -d "urlNotify=http://www.ihre-domein.de/girocheckout/notify" \ -d "hash=2017e2f4d694e24a3396d83a20b3828b" \ https://payment.girosolution.de/girocheckout/api/v2/transaction/start
hash : f56b5f91094cd22ace93b76ef250aa62
{"reference":"9ce6c641-4082-4f75-ae54-333309febcc5","redirect":"https://giropay.starfinanz.de/ftg/a/go/07i2j1k00pp0u109biywcswh;jsessionid=B1D575F122ED8D4B4B4EB0F83E85897F","rc":"0","msg":""}
hash : baf3c9b7217f362c29dd5cf6f098320c
{"reference":null,"redirect":null,"rc":5033,"msg":"Währung ungütig"}
curl -d "merchantId=1234567" \ -d "projectId=1234" \ -d "reference=9ce6c641-4082-4f75-ae54-333309febcc5" \ -d "hash=246d1fa2ed97ecff895de974c560f9ec" \ https://payment.girosolution.de/girocheckout/api/v2/giropay/senderinfo
hash : cde71b6b98e8dae709fdc1e17aef885f
{"accountholder":"Max Mustermann","iban":"DE87123456781234567890","bic":"TESTDETT421","rc":0,"msg":""}
hash : f1d186103b8c4cb59c54ae7b987a9d4c
{"accountholder":null,"iban":null,"bic":null,"rc":5034,"msg":"Transaktion nicht vorhanden"}
curl -d "merchantId=1234567" \ -d "projectId=1234" \ -d "merchantTxId=1234567890" \ -d "amount=10000" \ -d "currency=EUR" \ -d "purpose=Beispiel-Capture" \ -d "reference=dd724940-5e86-4072-8442-2c2ba2aebc79" \ -d "final=true" \ -d "hash=e4e57b71b094d7fa197374f4fbdd4ca9" \ https://payment.girosolution.de/girocheckout/api/v2/transaction/capture
hash : 36dc1f4622d0c1260fe5da76fe83fbd3
{"reference":"ehd82947-5e86-4072-8442-2c2ba2ae74a","referenceParent":null,"merchantTxId":"123456","backendTxId":"5720d913a1338","amount":"100","currency":"EUR","resultPayment":4000,"rc":0,"msg":""}
hash : c7dcb2d7d5e6719c6a51d81705bfc3af
{"reference":null,"rc":5030,"msg":"Betrag ungültig"}
curl -d "merchantId=1234567" \ -d "projectId=1234" \ -d "merchantTxId=1234567890" \ -d "reference=fb70602d-c137-4413-8432-7dcc69a9d891" \ -d "hash=edb7459114db25c2991d1783d4ab5388" \ https://payment.girosolution.de/girocheckout/api/v2/transaction/void
{"reference":"ef27303f-87b3-465e-9c39-fabfb749d253","referenceParent":"5a101478-df14-4a79-86af-f743784c2c24","merchantTxId":"58e39be91fce8","backendTxId":"1226723_01","amount":"100","currency":"EUR","resultPayment":"4000","rc":0,"msg":""}
{"reference":null,"referenceParent":null,"merchantTxId":null,"backendTxId":null,"amount":null,"currency":null,"resultPayment":null,"rc":5200,"msg":"Transaktion nicht akzeptiert"}
Dieser Aufruf sollte nicht mehr verwendet werden, alle giropay-Transaktionen werden jetzt mit einer externen Bankenabfrage durchgeführt!
Gibt eine Liste zurück, welche alle giropay 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
Name | Pflicht | Type | Beschreibung |
---|---|---|---|
merchantId | Ja | Integer | Händler-ID eines giropay Projekts |
projectId | Ja | Integer | Projekt-ID eines giropay Projekts |
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 "shoppingCartType=DIGITAL" \ -d "shippingAddresseFirstName=Max" \ -d "shippingAddresseLastName=Mustermann" \ -d "shippingEmail=mmuster@example.com" \ -d "urlRedirect=http://www.ihre-domein.de/girocheckout/redirect" \ -d "urlNotify=http://www.ihre-domein.de/girocheckout/notify" \ -d "hash=2017e2f4d694e24a3396d83a20b3828b" \ https://payment.girosolution.de/girocheckout/api/v2/transaction/start
hash : f56b5f91094cd22ace93b76ef250aa62
{"reference":"9ce6c641-4082-4f75-ae54-333309febcc5","redirect":"https://giropay.starfinanz.de/ftg/a/go/07i2j1k00pp0u109biywcswh;jsessionid=B1D575F122ED8D4B4B4EB0F83E85897F","rc":"0","msg":""}
hash : baf3c9b7217f362c29dd5cf6f098320c
{"reference":null,"redirect":null,"rc":5033,"msg":"Währung ungütig"}
curl -d "merchantId=1234567" \ -d "projectId=1234" \ -d "reference=9ce6c641-4082-4f75-ae54-333309febcc5" \ -d "hash=246d1fa2ed97ecff895de974c560f9ec" \ https://payment.girosolution.de/girocheckout/api/v2/giropay/senderinfo
hash : cde71b6b98e8dae709fdc1e17aef885f
{"accountholder":"Max Mustermann","iban":"DE87123456781234567890","bic":"TESTDETT421","rc":0,"msg":""}
hash : f1d186103b8c4cb59c54ae7b987a9d4c
{"accountholder":null,"iban":null,"bic":null,"rc":5034,"msg":"Transaktion nicht vorhanden"}
curl -d "merchantId=1234567" \ -d "projectId=1234" \ -d "merchantTxId=1234567890" \ -d "amount=10000" \ -d "currency=EUR" \ -d "purpose=Beispiel-Capture" \ -d "reference=dd724940-5e86-4072-8442-2c2ba2aebc79" \ -d "final=true" \ -d "hash=e4e57b71b094d7fa197374f4fbdd4ca9" \ https://payment.girosolution.de/girocheckout/api/v2/transaction/capture
hash : 36dc1f4622d0c1260fe5da76fe83fbd3
{"reference":"ehd82947-5e86-4072-8442-2c2ba2ae74a","referenceParent":null,"merchantTxId":"123456","backendTxId":"5720d913a1338","amount":"100","currency":"EUR","resultPayment":4000,"rc":0,"msg":""}
hash : c7dcb2d7d5e6719c6a51d81705bfc3af
{"reference":null,"rc":5030,"msg":"Betrag ungültig"}
curl -d "merchantId=1234567" \ -d "projectId=1234" \ -d "merchantTxId=1234567890" \ -d "reference=fb70602d-c137-4413-8432-7dcc69a9d891" \ -d "hash=edb7459114db25c2991d1783d4ab5388" \ https://payment.girosolution.de/girocheckout/api/v2/transaction/void
{"reference":"ef27303f-87b3-465e-9c39-fabfb749d253","referenceParent":"5a101478-df14-4a79-86af-f743784c2c24","merchantTxId":"58e39be91fce8","backendTxId":"1226723_01","amount":"100","currency":"EUR","resultPayment":"4000","rc":0,"msg":""}
{"reference":null,"referenceParent":null,"merchantTxId":null,"backendTxId":null,"amount":null,"currency":null,"resultPayment":null,"rc":5200,"msg":"Transaktion nicht akzeptiert"}
Die Antwort enthält ein JSON Objekt. Wenn rc = 0 zurückgeliefert wird, enthält das Element issuer die zur Verfügung stehenden Banken.
Name | Pflicht | Type | Beschreibung |
---|---|---|---|
rc | Ja | Integer | 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 hash der Rückantwort |
curl -d "merchantId=1234567" \ -d "projectId=1234" \ -d "merchantTxId=1234567890" \ -d "amount=100" \ -d "currency=EUR" \ -d "purpose=Beispieltransaktion" \ -d "shoppingCartType=DIGITAL" \ -d "shippingAddresseFirstName=Max" \ -d "shippingAddresseLastName=Mustermann" \ -d "shippingEmail=mmuster@example.com" \ -d "urlRedirect=http://www.ihre-domein.de/girocheckout/redirect" \ -d "urlNotify=http://www.ihre-domein.de/girocheckout/notify" \ -d "hash=2017e2f4d694e24a3396d83a20b3828b" \ https://payment.girosolution.de/girocheckout/api/v2/transaction/start
hash : f56b5f91094cd22ace93b76ef250aa62
{"reference":"9ce6c641-4082-4f75-ae54-333309febcc5","redirect":"https://giropay.starfinanz.de/ftg/a/go/07i2j1k00pp0u109biywcswh;jsessionid=B1D575F122ED8D4B4B4EB0F83E85897F","rc":"0","msg":""}
hash : baf3c9b7217f362c29dd5cf6f098320c
{"reference":null,"redirect":null,"rc":5033,"msg":"Währung ungütig"}
curl -d "merchantId=1234567" \ -d "projectId=1234" \ -d "reference=9ce6c641-4082-4f75-ae54-333309febcc5" \ -d "hash=246d1fa2ed97ecff895de974c560f9ec" \ https://payment.girosolution.de/girocheckout/api/v2/giropay/senderinfo
hash : cde71b6b98e8dae709fdc1e17aef885f
{"accountholder":"Max Mustermann","iban":"DE87123456781234567890","bic":"TESTDETT421","rc":0,"msg":""}
hash : f1d186103b8c4cb59c54ae7b987a9d4c
{"accountholder":null,"iban":null,"bic":null,"rc":5034,"msg":"Transaktion nicht vorhanden"}
curl -d "merchantId=1234567" \ -d "projectId=1234" \ -d "merchantTxId=1234567890" \ -d "amount=10000" \ -d "currency=EUR" \ -d "purpose=Beispiel-Capture" \ -d "reference=dd724940-5e86-4072-8442-2c2ba2aebc79" \ -d "final=true" \ -d "hash=e4e57b71b094d7fa197374f4fbdd4ca9" \ https://payment.girosolution.de/girocheckout/api/v2/transaction/capture
hash : 36dc1f4622d0c1260fe5da76fe83fbd3
{"reference":"ehd82947-5e86-4072-8442-2c2ba2ae74a","referenceParent":null,"merchantTxId":"123456","backendTxId":"5720d913a1338","amount":"100","currency":"EUR","resultPayment":4000,"rc":0,"msg":""}
hash : c7dcb2d7d5e6719c6a51d81705bfc3af
{"reference":null,"rc":5030,"msg":"Betrag ungültig"}
curl -d "merchantId=1234567" \ -d "projectId=1234" \ -d "merchantTxId=1234567890" \ -d "reference=fb70602d-c137-4413-8432-7dcc69a9d891" \ -d "hash=edb7459114db25c2991d1783d4ab5388" \ https://payment.girosolution.de/girocheckout/api/v2/transaction/void
{"reference":"ef27303f-87b3-465e-9c39-fabfb749d253","referenceParent":"5a101478-df14-4a79-86af-f743784c2c24","merchantTxId":"58e39be91fce8","backendTxId":"1226723_01","amount":"100","currency":"EUR","resultPayment":"4000","rc":0,"msg":""}
{"reference":null,"referenceParent":null,"merchantTxId":null,"backendTxId":null,"amount":null,"currency":null,"resultPayment":null,"rc":5200,"msg":"Transaktion nicht akzeptiert"}
Die Initialisierung einer giropay Zahlung kann mit oder ohne der Altersverifikation (giropay-ID) stattfinden. Diese Unterscheidung wird ausschließlich anhand der übermittelten projectId getroffen.
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.
URL: https://payment.girosolution.de/girocheckout/api/v2/transaction/start
Bereitzustellen von: GiroCheckout
Aufzurufen von: Händler
Name | Pflicht | Type | Beschreibung | ||
---|---|---|---|---|---|
giropay | giropay-ID | giropay+giropay-ID | |||
merchantId | Ja | Ja | Ja | Integer | Händler-ID eines giropay Projekts |
projectId | Ja | Ja | Ja | integer | Projekt-ID eines giropay Projekts |
merchantTxId | Ja | Ja | Ja | String(255) | eindeutige Transaktions-ID des Händlers. Zulässige Zeichen: beliebige Buchstaben (inkl. sprachl. Sonderzeichen), 0-9, Zeichen & = + , : ; . _ ! ? # / |
amount | Ja | Ja | Integer | Bei Dezimalwährungen den Betrag in der kleinsten Währungseinheit angeben, z.B. Cent, Penny | |
currency | Ja | Ja | String(3) | Währung der Transaktion EUR = Euro |
|
purpose | Ja | Ja | String(27) | Verwendungszweck der giropay Überweisung | |
bic | deprecated | deprecated | deprecated | String(11) | Dieser Parameter darf nicht mehr verwendet werden, alle giropay-Transaktionen werden jetzt mit einer externen Bankenabfrage durchgeführt! BIC der Käuferbank (8 oder 11-stellig) |
iban | Optional | Optional | Optional | String(34) | IBAN der Kundenbankverbindung ohne Leerzeichen Die IBAN ist gewöhnlich nicht mehr notwendig, da sie innerhalb der Homebanking-Plattform abgefragt wird. Einzige Ausnahme ist die kombinierte Konto- und Altersverifikation in einem Aufruf. Hier brauchen Sie eine IBAN. |
info1Label | Optional | Optional | Optional | String(30) | zusätzliche Information für die giropay Überweisungsseiten (Feldname) |
info1Text | Optional | Optional | Optional | String(80) | zusätzliche Information für die giropay Überweisungsseiten (Information) |
info2Label | Optional | Optional | Optional | String(30) | zusätzliche Information für die giropay Überweisungsseiten (Feldname) |
info2Text | Optional | Optional | Optional | String(80) | zusätzliche Information für die giropay Überweisungsseiten (Information) |
info3Label | Optional | Optional | Optional | String(30) | zusätzliche Information für die giropay Überweisungsseiten (Feldname) |
info3Text | Optional | Optional | Optional | String(80) | zusätzliche Information für die giropay Überweisungsseiten (Information) |
info4Label | Optional | Optional | Optional | String(30) | zusätzliche Information für die giropay Überweisungsseiten (Feldname) |
info4Text | Optional | Optional | Optional | String(80) | zusätzliche Information für die giropay Überweisungsseiten (Information) |
info5Label | Optional | Optional | Optional | String(30) | zusätzliche Information für die giropay Überweisungsseiten (Feldname) |
info5Text | Optional | Optional | Optional | String(80) | zusätzliche Information für die giropay Überweisungsseiten (Information) |
urlRedirect | Ja | Ja | Ja | String | URL, an die der Kunde nach der Zahlung geschickt werden soll. |
urlNotify | Ja | Ja | Ja | String | URL, an die der Zahlungsausgang gemeldet werden soll. |
kassenzeichen | Optional | String | Optionales Feld für die Übergabe eines Kassenzeichens. Dieses wird dann im GiroCockpit in den Transaktionsdetails angezeigt (und bald auch exportiert) und es kann dort auch danach gesucht werden. | ||
hash | Ja | Ja | Ja | String | HMAC MD5 hash über alle Werte des Aufrufs. Siehe hash generieren |
Mit den info Parametern können zusätzliche Informationen auf den giropay Überweisungsseiten angezeigt werden. Es sind max. 5 Elemente möglich. Eine Information besteht immer aus einem Label und einer Information.
curl -d "merchantId=1234567" \ -d "projectId=1234" \ -d "merchantTxId=1234567890" \ -d "amount=100" \ -d "currency=EUR" \ -d "purpose=Beispieltransaktion" \ -d "shoppingCartType=DIGITAL" \ -d "shippingAddresseFirstName=Max" \ -d "shippingAddresseLastName=Mustermann" \ -d "shippingEmail=mmuster@example.com" \ -d "urlRedirect=http://www.ihre-domein.de/girocheckout/redirect" \ -d "urlNotify=http://www.ihre-domein.de/girocheckout/notify" \ -d "hash=2017e2f4d694e24a3396d83a20b3828b" \ https://payment.girosolution.de/girocheckout/api/v2/transaction/start
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.
Name | Pflicht | Type | Beschreibung |
---|---|---|---|
rc | Ja | Integer | 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 hash der Rückantwort |
hash : f56b5f91094cd22ace93b76ef250aa62
{"reference":"9ce6c641-4082-4f75-ae54-333309febcc5","redirect":"https://giropay.starfinanz.de/ftg/a/go/07i2j1k00pp0u109biywcswh;jsessionid=B1D575F122ED8D4B4B4EB0F83E85897F","rc":"0","msg":""}
hash : baf3c9b7217f362c29dd5cf6f098320c
{"reference":null,"redirect":null,"rc":5033,"msg":"Währung ungütig"}
Der Ausgang einer giropay-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 giropay Transaktion steht im Feld gcResultPayment. Wurde zusätzlich die giropay-ID-Überprüfung angefordert, steht das Ergebnis der Altersprüfung 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.
URL: notifyUrl aus der Transaktionsinitialisierung
Bereitzustellen von: Händler
Aufzurufen von: GiroCheckout
Name | Pflicht | Type | Beschreibung | ||
---|---|---|---|---|---|
giropay | giropay-ID | giropay+giropay-ID | |||
gcReference | Ja | Ja | Ja | String | GiroCheckout Transaktions-ID |
gcMerchantTxId | Ja | Ja | Ja | String | Händler Transaktions-ID |
gcBackendTxId | Ja | Ja | Ja | String | Zahlungsabwickler Transaktions-ID |
gcAmount | Ja | Ja | Integer | bei Dezimalwährungen den Betrag in der kleinsten Währungseinheit angeben, z.B. Cent | |
gcCurrency | Ja | Ja | String | Währung | |
gcResultPayment | Ja | Ja | Integer | Ergebniscodes der giropay Zahlung | |
gcResultAVS | Ja | Ja | Integer | Ergebniscodes der giropay Altersverifikation | |
gcObvName | Optional | Optional | String | Optional zuschaltbares Feld, welches den Namen der zu verifizierenden Person beinhaltet (giropay-ID) | |
gcHash | Ja | Ja | Ja | String | 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 giropay 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.
URL: redirectUrl aus der Transaktionsinitialisierung
Bereitzustellen von: Händler
Aufzurufen von: GiroCheckout
Name | Pflicht | Type | Beschreibung | ||
---|---|---|---|---|---|
giropay | giropay-ID | giropay+giropay-ID | |||
gcReference | Ja | Ja | Ja | String | GiroCheckout Transaktions-ID |
gcMerchantTxId | Ja | Ja | Ja | String | Händler Transaktions-ID |
gcBackendTxId | Ja | Ja | Ja | String | Zahlungsabwickler Transaktions-ID |
gcAmount | Ja | Ja | Integer | bei Dezimalwährungen den Betrag in der kleinsten Währungseinheit angeben, z.B. Cent | |
gcCurrency | Ja | Ja | String | Währung | |
gcResultPayment | Ja | Ja | Integer | Ergebniscodes der giropay Zahlung | |
gcResultAVS | Ja | Ja | Integer | Ergebniscodes der giropay Altersverifikation | |
gcObvName | Optional | Optional | String | Optional zuschaltbares Feld, welches den Namen der zu verifizierenden Person beinhaltet (giropay-ID) | |
gcHash | Ja | Ja | Ja | String | HMAC MD5 hash über alle Werte des Aufrufs. Siehe hash generieren |
Mit dieser Funktion können die Senderinformationen einer erfolgreich durchgeführten Transaktion abgerufen werden. Anhand der angegebenen Referenz wird Kontoinhaber, IBAN und BIC des Absenders geliefert. Diese Information kann dann für eine Rücküberweisung an den Zahler genutzt werden.
URL: https://payment.girosolution.de/girocheckout/api/v2/giropay/senderinfo
Bereitzustellen von: GiroCheckout
Aufzurufen von: Händler
Name | Pflicht | Type | Beschreibung |
---|---|---|---|
merchantId | Ja | Integer | Händler-ID eines giropay Projekts |
projectId | Ja | Integer | Projekt-ID eines giropay Projekts |
reference | Ja | String(36) | GiroCheckout Transaktions-ID |
hash | Ja | String(32) | HMAC MD5 hash über alle Werte des Aufrufs (siehe hash generieren) |
curl -d "merchantId=1234567" \ -d "projectId=1234" \ -d "reference=9ce6c641-4082-4f75-ae54-333309febcc5" \ -d "hash=246d1fa2ed97ecff895de974c560f9ec" \ https://payment.girosolution.de/girocheckout/api/v2/giropay/senderinfo
Die Antwort besteht aus einem JSON Objekt. Das Feld rc liefert einen Fehlercode. Wird rc = 0 zurückgeliefert, enthalten die entsprechenden Felder die Senderinformationen.
Name | Pflicht | Type | Beschreibung |
---|---|---|---|
rc | Ja | Integer | Fehlernummer |
msg | Ja | String | zusätzliche Informationen im Fehlerfall |
accountholder | Optional | String | Inhaber des Absenderkontos |
iban | Optional | String | IBAN des Absenderkontos |
bic | Optional | String | BIC des Absenderkontos |
HEADER Parameter | |||
hash | Ja | String | HMAC MD5 hash über alle Werte der Rückmeldung. Siehe hash der Rückantwort |
hash : cde71b6b98e8dae709fdc1e17aef885f
{"accountholder":"Max Mustermann","iban":"DE87123456781234567890","bic":"TESTDETT421","rc":0,"msg":""}
hash : f1d186103b8c4cb59c54ae7b987a9d4c
{"accountholder":null,"iban":null,"bic":null,"rc":5034,"msg":"Transaktion nicht vorhanden"}