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.
The following table describes important optional fields included in a request.
Field name | Description |
---|---|
cardAccountAction |
This field is used to register or unregister the card account for recieving subsequent account update notifications.
|
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. |
The following table describes important response fields.
Field name | Descriptions |
---|---|
expectedRecordUpdateTimestamp |
This field shows the date and time when account updates are available. Run the GET call to retrieve the latest card account updates. For more information, see retrieve latest card account updates. |
|
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 REGISTERED , UNREGISTERED , REGISTRATION_FAILED, and REGISTRATION_PENDING |
Request account updates using PAN
Request an account updater inquiry using a PAN in the cardNumber
field.
HTTP method: POST
Endpoint: /account-updates
{
"accountInformation": {
"accountNumberType": "PAN",
"cardNumber" : "4111111111111113",
"expiry" : {
"month" : "12",
"year" : "2027"
}
}
}
Response:
{
"requestCreateTimestamp": "2025-09-05T18:53:04.059Z",
"responseId": "7893bf1f-3caf-44ea-88f7-ba685fcdba94",
"requestId": "c533548a-ad62-486e-abbd-42d1141e8836",
"response": "SUCCESS",
"accountUpdaterResult": {
"oldAccountInformation": {
"cardNumber": "4111111111111113",
"expiry": {
"month": 12,
"year": 2027
},
"cardTypeName": "VISA",
"accountNumberType": "PAN"
},
"newAccountInformation": {
"cardNumber": "4111111122819424",
"expiry": {
"month": 12,
"year": 2032
},
"cardTypeName": "VISA",
"paymentMethodChanged": false,
"accountNumberType": "PAN"
},
"networkResponse": {
"networkResponseCode": "A"
},
"reasonMessage": "NEW_ACCOUNT_AND_EXPIRY",
"responseMessage": "Account Update provided for both account number and expiry"
}
}
Request account updates using Safetech token
HTTP method: POST
Endpoint: /account-updates
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.
{
"accountInformation" : {
"accountNumberType": "SAFETECH_TOKEN",
"cardNumber" : "4111111557381113",
"expiry" : {
"month" : 7,
"year" : 2026
}
}
}
Response:
{
"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"
}
}
Request account updates for Discover
Request an account updater inquiry for Discover cards using a PAN in the cardNumber
field.
HTTP method: POST
Endpoint: /account-updates
{
"accountInformation": {
"cardNumber": "6011970200000006",
"expiry": {
"month": "12",
"year": "2020"
}
}
}
Response:
{
"requestCreateTimestamp": "2025-09-05T18:56:36.284Z",
"responseId": "9ff165ca-91fc-4565-995b-c49bfc144420",
"requestId": "b3bf9b73-e573-43a8-80b7-a3ae3bbd4d19",
"response": "SUCCESS",
"accountUpdaterResult": {
"oldAccountInformation": {
"cardNumber": "6011970200000006",
"expiry": {
"month": 12,
"year": 2020
},
"accountNumberType": "PAN"
},
"responseMessage": "Checking For Update",
"expectedRecordUpdateTimestamp": "2025-09-06T14:00:00.000Z"
}
}
Request card registration
Register your card accounts for automated account update inquiries and set up webhook notifications. API behavior is consistent irrespective of method of payments.
HTTP method: POST
Endpoint: /account-updates
{
"accountInformation": {
"accountNumberType": "PAN",
"cardNumber" : "4011111111111113",
"expiry" : {
"month" : "12",
"year" : "2027"
}
},
"cardAccountAction": "REGISTER"
}
Response:
{
"requestCreateTimestamp": "2025-09-05T18:59:30.106Z",
"responseId": "f6e8b0b6-7206-4826-8609-b736b4d124ea",
"requestId": "c533548a-ad62-486e-abbd-42d1141e8836",
"requestStatus": "REGISTRATION_PENDING",
"response": "SUCCESS",
"accountUpdaterResult": {
"oldAccountInformation": {
"cardNumber": "4011111111111113",
"expiry": {
"month": 12,
"year": 2027
},
"cardTypeName": "VISA",
"accountNumberType": "PAN"
},
"responseMessage": "Checking For Update",
"expectedRecordUpdateTimestamp": "2025-09-06T14:00:00.000Z"
},
"cardAccountAction": "REGISTER"
}
Request registration for registered card
Request card registration for a card that is already registered. You will get the responseMessage
with the value Card already registered for Account Updater.
HTTP method: POST
Endpoint: /account-updates
{
"accountInformation": {
"accountNumberType": "PAN",
"cardNumber" : "4111111111111113",
"expiry" : {
"month" : "12",
"year" : "2027"
}
},
"cardAccountAction": "REGISTER"
}
Response:
{
"requestCreateTimestamp": "2025-09-05T19:02:22.129Z",
"responseId": "abeab7b4-1a08-4ec8-8f2a-e0e40501e111",
"requestId": "c533548a-ad62-486e-abbd-42d1141e8836",
"requestStatus": "REGISTERED",
"response": "SUCCESS",
"accountUpdaterResult": {
"oldAccountInformation": {
"cardNumber": "4111111111111113",
"expiry": {
"month": 12,
"year": 2027
},
"cardTypeName": "VISA",
"accountNumberType": "PAN"
},
"responseMessage": "Card already registered for Account Updater",
"expectedRecordUpdateTimestamp": "2025-09-06T14:00:00.000Z"
},
"cardAccountAction": "REGISTER"
}
Response field values and recommended action
The following table summarizes the possible response field values for card account update requests, the corresponding network response codes, recommended actions, and whether the update is billable.
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 / A 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 |