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

SEPA / ELV

120

paymentmethod=ELV

Payment ProcessIntegration
Authorization✔️Payment Page✔️
Deferred Settlement✔️Split Mode✔️
Refund:X:Mobile SDK✔️
Cancel✔️
Alias✔️

Description

The method of payment, which is very common in Germany, is mainly used by internet customers who do not own a credit card. The purchaser enters his/her IBAN (International Bank Account Number). Datatrans then ensures the secure transfer and processing of the customer data.

Acquirer Information

BillPay GmbH
creditPass GmbH

Web payment flow

 1 
[Not supported by viewer]
Customer clicks Pay
Customer clicks Pay
Merchant Website
Merchant Website
Merchant Server
Merchant Server
Payment Page loaded from Datatrans
Payment Page loaded from Datatrans
Acquirer
(Billpay, creditPass)
Acquirer<br>(Billpay, creditPass)<br>
 3 
[Not supported by viewer]
Customer enters Baking Information
[Not supported by viewer]
 2 
[Not supported by viewer]
 4 
[Not supported by viewer]
Validates and prepares forwarding to Acquirer
Validates and prepares forwarding to Acquirer
 5 
[Not supported by viewer]
Authorization / Forwarding
Authorization / Forwarding
 7 
[Not supported by viewer]
Receives Result 
Receives Result 
7.1
[Not supported by viewer]
 8 
[Not supported by viewer]
Invokes merchant's
POST URL (Webhook)
Invokes merchant's<br>POST URL (Webhook)
Receives Result 
Receives Result 
 9 
