Approve and acknowledge the payment

Your options once we've received a payment request:

Approve the payment request

When we receive a payToBankAccountV3 request, we put it into the Merchant Administration System (MAS) approval queue. You can then check and approve it before we instruct our bank to settle the payment. Your account isn't debited until you approve the payment.

If you have an internal procedure that vets payments before your system interacts with Worldpay, you can instruct our systems to automatically approve and begin processing payment requests triggered by the API calls. Contact us to do this.

By default, we only check that fields such as accountNumber or IBAN have data in them. Formal validation does not happen yet - you can do your own validation based on the parameters in the paymentTemplate object. Errors are found after payments are submitted to Worldpay systems and may be rejected if data is missing or incorrect.

Payment success

The Payout Success Notification service lets you know that the payment has been successfully submitted. This means the payment has successfully passed our validation checks and you have been debited the funds needed to complete the transfer. The Payout Success Notification service does not confirm that funds have been settled to the beneficiary bank account.

We can send a SOAP RPC call with the PaymentOutNotification API method to your website as an HTTPS post to notify you of successful Push to Accounts. When receiving a PaymentOutNotification, you must respond with a PaymentOutNotificationResponse or we will repost the same notification.

You can also receive notifications by email.

If you want to use this service, contact us with your email address and your notification endpoint for SOAP based notifications.

PaymentOutNotification

Worldpay notifications always come from IP 213.129.74.111 or IP 93.91.29.197 or 149.5.102.77 or IP Ranges 195.35.90.0/27 or 195.35.91.0/27.

PaymentOutNotification schema

<?xml version="1.0" encoding="UTF-8"?>

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

  <soap:Body>

    <PaymentOutNotification xmlns="http://apilistener.envoyservices.com">

      <paymentDetails>

        <originalPaymentInfo>

          <countryCode>string</countryCode>

          <payee>string</payee>

          <merchantReference>string</merchantReference>

          <merchantPaymentReference>string</merchantPaymentReference>

          <sourceCurrency>string</sourceCurrency>

          <sourceAmount>double</sourceAmount>

          <targetCurrency>string</targetCurrency>

          <targetAmount>double</targetAmount>

          <sourceOrTarget>string</sourceOrTarget>

          <fastPayment>string</fastPayment>

          <additionalInfo1>string</additionalInfo1>

          <additionalInfo2>string</additionalInfo2>

          <additionalInfo3>string</additionalInfo3>

        </originalPaymentInfo>

        <paymentResult>

          <envoyMerchantAccountNumber>string</envoyMerchantAccountNumber>

          <itemNumber>string</itemNumber>

          <statementId>string</statementId>

          <epacsReference>string</epacsReference>

          <executionDate>string</executionDate>

          <appliedCurrency>string</appliedCurrency>

          <appliedAmount>double</appliedAmount>

        </paymentResult>

      </paymentDetails>

    </PaymentOutNotification>

  </soap:Body>

</soap:Envelope>

PaymentOutNotification elements

Lvl

Element

Description

Values / Limitations

1

paymentDetails

Contains elements related to the payment being notified.

Complex Type

Mandatory

2

originalPaymentInfo

Contains elements related to the original payment.

Complex Type

Mandatory

3

countryCode

Destination country of the Push to Account.

String 2 characters

ISO 3166-1 English country code standard

Mandatory

3

payee

Beneficiary account name.

String up to 50 characters

Optional

3

merchantReference

Statement narrative you provide in the Push to Account instruction.

String up to 50 characters

Optional

3

merchantPaymentReference

Unique reference you generate to identify the Push to Account instruction.

String up to 50 characters

Optional

3

sourceCurrency

WPAP account currency specified in the Push to Account.

String 3 characters

ISO 4217 currency code standard

Mandatory

3

sourceAmount

WPAP account debit amount specified in the Push to Account.

Decimal

Mandatory

3

targetCurrency

Currency that was instructed by WPAP through the WPAP banking partner.

String 3 characters

ISO 4217 currency code standard.

Mandatory

3

targetAmount

Amount that was instructed by through the WPAP banking partner.

Decimal

Mandatory

3

sourceOrTarget

Whether the beneficiary should be paid the source (S) or target (T) amount. See PaymentOutNotification for further details.

String, 1 character

Mandatory

3

fastPayment

Indicates if the payment should go through a fast or normal payment route.

 

String, 1 character

Mandatory

3

additionalInfo1

Additional information you provide when requesting the Push to Account.

String, up to 50 characters

Optional

3

additionalInfo2

Additional information you provide when requesting the Push to Account.

