Informationen zu Bluecode sind unter https://www.bluecode.com/ zu finden.
Für Tests mit Bluecode, benötigen Sie ein Handy mit einer installierten und aktivierten Bluecode App.
Rufen Sie die folgenden URLs am besten direkt aus dem Handy auf:
iOS: https://install.appcenter.ms/orgs/bluecode-organization/apps/at.secure-shopping.bluecode.sandbox-ios/distribution_groups/public
Android: https://install.appcenter.ms/orgs/bluecode-organization/apps/com.spt.bluecode.sandbox-android/distribution_groups/public
Wichtig:
Hinweis zu iOS:
Bei der Erstinstallation auf der Sandbox-App muss auf iOS-Geräten unter „Einstellungen > Allgemein > Profile & Geräteverwaltung“ einmalig der Unternehmens-App „bluesource“ vertraut werden. Erst anschließend kann die Sandbox-App unter iOS verwendet werden.
In der Bluecode Sandbox-App werden keine „echten“ Zahlungen ausgeführt sondern lediglich simuliert!
Durch eine erfolgreiche Initialisierung wird eine Referenznummer erstellt sowie ein Weiterleitungslink (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.
Bereitzustellen von: GiroCheckout
Aufzurufen von: Händler
Verkauf ist zu verwenden, wenn der Geschäftsvorgang abgeschlossen ist, also z. B. ein Warenkorb angeboten, bestellt und an den Kunden ausgeliefert wurde. Das Zahlungsmittel des Kunden wird in Höhe des Betrags belastet.
URL: https://payment.girosolution.de/girocheckout/api/v2/transaction/start
Name | Pflicht | Type | Beschreibung |
---|---|---|---|
merchantId | Ja | Integer | Händler-ID eines Bluecode-Projekts |
projectId | Ja | Integer | Projekt-ID eines Bluecode-Projekts |
merchantTxId | Ja | String(255) | eindeutige Transaktions-ID des Händlers. Zulässige Zeichen: beliebige Buchstaben (inkl. sprachl. Sonderzeichen), 0-9, Zeichen & = + , : ; . _ ! ? # / |
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äß ISO 4217. EUR = Euro |
purpose | Ja | String(37) | Verwendungszweck der Transaktion. Diese Information erscheint auf der Abrechnung. |
urlRedirect | Ja | String(2048) | URL, an die der Kunde nach der Zahlung weitergeleitet 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 bald auch 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=10000" \ -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=1189b707a5eeab6ba79e6dc937abad0d" \ 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. Sie bekommen als Antwort eine Transaktionsnummer und die redirectURL zur Bluecode-Bezahlseite zurück.
Name | Pflicht | Type | Beschreibung |
---|---|---|---|
rc | Ja | Integer | Fehlernummer |
msg | Ja | String(255) | zusätzliche Informationen im Fehlerfall |
reference | Optional | String(36) | eindeutige GiroCheckout Transaktions-ID |
redirect | Optional | String(2048) | Redirect URL zur Weiterleitung des Kunden auf die Bluecode-Bezahlseite |
HEADER Parameter | |||
hash | Ja | String(32) | HMAC MD5 Hash über alle Werte der Rückmeldung. Siehe hash der Rückantwort |
hash : 899f05ca96d469efd99a550c5b29ed01
{"reference":"e3c0399d-6fc4-4063-8c23-9e9603dce299","redirect":"https:\/\/go.bluecode.mobi\/28\/2\/04\/33\/pay\/ecom4743c66a-9686-471b-b42d-125a1c1e34ec","rc":0,"msg":""}
hash : b32ac9a94378b697ede4929bc0c564d2
{"reference":null,"redirect":null,"rc":5030,"msg":"amount ungültig"}
Der Ausgang einer 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 Zahlungsausgang einer 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(26) | Zahlungsabwickler Transaktions-ID |
gcAmount | Ja | Integer | bei Dezimalwährungen den Betrag in der kleinsten Währungseinheit angeben, z.B. Cent, Penny |
gcCurrency | Ja | String(3) | Währung |
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 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 |
---|---|---|---|
gcReference | Ja | String(36) | GiroCheckout Transaktions-ID |
gcMerchantTxId | Ja | String(255) | Händler Transaktions-ID |
gcBackendTxId | Ja | String(26) | Zahlungsabwickler Transaktions-ID |
gcAmount | Ja | Integer | bei Dezimalwährungen den Betrag in der kleinsten Währungseinheit angeben, z.B. Cent, Penny |
gcCurrency | Ja | String(3) | Währung |
gcResultPayment | Ja | Integer | Ergebnis der Zahlung |
gcHash | Ja | String(32) | HMAC MD5 hash über alle Werte des Aufrufs. Siehe hash generieren |
Eine Erstattung ist zu verwenden, wenn dem Kunden eine vorangegangene Zahlung komplett oder teilweise erstattet werden soll.
URL REFUND: https://payment.girosolution.de/girocheckout/api/v2/transaction/refund
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. Zulässige Zeichen: beliebige Buchstaben (inkl. sprachl. Sonderzeichen), 0-9, Zeichen & = + , : ; . _ ! ? # / |
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äß ISO 4217. EUR = Euro |
purpose | Optional | String(27) | Verwendungszweck der Erstattung. Diese Information erscheint auf der Kreditkartenabrechnung. |
reference | Ja | String(36) | GiroCheckout Transaktions-ID, für die eine Buchung oder Erstattung durchgeführt 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 "reference=fb70602d-c137-4413-8432-7dcc69a9d891" \ -d "hash=edb7459114db25c2991d1783d4ab5388" \ https://payment.girosolution.de/girocheckout/api/v2/transaction/capture
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.
Name | Pflicht | Type | Beschreibung |
---|---|---|---|
rc | Ja | Integer | Fehlernummer |
msg | Ja | String(255) | zusätzliche Informationen im Fehlerfall |
reference | Ja | String(36) | GiroCheckout Transaktions-ID |
referenceParent | Ja | String(36) | GiroCheckout Transaktions-ID der zugrundeliegenden Ursprungstransaktion |
merchantTxId | Ja | String(255) | Händler Transaktions-ID |
backendTxId | Ja | String(26) | Zahlungsabwickler Transaktions-ID |
amount | Ja | Integer | bei Dezimalwährungen den Betrag in der kleinsten Währungseinheit angeben, z.B. Cent, Penny |
currency | Ja | String(3) | Währung |
resultPayment | Ja | Integer | Ergebnis der Transaktion |
hash | Ja | String(32) | HMAC MD5 hash über alle Werte des Aufrufs. Siehe hash generieren |
{"reference":"6d2d31b6-c23f-47c4-8f6c-1a0495f35f0f","redirect":"https://testmerch.directpos.de/web-api/SSLPayment.po?n=wrlIRO9O30S4NNAO9h6uHwhyWibDFKUWeoWy7mPLDDyZ","rc":"0","msg":""}
{"reference":null,"redirect":null,"rc":5030,"msg":"Betrag ungültig"}