Skip to main content

Request card account updates

You can request real-time account updates for cards by making a POST request to the /account-updates endpoint. This provides an immediate response with old and new card account information for Visa and Mastercard. For Discover cards, the account updates are available the next day. 

Important optional request fields
Field name                                   Description
cardAccountAction

This field is used to register or unregister the card account for subsequent automated inquiries.

  • REGISTER: Use this value to register the card account.
  • UNREGISTER: If the card account is registered, use this value to unregister the card account.
merchantRecordIdentifier This field allows you to include your own internal identifier to associate to the inquiry. This value is included in future notifications.
subMerchantId This field is required when you submit an inquiry for your sub-merchant. It contains the value used to register your sub-merchant with the payment networks.
Note

 If you submit an inquiry on behalf of a sub-merchant, include subMerchantId field in the request body.

Important response fields
Field name      Descriptions

responseId

The response ID is generated by the Account Updater system and can be used for GET calls to retrieve the response information at a later time.
requestStatus Indicates current card registration status such as REGISTEREDUNREGISTEREDREGISTRATION_FAILED, and  REGISTRATION_PENDING

HTTP method: POST

Endpoint: /account-updates

Scenario 1: Request an account updater inquiry using a PAN in the cardNumber field and include an optional subMerchantId. Register the card account for automated inquiries by including the cardAccountAction field with the value of REGISTER.

Json
{
    "accountInformation": {
        "cardNumber" : "4111111111111113",
        "expiry" : {
            "month" : "9",
            "year" : "2032"
        }
    },
    "subMerchantId" : "000000123123",
    "cardAccountAction" : "REGISTER"
}

Response:

Json
{
    "requestCreateTimestamp": "2024-11-15T01:13:46.21Z",
    "responseId": "89af6487-a14e-4cd8-8821-7f8c35df8a96",
    "requestId": "bd3e8655-081d-4c26-b406-559aaeb934bd",
    "requestStatus": "REGISTERED",
    "response": "SUCCESS",
    "accountUpdaterResult": {
        "oldAccountInformation": {
            "cardNumber": "4111111111111113",
            "expiry": {
                "month": 9,
                "year": 2032
            },
            "cardTypeName": "VISA",
            "accountNumberType": "PAN"
        },
        "newAccountInformation": {
            "cardNumber": "4111111180885260",
            "expiry": {
                "month": 9,
                "year": 2037
            },
            "cardTypeName": "VISA",
            "paymentMethodChanged": false,
            "accountNumberType": "PAN"
        },
        "networkResponse": {
            "networkResponseCode": "A"
        },
        "reasonMessage": "NEW_ACCOUNT_AND_EXPIRY",
        "responseMessage": "Account Update provided for both account number and expiry"
    },
    "cardAccountAction": "REGISTER",
    "subMerchantId": "000000676252"
}

Scenario 2: Request an account updater inquiry using a Safetech token. 

When sending a safetech token in the cardNumber field, you must include the accountNumberType field with the value SAFETECH_TOKEN. If you omit this field, the value in the cardNumber field is treated as a PAN (Primary Account Number) by default.

Json
{
  "accountInformation" : {
    "accountNumberType": "SAFETECH_TOKEN",
    "cardNumber" : "4111111557381113",
    "expiry" : {
      "month" : 7,
      "year" : 2026
    }
  }
}

Response:

Json
{
    "requestCreateTimestamp": "2024-11-18T16:47:40.768Z",
    "responseId": "113194fc-2f07-4ff5-a3c3-85895652c629",
    "requestId": "da887c4b-68b5-4346-b390-2e81afb75223",
    "response": "SUCCESS",
    "accountUpdaterResult": {
        "oldAccountInformation": {
            "cardNumber": "4111111557381113",
            "expiry": {
                "month": 7,
                "year": 2026
            },
            "cardTypeName": "VISA",
            "accountNumberType": "SAFETECH_TOKEN"
        },
        "newAccountInformation": {
            "cardNumber": "4111117039188641",
            "expiry": {
                "month": 7,
                "year": 2031
            },
            "cardTypeName": "VISA",
            "paymentMethodChanged": false,
            "accountNumberType": "SAFETECH_TOKEN"
        },
        "networkResponse": {
            "networkResponseCode": "A"
        },
        "reasonMessage": "NEW_ACCOUNT_AND_EXPIRY",
        "responseMessage": "Account Update provided for both account number and expiry"
    }
}

Scenario 3: Request an account updater inquiry for Discover cards using a PAN. 

Request an account updater inquiry using a Discover PAN in the cardNumber field. Register the card account for automated inquiries by including the cardAccountAction field with the value of REGISTER.

Json
{
    "accountInformation": {
        "cardNumber": "6011111111111116",
        "expiry": {
            "month": "10",
            "year": "2020"
        }
    },
    "cardAccountAction" :"REGISTER"
}

Response:

Json
{
  "requestCreateTimestamp": "2025-07-22T11:09:19.971Z",
  "responseId": "dd467e33-9e96-4598-919c-2fd33b7d80e2",
  "requestId": "3c678f07-7eec-4b46-9e52-38feb6a23b2b",
  "requestStatus": "REGISTRATION_PENDING",
  "accountUpdaterResult": {
    "oldAccountInformation": {
      "cardNumber": "6011111111111116",
      "expiry": {
        "month": 10,
        "year": 2020
      },
      "accountNumberType": "PAN"
    },
    "responseMessage": "Checking For Update",
    "expectedRecordUpdateTimestamp": "2025-07-23T14:00:00.000Z"
  },
  "cardAccountAction": "REGISTER"
}

After the response is received with the expectedRecordUpdateTimestamp, the account updates are available according to the date and time mentioned in the expectedRecordUpdateTimestamp field. Run the GET call to retrieve the latest Discover card account updates. For more information, see Retrieve latest card account updates.

Response field values and recommended action

reasonMessage

responseMessage

networkResponseCode

Visa /  Mastercard / Discover

Action recommended

Billable Update

NEW_ACCOUNT

Account Update provided for account number

A / (not applicable) A

Update account number or token in your system

Yes

NEW_ACCOUNT_AND_EXPIRY

Account Update provided for both account number and expiry

A / ACCOUNT_UPDATE / or O

Update account number or token in your system and expiration date.

Yes

NEW_EXPIRY

Account Update provided for account expiry

E / EXPIRY / E or O

Update expiration date in your system

Yes

CLOSED_ACCOUNT

Account has been closed

C / (not applicable) / C

Contact cardholder to obtain updated card information

Yes

CONTACT_CARDHOLDER

Contact Cardholder

Q / CONTACT / Q

Contact cardholder to obtain updated card information

Yes

MATCH_NO_UPDATE

Valid card no update available

V / VALID / (not applicable)

No action needed

No

NO_MATCH_NON_PARTICIPATING_BIN

BIN range does not participate in Account Updater

N / NON_PARTICIPATING /  (not applicable)

No action needed

No

NO_MATCH_PARTICIPATING_BIN Participating BIN range card not found P / UNKNOWN / (not applicable) No action needed No
Note

For Discover, the networkResponseCode as O indicates that the issuer corrected a previous account update.