String, up to 50 characters

Optional

3

additionalInfo3

Additional information you provide when requesting the Push to Account.

String, up to 50 characters

Optional

2

paymentResult

Contains elements related to the status of the payment.

Complex Type

Mandatory

3

envoyMerchantAccountNumber

Your WPAP account that was debited by the Push to Account instruction.

String, 16 characters exactly

Mandatory

3

itemNumber

Account statement number that increments with every item applied to the account.

Integer

Mandatory

3

statementId

Unique statement item id, unique across the WPAP platform.

GUID format

Mandatory

3

epacsReference

Unique reference for the Push to Account.

GUID format

Mandatory

3

executionDate

Timestamp of when WPAP debited your account.

YYYY-MM-DDThh:mm:ss.nn

(the ‘T’ remains in the string and does not get replaced by a value. ‘nn’ represents hundredths of a second)

Mandatory

3

appliedCurrency

Currency debited from your WPAP account.

String 3 characters

ISO 4217 currency code standard

Mandatory

3

appliedAmount

Amount debited from your WPAP account.

Decimal

Mandatory

PaymentOutNotificationResponse schema

<?xml version="1.0" encoding="UTF-8"?>

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

  <soap:Body>

    <PaymentOutNotificationResponse xmlns="http://apilistener.envoyservices.com">

      <PaymentOutNotificationResult>string</PaymentOutNotificationResult>

    </PaymentOutNotificationResponse>

  </soap:Body>

</soap:Envelope>

PaymentOutNotificationResponse elements

Lvl

Element

Description

Values / Limitations

1

PaymentOutNotificationResult

Use this element to respond to the PaymentOutNotification you receive.

String up to 7 characters

Mandatory

Set to SUCCESS or ERROR

Example notification and response

Notification:

<?xml version="1.0" encoding="UTF-8"?>

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

  <soap:Body>

    <PaymentOutNotification xmlns="http://apilistener.envoyservices.com">

      <paymentDetails>

        <originalPaymentInfo>

          <countryCode>GB</countryCode>

          <payee>Test Payee</payee>

          <merchantReference>Test Merchant Narrative</merchantReference>

          <merchantPaymentReference>8447801</merchantPaymentReference>

          <sourceCurrency>GBP</sourceCurrency>

          <sourceAmount>0.00</sourceAmount>

          <targetCurrency>GBP</targetCurrency>

          <targetAmount>15.00</targetAmount>

          <sourceOrTarget>T</sourceOrTarget>

          <fastPayment>N</fastPayment>

          <additionalInfo1 />

          <additionalInfo2 />

          <additionalInfo3 />

        </originalPaymentInfo>

        <paymentResult>

          <envoyMerchantAccountNumber>0001230000000002</envoyMerchantAccountNumber>

          <itemNumber>160216</itemNumber>

          <statementId>f0352060-3417-e311-9f75-0050568a2d55</statementId>

          <epacsReference>e9352060-3417-e311-9f75-0050w68a2f55</epacsReference>

          <executionDate>2013-09-06T20:39:16</executionDate>

          <appliedCurrency>GBP</appliedCurrency>

          <appliedAmount>15.00</appliedAmount>

        </paymentResult>

      </paymentDetails>

    </PaymentOutNotification>

  </soap:Body>

</soap:Envelope>

Your response:

<?xml version="1.0" encoding="UTF-8"?>

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

  <soap:Body>

    <PaymentOutNotificationResponse xmlns="http://apilistener.envoyservices.com">

      <PaymentOutNotificationResult>SUCCESS</PaymentOutNotificationResult>

    </PaymentOutNotificationResponse>

  </soap:Body>

</soap:Envelope>

Payment failure

It is possible for a payment to fail for a number of reasons outside of our control. There are two types of failure.

REVERSAL

The payout was rejected by:

  • The Worldpay AP payment system due to an issue with routing the payment via one of our banks (for example, invalid bank data, no route available)

  • Our partner bank (for example, invalid bank data)

RETURN

The payout was accepted by the Worldpay payment system and our partner bank, but was rejected by the beneficiary bank (for example, account doesn’t exist, account closed). The PAYOUT_RETURN is typically processed as far as the beneficiary bank where it fails, and is subsequently returned by same settlement route, which means it can be returned many days later.

Both of these failures result in your Worldpay AP account being credited. We can also send a notification (email and/or SOAP) to you, detailing the failure and the returned item.

The notification endpoint and notification email address are defined in the merchant configuration. If you want to use this service, let us know and we’ll set it up for your account: Contacting Worldpay . You’ll need to give us your email address and your notification endpoint for SOAP based notifications.

