Skip to content

SEPA Secure withdrawal initiation#

A full SEPA Secure withdrawal flow includes the following steps:

  1. Create a customer account and KYC applicant for a new customer
  2. Pass KYC, if the customer has not passed it yet
  3. Create a Destination Bank Account (DBA), where the funds will be sent
  4. Trigger a withdrawal

To provide maximum flexibility, the XGateway offers separate API endpoints for each of the actions as well as an option to pass through the flow using UI.

VPN usage may block a customer from passing KYC checks. It is highly recommended to warn customers not to use VPN (including Apple Private Relay).

SEPA Secure withdrawal flow via API (host-to-host) #

SumSubSDK KYC part remains UI-only. Check the host-to-host option to omit this step

The flow can be used if a merchant already has the majority of customer information or wants to build their own UI.

Step 1 needs to be finished only once and only if SumSub token sharing is not implemented.

Step 2 also includes API endpoints for DBA management.

Steps for host-to-host withdrawal flow

  1. KYC module

    a. Create SEPA Secure user account

    b. Create KYC applicant

    c. Trigger KYC module checkout link to get the page with SumSub SDK to show to the customer

    d. Complete KYC via UI

  2. DBA module

    a. Create and activate DBA via API

  3. Trigger a withdrawal

    a. Initiate a withdrawal

    b. Check the callback and confirm the transaction received

Make sure that you control the result of execution of each API request. If one of the requests fails - all the subsequent requests will also fail. Instead, setup a retry mechanism where necessary.

Note, that there the KYC needs to be passed only once. There is no need to trigger the API endpoints before every deposit.

SEPA Secure withdrawal flow through UI #

The UI-based flow includes all the steps from the host-to-host flow. The data must be entered manually by the customer.

Steps for UI flow

  1. DBA module

    a. Trigger DBA management link

    b. Complete the KYC and setup the DBA via UI

  2. Trigger a withdrawal

    a. Initiate a withdrawal

    b. Check the callback and confirm the transaction received

Testing the withdrawal callback#

The Demo Environment provides an API to simulate a deposit.


#