Plaid logo
Docs
ALL DOCS

Errors

  • Overview
  • Item errors
  • Institution errors
  • API errors
  • Assets errors
  • Payment errors
  • Transactions errors
  • Transfer errors
  • Income errors
  • Sandbox errors
  • Invalid Request errors
  • Invalid Input errors
  • Invalid Result errors
  • Rate Limit Exceeded errors
  • Link web errors
  • Recaptcha errors
  • OAuth errors
  • Microdeposits errors
  • Partner errors
Plaid logo
Docs
Plaid.com
Get API keys
Open nav

Errors

A comprehensive breakdown of all Plaid error codes

Errors overview

Item errors
Occur when an Item may be invalid or not supported on Plaid's platform.
ACCESS_NOT_GRANTED
INSTANT_MATCH_FAILED
INSUFFICIENT_CREDENTIALS
INVALID_CREDENTIALS
INVALID_MFA OTP Device & Code
INVALID_MFA Questions
INVALID_MFA Selections
INVALID_SEND_METHOD
INVALID_UPDATED_USERNAME
ITEM_CONCURRENTLY_DELETED
ITEM_LOCKED
ITEM_LOGIN_REQUIRED
ITEM_NOT_FOUND
ITEM_NOT_SUPPORTED
MFA_NOT_SUPPORTED
NO_ACCOUNTS
NO_AUTH_ACCOUNTS or no-depository-accounts
NO_INVESTMENT_ACCOUNTS
NO_INVESTMENT_AUTH_ACCOUNTS
NO_LIABILITY_ACCOUNTS
PRODUCT_NOT_ENABLED
PRODUCT_NOT_READY
PRODUCTS_NOT_SUPPORTED
USER_INPUT_TIMEOUT
USER_SETUP_REQUIRED
Institution errors
Occur when there are errors for the requested financial institution.
INSTITUTION_DOWN
INSTITUTION_NO_LONGER_SUPPORTED
INSTITUTION_NOT_AVAILABLE
INSTITUTION_NOT_ENABLED_IN_ENVIRONMENT
INSTITUTION_NOT_FOUND
INSTITUTION_NOT_RESPONDING
INSTITUTION_REGISTRATION_REQUIRED
UNAUTHORIZED_INSTITUTION
API errors
Occur during planned maintenance and in response to API errors.
INTERNAL_SERVER_ERROR or plaid-internal-error
PLANNED_MAINTENANCE
Assets errors
Occur for errors related to Asset endpoints.
PRODUCT_NOT_ENABLED
DATA_UNAVAILABLE
PRODUCT_NOT_READY
ASSET_REPORT_GENERATION_FAILED
INVALID_PARENT
INSIGHTS_NOT_ENABLED
INSIGHTS_PREVIOUSLY_NOT_ENABLED
Payment errors
Occur for errors related to Payment Initiation endpoints.
PAYMENT_BLOCKED
PAYMENT_CANCELLED
PAYMENT_INSUFFICIENT_FUNDS
PAYMENT_INVALID_RECIPIENT
PAYMENT_INVALID_REFERENCE
PAYMENT_INVALID_SCHEDULE
PAYMENT_REJECTED
PAYMENT_SCHEME_NOT_SUPPORTED
Transactions errors
Occur for errors related to Transactions endpoints.
TRANSACTIONS_SYNC_MUTATION_DURING_PAGINATION
Transfer errors
Occur for errors related to Transfer endpoints.
TRANSFER_LIMIT_EXCEEDED
TRANSFER_INVALID_ORIGINATION_ACCOUNT
TRANSFER_MISSING_ORIGINATION_ACCOUNT
TRANSFER_ACCOUNT_BLOCKED
TRANSFER_NOT_CANCELLABLE
TRANSFER_UNSUPPORTED_ACCOUNT_TYPE
TRANSFER_FORBIDDEN_ACH_CLASS
TRANSFER_UI_UNAUTHORIZED
Income errors
Occur for errors related to Income endpoints.
INCOME_VERIFICATION_DOCUMENT_NOT_FOUND
INCOME_VERIFICATION_FAILED
INCOME_VERIFICATION_NOT_FOUND
INCOME_VERIFICATION_UPLOAD_ERROR
PRODUCT_NOT_ENABLED
PRODUCT_NOT_READY
VERIFICATION_STATUS_PENDING_APPROVAL
EMPLOYMENT_NOT_FOUND
Sandbox errors
Occur when invalid parameters are supplied in the Sandbox environment.
SANDBOX_PRODUCT_NOT_ENABLED
SANDBOX_WEBHOOK_INVALID
SANDBOX_TRANSFER_EVENT_TRANSITION_INVALID
SANDBOX_ACCOUNT_SELECT_V2_NOT_ENABLED
Invalid Request errors
Occur when a request is malformed and cannot be processed.
MISSING_FIELDS
UNKNOWN_FIELDS
INVALID_FIELD
INVALID_CONFIGURATION
INCOMPATIBLE_API_VERSION
INVALID_BODY
INVALID_HEADERS
NOT_FOUND
NO_LONGER_AVAILABLE
SANDBOX_ONLY
INVALID_ACCOUNT_NUMBER
Invalid Input errors
Occur when all fields are provided, but the values provided are incorrect in some way.
ADDITIONAL_CONSENT_REQUIRED
DIRECT_INTEGRATION_NOT_ENABLED
INCORRECT_DEPOSIT_VERIFICATION
INCORRECT_DEPOSIT_AMOUNTS
INVALID_ACCESS_TOKEN
INVALID_ACCOUNT_ID
INVALID_API_KEYS
INVALID_AUDIT_COPY_TOKEN
INVALID_INSTITUTION
INVALID_LINK_CUSTOMIZATION
INVALID_PROCESSOR_TOKEN
INVALID_PRODUCT
INVALID_PRODUCTS
INVALID_PUBLIC_TOKEN
INVALID_LINK_TOKEN
INVALID_STRIPE_ACCOUNT
INVALID_USER_TOKEN
INVALID_WEBHOOK_VERIFICATION_KEY_ID
PRODUCT_UNAVAILABLE
UNAUTHORIZED_ENVIRONMENT
UNAUTHORIZED_ROUTE_ACCESS
USER_PERMISSION_REVOKED
TOO_MANY_VERIFICATION_ATTEMPTS
Invalid Result errors
Occur when a request is valid, but the output would be unusable for any supported flow.
PLAID_DIRECT_ITEM_IMPORT_RETURNED_INVALID_MFA
Rate Limit Exceeded errors
Occur when an excessive number of requests are made in a short period of time.
ACCOUNTS_LIMIT
ACCOUNTS_BALANCE_GET_LIMIT
ADDITION_LIMIT
AUTH_LIMIT
BALANCE_LIMIT
IDENTITY_LIMIT
INSTITUTIONS_GET_LIMIT
INSTITUTIONS_GET_BY_ID_LIMIT
ITEM_GET_LIMIT
RATE_LIMIT
TRANSACTIONS_LIMIT
Link Web errors
Occur when the error is specific to Link on the web platform.
institution-poor-health-error
oauth-error
ReCAPTCHA errors
Occur when a ReCAPTCHA challenge has been presented or failed during the link process.
RECAPTCHA_REQUIRED
RECAPTCHA_BAD
OAuth errors
Occur when there is an error in OAuth authentication.
INCORRECT_OAUTH_NONCE
INCORRECT_LINK_TOKEN
OAUTH_STATE_ID_ALREADY_PROCESSED
OAUTH_STATE_ID_NOT_FOUND
Micro-deposits errors
Occur when there is an error with micro-deposits.
MICRODEPOSITS_UNSUPPORTED_ENVIRONMENT
BANK_TRANSFER_ACCOUNT_BLOCKED
Partner errors
Occur when there is an error with creating or managing end customers.
CUSTOMER_NOT_FOUND
FLOWDOWN_NOT_COMPLETE
QUESTIONNAIRE_NOT_COMPLETE
CUSTOMER_NOT_READY_FOR_ENABLEMENT
CUSTOMER_ALREADY_ENABLED
CUSTOMER_ALREADY_CREATED
LOGO_REQUIRED
INVALID_LOGO
CONTACT_REQUIRED
ASSETS_UNDER_MANAGEMENT_REQUIRED
CUSTOMER_REMOVAL_NOT_ALLOWED

