Giropay

Giropay is an interbank system, introduced by the German banks in 2005 as the official payment method for online banking. It is accessible by more than 40 million shoppers and accounts for 16% of all online transactions in Germany.

Features #

Available country codesDE
Processing currenciesEUR
Settlement currenciesEUR
Minimum transaction amount1.00 EUR
Maximum transaction amountNo limit.
Up to 10.000 EUR – payment guaranteed*
Over 10.000 EUR – payment not guaranteed
Refunds
Partial Refunds
Multiple partial refund
Chargeback

*giropay contractually guarantees the payment for up to 6 weeks after the initial transaction.

Integration Method #

Payment method enumeration values: giropay

There is integration method for Giropay

  1. Direct API
  2. Checkout

Direct API #

How to integration #

For direct API integration, you can create a PaymentIntent and get url in only one step. The following is the demo of creating payment intent:

Create a PaymentIntent

A PaymentIntent is an object that represents your intent to collect payment from your customer and tracks the lifecycle of the payment process. Create a PaymentIntent on your server and specify the amount to collect and a supported currency. If you have an existing Payment Intents integration, add giropay to the list of payment method types.

Please note that for this payment method, you need to specify the country in billing_details.address as Germany, which country code is DE.

Request Create a PaymentIntent

{
    "amount": 2000,
    "currency": "EUR",
    "confirm": true,
    "payment_method_data": {
        "type": "giropay",
        "billing_details": {
            "address": {
                "country": "DE"
            },
            "firstName": "",
            "lastName": ""
        }
    },
    "return_url": "https://wooshpay.com"
}

Response

{
    "id": "pi_1670644604036186112",
    "object": "payment_intent",
    "created": 1687147687000,
    "livemode": false,
    "currency": "EUR",
    "amount": 2000,
    "status": "requires_action",
    "client_secret": "pi_1670644604036186112_secret_9UHXdOLAE1WV7A1UCIjH8nMP",
    "next_action": {
        "type": "redirect_to_url",
        "giropay_handle_redirect": {
            "url": "https://r3.girogate.de/ti/simgiropay?tx=2090827518&rs=33tiT9GdES3vl4zIQ4ShK4Sw3NsvymQj&cs=0981d204f358af0d05ea4aa49a2b678fbe36aa4f13af2624441385921431f7a6"
        }
    },
    "payment_method_types": [
        "giropay"
    ],
    "confirmation_method": "automatic",
    "return_url": "https://wooshpay.com",
    "payment_method": "pm_1670644603939717120",
    "capture_method": "automatic"
}

Checkout #

Payment flow #

  1. Customer selects Giropay from the list of payment methods available and clicks on the Pay botton
下载.png
  1. Customers will be redirected to Giropay’s page
下载 (1).png
  1. Customers select their bank and approve payment via online banking
下载 (2).png
下载 (3).png

Create a seesion #

Request Create a Session

{
    "cancel_url": "www.wooshpay.com",
    "mode": "payment",
    "success_url": "https://wooshpay.com/",
    "payment_method_types": [
        "giropay"
    ],
    "line_items": [
        {
            "price_data": {
                "currency": "EUR",
                "product": null,
                "unit_amount": 2000,
                "product_data": {
                    "name": "apple"
                },
                "billing_scheme": "testscheme",
                "lookup_key": "test_lookup_key"
            },
            "quantity": 1
        }
    ]
}

Response

{
    "id": "cs_1680883889586831360",
    "object": "checkout.session",
    "created": 1689588923000,
    "livemode": false,
    "currency": "EUR",
    "customer": "",
    "mode": "payment",
    "status": "open",
    "url": "https://checkouttest.wooshpay.com/pay/cs_test_1680883889586831360?key=pk_test_NTE2Njk1Mjk1ODMxNjAwMDQ2MDkxOmVqUkVxaWdMOVNQSGpRdmV0ZXUxZFBmcTE2ODY4ODE4NDY0MTg",
    "cancel_url": "www.wooshpay.com",
    "line_items": {
        "object": "list",
        "data": [
            {
                "id": "li_1680883889620385792",
                "object": "item",
                "currency": "EUR",
                "description": "apple",
                "price": {
                    "id": "price_1680883889632968704",
                    "object": "price",
                    "created": 1689588923000,
                    "livemode": false,
                    "active": false,
                    "currency": "EUR",
                    "product": {
                        "id": "prod_1680883889641357312",
                        "object": "product",
                        "created": 1689588923000,
                        "livemode": false,
                        "active": false,
                        "name": "apple",
                        "updated": 1689588923000
                    },
                    "type": "one_time",
                    "unit_amount": 2000,
                    "billing_scheme": "per_unit",
                    "lookup_key": "test_lookup_key"
                },
                "quantity": 1,
                "amount_subtotal": 2000,
                "amount_total": 2000
            }
        ]
    },
    "payment_intent": "pi_1680883889804935168",
    "payment_method_types": [
        "giropay"
    ],
    "payment_status": "unpaid",
    "success_url": "https://wooshpay.com/",
    "amount_subtotal": 2000,
    "amount_total": 2000,
    "billing_address_collection": "auto",
    "expires_at": 1689675323250,
    "payment_link": "",
    "client_secret": "pi_1680883889804935168_secret_oOaiHu8k190zNlX9zeIV5xkl"
}

Next step #

You can add more features to your integration as needed

Create a Webhook #

Listen to events on your WooshPay account so your integration can automatically trigger reactions. Create a webhook that mainly focuses on enabled_events and url.

Create a Refund #

Create a refund to repay funds to your customer. You can also perform partial refunds, but not every payment method supports them. A partial refund is when you refund only part of the original transaction amount.

What are your feelings
Updated on August 8, 2023