Giropay

Learn about Giropay, a common payment method in Germany.

Giropay was a payment method only for their national markets. Both reach out to establish online payments in e-commerce in Europe based on the approved high-security standards of online banking.

Because of that, eps and giropay interlink their systems for interoperability. Merchants can now receive payments from customers from Germany using the already implemented eps-interface without technical effort.

Payment type Online banking
Market Germany
Customer currencies EUR
Processing currencies EUR
Settlement currencies EUR
One-time Payment No
Refunds No

Step 1. Make a transaction request

From your server, make a POST /payment_preauthorize request.

POST https://sandbox.payabl.com/pay/backoffice/payment_preauthorize

Include in request:

  • merchantid: The merchant identification number.
  • orderid: The field orderid is optional and exclusively for the merchant's convenience.
  • amount: The amount field contains the transaction’s total amount. This is the amount that will be transmitted to the authorizing system.
  • currency: The currency field contains the alphanumeric currency code for the transaction, according to ISO 4217, e.g. EUR.
  • payment_method: The payment method id - 118.
  • signature: The signature field contains a 40-figure hexadecimal value. This signature value is a checksum designed to protect the merchant account from unauthorized access.
  • country: Customer country in ISO Alpha-3 format. Supported countries: AUT, DEU.
  • url_return: link where customer will be redirected after payment is complete or cancelled. This url will receive a response from payabl with transaction details.
  • email: The customer's email address.
    You can see a full list of parameters in Pre-Authorization .

📘

Redirection to url_return does not confirm that the transaction is successful. Always check the transaction via notification_url or use diagnose interface to get the final status of the transaction.

Request example

/powercash21-3-2/backoffice/payment_preauthorize&merchantid=syed&amount=1.23&currency=USD&orderid=Powercash21-Test&
language=en&gender=M&lastname=Mann&street=An+der+Welle+4&zip=60322&city=Frankfurt&country=DEU&
customerid=&salutation=Herr&title=&firstname=Muster&company=Powercash21&birthday=07071971&house=19
&postbox=&state=HE&email=test%40inatec.com&phone=XXXXXXXXXX8501&fax=&mobile=&customerip=127.0.0.1&
custom1=&custom2=&custom3=&url_return=http%3A%2F%2Fdev-sim-ng.inatec.local%2F%7Esimdad%2FInatecResponse%2Fredirect_response.php&
notification_url=http%3A%2F%2F83.169.19.140%2Fsimulation%2Fbilling_response.php&payment_method=118&signature=f92dXXXXXXc45a7aafcdc9613cb1f

Giropay contains an additional notification parameter which is payment_state, which could contain the following values:

  • not_credited_yet: Capture - Accepted.
  • credited: Capture - Successful.
  • not_credited: Capture - Failed.
    Each state change would trigger a notification to the notification URL, notification URL is the URL that was provided when the merchant account was created.

Step 2. Handle the redirect

To complete the payment, you need to redirect the customer to the correct URL in the response.

Response

transactionid=213533786&transid=213533786&status=2000&errormessage=pending&errmsg=pending&amount=1.23&price=1.23&currency=USD&orderid=Powercash21-Test&amount=1.23&currency=USD&redirect_url=https%3A%2F%2Frouting.eps.or.at%2Fappl%2FepsSO-test%2Ftransinit%2Fbankauswahl_prepare.html%3Flang%3Dde%26caiSO%3D%252BPwCnU1ujZDOeD5qZHmWXHtRo&user_id=46929&redirect_url=http%3A%2F%2Fdevpc21n-03.inatec.local%3A12930%2Fpowercash21-3-2%2Fcaf19e52af1818535f57ab1a9cd5ab3bee602e57%2Fpayment%2Fredirect_to_bank

Notification example - Accepted Notification

"timestamp=1664178208&type=capture&orderid=Payabl-Test&errormessage=&payment_state=not_credited_yet&security=XXXXcd1173c7f012c1c913309412f40a968cb08ee06f122f76da88f13ebc746e&payment_method=118&transactionid=215437637&errorcode=0" 

Notification example - Successful Notification

"errormessage=&type=capture&errorcode=0&payment_state=credited&payment_method=118&transactionid=215437637&orderid=Payabl-Test&timestamp=1664194338&security=XXXXe01aba2542627958ffadaf2cc05025cc7ccb4b9ca27e08f225667" 

Additional Customer details can be added to both callbacks. Please contact Tech support to enable them:

  • bank_country (alpha2 format)
  • bic
  • payment_system
  • account_holder
  • iban

When the customer finished or canceled the payment, he will be redirected back to url_return, provided by you in the initial request to payment_preauthorize. After that, you will receive a notification, posted to notification_url, with the final transaction status, which you suppose to use to update your system.

📘

Notification URL can be configured by our tech support team in your account on our side,
or you can send it as a parameter notification_url in the initial request to payment_preauthorize.

Refunds

Giropay supports refunds and can be initiated only on a successful captured transaction.
The request will send a credit note to the authorization system after the customer has already been charged. The refund amount will be credited to the customer and the merchant’s account will be charged.

The refund can be done in two ways:

  • Through API integration
  • Through payabl. dashboard

If you have API integration, you can check more in our documentation Refund.