Skip to main content
Skip table of contents

Worldpay for Platforms eDDR (electronic Direct Debit Request)

Introduction

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 banking system, such as BECS/ACH.


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.

  2. Redirect your customer to the URL you received with the token.

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

  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 AEST 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

Parameter

Value

BSB

123456

Account Number

12345678

Account Name

TEST ACCOUNT

Test Bank Account Details - NZ specific

Parameter

Value

BSB

123456

Account Number

1234456789

Account Name

TEST ACCOUNT


Test Card details

Within the Sandbox environment, you can test card transactions using the card examples below:

  • CVC = Any 3 digit number

  • Expiry Date = Any future date

Card Type

Test Card Numbers

VISA

4111111111111111
4012888888881881
4242424242424242

Mastercard

5353535353535351
5555555555554444
5105105105105100
2221000000000009
2720990000000007

AMEX

378282246310005
371449635398431
378734493671000


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.

Alternatively, you can utilise one of our features to manage collection on failed payments. Refer to our guide here and reach out to your Partner / Account manager to discuss.


How to cancel a scheduled debit from processing?

In order to cancel a scheduled debit from processing, it must be cancelled before our platform has picked it up for processing. If the scheduled debit has already been processed, 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.


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.