Account Updater

Your customer's card details may change due to expiration, loss, or other account changes. This may result in refused outcomes if you attempt subsequent Customer Initiated Transactions (CITs) or Merchant Initiated Transactions (MITs) using outdated credentials.

Your customer's card details can either be stored by you, or by us in a Worldpay token. When you submit payment requests using these card details, we can check if updated card details are available before attempting a payment authorization.

How to enable

We have two offerings available:

  • Managed - we apply merchant configuration to your entity and automatically check for updated card details when you attempt qualifying payments. No changes are required to your payment requests.
  • Request a real-time account update in your payment request by setting the instruction.requestAccountUpdater boolean to true.

In both cases, if updated card details are available, we apply them before requesting payment authorization. We return updated card details in the updatedPaymentInstrument object in our response.

You can only supply requestAccountUpdater where customerAgreement.storedCardUsage is set to subsequent for either CITs or MITs.

requestAccountUpdater object (Required)

"instruction": {
    "paymentInstrument": {
        "type": "card/plain",
        "cardNumber": "4444333322221111",
        "expiryDate": {
            "month": 5,
            "year": 2035
        }
    },
    "customerAgreement":{
        "type": "cardOnFile",
        "storedCardUsage": "subsequent"
    },
    "requestAccountUpdater": true,
    ....
}

Outcome details

...
"updatedPaymentInstrument": {
    "type": "card/plain",
    "cardNumber": "8888777766665555",
    "expiryDate": {
        "month": 9,
        "year": 2031
    },
    "cardBrand": "visa",
    "fundingType": "credit",
    "accountUpdaterMessage": "The account number was changed"
},
...

Schema

appliedNetworkTokenboolean

Returned if the payment instrument was swapped for a network token.

typestring
Enum"card/plain""card/plain+masked"
Example: "card/plain+masked"
accountUpdaterMessagestring

Details on the type of payment instrument update.

Enum"The merchant is not registered in the update program""The account number was changed""The account was closed""The expiry was changed""The issuing bank does not participate in the update program""Contact the cardholder for updated information""No match found""The account number was changed"
Example: "The account number was changed"
cardNumberstring
cardBinstring

The updated card BIN (Bank Identification Number).

Example: "444433"
lastFourstring

The four digits of the updated card. Some characters may be obfuscated with a * if the PAN length is less than 16 characters.

Example: "1111"
expiryDateobject(ExpiryDate)

Contains your customer's card or token expiry date.

cardBrandstring

The brand of the updated card. In rare circumstances a card may be reissued under a different brand.

fundingTypestring

How the card is funded.

countryCodestring