Trustly Direct Debit (UK only)


Trustly Direct Debit is a restricted product, see the requirements below:

Establish Data Mandatory Fields

  1. The user must be in the UK (GB, GG, JE, GI) as the current flow type.
  2. Pass the required data during the EstablishRequest within the establishData object.
  3. Email and address are mandatory, even though the API will not verify. If both are not entered, the user will have to manually type it in at Checkout.
  4. In compliance with GDPR, do not send the telephone number.
  5. Merchant reference is mandatory and unique per mandate.
  6. Merchant references must match the BACS requirement. Minimum requirements include:
    • A core reference may be up to 13 characters long and must be a minimum of 6 characters
    • Although any of the allowed BACS characters may be included in the core reference*, only upper
      case alpha and numeric characters will be considered in checking for the minimum length of 6
      characters. Use of “DDIC” in the first four characters of the reference is prohibited. This is
      reserved for PSP use only if:
    • It must not consist of all the same characters (e.g. all zeros)
    • It must be left-justified within field 10 of the DDI and Direct Debit record. This requires the first
      alpha/numeric character of the reference to appear in character position one of this field
    • It must be lodged with the paying PSPs exactly as it appears on a signed DDI
    • It must be unique for the SUN to ensure that the paying PSPs can accurately match Direct Debits to mandate. It must not be possible to match the merchant reference quoted in the mandate wholly or in part to the merchant reference of any other mandate already held by the paying PSP for the same SUN.
  7. During the EstablishRequest within the establishData object add payment schedule to the metadata object.
    "metadata": {
        "paymentSchedule": {
            "1": { "amount": 23, "date": "27th March"},
            "2": { "amount": 23, "date": "27th April"}

Trustly Subscribe - Recurring Payments

  1. Mandate must be confirmed (which takes 5 days), so the first start date of the recurring payments cannot be before that, else it will fail.
  2. AutomaticCapture must be true.



For more information, see Recurring Payments.

Trustly Variable Amounts via Deferred Payments

  1. The mandate must be confirmed (which takes up to 5 days), so the first capture transaction of the deferred payment cannot be before that, else there is a chance it will fail.
  2. In accordance with the mandate regulations, the merchant must send an email notification to the user prior to calling the capture transaction API. This email must clearly state the date of the transaction will be processed, as well as the amount.
  3. Send an email confirmation to the user whenever a mandate is created.


  1. Merchants have the possibility to represent failed transactions (most commonly due to insufficient funds on the customer account) and for that, one must have it enabled on the configuration. Here the merchant will also have the possibility to decide the number of days before each representation after a failed transaction.
  2. The merchant needs to inform the user using an advanced notice e-mail.
  3. A failed transaction can be represented up to 2 times.
  4. A failed transaction can be represented for up to 30 days.

Import Existing Mandates

  1. Create CSV files in the following format:
    • Use naming convention.
    • Send the file to the SFTP folder.
    • Notification will be sent for each transaction.

Other Transactions That Can Be Used

List transactions
Get Payments
Get User
Get Customer Data
Cancel Transaction



Cancel recurring transactions are possible on the current day before cut-off 8.30 pm (UK time)



Refund transactions are not possible on direct debit transactions



Event notifications should be enabled to retrieve status updates on the mandates and transactions

Expected Responses

ARUCS0Invalid details
ARUCS2Beneficiary deceased
ARUCS3Account transferred
ARUCS5No account
ARUCSBAccount closed
ARUCSCRequested by remitter
AWACS0Invalid details
AWACS3Account transferred
ARUDD0Refer to payer (basically means out of funds)
ARUDD2Payer deceased
ARUDD3Account transferred
ARUDD4Advance notice disputed
ARUDD5No account (or wrong account type)
ARUDD6No instruction
ARUDD7Amount differs (disputed amount)
ARUDD8Amount not yet due (in case payment is sent before DDI confirmed)
ARUDD9Presentation is overdue
ARUDDAService User differs (Details do not match DDI)
ARUDDBAccount closed
ADDACS0Instruction canceled refer to Payer
ADDACS1Instruction canceled by Payer
ADDACS2Payer Deceased
ADDACS3Account transferred to new bank
ADDACSBAccount closed
ADDACSCAccount transferred to new branch
ADDACSDAdvance notice disputed
ADDACSEInstruction amended
ADDACSRInstruction re-instated
AUDDIS1Instruction Canceled by Payer
AUDDIS2Payer deceased
AUDDIS3Account transferred
AUDDIS5No Account
AUDDIS6No instruction
AUDDISCDDI amount not zero
AUDDISFInvalid account type
AUDDISGPSP will not accept DD on account
AUDDISHInstruction expired
AUDDISIPayer Reference not unique
AUDDISKInstruction cancelled by paying PSP
AUDDISLIncorrect payers account details
AUDDISMTrx code/user status incompatible
AUDDISNTrx not allowed at payers branch
AUDDISOinvalid reference
AUDDISPPayer's name not present
AUDDISQService users name blank
DDIC1Amount differs
DDIC2No advance notice received by payer
DDIC3DDI cancelled by bank
DDIC4Payer has cancelled DDI with Service User
DDIC5No instruction held
DDIC6Signature fraudulent
DDIC7Claim raised at Service User Request
DDIC8Service user name disputed, payer does not recognise