In addition to the below table, please refer to Visa Developer Error Codes to learn more about common VDP errors and how to resolve them.
| HTTP Status | Error Code | Message | Description | Recommended Handling |
|---|---|---|---|---|
| 400 | Invalid value, must be an ISO 3166 three-letter country code | The value for country doesn't follow the ISO-3166 standard | Input a value for country using standard ISO-3166 | |
| 400 | Invalid value, must be an ISO 4217 three-letter currency code | The value for currency doesn't follow the ISO-4217 standard | Input a value for currency using standard ISO-4217 | |
| 400 | X must not be blank because the fields Y,Z are present | A specific field can't be blank because other related fields have values | Input a value for X | |
| 400 | X must not be empty | A specific field can't be blank | Input a value for X | |
| 400 | X must not be null | Indicates that a field must be filled or null. | Input a value for X | |
| 400 | There are duplicate elements: X,Y | Remove one of the duplicate values. | Remove one of the duplicate value and re-submit. | |
| 400 | X: size must be between Y and Z | The inputed value is not within the range of the allowed values | Input a value for X between Y and Z | |
| 500 | Internal Server Error | The server encountered an unexpected condition that prevented it from fulfilling the request | Contact your Visa production support contact for investigation and assistance. | |
| 400 | JSON parse error: Cannot deserialize request | N/A | Please refer to API specifications and input a valid JSON request. | |
| 400 | X, invalid value format for this field | A field has an incorrect format | Please refer to API specifications for the proper format and re-submit. | |
| 400 | line: X, column: Y , invalid JSON format | JSON format is incorrect at the indicated position | Fix the JSON format at the indicated position | |
| 400 | X is not a valid value. Valid values are: Y,Z | The inputed value is not one of the allowed values | Use one of the allowed values for this field. | |
| 422 | LDS-30000 | Alias already exists | Alias already exists | Use another Alias value |
| 404 | LDS-30002 | Alias not found | Alias not found | Verify the Alias Id used in the request |
| 422 | LDS-30004 | alias.externalId already exists | External ID for the Alias already exists | Use another External ID |
| 422 | LDS-30005 | paymentCredential.externalId[{0}] already exists | External ID for the payment credential already exists | Use another External ID |
| 422 | LDS-30006 | paymentCredential.externalId[{0}] is duplicated in the request | The same External ID for payment credentials occurs more than once in the request | Use another External ID |
| 422 | LDS-30008 | paymentCredential.externalId already exists | External ID for the payment credential already exists | Use another External ID |
| 422 | LDS-30009 | Type not allowed | The value for "type" is not valid. Valid values are ALIAS, PAYMENT_CREDENTIAL. | Use a correct value for the "type" object in the request. (ALIAS, PAYMENT_CREDENTIAL) |
| 422 | LDS-30010 | Id not found | The Id provided in the request was not found | Verify the Id and type used in the "getByExternalId" request. The combination must match to return results. |
| 422 | LDS-30011 | The ID of the payment credential provided was not found | The ID of the payment credential provided was not found | Use the Get Payment Credentials API to get a list of all payment credentials associated with the Alias. |
| 422 | LDS-30012 | Destination type does not match the source type of the payment credential | Indicates that the payment credential to update has a different "type" than the requested type. | Use the Get Payment Credential API to get the information on the payment credential and use the correct "type" value. |
| 422 | CVC-30000 | Error while decrypting PAN | Indicates that was not possible decrypt the PAN | Data inconsistence. Contact your Visa production support contact for investigation and assistance. |
| 422 | CVC-30001 | Error while decrypting Expiration Date | Indicates that was not possible decrypt the Expiration Date | Data inconsistence. Contact your Visa production support contact for investigation and assistance. |
| 422 | CVC-30002 | Wrong PAN format | PAN has an incorrect format | Use a proper format for PAN |
| 422 | CVC-30003 | Expiration Date is invalid. Must be in YYYY-MM format. | Expiration Date is invalid. Must be in YYYY-MM format. | Use proper format for expiration date. |
| 422 | CVC-30004 | Card does not exist | The specific card was not found. | Contact your Visa production support contact for investigation and assistance. |
| 422 | CVC-30005 | Error while encrypting PAN | Not possible to encrypt the PAN | Contact your Visa production support contact for investigation and assistance. |
| 422 | CVC-30006 | Error while encrypting Expiration Date | Not possible to encrypt the Expiration Date | Contact your Visa production support contact for investigation and assistance. |
| 422 | CVC-30007 | Expired card | Expiration date is before than current date | Use an expiration date in the future |
422 |
CVC-30010 |
The card already exists for this participant and alias value |
Indicates that the card payment credential already exists in the directory for this participant and alias value. |
N/A, payment credential already exists. To create a different card payment credential, make sure to use a unique combination of accountNumber, expirationDate, aliasValue, and participantId. |
422 |
LDC-30003 |
The domain {domain} is not allowed |
The domain {domain} is not allowed |
Check the payname domain against the required format. Contact your Visa production support contact for domain changes. |
422 |
LDC-30004 |
Payname cannot be created as no domain is registered |
Payname cannot be created as no domain is registered |
Contact your Visa production support contact for help creating a domain. |
422 |
LDC-30005 |
Unable to validate domain at this time |
Unable to validate domain at this time |
Contact your Visa production support contact for investigation and assistance. |
422 |
LDC-30006 |
The domain {domain} was not found. For testing, please use test domain {test_domain}. For other domains, please contact your Visa representative |
domain not found in participant domains, but found in test domain |
If testing, use the domain that is provided. If not, Contact your Visa production support contact for investigation and assistance. |
| 422 | DCC-30002 | No directories responded within the response timeout period | No directories responded within the response timeout period | Try again. If the error still exists, please contact your Visa production support contact for investigation and assistance. |
| 422 | DCC-30003 | Alias not found | Alias not found | N/A |
| 422 | DCC-30004 | Multiple results found, but unable to resolve Alias. | Multiple results were found, but the resolution rules could not narrow the multiple results into a single result. | N/A |
| 422 | DCC-30006 | No directory was found using the configured polling rules. | No directory was found using the configured polling rules. | Client onboarding inconsistence. Contact your Visa production support contact for investigation and assistance. |
| 422 | DCC-30008 | Selected directory doesn't exist | Not possible to find the specified directory. | The Directory Name used in the request doesn't exist. Contact your Visa production support contact to validate the available remote directories. |
| 422 | DCC-30009 | Selected directory is not available for Alias resolution. | indicates that the directory is disabled and not available for Alias resolution. | The Directory Name used in the request is not available for the program. Contact your Visa production support contact to validate the available remote directories. |
422 |
RES-30000 |
endDate is invalid. Must be higher than startDate |
Indicates that the end date must be higher than the start date. |
Try again using an endDate that is higher or chronologically later than the startDate. |
422 |
RES-30001 |
Requested report was previously submitted |
Indicates that a report with these filters was already submitted. |
If the report type and filters are correct, find the reportId for the already existing report and use the Get Report Status API to check its status. If not, update the report type and/or filters and try again to generate a new report. |
422 |
RES-30002 |
There was a hashing error |
Indicates that there was an error creating the report hash. |
Try again. If the error still exists, please contact your Visa production support contact for investigation and assistance. |
422 |
RES-30003 |
startDate and endDate must not be future values |
Indicates that the start and end date are greater than today's date. |
Try again using a startDate and endDate that are not in the future. |
422 |
RES-30004 |
Report not found |
Indicates that the Report was not found. |
Verify the reportId and try again. If the error still exists, please contact your Visa production support contact for investigation and assistance. |
422 |
RES-30005 |
Search interval dates are greater than allowed |
Indicates that the days between startDate and EndDate are grather than allowed |
Try again using another startDate and/or endDate so that the number of days between them is less than: 90 days for DIRECTORY ACTIVITY |
422 |
RES-30006 |
Error retrieving file |
Indicates that an error occurred when It try to read the file from the storage |
Try again. If the error still exists, please contact your Visa production support contact for investigation and assistance. |
422 |
RES-30007 |
File not found |
Indicates that the File was not found in the database |
Verify the fileId using the Get Report Status API and try again with the appropriate value. Note that the combination of fileId and reportId must match to return results. |
422 |
RES-30008 |
The date range provided has exceed the configured limit for the report type |
Indicates that the date range exceeds the maximum limit for this report type |
Try again using another startDate and/or endDate so that the date range is no greater than: 90 days for DIRECTORY ACTIVITY |
422 |
RES-30010 |
This report type is not available |
Indicates that the FULL_EXTRACT report type is being used to create a regular report. (This report type has its own endpoint) |
If the required report is of type FULL_EXTRACT, verify that the correct endpoint is being called (/online-reports/full-extract) and try again. If the error still exists, please contact your Visa production support contact for investigation and assistance. |