Skip to main content

EPS Payment Integration

EPS (e-payment standard) is an online bank-transfer method used in Austria. The customer selects their bank and approves the payment in their own online-banking environment. This guide explains how to accept EPS payments with the Netvalve Payment Gateway.

Availability
Customer countryCurrencypaymentOption
Austria (AT)EURapm_eps

The order currency must be EUR for EPS to be offered.

For the shared redirect flow, webhook handling, and Checkout SDK notes, see the European Payment Methods overview.


How to offer EPS​

Contact the Netvalve team to enable EPS on your account before going live.


Step 1 — Create the order​

Send a POST request to the Create Order endpoint with paymentOption set to "apm_eps" and the order currency set to EUR.

POST /order — request body
{
"amount": 44.99,
"currency": "EUR",
"siteId": "f76fb7ed-3312-4791-a216-45918f899271",
"clientOrderId": "{{clientOrderId}}",
"orderDesc": "Order #12345",
"successUrl": "https://merchantsite.com/success.html",
"cancelUrl": "https://merchantsite.com/cancel.html",
"failedUrl": "https://merchantsite.com/failed.html",
"pendingUrl": "https://merchantsite.com/pending.html",
"paymentOption": "apm_eps",
"customerDetails": {
"customerAddress": "1 Test Street",
"customerCity": "Vienna",
"customerCountryCode": "AT",
"customerEmail": "customer@example.com",
"customerIp": "123.123.123.123",
"customerName": "Anna",
"customerLastName": "Gruber",
"customerPhone": "800-1234567",
"customerZipCode": "1010"
}
}
tip

paymentOption accepts a comma-separated list. For example, "card,apm_eps" shows both card and EPS on the hosted page.


Step 2 — Redirect and handle the outcome​

On success the response contains a redirectUrl (verify responseCode === "GTW_1000" first). Send the customer there; Netvalve takes them to their bank to authorise, then returns them to one of your URLs:

OutcomeRedirect target
Payment succeededsuccessUrl
Customer cancelledcancelUrl
Payment failedfailedUrl
Payment pendingpendingUrl

Treat the webhook or an Inquiry poll as the source of truth for the final result.


Sandbox testing​

Create the order against the Sandbox / UAT base URL and follow the redirectUrl. The test flow is in German and has two steps — logging in is not enough on its own.

  1. Log in. Select bank PSA BANK GROUP, then enter the sandbox test login. Contact the Netvalve team for the test username and password.
  2. Authorise the transfer (eps Überweisung: autorisieren). Click TAN ANFORDERN to request a TAN, copy the TAN shown under Ihr TAN, paste it into the TAN Hier eintragen field, and click TAN SENDEN to confirm.
  3. Check that the customer lands on the matching return URL and that your webhook records the same result.
Logging in does not complete the payment

If you stop after step 1, the payment is never authorised and the transaction will not succeed. Complete the TAN step for a successful test payment.

Test amount limits

Keep EPS test transactions under €5, and do not run automated or stress tests against the test bank — it is a shared test system.

See Testing in sandbox for the shared setup and how to test the pending path.


ResourceLink
European Payment Methods overviewOverview
Hosted Payment Page guideHosted Payment Page
Swagger API referenceAPI Reference
Webhook Message guideWebhook Message
Error Codes referenceError Codes