# Crypto onramp error codes Learn about crypto onramp error codes. Some [crypto onramp API](https://docs.stripe.com/api/crypto/.md) errors include a `code` attribute to help you handle errors programmatically in your integration. Find the error codes and messages below. | Code | Description | Error messages | | --- | --- | --- | | `crypto_onramp_amount_above_maximum` | The purchase amount exceeds the maximum allowed limit. | {currency_symbol}{amount_limit} | | `crypto_onramp_amount_below_minimum` | The purchase amount is below the minimum allowed limit. | {currency_symbol}{amount_limit} | | `crypto_onramp_bank_institution_block` | The selected bank institution is not eligible for crypto onramp ACH transactions. Try a different bank or payment method. | This bank account isn’t supported. Try to pay using a different account or using your debit card. | | `crypto_onramp_conflicting_destination_currency` | `transaction_details.destination_currency` is not in the `supported_destination_currencies` list. | `transaction_details.supported_destination_currencies` doesn’t contain `transaction_details.destination_currency`. Only use a supported destination currency for the suggested destination currency. | | `crypto_onramp_conflicting_destination_network` | `transaction_details.destination_network` is not in the `supported_destination_networks` list. | `transaction_details.supported_destination_networks` doesn’t contain `transaction_details.destination_network`. Only use a supported destination network for the suggested destination network. | | `crypto_onramp_conflicting_source_total_amount_parameters` | `source_total_amount`, `source_amount`, and `destination_amount` are mutually exclusive; only one can be set. | The `source_total_amount`, `source_amount`, and `destination_amount` parameters are mutually exclusive. Only set one of these when creating an onramp session. | | `crypto_onramp_consumer_wallet_doesnt_exist` | The wallet address doesn’t exist for the current user. | The wallet address doesn’t exist for the current user. | | `crypto_onramp_currency_not_available_in_region` | The selected currency is not available in the customer’s region. | The selected currency isn’t available in your region. | | `crypto_onramp_destination_tags_not_supported` | The networks in `destination_tags` do not support destination tags. | The networks provided in `destination_tags` aren’t valid tag-based networks. | | `crypto_onramp_disabled` | We temporarily disabled the onramp endpoint. | We temporarily disabled the `v1/crypto/onramp_sessions` endpoint and will contact you with outage details. | | `crypto_onramp_headless_invalid_amount` | The amount is not valid for headless mode. | The amount provided isn’t valid for headless mode. Input a positive amount up to 2 decimal places. | | `crypto_onramp_headless_unsupported_currency_or_network` | The currency or network is not supported in headless mode. | The currency or network provided isn’t supported for headless mode. | | `crypto_onramp_identity_verification_failed` | Identity verification could not be completed. | We couldn’t verify your identity. Contact support for assistance. | | `crypto_onramp_incomplete_destination_currency_and_network_pair` | Both `transaction_details.destination_currency` and `transaction_details.destination_network` must be specified together. | You must specify both `transaction_details.destination_currency` and `transaction_details.destination_network` if you specify either one. | | `crypto_onramp_invalid_amount` | The purchase amount is invalid. | The {direction} purchase amount is {currency_symbol}{amount_limit} | | `crypto_onramp_invalid_currency_pair` | The source and destination currency pair is not supported. | This currency pair is invalid. | | `crypto_onramp_invalid_destination_currency_and_network_pair` | The `transaction_details.destination_currency` and `transaction_details.destination_network` pair is not supported. | The `transaction_details.destination_currency` and `transaction_details.destination_network` pair isn’t supported. | | `crypto_onramp_invalid_destination_exchange_amount` | `transaction_details.destination_exchange_amount` must be a positive number. | Value for `destination_exchange_amount` is not a positive amount. Input a positive amount. | | `crypto_onramp_invalid_merchant_configuration` | The merchant account is not properly configured for crypto onramp. Check the returned error message for more context, or contact your Stripe account executive or solutions architect for assistance. | - Allowlisted domains must be formatted as a valid domain name. Only use lowercase letters, numbers, dots, and hyphens. - Business name not found. Fill in public business name in Settings. - Terms of Service hasn’t been accepted. Accept terms of service before submitting application. - High risk countries and regions attestation hasn’t been accepted. Accept the attestation before submitting application. - We couldn’t secure your device for the current domain. Make sure that you’re on the correct domain to mitigate phishing attacks. | | `crypto_onramp_invalid_parameter` | One or more of the provided parameters is invalid, missing, or conflicts with other parameters. Check our [API reference](https://docs.stripe.com/api/crypto.md) or the returned error message to see which values were not correct. | - {currency} is an invalid currency value for {param}. Select a supported currency. - {network} is an invalid network value for {param}. Select a supported network. - `transaction_details.wallet_address` is set, but `transaction_details.destination_networks` isn’t set. Set destination networks if you’re setting a wallet address. - Use the proper quotes route for your onramp version. Use `/v1/crypto/onramp/quotes` for an integration with no beta header, or beta v1. Use `/v1/crypto/onramp_quotes` for beta v2. - The wallet address specified is not compatible with the selected network. - The parameter {param} provided to onramp advance is not valid for an onramp in state {state}. - Request made on a user who doesn’t have an EU-based address. - Invalid country code: {country_code}. - Non-EU country code: {country_code}. - The wallet address cannot be changed when locked. | | `crypto_onramp_invalid_payment_method` | The payment method could not be used for this crypto onramp transaction. Try a different payment method or check the returned error message for more context. | - We’re unable to verify your bank account. Try a different one. - We’re unable to verify you own this card. Try again with a different card. - Your card doesn’t support crypto purchases. Try again with a different card or pay using a bank account. - We’re unable to verify your funds. Try again in a few days. - You’ve exceeded the number of payment methods on your Link account. Remove a few to transact. - This payment method isn’t saved to your Link account. Add it before transacting. | | `crypto_onramp_invalid_source_currency` | The provided source currency is not supported. | The source currency isn’t currently supported. Only usd is currently supported. | | `crypto_onramp_invalid_source_destination_pair` | `source_exchange_amount` and `destination_exchange_amount` are mutually exclusive; only one can be set. | `transaction_details.source_exchange_amount` and `transaction_details.destination_exchange_amount` are mutually exclusive. Only set one of these when creating an onramp session. | | `crypto_onramp_invalid_source_exchange_amount` | `source_exchange_amount` must be a valid positive fiat amount with up to two decimal places. | Value for `source_exchange_amount` is not a valid fiat amount. Input a positive amount up to 2 decimal places. | | `crypto_onramp_invalid_supported_destination_currencies_and_networks` | None of the provided destination currency and network pairs are supported. | None of the `transaction_details.destination_currency` and `transaction_details.destination_network` pairs supported. | | `crypto_onramp_invalid_wallet_address_parameters` | `transaction_details.wallet_address` and `transaction_details.wallet_addresses` cannot both be set. | `transaction_details.wallet_address` and `transaction_details.wallet_addresses` cannot both be set. | | `crypto_onramp_limit_exceeded` | The request could not be completed because a limit has been exceeded. | - Your purchase limit has been reached. Try a smaller amount. - You’ve reached your purchase limit. Try again in a few hours. | | `crypto_onramp_merchant_not_properly_setup` | The merchant account is missing required `business_name` or `business_url` fields. | An onramp session can’t be created for the requesting merchant. Integrating merchants are required to have `business_name` and `business_url` fields populated. | | `crypto_onramp_missing_destination_currency` | `transaction_details.destination_exchange_amount` is set but `transaction_details.destination_currency` is not. | `transaction_details.destination_exchange_amount` is set, but `transaction_details.destination_currency` isn’t. Set a destination currency if you’re setting a destination exchange amount. | | `crypto_onramp_missing_document_verification` | Document verification is required to complete this action. | Document verification is required to {action}. | | `crypto_onramp_missing_identity_verification` | Identity verification is required to complete this action. | Identity verification is required to {action}. | | `crypto_onramp_missing_minimum_identity_verification` | The minimum required identity verification level has not been completed. | Minimum identity verification is required for this transaction. | | `crypto_onramp_missing_source_currency` | `transaction_details.source_exchange_amount` is set but `transaction_details.source_currency` is not. | `transaction_details.source_exchange_amount` is set, but `transaction_details.source_currency` isn’t. Set a source currency if you’re setting a source exchange amount. | | `crypto_onramp_missing_source_total_amount_parameters` | `source_total_amount` is set but required parameters (`source_currency`, `destination_currency`, `destination_network`, or `preferred_payment_method`) are missing. | `source_total_amount` is set, but some of the `source_currency`, `destination_currency`, `destination_network`, or `preferred_payment_method` parameters aren’t set. Set all of these parameters if you’re setting a source total amount. | | `crypto_onramp_no_wallet_address_to_lock` | `transaction_details.lock_wallet_address` is `true` but no wallet address was provided. | `transaction_details.lock_wallet_address` is set to `true`, but no wallet address was provided in `transaction_details.wallet_address` | | `crypto_onramp_quote_expired` | The crypto onramp quote is no longer valid. Fetch a new quote and retry the operation. | The exchange rate has moved significantly since your quote was locked. Fetch a new quote. | | `crypto_onramp_quote_invalid_destination_currencies_and_networks` | None of the provided destination currency and network pairs are valid for the quote. | None of the `destination_currencies` and `destination_networks` pairs are supported. | | `crypto_onramp_quote_too_many_destination_currencies_and_networks` | Multiple entries in `destination_currencies` or `destination_networks` when `destination_exchange_amount` is set; each must have exactly one entry. | There are multiple valid entries in `destination_currencies` or `destination_networks` when `destination_exchange_amount` is specified. Make sure you’re passing in a single entry for both `destination_currencies` and `destination_networks` when `destination_exchange_amount` is specified. | | `crypto_onramp_service_error` | An error occurred while processing your crypto onramp request. Try again or contact support if the issue persists. | - We’re unable to continue with your purchase. - An unrecoverable server error was encountered. - The service timed out processing your request. Try again. - An error occurred with your crypto purchase session. Try creating a new session or contact support if the issue persists. | | `crypto_onramp_session_error` | An error occurred with the purchase session. | An error occurred with your crypto purchase session. Try creating a new session or contact support if the issue persists. | | `crypto_onramp_skip_quote_screen_not_allowed` | `skip_quote_screen` is `true` but required default quote parameters (`source_currency`, `destination_currency`, `destination_network`, and an amount) are missing. | `skip_quote_screen` is `true`, but a default quote isn’t provided. Set a `default source_currency`, `destination_currency`, `destination_network`, and either a `source_amount` or `destination_amount` if you’re skipping the quote screen. | | `crypto_onramp_transaction_blocked` | The transaction was blocked and could not be processed. | - We’re unable to complete this request because the consumer account is closed. - We’re unable to complete this request because the customer’s account is disabled. - This transaction has been blocked. | | `crypto_onramp_unsupportable_customer` | The customer cannot be supported based on the information they provided. | We’re unable to support this customer based on the information they provided. | | `crypto_onramp_unsupported` | The requested operation is not supported. Check the returned error message for more context. | - We’re unable to support transactions in {state}. - This service isn’t available in your current region. - This payment method isn’t supported. - Cannot purchase {currency} as a {location} resident. - We’re unable to support transactions in {country}. - The provided nationality is not supported. - {id_type} is not a supported ID type. | | `crypto_onramp_unsupported_country` | Transactions are not supported in the customer’s country. | We’re unable to support transactions in this country. | | `crypto_onramp_unsupported_region` | The provided region is not a supported region. | The region provided isn’t a supported region. Pass in a valid ISO 3166-2 country-subdivision code that we support. | | `crypto_onramp_verification_error` | The request could not be completed due to a verification issue. Check the returned error message for more context. | - We need additional identity verification for you to purchase this amount. - Consumer account {consumer_account} has incomplete KYC data. - Basic KYC information must be submitted before this endpoint can be used. - Consumer person verification is still processing. Try again shortly. - Address couldn’t be verified. - WebAuthn verification failed. Try again later or use a different method. - We couldn’t verify your address. Update your address and try again. - Identity verification is required to {action}. - Document verification is required to {action}. - We couldn’t verify your identity. Contact support for assistance. | | `crypto_onramp_wallet_address_invalid` | The wallet address is not valid for the specified network. | The wallet address provided isn’t a valid address for the {network} network. | | `crypto_onramp_wallet_addresses_not_all_networks_supported` | Not all networks in `transaction_details.wallet_addresses` are included in `transaction_details.supported_destination_networks`. | Not all networks provided in `transaction_details.wallet_addresses` are included in `transaction_details.supported_destination_networks`. Only specify a wallet for a network if the network is a supported destination network. |