Card Exceptions

Wallet Order Creation Exceptions are thrown at the time of order creation because of an issue with the request. Exceptions follow the API error format:

{
    "language": "en",
    "exceptionId": "TLFN89",
    "errorCode": "validation.unsupportedCardType.credit",
    "message": "Credit cards are not supported",
    "type": "ValidationException",
    "transient": false
}

A list of errors can be found below:

TypeError CodeMessageNotes
ValidationExceptionvalidation.unsupportedCardType.creditCredit cards are not supported
ValidationExceptionvalidation.unsupportedCardType.prepaidPrePaid cards are not supported
ValidationExceptionvalidation.avsWe are not able to use this card.General card validation failure, further details on why the card doesn’t work are unavailable.
ValidationExceptionvalidation.avs.invalidBillingAddressInvalid billing address
ValidationExceptionvalidation.avs.incorrectBillingAddressInvalid billing address. Your address is incorrect
ValidationExceptionvalidation.avs.zipcodeInvalid billing address. Zip code is incorrect
ValidationExceptionvalidation.avs.unavailableInvalid billing address. We were not able to validate your address. Try again later.If our address validation service is unavailable the user will have to try the transaction later
ValidationExceptionvalidation.invalidReferrerIdInvalid referrerAccountId
ValidationExceptionvalidation.phoneNumRequiresCountryCodePlease include your country code preceded by a "+" with your phone number
ValidationExceptionvalidation.unsupportedCountryCountry not supported: “XX”XX is country code submitted by user
ValidationExceptionvalidation.invalidUsStateInvalid US state submitted
ValidationExceptionvalidation.missingAddressStateAddress state must not be empty
ValidationExceptionvalidation.missingGivenNamegivenName must not be empty
ValidationExceptionvalidation.missingFamilyNamefamilyName must not be empty
ValidationExceptionlimits.dailyLimitReachedYou reached your daily limit.
ValidationExceptionlimits.weeklyLimitReachedYou reached your weekly limit.
ValidationExceptionlimits.yearlyLimitReachedYou reached your yearly limit
ValidationExceptionvalidation .invalidPhoneNumberYou did not specify a valid E164 Phone number.
Phone numbers must follow the International E.164 format.
ValidationExceptionvalidation.missingAddressCityCity is mandatory
ValidationExceptionvalidation.stateNotSupportedIf you specify a non supported US state. More info here.
ApiExceptionn/an/aIf there is an unhandled error by the API it will appear as an ApiException without an error code or message
ValidationExceptionhostedCheckout.illegalReferrerinvalid referrer account id for hosted checkout referrer
ValidationExceptionhostedCheckout.featureNotEnabledfeature not enabled for this account id
ValidationExceptionreservation.requiredFieldValueMismatcha reservation locked field value did not match the received value
ValidationExceptionreservation.requiredFieldEmptya reservation required field is empty (required values cannot be empty)
ValidationExceptionreservation.lockEmptyFielda reservation locked field is empty (locked fields cannot be empty and must match)
ValidationExceptionreservation.invalidLockedFieldlocked field is invalid
ValidationExceptionvalidation.sourceCurrencyNotSupportedthe specified sourceCurrency is not supported
ValidationExceptionvalidation.missingGivenNamegivenName is not present
ValidationExceptionvalidation.missingFamilyNamefamilyName is not present
ValidationExceptionvalidation.missingAddressStreet1missing street1 on address field
ValidationExceptionvalidation.missingAddressStatemissing state on address field
ValidationExceptionvalidation.missingAddressCitymissing city on address field
ValidationExceptionvalidation.missingAddressStatemissing state on address field
ValidationExceptionvalidation.amountSourceCurrencyif amount or source currency are locked, you must lock both (amount and sourceCurrency)
ValidationExceptionvalidation.invalidPaymentMethodinvalid payment method provided (apple-pay or debit-card are the accepted values)
ValidationExceptionvalidation.invalidRedirectUrlredirectUrl is not valid (must be a full http url with protocol)
ValidationExceptionvalidation.invalidFailureRedirectUrlfailureRedirectUrl is not valid (must be a full http url with protocol)
ValidationExceptionvalidation.referrerAccountIdinvalid referrer account id for hosted checkout referrer
ValidationExceptionvalidation.lockCountryinvalid locked country (if any of phone or country are locked, you must lock both)
ValidationExceptionvalidation.countryMissingmissing locked field country
ValidationExceptionvalidation.invalidPhoneNumberinvalid phone number (phones must be in e.164 format with country code)
ValidationExceptionvalidation.invalidEmailinvalid email
ValidationExceptiondebitCardWhiteLabel.illegalReferrerillegal referrer
ValidationExceptiondebitCardWhiteLabel.featureNotEnabledfeature to debit card not enabled for the current authentication
ValidationExceptionvalidation.invalidCodeinvalid authorization code
ValidationExceptionvalidation.invalidReservationinvalid reservation
ValidationExceptionvalidation.invalidCodeLengthinvalid authorization code length
ValidationExceptionvalidation.orderNotFoundorder not found
ValidationExceptionvalidation.invalidOrderStatusinvalid order status. Order cannot be authorized at the moment.
ValidationExceptionvalidation.authorizationCodeNotFoundAuthorization codes not found
ValidationExceptionvalidation.authorizationInvalidReservationinvalid reservation id while authorizing the order
ValidationExceptionvalidation.authorizationMaxAttemptsmax attempts to authorize an order
ValidationExceptionvalidation.authorizationAlreadyValidatedauthorization code already validated for the current order
ValidationExceptionvalidation.authorizationInvalidStateinvalid authorization state
ValidationExceptionvalidation.authorizationCodeExpiredauthorization expired
ValidationExceptionvalidation.authorizationCodeMismatchauthorization code mismatch
ValidationExceptionvalidation.orderAuthorizationDetailsNotAvailableauth details not available. This usually happens
ValidationExceptionvalidation.cardExpirationYearcard expiration year invalid
ValidationExceptionvalidation.cardExpirationMonthcard expiration month invalid
ValidationExceptionvalidation.cardExpirationMonthOutOfRangecard expiration month must be from 01-12 range.
ValidationExceptionvalidation.invalidExpirationDateinvalid expiration date, usually in the past
ValidationExceptionvalidation.invalidDebitCardNumberinvalid debit card number
ValidationExceptionvalidation.walletOrderAuthorizationCodeMissingauthorization request without a auth code on it

