Legacy / V1 Wallet Migration, Upgrade, and Fund Movement
Legacy / V1 Wallet Migration, Upgrade, and Fund Movement
Problem
Customers with older (V1 or "legacy") BitGo wallets contact support because their wallets appear missing after a UI migration, they cannot withdraw from V1 wallets displayed in the new UI, the wallet upgrade link no longer works, or they need to move funds out of an old wallet but lack the wallet password. This cluster spans PayGo and self-managed accounts and primarily affects BTC wallets, though XRP and other coins appear in enterprise wallet-migration requests. Customers may also request that BitGo move funds on their behalf or migrate a wallet from one enterprise to another.
Diagnostics
- Confirm wallet version: Determine whether the wallet is V1 (legacy) or V2. V1 wallets may appear under a separate enterprise profile in the new UI.
- Check enterprise profile: In the BitGo app, click the dropdown arrow under the BitGo symbol to see if multiple enterprises exist. V1 wallets may be listed under the enterprise matching the customer's email address.
- Portfolio sync status: If balances or Deposit/Withdrawal buttons are missing on V1 wallets, engineering may need to re-run a portfolio sync. Check with the engineering team for sync completion status.
- Wallet creator vs. invited user: Ask whether the customer created the wallet or was invited to it. This determines whether the wallet password or the login password is needed to spend. Only the wallet creator uses the wallet password; invited users authenticate with their login password.
- Wallet password availability: Ask whether the customer has the wallet password or the wallet keycard. If neither is available and the customer created the wallet, recovery options are limited.
- Enterprise migration requests: For wallet-to-enterprise migration, confirm the source Wallet ID and destination Enterprise ID. Verify that the request comes from an authorized/verified user on the enterprise.
- Browser and cache: If the customer reports missing UI elements (buttons, balances), ask them to clear browser cache and update Google Chrome to the latest version.
Resolution
Scenario: old-upgrade-migration-wallet#v1-wallets-not-visible-after-ui-migration
Trigger: Customer's V1 wallets are not visible after BitGo migrated PayGo accounts to the new UI platform.
Signals: legacy wallet, V1 wallet, PayGo, wallets missing, new UI, enterprise profile, migration, not appearing
Steps:
- Inform the customer that BitGo engineering upgraded PayGo accounts to a new UI platform and created new enterprise profiles for each PayGo user. V2 wallets were migrated first; V1 wallets followed on a separate timeline.
- Ask the customer to log in and click the dropdown arrow under the BitGo symbol. Multiple enterprises should appear; V1 wallets are typically listed under the enterprise matching the customer's email address.
- Instruct the customer to navigate to that enterprise, then click "Wallet & Connection" to locate V1 wallets.
- If wallets still do not appear, escalate to the engineering team requesting a portfolio sync for the customer's account.
- After engineering confirms the sync is complete, ask the customer to clear all browser cache, update Google Chrome to the latest version, and log in again.
- If the Deposit/Withdrawal buttons or balance strings are missing on the wallet overview page, note that this is a known UI issue (reference JIRA BG-72042). Escalate to engineering if the buttons are still absent after sync completion.
- Remind the customer that for V1 wallets, they must use the withdrawal button within the wallet overview page — the global withdrawal widget (top-right corner of the BitGo app) does not list V1 wallets.
Notes: Funds remain safe even when wallets are not visible in the new UI — it is a display/sync issue only. The global withdrawal form on the top-right corner does not support V1 wallets.
"Please note our engineering team has recently made some changes and upgraded our UI to new platform and also they have upgraded the to all our Paygo accounts. Since they have moved all our PayGo users to new UI every PayGo user is having a new enterprise profile as well." (ticket #72879)
"Please note for V1 wallets you need to click on the withdrawal button within the wallet overview page. If you will use the global withdrawal wallet which appers on the top right corner on the BitGo app then the V1 wallets will not appear in the withdrawal form." (ticket #72879)
"Could you please clear all your browser cache once and update the google chrome to the latest version and then try again?" (ticket #72879)
Scenario: old-upgrade-migration-wallet#upgrade-link-no-longer-available
Trigger: Customer clicks the wallet upgrade link and is forwarded to a page they cannot access, or asks BitGo to upgrade their old wallet to a newer version.
Signals: upgrade, wallet upgrade, old wallet, upgrade link, no access, v2, migration, update wallet
Steps:
- Inform the customer that BitGo is no longer offering wallet upgrades via the legacy upgrade link, and V1-to-V2 migrations are no longer being completed by BitGo.
- Instruct the customer to create a new BTC wallet in the BitGo UI. This new wallet will automatically be a V2 wallet.
- Have the customer send funds from the old (V1) wallet to the new (V2) wallet.
- Once funds are received in the new wallet, the upgrade is effectively complete. The customer can then send funds from the new wallet to any destination.
Notes: This applies to self-service PayGo users. Enterprise/custody clients should coordinate with their CSM if they need assistance.
"We are no longer offering wallet upgrades via this link. With that said, you can still perform the same basic action yourself in the UI. You will need to create a new BTC wallet. This will create a wallet of the new type needed. Once this has been completed, you will want to send funds from your old wallet to this new wallet." (ticket #16811)
"Unfortunately, we are no longer completing migrations to v2. We would suggest that you create a new BTC wallet on our UI, which should be a v2 wallet, and move your funds there." (ticket #22498)
Scenario: old-upgrade-migration-wallet#cannot-spend-old-wallet-no-password
Trigger: Customer cannot withdraw from an old wallet because the wallet password is unknown (e.g., previous employee set it), and they were not merely invited to the wallet.
Signals: wallet password, lost password, old wallet, cannot withdraw, keycard, previous CEO, departed, brute force, recovery service
Steps:
- Clarify whether the customer created the wallet or was invited to it.
- If the customer was invited (did not create the wallet), instruct them to try their login password to authorize the withdrawal. Only the wallet creator uses the wallet password to spend.
- If the customer created the wallet (or inherited the creator role) and has lost the wallet password: a. BitGo cannot reset the wallet password or regenerate the wallet keycard. b. Ask whether the team has the wallet keycard or knows if the wallet was created via the API. c. If no password or keycard is available, inform the customer about the Wallet Recovery Service that BitGo works with. This service attempts to brute-force the wallet password. The cost is 20% of the recovered amount, and success is not guaranteed. Not all coins may be supported (e.g., XRP recovery support is uncertain). d. If the customer wishes to proceed, collect: the wallet ID, wallet address, current balance, and desired recovery destination address.
- BitGo cannot send funds to an address on the customer's behalf, and cannot reveal or provide a lost wallet password.
Notes: The site is not optimized for mobile use; encourage customers to use a desktop or laptop computer. For compromised-password scenarios (where the password is known but may be leaked), advise creating a new wallet and transferring funds immediately.
"We are unable to send funds to an address on your behalf. We are unable to reveal or provide you with the lost wallet password. Our site is not optimized for mobile use and encourage all users to make use of a desktop or laptop computer." (ticket #215136)
"There is a chance the Wallet Recovery Service we work with may be able to assist, but there is no guarantee for success or that they support XRP recoveries. Their process would be to attempt to Brute Force the password to the wallet. Their cost is 20% of the recovered amount." (ticket #316647)
"For these old wallets, am I correct that you were invited to these wallets and did not create these wallets? If so, then you should be able to authenticate your withdrawals from them to the new wallet using your login password. Only the creator of a wallet makes use of the wallet password to spend." (ticket #316647)
Scenario: old-upgrade-migration-wallet#enterprise-wallet-migration
Trigger: An internal or customer request to migrate a wallet from one enterprise to another (e.g., moving a staking wallet to a different trust entity).
Signals: wallet migration, enterprise, destination enterprise ID, wallet ID, addwallet, staking, video verification, Calendly
Steps:
- Obtain the Wallet ID to be migrated and the Destination Enterprise ID from the requester.
- Request that a verified person on the source enterprise schedule a video verification session using the Calendly link: https://calendly.com/bitgo-client-delivery/videoid. They should reference the case number when scheduling and bring a government-issued photo ID.
- Confirm who the verified users are on the enterprise.
- Once identity is verified, an authorized BitGo engineer runs the migration command:
bga ent addwallet <wallet_id> --staking true(if it is a staking wallet)- The tool checks for pending approvals and pending transactions before proceeding.
- Confirm successful migration to the customer, including the destination enterprise name.
Notes: This is an internal operations process. Support agents should coordinate with the Client Delivery team. The --staking true flag is used for staking wallets specifically.
"We will need to meet with a verified person on the enterprise to verify the request. Please schedule a video verification session using the link below and reference ticket #Case 00367510 when scheduling: https://calendly.com/bitgo-client-delivery/videoid. Please be sure to bring with you your government issued photo ID." (ticket #234362)
"bga ent addwallet [WALLET_ID] --staking true... Checking pending approvals for wallet... Checking pending transactions for wallet... No pending approvals or transactions — proceeding with migration... Staking wallet successfully updated with enterprise [WALLET_ID]" (ticket #323884)
Scenario: old-upgrade-migration-wallet#new-wallet-for-compromised-password
Trigger: Customer wants to create a new wallet and migrate assets because their current wallet password may be compromised.
Signals: compromised password, new wallet, migrate assets, security concern
Steps:
- Advise the customer to create a new wallet in the BitGo UI with a new, strong wallet password.
- Transfer all funds from the old wallet to the new wallet immediately.
- Note that BitGo does not provide support over phone or video conferences for general support queries. All detailed questions should be communicated via email.
- Direct the customer to the Resource Center accessible via their profile icon in the BitGo app for further self-service guidance.
Notes: If the customer requests a phone call, inform them that BitGo does not provide support over the phone or video conferences for this type of request. Email-based support is the standard channel.
"Please note that BitGo does not provide support over the phone or video conferences. Please kindly share every detailed question you have with us via email and we will revert back to you with all possible solutions to your questions." (ticket #207375)
Scenario: old-upgrade-migration-wallet#wallet-address-count-confusion
Trigger: Customer sees a limited number of addresses in the BitGo portal but finds higher-numbered receive addresses when searching individual addresses.
Signals: wallet addresses, receive address, change address, address count, address list, not public-facing
Steps:
- Explain that the address list displayed in the BitGo portal shows only the receive addresses (public-facing).
- Higher-numbered addresses visible when searching (e.g., "Receive Address 2223") include change addresses that are not public-facing receive addresses.
- If the customer needs a full list of receive addresses, provide the count from the wallet record (use the admin tool to look up the wallet ID and confirm the receive address count).
Notes: This is not a migration issue per se but commonly appears among users with older wallets that have accumulated many change addresses over time.
"Wallet id : [WALLET_ID] has 76 receive addresses. The others you see are change or not public-facing receive addresses." (ticket #238831)
Related
- migrated-legacy-wallet-recoveries — Covers recovery of Bitcoin Cash and Bitcoin SV from migrated legacy wallets after blockchain hardforks.
- bitcoin-special-call-outs — Best practices for BTC hot wallet management, fee calculation, and transaction handling relevant to old wallet users moving funds.
- roles-and-permissions — Understanding which users can spend from enterprise wallets (relevant to scenarios where invited users vs. wallet creators need different credentials).