EPS

Start accepting payments using Electronic Payment Standard (EPS), a favorite payment method in Austria.

EPS allows your customers to make purchases online through quick and easy bank transfers that are both secure and guaranteed.

To start accepting EPS payments, please contact your customer success manager.

Process an EPS payment

EPS payments follow a two-step process:

  1. Request an EPS payment
  2. Redirect the customer

Step 1: Request an EPS payment

The request

Use the details below to set up your request.

Endpoints

Live

https://api.checkout.com/payments

Sandbox

https://api.sandbox.checkout.com/payments

Header parameters

Header
Value

Authorization
Required

secret key

Use the valid secret key of your Checkout.com account. You can find this in the Hub.

Content-Type
Required

application/json

Body parameters

The table below describes the minimum recommended fields. You can find the full list, as well as complete request and response examples, in our API reference.

Field name
Description

source
Object
required

Details about the payment source.

source.type
String
required

The type of payment source. Set this to eps.

source.bic
String
optional

The 8- or 11-character bank identifier code (BIC). If you want to test this in the sandbox environment, set the value to "HYPTAT22XXX"
If you include this, your payment will follow an alternative flow.

source.purpose
String
required

A description of the payment.
Maximum characters: 27

amount
Integer
optional

The payment amount. Omitting the amount or providing 0 will perform a card verification.

currency
String
required

The three-letter ISO 4217 currency code. Set this to EUR.

success_url
String
Optional

For redirect payment methods, overrides the default success redirect URL configured on your account.

failure_url
String
Optional

For redirect payment methods, overrides the default failure redirect URL configured on your account.

Request example

{
  "source": {
    "type": "eps",
    "purpose":"Mens black t-shirt L"
  },  
 "amount": 1914,
 "currency": "EUR",
 "success_url": "http://example.com/payments/success",
 "failure_url": "http://example.com/payments/fail",
}

If a customer ID or email is not provided in the request, then we automatically create a customer profile and return the customer id in the response.

The response

If you receive a 202 Success response containing a status field set to Pending, then your request was successful.

Response example

{
  "id": "pay_wqvd2nukz5dujnmokm7ljhymwa",
  "status": "Pending",
  "customer": {
    "id": "cus_uvs2lu4b7ncurjx5zdtrixnc4e"
  },
  "_links": {
    "self": {
      "href": "https://api.sandbox.checkout.com/payments/pay_wqvd2nukz5dujnmokm7ljhymwa"
    },
    "redirect": {
      "href": "https://ftg-customer-integration.giropay.de/ftgbank/b/bankselection/2329733103475232793;jsessionid=6CA094B861DC4D16D1C48D1988DE4A32.sf-testapp02tom24?op=001"
    }
  }
}

Step 2: Redirect the customer

Redirect your customer to the redirect link’s href in the response. This will send them to an EPS bank selection page where they will select their bank before being transferred to that bank's page to enter their authorization details. If successful, the payment can be approved.

Once they've completed this step, the customer is transferred to your predefined success or failure URL. Confirmation of an EPS payment is communicated only through webhooks. When you receive a payment_captured webhook notification, the transaction has been completed successfully. Until the payment_captured webhook is received (response code 10000), all payments are labeled as Pending.

Alternative flow: Including the BIC

If you include the BIC in your request, the payment will follow a slightly different flow.

Response example

If your request is successful, you'll receive a response like the following (note the different redirect URL):

{
  "id": "pay_iilqeu2rsdqedkvkjhl2rxgbvy",
  "status": "Pending",
  "customer": {
    "id": "cus_xtmverdclvfuhjuqjwduqeuqnu",
  },
  "_links": {
    "redirect": {
      "href": "https://ftg-customer-integration.giropay.de/ftg/b/go/07i2i1k00pp1tkapcdoy3bo3;jsessionid=3EEF88674DADC7A4FC117BB39E770269.sf-testapp02tom23"
    },
    "self": {
      "href": "http://api.checkout.com/payments/pay_iilqeu2rsdqedkvkjhl2rxgbvy"
    }
  }
}