PaymentOutReversalNotification

Worldpay notifications always come from IP 213.129.74.111 or IP 93.91.29.197 or 149.5.102.77 or IP Ranges 195.35.90.0/27 or 195.35.91.0/27.

PaymentOutReversalNotification schema

<?xml version="1.0" encoding="UTF-8"?>

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

  <soap:Body>

    <PaymentOutReversalNotification xmlns="http://apilistener.envoyservices.com">

      <reversalInfo>

        <originalPaymentInfo>

          <countryCode>string</countryCode>

          <payee>string</payee>

          <merchantReference>string</merchantReference>

          <merchantPaymentReference>string</merchantPaymentReference>

          <sourceCurrency>string</sourceCurrency>

          <sourceAmount>double</sourceAmount>

          <targetCurrency>string</targetCurrency>

          <targetAmount>double</targetAmount>

          <sourceOrTarget>string</sourceOrTarget>

          <fastPayment>string</fastPayment>

          <additionalInfo1>string</additionalInfo1>

          <additionalInfo2>string</additionalInfo2>

          <additionalInfo3>string</additionalInfo3>

        </originalPaymentInfo>

        <credit>

          <envoyMerchantAccountNumber>string</envoyMerchantAccountNumber>

          <itemNumber>string</itemNumber>

          <statementId>string</statementId>

          <epacsReference>string</epacsReference>

          <postingDate>string</postingDate>

          <creditCurrency>string</creditCurrency>

          <creditAmount>double</creditAmount>

          <reversalReason>string</reversalReason>

        </credit>

        <debit>

          <envoyMerchantAccountNumber>string</envoyMerchantAccountNumber>

          <itemNumber>string</itemNumber>

          <statementId>string</statementId>

          <epacsReference>string</epacsReference>

          <postingDate>string</postingDate>

          <debitCurrency>string</debitCurrency>

          <debitAmount>double</debitAmount>

        </debit>

      </reversalInfo>

    </PaymentOutReversalNotification>

  </soap:Body>

</soap:Envelope>

PaymentOutReversalNotification elements

Lvl

Element

Description

Values / Limitations

1

reversalInfo

Contains elements related to the reversal.

Complex Type

Mandatory

2

originalPaymentInfo

Contains elements related to the original payment.

Complex Type

Mandatory

3

countryCode

Destination country that the Push to Account.

String 2 characters

ISO 3166-1 English country code standard

Mandatory

3

Payee

Beneficiary account name.

String up to 50 characters

Optional

3

merchantReference

Statement narrative you provide in the original Push to Account instruction.

String up to 50 characters

Optional

3

merchantPaymentReference

Unique reference you generate to identify the original Push to Account instruction.

String up to 50 characters

Optional

3

sourceCurrency

WPAP account currency specified in the original Push to Account.

String 3 characters

ISO 4217 currency code standard

Mandatory

3

sourceAmount

WPAP account debit amount specified in the original Push to Account.

Decimal

Mandatory

3

targetCurrency

Currency that was instructed by WPAP for the WPAP banking partner.

String 3 characters

ISO 4217 currency code standard.

Mandatory

3

targetAmount

Amount that was instructed by WPAP for the WPAP banking partner.

Decimal

Mandatory

3

sourceOrTarget

Whether the beneficiary should be paid the source (S) or target (T) amount. See PaymentOutReversalNotification for further details.

String, 1 character

Mandatory

3

fastPayment

Indicates if the payment should go through a fast or normal payment route.

String, 1 character

Mandatory

3

additionalInfo1

Additional information you provide when requesting the Push to Account.

String up to 50 characters

Optional

3

additionalInfo2

Additional information you provide when requesting the Push to Account.

String up to 50 characters

Optional

3

additionalInfo3

Additional information you provide when requesting the Push to Account.

String up to 50 characters

Optional

2

Credit

Contains elements related to reversal statement entry.

Complex Type

3

envoyMerchantAccountNumber

Your Worldpay AP account that was credited with the reversal.

String, 16 characters exactly

Mandatory

3

itemNumber

Account statement number that increments with every item applied to the account.

Integer

Mandatory

3

statementId

Unique statement item id, unique across the WPAP platform.

GUID format

Mandatory

3

epacsReference

Unique reference for the credit.

GUID format

Mandatory

3

postingDate

Timestamp of when WPAP credited the account.

YYYY-MM-DDThh:mm:ss.nn

(the ‘T’ remains in the string and does not get replaced by a value. ‘nn’ represents hundredths of a second)

