Errors Creating MPC Wallets or Generating Receive Addresses — Pricing Plan, Gated Feature, and Configuration Issues

Errors Creating MPC Wallets or Generating Receive Addresses — Pricing Plan, Gated Feature, and Configuration Issues

Problem

Customers encounter errors when attempting to create MPC/TSS wallets or generate receive addresses via the BitGo UI or API. The most common error messages are: "For MPC wallet creation, please contact support@bitgo.com," "A pricing plan is required to create receive addresses on Wallet [ID]. Contact BitGo support for more information," "Cannot create hot wallet for trust enterprise without upfront payment status," and "User must complete identity verification first." These errors affect multiple coins (ETH, SOL, TRX, BSC, Polygon, Celestia/TIA, ADA, and others) on both production and testnet environments, and are typically caused by enterprise-level feature gating, missing pricing plans, unsigned contracts, identity verification issues, or wallet creation limits.

Diagnostics

  • Identify the environment: Confirm whether the customer is on production (https://app.bitgo.com) or testnet (https://app.bitgo-test.com). The wallet ID or enterprise ID will clarify this.
  • Check the enterprise pricing plan: In the internal admin tool (TAT/Bento), look up the enterprise ID and verify the pricing plan status (e.g., "starter," "basic," "waived," "upfront payment"). A starter/basic plan on production typically blocks address generation for EVM coins.
  • Check MPC feature flags: In TAT, check whether the enterprise has MPC-related feature flags enabled (e.g., enableMpcEvmHot). MPC wallet creation is a gated feature that must be explicitly enabled per enterprise.
  • Check coin gating: Some coins (e.g., TIA/Celestia, BSC) are gated and not available to all enterprises. Verify whether the specific coin is ungated for the customer's enterprise.
  • Check identity verification status: In the admin tool, verify the user's identity verification/KYC status. Look for "proof of residency" or similar fields marked as "unverified."
  • Check custodial wallet limits: In TAT, inspect custodialWalletLimit for the relevant coin. If the customer has hit their limit, the wallet creation will fail.
  • Check contract/CSA status: For BitGo Trust enterprises, confirm whether the Customer Service Agreement (CSA) has been signed. Unsigned CSA blocks wallet creation and transactions.
  • Check user permissions: Verify that the API token being used belongs to a user who is an admin on the target wallet/enterprise.
  • Check Gas Tank funding: For EVM chains (ETH, Polygon, AVAXC, BSC), verify whether the enterprise Gas Tank has sufficient funds for wallet/address creation (e.g., minimum 0.12 HTETH for Holesky testnet, 0.03 AVAXC for Avalanche).

Resolution


Scenario: create-mpc-plan-error#mpc-feature-not-enabled

Trigger: Customer receives "For MPC wallet creation, please contact support@bitgo.com" error when creating a wallet via UI or API.

Signals: For MPC wallet creation, MPC wallet creation failed, enableMpcEvmHot, gated feature, status 400, Invalid

Steps:

  1. Obtain the customer's enterprise ID and confirm the environment (production or testnet).
  2. In the internal admin tool (TAT), locate the enterprise.
  3. Enable the MPC feature flag for the enterprise (e.g., enableMpcEvmHot or the relevant coin-specific MPC flag).
  4. Ask the customer to retry wallet creation.
  5. If on production, note that there may be a separate charge to enable MPC — confirm with the customer's CSM or Sales whether a contract/pricing plan update is needed.

Notes: This is the most common cause for this error. MPC creation is gated and must be enabled per enterprise, even on testnet. For testnet, there is typically no cost. For production, a business account/contract may be required.

"MPC creation is a gated feature. We have just enabled this feature for your test enterprise (id: 63a28aae71e87500075efdd2d65edca8) but do note that there might be a separate charge to enable this in production." (ticket #201224)

"I received feedback from our engineering team and was able to enable it to your enterprise, can I trouble you to try again?" (ticket #203029)


Scenario: create-mpc-plan-error#pricing-plan-required-address-generation

Trigger: Customer receives "A pricing plan is required to create receive addresses on Wallet [ID]. Contact BitGo support for more information" (HTTP 403) when generating addresses.

Signals: pricing plan is required, create receive addresses, Forbidden, 403, starter plan, paygo

Steps:

  1. Obtain the enterprise ID and wallet ID from the customer.
  2. In the internal admin tool, check the enterprise's pricing plan status.
  3. If testnet: Set a pricing plan for the test enterprise (there is no cost). Ask the customer to retry.
  4. If production with an active contract: Update the pricing plan/upfront payment status in TAT. Confirm with the customer's CSM that the contract is signed and payments are current.
  5. If production without a contract (starter/basic plan): Inform the customer that EVM address generation (ETH, Polygon, BSC, TRX, etc.) requires a business account. Direct them to sales@bitgo.com or https://www.bitgo.com/connect-with-us to discuss upgrading.
  6. If the customer's enterprise is on the correct plan but the flag is missing: The upfront payment status or pricing plan may not have been set during onboarding — update it in TAT and ask the customer to retry.

Notes: PayGo/starter users were previously able to create receive addresses on ECDSA multi-sig wallets, but this was a bug that has been fixed. PayGo users cannot generate addresses if they require the use of a gas tank. BSC is not supported for the free starter plan.

"Please be informed that, paygo users were able to create receive addresses on ecdsa multi-sig wallets previously, but that was a bug that's been addressed now. Paygo users cannot generate addresses if they require the use of a gas tank." (ticket #271259)

"We have set a pricing plan in test, there is no cost. Please retry your request." (ticket #274836)

"Some actions are locked behind needing a Payment Plan. A payment plan is connected to Institutional Customers who have signed contracts with us. A generic account is usually considered a Retail account and does not have a Payment Plan/Contract." (ticket #253772)


Scenario: create-mpc-plan-error#upfront-payment-trust-enterprise

Trigger: Customer receives "Cannot create hot wallet for trust enterprise without upfront payment status" when creating a wallet on a BitGo Trust enterprise.

Signals: Cannot create hot wallet for trust enterprise without upfront payment status, trust enterprise, CSA contract

Steps:

  1. Confirm the enterprise ID and verify it is a BitGo Trust entity.
  2. Check whether the customer has signed their CSA (Customer Service Agreement) contract. Coordinate with the customer's CSM or Sales rep.
  3. If the contract is signed and payments are current, update the upfront payment status in TAT for the enterprise.
  4. If the contract has not been signed, inform the customer that they must sign the CSA before wallet creation is possible. Check if the contract was sent (potentially to spam) and resend if needed.
  5. Ask the customer to retry after the status is updated.

Notes: This error is specific to BitGo Trust enterprises. The customer cannot create wallets or perform transactions until the CSA is fully executed by both parties.

"It appears that you have not signed his CSA contract. Hence, You cannot create wallets or complete transactions until that is signed by customer and BitGo." (ticket #315378)


Scenario: create-mpc-plan-error#identity-verification-required

Trigger: Customer receives "User must complete identity verification first" (HTTP 403) when creating wallets on testnet or production.

Signals: User must complete identity verification first, Forbidden, 403, proof of residency, unverified

Steps:

  1. Obtain the customer's account email and enterprise ID.
  2. In the admin tool, check the user's identity verification status. Look for fields such as "proof of residency" marked as "unverified."
  3. If this is a testnet account affected by an old bug (new signups should be auto-approved), manually change the verification status to "approved."
  4. If this is a production account, confirm whether the customer needs to complete KYC/identity verification through normal channels.
  5. Ask the customer to retry wallet creation.

Notes: An old bug caused some testnet accounts to have "proof of residency" stuck as unverified. This has been fixed for new signups, but older accounts may still be affected and require manual approval.

"Upon initial check, it looks like the account encountered an old bug that has been fixed since for new signups on testnet (new users will get auto approved). The problem was that the account had 'proof of residency' as unverified. Our backend team has manually changed it to approved." (ticket #236532)


Scenario: create-mpc-plan-error#coin-gated-not-visible

Trigger: Customer cannot see a specific coin (e.g., TIA/Celestia) in the "create wallet" dropdown, or receives an MPC error when attempting to create a wallet for a gated coin.

Signals: coin not visible, gated, TIA, Celestia, ungated, dropdown, create wallet

Steps:

  1. Confirm the coin the customer is trying to create a wallet for and the enterprise ID.
  2. In the admin tool, check whether the coin is gated for the enterprise.
  3. If appropriate (confirm with CSM/internal team if needed), ungate the coin for the enterprise.
  4. Ask the customer to log out and log back in to refresh the UI.
  5. Confirm the coin now appears in the dropdown and wallet creation succeeds.

Notes: Some coins (e.g., TIA) have been gated due to MPC wallet performance issues and may only become available after platform updates. Check with the engineering team for current availability status before ungating.

"We have ungate Celestia (TIA) for your account. Please assist to log-off and login again to make sure change has been reflected." (ticket #237949)

"Please note that TIA is currently gated on put platform due to MPC wallet performance issue. We are targeting to launch an updated MPC implementation by end of May and will provide more update when available." (ticket #245001)


Scenario: create-mpc-plan-error#custodial-wallet-limit-reached

Trigger: Customer receives an error indicating they cannot create more custodial wallets for a specific coin.

Signals: wallet creation limit, custodialWalletLimit, unable to create new wallets, limit reached

Steps:

  1. Obtain the enterprise ID and the coin type.
  2. In the admin tool, check the custodialWalletLimit for the relevant coin.
  3. Increase the limit as appropriate (e.g., from 10 to 50 for BTC).
  4. Ask the customer to retry wallet creation.

Notes: Wallet creation limits are set per coin per enterprise. Confirm with the CSM or internal team that increasing the limit is appropriate for the customer's contract.

"The error was due to the limit to create custodial BTC wallet was reached. We have increased the count from 10 to 50 for BTC wallets and you should now be able to create custodial wallets for BTC." (ticket #265195)


Scenario: create-mpc-plan-error#gas-tank-insufficient-funds

Trigger: Customer receives "insufficient funds in fee address" or "Not Enough Gas" or wallet remains "Pending Initialization" after creation for EVM chains.

Signals: insufficient funds in fee address, Not Enough Gas, Pending Initialization, gas tank, fee address

Steps:

  1. Identify the coin/chain (ETH, AVAXC, Polygon, BSC, HTETH, etc.).
  2. Direct the customer to the Gas Tank page: Wallets & Connections → Network Gas Tank.
  3. Instruct the customer to deposit the minimum required amount into the Gas Tank address (e.g., at least 0.12 HTETH for Holesky testnet, 0.03 AVAXC for Avalanche C-Chain).
  4. Once funded, the wallet should initialize and address generation should work.

Notes: Gas Tank funds are used for transaction fees, wallet creation, and address generation for all wallets of that coin type in the enterprise. This is distinct from the pricing plan issue — both must be satisfied.

"You can find the Gas Tank information here... Click on Deposit to show the Gas Tank address that you need to fund. You need to have at least 0.12 HTETH." (ticket #245934)


Scenario: create-mpc-plan-error#wrong-api-method-or-parameters

Trigger: Customer receives "Unable to find commonKeychain" or "Independent keys are not support for coin" when creating wallets via API.

Signals: Unable to find commonKeychain, Independent keys are not support, Add Wallet API, multisigType, tss, walletVersion

Steps:

  1. Verify which API endpoint the customer is using. The "Add Wallet" API requires manually creating and specifying keys and is for advanced users.
  2. Recommend the customer use the "Generate Wallet" endpoint instead, which is simpler and handles key creation automatically.
  3. For TSS/MPC wallets, ensure the request body includes the correct parameters: "multisigType": "tss", appropriate "walletVersion" (e.g., 3 or 6), "type": "hot", "passphrase", and "enterprise".
  4. Confirm the MPC feature is enabled for the enterprise (see scenario #mpc-feature-not-enabled).
  5. Reference the BitGo developer docs for the specific coin: https://developers.bitgo.com/coins/solana (for SOL), etc.

Notes: SOL, BSC, and other MPC-only coins do not support "independent" key types. The multisigType must be set to "tss" and the wallet must be created via the Generate Wallet flow.

"The body parameter for an endpoint generate POST includes: body = { "label": "tsol03", "type": "hot", "multisigType": "tss", "passphrase": "InsertPassWord", "enterprise": "InsertEntId" }; This will create a self custody hot wallet for TSOL." (ticket #266808)

"Our logs showed you are using the Add Wallet API to create the wallets. The Add Wallet API is for advanced API users as you need to manually create and specify keys for the wallet. The recommended (and simpler) method is Generate Wallet." (ticket #198591)


Scenario: create-mpc-plan-error#testnet-coin-not-supported

Trigger: Customer attempts to create a wallet for a coin that is not supported in the testnet environment (e.g., BTG, certain BSC tokens).

Signals: testnet, not supported, Something unexpected happened, BTG, coin type not available in test

Steps:

  1. Confirm which coin the customer is trying to use and that they are on the testnet environment.
  2. Check the list of supported testnet coins. Inform the customer if the coin is not available in test.
  3. If the customer needs to test with a specific chain, advise on available testnet alternatives (e.g., tbsc with busd token for BSC testing).
  4. For production testing, recommend using the testnet environment (https://app.bitgo-test.com) rather than creating separate production accounts, unless real transactions are specifically required.

Notes: Not all coins available in production are supported in the testnet environment. BTG, for example, is not supported on testnet. BSC testnet currently only supports BUSD token.

"Please note that BTG is not a supported coin type in our Test Environment." (ticket #208264)

"For bsc, we currently only support busd in our test environment." (ticket #201224)


Scenario: create-mpc-plan-error#engineering-bug-or-platform-issue

Trigger: Customer encounters a 500 error, "no fee address for enterprise," or an issue that is reproducible by support agents and not explained by configuration.

Signals: 500, no fee address for enterprise, reproducible, engineering, JIRA, platform bug, internal error

Steps:

  1. Attempt to reproduce the issue (spoof the user or use the same parameters in the test environment).
  2. If reproducible, escalate to the Engineering team via the internal Slack channel (e.g., #support-escalations or the relevant product channel).
  3. Create a JIRA ticket or reference the existing Slack thread.
  4. Inform the customer that the issue has been referred to Engineering and that you will follow up once a fix is deployed.
  5. After Engineering confirms a fix, ask the customer to retry and confirm resolution.

Notes: Examples include the "no fee address for enterprise" error for tbaseeth, the "invalid response HMAC" error for LTC address generation, and the "not a wallet address" error for ADA/SUI. These are platform bugs requiring Engineering intervention.

"We have fixed this issue and you should be able to create a TBASEETH wallet now. Please try again and let us know if you are still unable to." (ticket #250897)

"v2.wallet.newaddress 500 error: wd service returned error status 511: 'invalid response HMAC, possible man-in-the-middle-attack'" (ticket #221338)

Related