Integration
Apple Pay
Bluecode
Credit Card
Direct Debit
Direktüberweisung
eps
Google Pay
iDEAL
Klarna
Maestro
Payment Page
PayPal
Tools
Error codes
Result codes
Test data
Apple Pay
Bluecode
Credit Card
Direct Debit
Direktüberweisung
eps
Google Pay
iDEAL
Klarna
Maestro
Payment Page
PayPal
Tools
Error codes
Result codes
Test data
A successful initialization creates a reference number and provides a redirect link to the merchant. The provided link leads to a form at the data center, where payment data is entered and usually forwarded to the buyer's bank, depending on the bank's process. Additional information may be requested, and confirmations obtained. The buyer must be redirected to this URL, which can be done via an HTTP redirect header, an HTML page with a corresponding meta tag, or JavaScript.
URL: https://payment.girosolution.de/girocheckout/api/v2/transaction/start
Provided by: GiroCheckout
Called by: Merchant
Name | Required | Type | Description |
---|---|---|---|
merchantId | Yes | Integer | Merchant ID of the shop |
projectId | Yes | Integer | Project ID of a Direktüberweisung project |
merchantTxId | Yes | String(255) | Unique transaction ID of the merchant (e.g., order number). Allowed characters: any letters (including special characters), 0-9, & = + , : ; . _ ! ? # / |
amount | Yes | Integer | Amount in cents |
currency | Yes | String(3) | Currency of the transaction \ EUR = Euro (default) |
purpose | Yes | String(27) | Purpose of the transfer (appears on the bank statement) |
type | optional | String(4) | Transaction type (see Transaction types) SALE = Immediate booking (default and only allowed option) |
urlNotify | Yes | String(2048) | URL to which the payment result is reported. |
urlRedirect | Yes | String(2048) | URL to which the customer is redirected after payment. |
kassenzeichen | Optional | String(255) | Optional field for transmitting a case number. It is displayed in the GiroCockpit transaction details, exported with the transaction data, and searchable. Allowed characters are all UTF-8 characters. |
hash | Yes | String(32) | HMAC MD5 hash of all call values. See hash generation |
curl -d "merchantId=1234567" \ -d "projectId=1234" \ -d "merchantTxId=1234567890" \ -d "amount=100" \ -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=256b7bb16edbc76871c830d0d623c303" \ https://payment.girosolution.de/girocheckout/api/v2/transaction/start
The response contains a JSON object. The `rc` field returns an error code. If `rc = 0`, the transaction was successfully initialized. The response includes a transaction number and a redirect URL to the buyer's online banking.
Name | Required | Type | Description |
---|---|---|---|
rc | Yes | Integer | Error number |
msg | Yes | String(255) | Additional information in case of an error |
reference | Yes | String(36) | Unique GiroCheckout transaction ID |
redirect | Yes | String(2048) | Redirect URL to direct the customer to online banking |
HEADER Parameter | |||
hash | Yes | String(32) | HMAC MD5 hash of all response values. See hash generation |
hash : 177a0db9c9745b94e1b8d31b22cc7876
{"reference":"c6edadaa-b507-49f1-a548-013675fb5c83","redirect":"https://test-payform.girocheckout.de/web-api/de_DE/R.po?n=wUcNog4zKHgZcO6_Psg6N7KHiemkJSnAg7v0lyh4eKo54k","rc":"0","msg":""}
hash : 98d9d8b133acf97eb92601fa72d804a0
{"reference":"f84e606f-817d-439f-ada1-d37e85cb6314","redirect":"","rc":"5100","msg":"Fehler beim Zahlungsabwickler"}
The outcome of a direct transfer payment is transmitted to the URL specified in the urlNotify parameter. This notification is used to inform the merchant about the transaction result. Based on this information, the transaction status can be updated on the merchant's system. The payment outcome of the transaction is provided in the gcResultPayment field.
URL: notifyUrl from the transaction initialization
Provided by: Merchant
Called by: GiroCheckout
Name | Required | Type | Description |
---|---|---|---|
gcReference | Yes | String(36) | GiroCheckout transaction ID |
gcMerchantTxId | Yes | String(255) | Merchant transaction ID |
gcBackendTxId | Yes | String(8) | Payment processor transaction ID |
gcAmount | Yes | Integer | For decimal currencies, specify the amount in the smallest currency unit, e.g., cents |
gcCurrency | Yes | String(3) | Currency (typically EUR) |
gcResultPayment | Yes | Integer | Payment result codes |
gcHash | Yes | String(32) | HMAC MD5 hash of all request values. See hash generation |
One of the following HTTP status codes is expected in response to the GET request.
HTTP Status Code | Description |
---|---|
200 (OK) | The notification was successfully processed. |
400 (Bad Request) | The merchant did not process the notification but does not want to be notified again. |
All others | The notification will be retried up to 10 times every 30 minutes until the merchant returns HTTP status code 200 or 400. |
After the payment is completed, the customer is automatically redirected back to the merchant.
URL: redirectUrl from the transaction initialization
Provided by: Merchant
Called by: GiroCheckout
Name | Required | Type | Description |
---|---|---|---|
gcReference | Yes | String(36) | GiroCheckout transaction ID |
gcMerchantTxId | Yes | String(255) | Merchant transaction ID |
gcBackendTxId | Yes | String(8) | Payment processor transaction ID |
gcAmount | Yes | Integer | For decimal currencies, specify the amount in the smallest currency unit, e.g., cents |
gcCurrency | Yes | String(3) | Currency (typically EUR) |
gcResultPayment | Yes | Integer | Payment result |
gcHash | Yes | String(32) | HMAC MD5 hash of all request values. See hash generation |