Redirect the customer

Unlike the standard payment flow detailed above, the redirect link’s href will send your customer directly to their bank's website where they need to enter their authorization details. If successful, the payment can be approved.

After that, the flow is the same: the customer will be sent to your predefined success or failure URL, and you can get confirmation of the payment via webhooks.

Get details about an EPS payment

You can retrieve details about an existing EPS payment.

The request

Use the details below to set up your request.

Endpoint

Live

GEThttps://api.checkout.com/payments/{payment_id}

Sandbox

GEThttps://api.sandbox.checkout.com/payments/{payment_id}

Header and path parameters

Header
Value

Authorization
Required

secret key

Use the valid secret key of your Checkout.com account. You can find this in the Hub.

Content-Type
Required

application/json

Path
Value

payment_id
Required

The payment ID found in the response of the initial payment.

The response

Response example

{
  "id": "pay_iilqeu2rsdqedkvkjhl2rxgbvy",
  "created_on": "2018-03-28T14:50:26Z",
  "source": {
    "type": "eps",
    "purpose": "Mens black t-shirt L",
    "bic": "HYPTAT22XXX",
    "iban": "AT611904300234573201",
    "account_holder": "Test Account"
  },
  "amount": 1914,
  "currency": "EUR",
  "payment_type": "Regular",
  "status": "Captured",
  "flagged": false,
  "_links": {
    "self": {
      "href": "http://api.checkout.com/gateway/payments/pay_iilqeu2rsdqedkvkjhl2rxgbvy"
    }
  }
}

Refund an EPS payment

EPS supports both partial and full refunds. You can refund a payment through the Hub or using the refund API.

Cancel an EPS payment

If the customer fails to complete their payment, we will automatically void the payment and send a payment_expired webhook.
If the customer cancels their payment, we will send payment_canceled webhook.

Get a list of supported banks

You can use this request to get an up-to-date list of all banks supporting EPS payments.

The request

Use the details below to set up your request.

Endpoints

Live

GEThttps://api.checkout.com/giropay/eps/banks

Sandbox

GEThttps://api.sandbox.checkout.com/giropay/eps/banks

Header parameters

Header
Value

Authorization
Required

public key

Use the valid public key of your Checkout.com account. You can find this in the Hub.

The response

Response example

{
  "_links": {
    "self": {
      "href": "https://api.sandbox.checkout.com/giropay/eps/banks"
    }
  },
  "banks": {
    // ...
    "OBLAAT2LXXX": "Oberösterreichische Landesbank AG",
    "SLHYAT2SXXX": "SALZBURGER LANDES-HYPOTHEKENBANK AG",
    "HYSTAT2GXXX": "Landes-Hypothekenbank Steiermark AG",
    "HYPTAT22XXX": "HYPO TIROL BANK AG",
    "HYPVAT2BXXX": "Vorarlberger Landes- und Hypothekenbank AG"
  }
}

Testing EPS

Before testing, please ensure that your account has been enabled to support EPS payments. Contact your customer success manager for more information.

  1. Create an EPS transaction as above, following the redirect link in the response to EPS's bank selection page. (If you include the BIC in your request, you will go straight to the bank's page.)

  2. Select the bank:
      -   BIC: HYPTAT22XXX
      -   Name: HYPO TIROL BANK AG

  3. Confirm your selection and await redirection to the bank's page.

  4. Log in with the following details:
      -   Verfügernummer (user number): 123456
      -   Verfügername (username): [leave empty]
      -   PIN: [leave empty]

  5. Click "Auftrag absenden" to continue.

  6. Leave the radio selection on "mobileTAN" and click "sammeln und zeichnen" to continue.

  7. In the "mobileTAN-Eingabe" field, enter "123456" and confirm by clicking "OK".

  8. Click "zurück".

  9. You should then be redirected to your predefined success URL.

Can we help?

Thanks for using Checkout.com. If you need any help or support, then message our support team at support@checkout.com.

EPS


Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.