Error schema

We use standard HTTP response codes for success and failure notifications, and our errors are further classified by error_type. In general, 200 HTTP codes correspond to success, 40X codes are for developer- or user-related failures, and 50X codes are for Plaid-related issues. An Item with a non-null error object will only be part of an API response when calling /item/get to view Item status. Otherwise, error fields will be null if no error has occurred; if an error has occurred, an error code will be returned instead.

error_type
string
A broad categorization of the error. Safe for programmatic use.

Possible values: INVALID_REQUEST, INVALID_RESULT, INVALID_INPUT, INSTITUTION_ERROR, RATE_LIMIT_EXCEEDED, API_ERROR, ITEM_ERROR, ASSET_REPORT_ERROR, RECAPTCHA_ERROR, OAUTH_ERROR, PAYMENT_ERROR, BANK_TRANSFER_ERROR, INCOME_VERIFICATION_ERROR, MICRODEPOSITS_ERROR
error_code
string
The particular error code. Safe for programmatic use.
error_message
string
A developer-friendly representation of the error code. This may change over time and is not safe for programmatic use.
display_message
string
A user-friendly representation of the error code. null if the error is not related to user action.
This may change over time and is not safe for programmatic use.
request_id
string
A unique ID identifying the request, to be used for troubleshooting purposes. This field will be omitted in errors provided by webhooks.
causes
array
In the Assets product, a request can pertain to more than one Item. If an error is returned for such a request, causes will return an array of errors containing a breakdown of these errors on the individual Item level, if any can be identified.
causes will only be provided for the error_type ASSET_REPORT_ERROR. causes will also not be populated inside an error nested within a warning object.
status
number
The HTTP status code associated with the error. This will only be returned in the response body when the error information is provided via a webhook.
documentation_url
string
The URL of a Plaid documentation page with more information about the error
suggested_action
string
Suggested steps for resolving the error
Was this helpful?
Developer community
GitHub
GitHub
Stack Overflow
Stack Overflow
YouTube
YouTube
Twitter
Twitter
Discord
Discord