Reference guide for Visa Pay API error codes, causes, and resolution steps.
Visa Pay API uses standard HTTP status codes to indicate request success or failure:
| Status Code | Description | Meaning |
|---|---|---|
| 200 | OK | Request processed successfully |
| 201 | Created | Resource created successfully |
| 400 | Bad Request | Invalid request payload or parameters |
| 401 | Unauthorized | Authentication credentials invalid or missing |
| 404 | Not Found | Requested resource does not exist |
| 409 | Conflict | Request conflicts with current resource state |
| 500 | Internal Server Error | Unexpected server condition occurred |
Visa Pay API returns specific error codes in response payloads:
| Error Code | Description | Common Causes | Resolution Steps |
|---|---|---|---|
| INVALID_REQUEST | payload validation failure | Missing required fields, invalid data format, constraint violations | Review request payload against schema requirements, validate field formats and constraints |
| CONFLICT | Idempotency key already used | Duplicate enrollment attempt, repeated transaction with same key. Device ID has already been enrolled for device token enrollment | Check existing enrollment status, use unique idempotency keys for new requests. For additional tokens use endpoint "Add Token to Enrollment" |
| NOT_FOUND | Enrollment or token not found | Invalid external ID, deleted enrollment, expired token. The Account_ID has not been previously enrolled; GET call and 'Add Token' cannot be used before initial enrollment has taken place. | Verify external ID exists, check enrollment status, validate token lifecycle |
| INTERNAL_ERR | Unexpected system condition | Service unavailability, processing failure, network issues. Visa Pay side server error | Implement retry with exponential backoff, contact support for persistent issues |