[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
Bank
Bank
Authorization
Authorization
 6 
[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

Request
Using bankiban

curl -v -X POST https://api.sandbox.datatrans.com/upp/jsp/XML_authorize.jsp \
-H 'Content-Type: application/xml' \
-H 'Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=' \
-d @- << EOF
<?xml version="1.0" encoding="UTF-8" ?>
<authorizationService version="6">
  <body merchantId="1000011011">
    <transaction refno="131666">
      <request>
        <amount>1000</amount>
        <currency>CHF</currency>
        <pmethod>ELV</pmethod>
        <bankiban>DE85123456781234512345</bankiban>
        <sign>30916165706580013</sign>
      </request>
    </transaction>
  </body>
</authorizationService>

Using aliasCC

curl -v -X POST https://api.sandbox.datatrans.com/upp/jsp/XML_authorize.jsp \
-H 'Content-Type: application/xml' \
-H 'Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=' \
-d @- << EOF
<?xml version="1.0" encoding="UTF-8" ?>
<authorizationService version="6">
  <body merchantId="1000011011">
    <transaction refno="131666">
      <request>
        <amount>1000</amount>
        <currency>CHF</currency>
        <pmethod>ELV</pmethod>
        <aliasCC>150325174232694472</aliasCC>
        <sign>30916165706580013</sign>
      </request>
    </transaction>
  </body>
</authorizationService>
EOF

Response
If bankiban was used for the request.

<?xml version='1.0' encoding='UTF-8'?>
<authorizationService version='6'>
    <body merchantId='1000011011' status='accepted'>
        <transaction refno='131666' trxStatus='response'>
            <request>
                <amount>1000</amount>
                <currency>CHF</currency>
                <pmethod>ELV</pmethod>
                <bankiban>DE85123456781234512345</bankiban>
                <sign>30916165706580013</sign>
                <reqtype>NOA</reqtype>
            </request>
            <response>
                <responseCode>01</responseCode>
                <responseMessage>Authorized</responseMessage>
                <uppTransactionId>171122174522843130</uppTransactionId>
                <authorizationCode>522863131</authorizationCode>
                <acqAuthorizationCode>174522</acqAuthorizationCode>
                <bankibanConverted>DE85123456781234512345</bankibanConverted>
                <elvMandateID>ABCDEF12345</elvMandateID>
            </response>
        </transaction>
    </body>
</authorizationService>

Settlement

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>1000</amount>
        <currency>CHF</currency>
        <uppTransactionId>171122174522843130</uppTransactionId>
      </request>
    </transaction>
  </body>
</paymentService>

Response

<?xml version='1.0' encoding='UTF-8'?>
<paymentService version='2'>
    <body merchantId='1000011011' status='accepted'>
        <transaction refno='999273' trxStatus='response'>
            <request>
                <amount>1000</amount>
                <currency>CHF</currency>
                <uppTransactionId>171122174522843130</uppTransactionId>
                <reqtype>COA</reqtype>
                <transtype>05</transtype>
            </request>
            <response>
                <responseCode>01</responseCode>
                <responseMessage>settlement succeeded</responseMessage>
            </response>
        </transaction>
    </body>
</paymentService>

Cancel

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="29023">
      <request>
        <amount>200</amount>
        <currency>CHF</currency>
        <uppTransactionId>170915085159059305</uppTransactionId>
        <reqtype>DOA</reqtype>
      </request>
    </transaction>
  </body>
</paymentService>

Response

<?xml version='1.0' encoding='UTF-8'?>
<paymentService version='2'>
    <body merchantId='1000011011' status='accepted'>
        <transaction refno='29023' trxStatus='response'>
            <request>
                <amount>200</amount>
                <currency>CHF</currency>
                <uppTransactionId>170915085159059305</uppTransactionId>
                <reqtype>DOA</reqtype>
                <transtype>05</transtype>
            </request>
            <response>
                <responseCode>01</responseCode>
                <responseMessage>cancellation succeeded</responseMessage>
            </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>171122174522843130</uppTransactionId>
        <reqtype>STX</reqtype>
      </request>
    </transaction>
  </body>
</statusService>

Response

<?xml version='1.0' encoding='UTF-8'?>
<statusService version='5'>
    <body merchantId='1000011011' status='accepted'>
        <transaction trxStatus='response'>
            <request>
                <uppTransactionId>171122174522843130</uppTransactionId>
                <reqtype>STX</reqtype>
            </request>
            <response itemNr='1'>
                <responseCode>6</responseCode>
                <responseMessage>DOA Cancel</responseMessage>
                <refno>999273</refno>
                <amount>1000</amount>
                <currency>CHF</currency>
                <authorizationCode>522863131</authorizationCode>
                <pmethod>ELV</pmethod>
                <uppTransactionId>171122174522843130</uppTransactionId>
                <maskedCC>xxxxx12345-12345678</maskedCC>
                <aliasCC></aliasCC>
                <expm></expm>
                <expy></expy>
                <trxDate>20171122</trxDate>
                <trxTime>174522</trxTime>
                <trtype>05</trtype>
                <settledAmount>1000</settledAmount>
            </response>
        </transaction>
    </body>
</statusService>

Credit Check

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" ?>
<authorizationService version="6">
  <body merchantId="1000011011">
    <transaction refno="211331">
      <request>
        <amount>1000</amount>
        <currency>CHF</currency>
        <pmethod>ELV</pmethod>
        <bankiban>DE85123456781234512345</bankiban>
        <uppCustomerDetails>
          <uppCustomerFirstName>Good</uppCustomerFirstName>
          <uppCustomerLastName>Customer</uppCustomerLastName>
          <uppCustomerStreet>via streccione 2</uppCustomerStreet>
          <uppCustomerCity>Lugano</uppCustomerCity>
          <uppCustomerZipCode>6900</uppCustomerZipCode>
          <uppCustomerCountry>ITA</uppCustomerCountry>
        </uppCustomerDetails>
        <sign>30916165706580013</sign>
      </request>
    </transaction>
  </body>
</authorizationService>
EOF

Response

<authorizationService version="6">
  <body merchantId="1000011011" status="accepted">
    <transaction refno="211331" trxStatus="response">
      <request>
        <amount>1000</amount>
        <currency>CHF</currency>
        <pmethod>ELV</pmethod>
        <bankiban>DE85123456781234512345</bankiban>
        <uppCustomerDetails>
          <uppCustomerFirstName>Good</uppCustomerFirstName>
          <uppCustomerLastName>Customer</uppCustomerLastName>
          <uppCustomerStreet>via streccione 2</uppCustomerStreet>
          <uppCustomerCity>Lugano</uppCustomerCity>
          <uppCustomerZipCode>6900</uppCustomerZipCode>
          <uppCustomerCountry>ITA</uppCustomerCountry>
        </uppCustomerDetails>
        <sign>30916165706580013</sign>
        <reqtype>NOA</reqtype>
      </request>
      <response>
        <responseCode>01</responseCode>
        <responseMessage>Authorized</responseMessage>
        <uppTransactionId>180816171124908583</uppTransactionId>
        <authorizationCode>124928584</authorizationCode>
        <acqAuthorizationCode>171124</acqAuthorizationCode>
        <bankibanConverted>DE85123456781234512345</bankibanConverted>
        <elvMandateID>ABCDEF12345</elvMandateID>
      </response>
    </transaction>
  </body>
</authorizationService>