Mandatory

3

creditCurrency

Currency credited to your WPAP account.

String 3 characters

ISO 4217 currency code standard

Mandatory

3

creditAmount

Amount credited to your WPAP account.

Decimal

Mandatory

3

reversalReason

Narrative describing the reason that the Push to Account reversal failed.

String up to 50 characters

Optional

2

Debit

Contains elements related to Push to Account statement entry.

Complex Type

Mandatory

3

envoyMerchantAccountNumber

Your WPAP account that was debited by the original Push to Account instruction.

String, 16 characters exactly

Mandatory

3

itemNumber

Account statement number that increments with every item applied to the account.

Integer

Mandatory

3

statementId

Unique statement item id, unique across the WPAP platform.

GUID format

Mandatory

3

epacsReference

Unique reference for the Push to Account.

GUID format

Mandatory

3

postingDate

Timestamp of when WPAP your account.

YYYY-MM-DDThh:mm:ss.nn

(the ‘T’ remains in the string and does not get replaced by a value. ‘nn’ represents hundredths of a second)

Mandatory

3

debitCurrency

Currency debited from your WPAP account.

String 3 characters

ISO 4217 currency code standard

Mandatory

3

debitAmount

Amount debited from your WPAP account.

Decimal

Mandatory

PaymentOutReversalNotificationResponse schema

<?xml version="1.0" encoding="UTF-8"?>

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

  <soap:Body>

    <PaymentOutReversalNotificationResponse xmlns="http://apilistener.envoyservices.com">

      <PaymentOutReversalNotificationResult>string</PaymentOutReversalNotificationResult>

    </PaymentOutReversalNotificationResponse>

  </soap:Body>

</soap:Envelope>

PaymentOutReversalNotificationResponse

Lvl

Element

Description

Values / Limitations

1

PaymentOutReversalNotificationResult

Use this element to respond to the PaymentOutReversalNotification you receive.

String up to 7 characters

Mandatory

Set to SUCCESS or ERROR.

Example notification and response

Notification:

<?xml version="1.0" encoding="UTF-8"?>

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

  <soap:Body>

    <PaymentOutReversalNotification xmlns="http://apilistener.envoyservices.com">

      <reversalInfo>

        <originalPaymentInfo>

          <countryCode>GB</countryCode>

          <payee>Test Payee</payee>

          <merchantReference>Test Merchant 123</merchantReference>

          <merchantPaymentReference>8447801</merchantPaymentReference>

          <sourceCurrency>GBP</sourceCurrency>

          <sourceAmount>0.00</sourceAmount>

          <targetCurrency>GBP</targetCurrency>

          <targetAmount>15.00</targetAmount>

          <sourceOrTarget>T</sourceOrTarget>

          <fastPayment>N</fastPayment>

          <additionalInfo1 />

          <additionalInfo2 />

          <additionalInfo3 />

        </originalPaymentInfo>

        <credit>

          <envoyMerchantAccountNumber>0003450000000002</envoyMerchantAccountNumber>

          <itemNumber>164154</itemNumber>

          <statementId>989cef79-511c-e311-9f75-0050568a2f55</statementId>

          <epacsReference>859cef79-511c-e311-9f75-0050568a2f55</epacsReference>

          <postingDate>2013-09-13T08:50:03</postingDate>

          <creditCurrency>GBP</creditCurrency>

          <creditAmount>15.00</creditAmount>

          <reversalReason>Invalid Bank Code Returned by Beneficiary Bank</reversalReason>

        </credit>

        <debit>

          <envoyMerchantAccountNumber>0003450000000002</envoyMerchantAccountNumber>

          <itemNumber>160216</itemNumber>

          <statementId>f0352060-3417-e311-9f75-0050568a2f55</statementId>

          <epacsReference>e9352060-3417-e311-9f75-0050568a2f55</epacsReference>

          <postingDate>2013-09-06T20:39:16</postingDate>

          <debitCurrency>GBP</debitCurrency>

          <debitAmount>15.00</debitAmount>

        </debit>

      </reversalInfo>

    </PaymentOutReversalNotification>

  </soap:Body>

</soap:Envelope>

Your response:

<?xml version="1.0" encoding="UTF-8"?>

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

  <soap:Body>

    <PaymentOutReversalNotificationResponse xmlns="http://apilistener.envoyservices.com">

      <PaymentOutReversalNotificationResult>SUCCESS</PaymentOutReversalNotificationResult>

    </PaymentOutReversalNotificationResponse>

  </soap:Body>

</soap:Envelope>