Guides
These docs are for v1.0.1. Click to read the latest docs for v2.1.0.

EPS

120

paymentmethod=EPS

Payment ProcessIntegration
Authorization✔️Payment Page✔️
Deferred SettlementSplit Mode
Refund✔️Mobile SDK
Cancel
Alias

Description

Bank transfers are one of the most popular forms of payment in Austria. To make transfers possible without media disruption in e-commerce, too, integration of eps is advisable. This method is based on online transfers using PIN and TAN and does not require additional registration by the buyer.

The buyer completes the transfer in the secure online banking portal of his bank or savings bank. Immediately after the successful transfer, the payment recipient (online shop) receives an irrevocable payment guarantee from the buyer’s bank and thus has 100% protection against payment defaults. eps can reach more than 4 million customers in Austria.

📘

Request and response parameter reference

For a more detailed description of the request and response parameters for EPS
please check the API Reference

Test

On the "Banking Selection Page" select Stuzza Bank (STZZATWWXXX). On the "Stuzza SANXBOX Bank.bet" login screen use the following credentials:

Username: 1004399
Password: Ve7yQ8EDBb56moAL

Web payment flow

 1 
[Not supported by viewer]
Customer clicks Pay
Customer clicks Pay
Merchant Website
Merchant Website
Merchant Server
Merchant Server
Redirects to Bank
Redirects to Bank
Bank
Bank<br>
Customer enters Banking Information
[Not supported by viewer]
 2 
[Not supported by viewer]
 4 
[Not supported by viewer]
Authorization / Forwarding
Authorization / Forwarding
 5 
[Not supported by viewer]
Receives Result 
Receives Result 
5.1
[Not supported by viewer]
 6 
[Not supported by viewer]
Invokes merchant's
POST URL (Webhook)
Invokes merchant's<br>POST URL (Webhook)
Receives Result 
Receives Result 
 7 
[Not supported by viewer]
Redirects customer back to merchant
Redirects customer back to merchant
Customer gets redirected to merchant page
Customer gets redirected to merchant page
 3 
[Not supported by viewer]

Server to Server API calls

After a transactionId or alias was received by completing the payment flow on the web, the following server to server API calls can be used to do other actions.

Authorization

Is only possible through the web interface.

Settlement

Is not possible since it is a direct debit method

Cancel

Can not be canceled since it is a direct debit method

Credit

Request

curl -v -X POST https://api.sandbox.datatrans.com/upp/jsp/XML_processor.jsp \
-H 'Content-Type: application/xml' \
-H 'Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=' \
-d @- << EOF
<?xml version="1.0" encoding="UTF-8" ?>
<paymentService version="2">
  <body merchantId="1000011011">
    <transaction refno="999273">
      <request>
        <amount>100</amount>
        <currency>CHF</currency>
        <uppTransactionId>180610182900003307</uppTransactionId>
        <transtype>06</transtype>
      </request>
    </transaction>
  </body>
</paymentService>
EOF

Response

<?xml version='1.0' encoding='UTF-8'?>
<paymentService version='2'>
    <body merchantId='1000011011' status='accepted'>
        <transaction refno='999273' trxStatus='response'>
            <request>
                <amount>100</amount>
                <currency>CHF</currency>
                <uppTransactionId>180610182900003307</uppTransactionId>
                <transtype>06</transtype>
                <reqtype>COA</reqtype>
            </request>
            <response>
                <responseCode>01</responseCode>
                <responseMessage>credit succeeded</responseMessage>
                <uppTransactionId>180610183206194334</uppTransactionId>
                <authorizationCode>206224339</authorizationCode>
                <acqAuthorizationCode>183206</acqAuthorizationCode>
            </response>
        </transaction>
    </body>
</paymentService>

Status

Request

curl -v -X POST https://api.sandbox.datatrans.com/upp/jsp/XML_status.jsp \
-H 'Content-Type: application/xml' \
-H 'Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=' \
-d @- << EOF
<?xml version="1.0" encoding="UTF-8" ?>
<statusService version="5">
  <body merchantId="1000011011">
    <transaction>
      <request>
        <uppTransactionId>180830153451630095</uppTransactionId>
        <reqtype>STX</reqtype>
      </request>
    </transaction>
  </body>
</statusService>
EOF

Response

<?xml version='1.0' encoding='UTF-8'?>
<statusService version='5'>
    <body merchantId='1000011011' status='accepted'>
        <transaction trxStatus='response'>
            <request>
                <uppTransactionId>180830153451630095</uppTransactionId>
                <reqtype>STX</reqtype>
            </request>
            <response itemNr='1'>
                <responseCode>11</responseCode>
                <responseMessage>Trx authentified</responseMessage>
                <refno>621679</refno>
                <refno2>Testing purchase</refno2>
                <amount>100</amount>
                <currency>EUR</currency>
                <authorizationCode>517240286</authorizationCode>
                <pmethod>GEP</pmethod>
                <uppTransactionId>180830153451630095</uppTransactionId>
                <maskedCC></maskedCC>
                <aliasCC></aliasCC>
                <expm></expm>
                <expy></expy>
                <trxDate>20180830</trxDate>
                <trxTime>153451</trxTime>
                <trtype>05</trtype>
            </response>
        </transaction>
    </body>
</statusService>