Wallet Order Errors

Error messages are failures that happen after the order has been created. These errors will show up over 3 fields on the wallet order:

errorCategory
errorCode
errorMessage

A full list of errors can be found below:

errorCategoryerrorCodeerrorMessageNotes
GENERALUNSUPPORTED_COUNTRYWe do not support this country.
GENERALUNSUPPORTED_STATEWe do not support this state at this time but hope to soon.
GENERALUNABLE_TO_PROCESSSorry, but we are unable to process your order at this time.
GENERALSMS_CONFIRMATION_FAILEDSMS confirmation failedFor debit card tx only
GENERALPHONE_NUMBER_MUST_BE_MOBILEOnly mobile cellphone numbers are supported.
GENERALTRANSACTION_TIMEOUTTransaction timed out, please try again.
GENERALUNKNOWN_ERRORWe are unable to process your order at this time.
PAYMENTISO_8583_XXSee ISO 8583 error message list ->XX replaced by ISO 8583 code. See full list here: https://developers.google.com/standard-payments/v1/fops/card/response-codes
PAYMENTBILLING_ADDRESS_MISMATCHBilling address error, please check your info and try again.
PAYMENTTHREE_D_SECURE_AUTHENTICATION_FAILED3DS authentication failed.
PAYMENTUNKNOWN_ERRORIssue with payment, please check your info and try again
RATE_LIMITEXCEEDED_DAILY_LIMITTransaction limit exceeded, please try again later.
RATE_LIMITEXCEEDED_WEEKLY_LIMITTransaction limit exceeded, please try again later.
RATE_LIMITEXCEEDED_YEARLY_LIMITTransaction limit exceeded, please try again later.
RATE_LIMITORDER_AMOUNT_TOO_HIGHTransaction amount too high, please try a smaller amount.

Unified Error Codes

In order to achieve unified error codes across multiple payment providers we introduced two new fields in the Wallet Order object: paymentNetworkErrorCode and internalErrorCode.

🚧

Deprecation Notice

The field errorCode is deprecated now and will be removed in future releases. Please, adjust your code to use internalErrorCode instead from the time being.

The new internalErrorCode field values are defined in the next table

internalErrorCodeDescriptionWho throws?
UNKNOWN_ERRORUncategorized or unexpected errorWyre
EXCEEDED_DAILY_LIMITExceeded daily purchase limitWyre
EXCEEDED_WEEKLY_LIMITExceeded weekly purchase limitWyre
EXCEEDED_YEARLY_LIMITExceeded yearly purchase limitWyre
ORDER_AMOUNT_TOO_HIGHPayment processor. Card spend limit exceeded.Bank
CARD_ISSUER_ERRORSpecific card issuer (bank) errorBank
CARD_RESTRICTIONSCard issuer or law restrictionsBank
INVALID_IDENTITY_FOUNDNo valid identity foundWyre
NO_IDENTITY_FOUNDNo identity foundWyre
CUSTOMER_NOT_ELIGIBLECustomer not eligible for the orderPayment processor
DOB_ERRORError with user's date of birthWyre
DO_NOT_HONORDo not honorBank
EXPIRED_CARDCard expiration date is invalidBank
GENERAL_BANK_ERRORGeneral bank errorBank
HIGH_RISK_SCOREHigh risk, fraud suspiciousFraud protection
INSUFFICIENT_FUNDSYour card does not have enough funds for the transaction.Bank
INTERNAL_ERRORWyre's internal error code.Wyre
INVALID_BILLING_ADDRESSInvalid billing address for the cardBank
INVALID_CARD_AUTHENTICATIONInvalid card authentication code (CVV)Bank
INVALID_CARD_NUMBERInvalid card numberBank
INVALID_CARD_TOKENInvalid cardBank
INVALID_PAYMENT_INFORMATIONInvalid card payment information (billing address, phone...)Bank
INVALID_TRANSACTIONInvalid transactionBank
LIMIT_RESTRICTIONSCard limit restrictionsBank
LOCATION_NOT_SUPPORTEDGeo location (country or state) not supported by Wyre or card not allowed to be used in that location.Wyre and Bank
LOST_STOLEN_CARDCard reported as lost or stolenBank
NO_PHONE_FOUNDNo phone found for userWyre and Bank
NO_SMS_CONFIRMATIONNo SMS confirmationWyre
ORDER_ALREADY_BEEN_PAIDOrder was already been paidWyre
ORDER_EXPIREDOrder has expiredWyre
ORDER_LOOKS_BADFraud protectionFraud protection
PAYMENT_SCORE_ABUSEFraud protectionFraud protection
PROCESSING_TIMEOUTOrder processing timeoutWyre
SECURITY_VIOLATIONFraud protectionFraud protection
SSN_ERRORInvalid SSNFraud protection
SUSPECTED_FRAUDFraud protectionFraud protection
TRANSACTION_NOT_PERMITTED_BY_BANKTransaction not permitted by the issuer bankBank
TRANSACTION_REJECTED_BY_BANKTransaction rejected by the issuer bankBank