Skip to main content

Open Banking Refunds

New Open Banking refund flow

Updated yesterday

The Open Banking refund process has been updated to make it faster and more convenient. Refunds are now processed automatically - there is no longer a need to generate XML files or upload them to the bank. Once a refund is initiated via the Merchant Portal or API, it is processed automatically.

At the moment, the new Open Banking refund flow is available only for Estonian and Latvian merchants. Lithuanian merchants will be enabled at a later stage.


1. XML File Generation Is No Longer Supported

Refunds are now processed directly via:

  • Merchant Portal

  • API

It is no longer possible to:

  • Generate XML pain.001 files

  • Upload refund files to the bank

All refund-related steps are handled automatically in the background.


2. Unique Payment Description Is Mandatory

To ensure that refunds can be processed correctly, merchants must use a different payment description for each payment, adding the payment_description parameter to the payment request.

Reusing the same unstructured reference across multiple payments may prevent refunds from being processed successfully.


3. New Intermediate Refund State

A new refund state has been introduced: refund_initiated

  • refund_initiated indicates that SEB has accepted the refund request

  • The actual money movement and final outcome are resolved asynchronously

  • standing_amount is not reduced until the refund is finalized

Both successful and unsuccessful outcomes are transparently reflected, ensuring full visibility throughout the refund lifecycle.


4. Refund Initiation, Portal Experience, API

How Refunds Can Be Initiated

Refunds can be initiated:

  • Directly in the Merchant Portal

  • Via API integration

Strong Customer Authentication (SCA) is not required to confirm refund transactions.


Merchant Portal

  • Merchants no longer need to manually download generated XML files from the Actions section

  • All refund-related steps are handled automatically in the background

  • The refund status is continuously updated and displayed directly on the payment page


API

  • The refund API preserves the existing refund initiation flow and endpoints

  • The primary changes are related to refund state handling and new intermediate statuses, reflecting the fully API-driven refund lifecycle


5. User Permissions (Merchant Portal)

To initiate refund transactions in the Merchant Portal, users must have a dedicated refund permission.

Without this right, the user will not be able to create refunds.

To enable this permission:

  1. Go to Settings → Merchant Users

  2. Select the specific user

  3. Enable "Can Refund Open Banking payments"

  4. Save the changes


6. Refund Rules and Limitations

  • Refunds are available only for transactions that were collected to the merchant’s SEB account

  • Transactions are refundable for 6 months from the original payment date

  • Refunds can only be made to the original payer

  • It is not possible to change the beneficiary IBAN

  • Partial refunds are allowed, single transaction can be refunded multiple times

  • The total refunded amount cannot exceed the remaining standing_amount of the original transaction


Old Refund Flow (currently for Lithuanian merchants)

  • Select a single payment for refund from the payment list

  • Specify the refund amount. A single payment can be refunded multiple times until the outstanding amount reaches zero

  • Enter the creditor’s name (customer name) for the refund. Refunds cannot be processed without the creditor’s name

  • The creditor’s IBAN is automatically retrieved from the initial payment in the merchant portal

  • To initiate the refund process, click the “REFUND” button. The payment status will change to “refunded”, and the standing amount will be updated accordingly

  • If needed, merchants can change the debtor IBAN for Open Banking refunds in the portal under E-shop settings

  • The same process can also be performed via API by making a /refund request, which marks the payment as “refunded”


XML pain.001 file generation

  • Refunded payments can be viewed for a selected time period under the “Actions” section in the merchant portal

  • Refunded payments can be filtered into a separate list from other payments Select the payments to be included in the XML pain.001 file. A maximum of 1,500 transactions can be included in a single file

  • Click the “XML file for OB refund” button to download the XML pain.001 file, which can then be uploaded to the SEB system

  • In the Business Internet Bank, navigate to Transactions → Import of Payments XML to upload the file

  • If a refund fails in the SEB system, it is possible to revert the payment. Go to the payment details page and click the “REVERT” button. This will change the payment status back to “settled” and update the outstanding amount accordingly

  • The same process can also be performed via the API by making a /refunds/xml_payment_file request. Payments can also be reverted via the /refunds/revert endpoint

Did this answer your question?