Skip to main content

Transform Help Center

Processing SEPA direct debit transactions without a payment service provider

Depending on your internal accounting process, it may be useful to consider a separate bank account to process on account / direct debit payments directly with you bank via billwerk.

With billwerk you can process payments via Direct Debit by your house bank without needing to use services of integrated PSPs.


Before reading further, please consider:

  • Full chargebacks and chargeback fees are taken into account in SEPA XML.

  • That means, partial chargebacks are not supported for SEPA XML.

To use the functionality of SEPA-XML please follow the steps described below:

Configuration of SEPA-XML

In your billwerk account navigate to Settings > Payment Settings and click the edit button mceclip2.png next to SepaXml.


Select the checkbox next to configured and take note of the displayed information regarding this feature. If you don't want to use the standard execution period which are set for SEPA Direct Debit by default you can set your preferred execution period right below. Plese note, the IBAN of your bank account and your creditor id have to be filled in the company details (Settings - Account - Company). Afterwards you can save your changes.


In the list of payment providers you can now select the checkbox Direct Debit for SepaXml. Save to complete the configuration of SEPA-XML.


After setting the payment data for direct debit to the customers contract first a preauthorization and shortly afterwards a processing transaction will be created. You can investigate the payment status in the payment logs . The status of the payment transaction will remain in status Preliminary Succeeded until you export the transactions like described in the next step. After the export the status will switch to Succeeded.

Export payment transactions

The SEPA-XML transactions can be exported as batch in the format pain.008.001.09 or pain.008.001.02 via Activities > Payment Export. Only transactions which haven't been exported yet will be considered as a result in the generated export file.

Hand over payment transactions to house bank

After you generated the export file you can download it from your billwerk account and the transfer the transaction data to your house bank by uploading the file to your bank account. The bank can now process the direct debit transactions.

Account Reconciliation


Direct debits, failed refunds and chargebacks are imported through Camt0.53 (Camt: short for Cash Management, Uniform XML data transmission format defined by SEPA for exchanges between banks and customers. Camt0.53 concerns posted bank statements).

Refunds are exported and get confirmed immediately. In the case that a refund fails, it is marked as "failed" in the contract ledger and a new refund will be created.

After the transactions have been processed by your house bank and you have received the payments of the customers to your bank account you can start to capture them in billwerk. To do so please navigate to Activities > Account Reconciliation. Here you can upload a file of receivables provided by your house bank or capture the receivables manually.

Export refunds via SEPA-XML

It is possible to create a refund transaction, when contract has SEPA-XML as payment method and a credit note was created. Next, you can export it manually.

Create a refund transaction manually
  1. Create a refund transaction by clicking Perform Action >Refund.

  2. Switch to the Refund tab and fill in all the credentials. Finish by clicking OK button.

As a result, in the Contract Ledger tab in the Contract Details window, you should see Unconfirmed status of your refund transaction.

Export refund transaction
  1. Go to Payments Export section in the Activities tab. Choose one of the refund (pain.001) formats like SEPA XML Refund (pain.001.001.09).



    Please confirm with your bank which format version they currently support.

  2. Select Export transactions button. You can see the Status of the export in the Available files tab.

  3. Download the SEPA XML file by selecting8247993124764-mceclip1.png and upload it to your bank, for instance, in your online banking.

  4. After the refund export, in the Contract Ledger, the status of the refund has been updated to Confirmed.


If the refund fails (e.g wrong IBANor insufficient funds), then the user needs to capture that manually on the contract. While being on the contract details, navigate to Perform Action > Capture ext. Payment/Refund and create a payment of the necessary amount.