SEPA Direct Debit - Germany
Regardless of the transaction type, the basic XML document structure of a German Direct Debit transaction is as follows:
<ipgapi:IPGApiOrderRequest
xmlns:v1="http://ipg-online.com/ipgapi/schemas/v1"
xmlns:ipgapi="http://ipg-online.com/ipgapi/schemas/ipgapi">
<v1:Transaction>
<v1:DE_DirectDebitTxType>...</v1:DE_DirectDebitTxType>
<v1:DE_DirectDebitData>...</v1:DE_DirectDebitData>
<v1:Payment>...</v1:Payment>
<v1:TransactionDetails>...</v1:TransactionDetails>
<v1:Billing>
<v1:Name>Name Surname</v1:Name>
</v1:Billing>
<v1:Shipping>...</v1:Shipping>
</v1:Transaction>
</ipgapi:IPGApiOrderRequest>
The element DE_DirectDebitTXType
is mandatory for all debit transactions. The other elements depend on the transaction type. The transaction content is type-specific.
GLV Contract
In case you have a “GLV” contract with your service provider, you need to submit additional customer data in “Billing” element of your transaction request.
Sale
The following XML document represents an example of a Sale transaction using the minimum set of elements:
<ipgapi:IPGApiOrderRequest
xmlns:v1="http://ipg-online.com/ipgapi/schemas/v1"
xmlns:ipgapi="http://ipg-online.com/ipgapi/schemas/ipgapi">
<v1:Transaction>
<v1:DE_DirectDebitTxType>
<v1:Type>sale</v1:Type>
</v1:DE_DirectDebitTxType>
<v1:DE_DirectDebitData>
<v1:IBAN>DE345001XXXX32121604</v1:IBAN>
<v1:MandateReference>0/8/15</v1:MandateReference>
</v1:DE_DirectDebitData>
<v1:Billing>
<v1:Name>Markus Mustermann</v1:Name>
</v1:Billing>
<v1:Payment>
<v1:ChargeTotal>19.00</v1:ChargeTotal>
<v1:Currency>978</v1:Currency>
</v1:Payment>
</v1:Transaction>
</ipgapi:IPGApiOrderRequest>
Void
The following XML document represents an example of a Void transaction using the minimum set of elements:
<ipgapi:IPGApiOrderRequest
xmlns:v1="http://ipg-online.com/ipgapi/schemas/v1"
xmlns:ipgapi="http://ipg-online.com/ipgapi/schemas/ipgapi">
<v1:Transaction>
<v1:DE_DirectDebitTxType>
<v1:Type>void</v1:Type>
</v1:DE_DirectDebitTxType>
<v1:TransactionDetails>
<v1:IpgTransactionId>1234567890</v1:IpgTransactionId> </v1:TransactionDetails>
</v1:Transaction>
</ipgapi:IPGApiOrderRequest>
For referencing to the transaction that shall be voided, this example uses the parameter IpgTransactionId
. If you have assigned a transaction ID (MerchantTransactionId
) in the original transaction, you can alternatively submit this ID as ReferencedMerchantTransactionId
instead.
Unkown Payment Method
In case your system is not aware of the payment method that has been used for the original transaction, the Void can be performed using any TxType which supports Voids. The Gateway will then select the correct payment method based on the referenced Transaction ID.
Credit
Please note, that Credit is a transaction type that requires special user permissions.
The following XML document represents an example of a Credit transaction using the minimum set of elements:
<ipgapi:IPGApiOrderRequest
xmlns:v1="http://ipg-online.com/ipgapi/schemas/v1"
xmlns:ipgapi="http://ipg-online.com/ipgapi/schemas/ipgapi">
<v1:Transaction>
<v1:DE_DirectDebitTxType>
<v1:Type>credit</v1:Type>
</v1:DE_DirectDebitTxType>
<v1:DE_DirectDebitData>
<v1:IBAN>DE34500****0032121604</v1:IBAN>
</v1:DE_DirectDebitData>
<v1:Billing>
<v1:Name>Markus Mustermann</v1:Name>
</v1:Billing>
<v1:Payment>
<v1:ChargeTotal>19.00</v1:ChargeTotal>
<v1:Currency>978</v1:Currency>
</v1:Payment>
</v1:Transaction>
</ipgapi:IPGApiOrderRequest>
Return
Please note that Return is a transaction type that requires special user permissions.
The following XML document represents an example of a Return transaction using the minimum set of elements:
<ipgapi:IPGApiOrderRequest
xmlns:v1="http://ipg-online.com/ipgapi/schemas/v1"
xmlns:ipgapi="http://ipg-online.com/ipgapi/schemas/ipgapi">
<v1:Transaction>
<v1:DE_DirectDebitTxType>
<v1:Type>return</v1:Type>
</v1:DE_DirectDebitTxType>
<v1:Payment>
<v1:ChargeTotal>1.00</v1:ChargeTotal>
<v1:Currency>978</v1:Currency>
</v1:Payment>
<v1:TransactionDetails>
<v1:OrderId>62e3b5df-2911-4e89-8356-1e493</v1:OrderId>
</v1:TransactionDetails>
</v1:Transaction>
</ipgapi:IPGApiOrderRequest>
Unkown Payment Method
In case your system is not aware of the payment method that has been used for the original transaction, the Return can be performed using any TxType which supports Returns. The Gateway will then select the correct payment method based on the referenced Order ID.
Updated about 2 months ago