Skip to main content
Skip table of contents

UK - Worldpay for Platforms eDDR (electronic Direct Debit Request)

This developer guide for implementing the Worldpay for Platforms eDDR (electronic Direct Debit Request) will allow you to integrate our payments platform to start accepting Bank Account and Card direct debit payments processed through the BaCs (Bankers' Automated Clearing System).


Worldpay for platforms eDDR flowchart


API steps for eDDR

The process for using the eDDR token is simply:

  1. Call the POST Generate eDDR Token to obtain a token and a redirect URL.

    1. Specify CardAuthorizationType:

      1. RECURRING

      2. INSTALMENT

      3. UNSCHEDULED

    2. Minimum payer details:

      1. First name

      2. Last name

      3. Email address

      4. Billing Address

  2. Redirect the end user to the URL you received with the token.

  3. After the end user has completed the form we will redirect them back to your website using the returnURL you provided when generating the token.

    1. If the end user enters card details as the desired payment method, this will trigger the mandatory 3DS validation and the end user will be redirected to complete the 3DS challenge. Once the 3DS challenge is complete, the end user will be redirected back to the returnURL you specified in the original request.

    2. The redirection back to the returnURL is the notification trigger for your software to identify that the eDDR page has been completed.

  4. Call the Token Lookup API endpoint to obtain the result of the token.

  5. Schedule single or multiple payments:

    1. POST Schedule a single payment

    2. POST Schedule multiple future payments

  6. Determine result of scheduled debit - GET Search for transaction status change

  7. Remove transaction from data set - POST Acknowledge transaction status change

  1. Recommend calling our GET Search for transaction status changes at approximately 10AM BST as a general timeframe daily which will pull a set of all transactions for your business that have had a change of transaction status.

  2. Following the above API, use our POST Acknowledge transaction status change to acknowledge the transactions and remove them from the data set when you next call the Get New Status Search above.

  3. If the transaction status changes again after you have removed it from the data set, it will be returned in the GET Search for transaction status changes to notify you of the change in status.

Please note the token is valid for 20 minutes. You may wish to use a landing page to trigger this if the page will not be completed as part of the flow.

Most software services already contain the information regarding the Payer and when they are to be debited. In this case, it is much simpler for the software to manage the schedule and send a request on the morning they are due to be debited via the POST Schedule a single payment.


Bank Account details for testing

Test Bank Account Details

Test Bank Account Details - UK specific

Parameter

Value

Sort code

208441

Account Number

83521605

Account Name

M Engineered Solutions


3DS Test Cards to test different cases

 Within the Sandbox environment, to simulate a challenge when entering card details through the eDDR, use the card examples below:

  • CVC = Any 3 digit number

  • Expiry Date = Any future date

Frictionless Success

Frictionless Fail

Challenge Required

4907639999909022

5283901906612672

4918914107195005

4016360000000010

4016360000000028

4016360000000093


What to do if a scheduled debit has failed?

If the result of the transaction has returned and been identified as failed / rejected, pending on your application’s workflow, you can simply schedule another debit to capture payment and then identify the result of the following debit in the same flow, GET Search for transaction status then POST Acknowledge transaction status change.


How to cancel a scheduled debit from processing?

In order to cancel a scheduled debit from processing, it must be cancelled 6 days in advance as per the BaCs regulation. If the scheduled debit is within the 6 day advance notice timeframe, you can no longer cancel or stop the debit from processing. Utilise any of the 'Find Schedule Details ' API in conjunction with the DELETE Delete Single Payment to confirm the scheduled debit was cancelled successfully.

Example

  1. Call GET Look up a scheduled payment or GET Find a Payers scheduled payments or GET Search all scheduled payments to identify the 'scheduledpaymentid'.

    • If the 'scheduledpaymentid' that you are planning to cancel is returned in this API call, the debit has not yet been picked up for processing and you are still able to cancel the scheduled debit.

    • If the 'scheduledpaymentid' is not returned, the debit has been processed and can no longer be cancelled.

  2. Cancel the scheduled debit by calling Delete Single Payment

    • This will return a 200 response

  3. Confirm the cancellation by calling either of the 3 GET API calls.

    • If the 'scheduledpaymentid' is not returned, the scheduled debit has been deleted.

Note - In the UK, a Bank Account direct debit schedule in the UK must allow 6 business days notice before the payment due date. Scheduled Bank Account debits may not be altered or removed once it is within the 6 business day notice period as per UK regulations. A Credit Card direct debit does not fall under the same UK BACS requirements for the 6 business day rule and can be scheduled, altered or removed at any time prior to processing.


Self-service function to manually instantly trigger debit or settlement process

Refer to our self-service function here to instantly trigger the debit or settlement process. This will allow you to test the processes without waiting for the automated process in the sandbox environment.


JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.