Changelog
Product updates, new endpoints, and improvements to the BitGo platform.
-
Custody Starter Architecture
The Developer Portal now includes a use-case guide called Custody Starter Architecture that walks you through the most common custody integration, designed for clients operating within a single enterprise. This new section is a complete end-to-end guide that you can use to set up the most popular custody configuration.
How It Works
Custody starter architecture utilizes three wallets for each coin, each with varying degrees of security and balance sizes. This pattern helps your enterprise maximize security while maintaining operational flexibility.
The new guide walks you through creating these three wallets with distinct roles:
- A custody wallet that provides cold storage for the majority of your assets, guarded by strict policies.
- A self-custody hot wallet that serves as a standby wallet, with moderate policies.
- Another self-custody hot wallet with the lowest balance. This wallet handles all deposits and withdrawals for day-to-day transactions, with minimal policy restrictions.
Integration Guides
Get started with:
-
Margin Trading
BitGo adds support for Margin Trading for users with Go Accounts. You can programmatically transfer assets from your Go Account to your Collateral Account and start trading with assets in your Margin Account. BitGo offers a one-click close feature, which allows you to close all your open positions with one API call.
For complete details on the new integration flow, see Margin Trading Overview
See Also
-
Trade Permission
BitGo adds a new
tradeenum value to thepermissionparameter that you can use to grant users trading privileges for a Go Account (wallet"type": "trading").The new
tradepermission enables greater customization and control over what your enterprise users can do within your wallets. Users with thetradepermission can initiate trades, but cannot initiate withdrawals from the Go Account or any other wallet.Breaking Change
With this update, the
spendpermission no longer grants trading privileges. To grant users trading privileges, you must update your integration to include the newtradepermission.Any user with the
spendpermission prior to this update retains their ability to initiate trades.Change Log
For a comprehensive list of all SDK changes, view the BitGoJS Change Log in GitHub.
See Also
-
Bitcoin Testnet4
BitGo is migrating from the Bitcoin testnet3 to testnet4. The new Bitcoin testnet provides easier access to testnet bitcoin and lower transaction fees.
Breaking Changes
BitGo is deprecating support for Bitcoin testnet3 by end of year, 2024. Ensure streamlined support in your testing environment by updating your testnet integrations to use testnet4. To migrate, create
tbtc4wallets and update all instances in your code oftbtctotbtc4.See Also
-
MPC Withdrawals
BitGo streamlines the advanced integration flow for withdrawing from MPC hot wallets, removing the need for you to manually send half-signed transactions to BitGo. In addition, you now collect approvals before signing MPC transactions. Once a transaction is half-signed, it's automatically sent to BitGo for final signing and broadcasting to the blockchain.
For complete details on the new integration flow, see Withdraw from Wallet - Self-Custody MPC Hot (Advanced)
See Also
-
Wallets Renaming
With this update BitGo renames the following wallet types:
- self-managed to self-custody
- custodial to custody
This name change better reflects current industry standards for wallet types.
-
MPCv2
MPCv2 - MPC Wallets for ECDSA Assets
BitGo expands support for multi-party computation (MPC) wallets for ECDSA assets, such as Ethereum, Polygon, and Cosmos SDK assets. MPC wallets enable you to bundle transactions and sign with only 1 on-chain signature, saving you money on fees, compared to multisignature wallets.
This update builds upon existing MPC functionality currently available for EdDSA assets. When creating keys for MPC wallets, there are now 2 different integration flows, depending if the asset is ECDSA or EdDSA. Transaction signing also slightly differs between the 2 elliptic curves.
To distinguish between the two elliptic curves in the code, BitGo now uses
MPCv1for EdDSA wallets andMPCv2for ECDSA wallets. This update doesn't change the MPC version for any of your existing MPC wallets. You can determine which version of MPC a wallet uses by calling the Get Wallet by Coin and ID endpoint and checking the value of themultisigTypeVersionresponse field.For simplicity, BitGo now refers to TSS wallets as MPC wallets in both the web app and the developer documentation. BitGo's implementation of MPC is still TSS. However, the MPC name better reflects current industry standards.
The MPCv2 feature is currently available only in test environment. When the feature is available in production, BitGo will send an email notification and display an announcement in the web app.
To use MPCv2, ensure you're running the latest version of Express or the JavaScript SDK, depending on your integration. For details on how to update, see Install BitGo Express and Update SDK.
Note: MPCv2 enables multiple receive addresses with automatic consolidations to the root address. This functionality requires you to Fund Gas Tanks with a sufficient balance to cover gas fees. Funding gas tanks is now a required step in the Get Started. To use MPCv2 without issues, ensure that your gas tanks are funded.
Change Log
For a comprehensive list of all SDK changes, view the BitGoJS Change Log in GitHub.
Integration Guide
To learn more, see the following topics:
- Concept: Multisignature vs MPC
- Create MPC Keys
- Create Wallets
- Fund Gas Tanks
- Install BitGo Express
- Update SDK
- Withdraw from Wallet - Custody MPC
- Withdraw from Wallet - Self-Custody MPC Hot (Advanced)
- Withdraw from Wallet - Self-Custody MPC Hot (Simple)
See Also
-
Policy Builder
The Policy Builder enables you to enhance security for your digital-assets and streamline your enterprise operations. With the Policy Builder, you can create policy rules that govern how specific actions must occur, and you can even automate resolutions. For example, you can create policy rules to automatically approve or reject certain types of transactions, or require approvals from specific users.
The Policy Builder enables you to:
- Ensure your policies are standardized across your wallets.
- Easily create or update policies, no matter how many wallets you have.
- Have clear audit trails of your policies (who did what when).
Integration Guide
To learn more, see the Policy Builder integration guide.
API Reference
View the REST API endpoints in the Policy Builder API reference.
-
Crypto-as-a-Service
Crypto-as-a-Service is a new offering that provides a suite of services to enable you to build and scale your blockchain applications. With Crypto-as-a-Service, you can leverage BitGo's industry-leading security, compliance, and infrastructure to build your applications faster and more securely. You control the user experience of your app, while BitGo handles the underlying blockchain, monetary, and compliance infrastructure.
Crypto-as-a-Service includes the following:
- Custody
- Fiat on ramps and off ramps
- Onboarding
- Transactions
- User management
Integration Guide
To learn more, see the Crypto-as-a-Service integration guide.
API Reference
View the REST API endpoints for Crypto-as-a-Service in the API Reference:
Breaking Changes
BitGo also deprecates the Portfolio API. Instead, use the Allocate API. Allocations are part of the Go Network. For more information, see the integration guides Go Network Overview and Allocate Overview.
-
JavaScript SDK
Bug Fixes
Version 38.0.0 of the SDK removes a validation when creating addresses.
Breaking Changes
The JavaScript SDK upgrades the
bitgopackage to version 38.0.0, deprecating support for Node.js 16. BitGo now requires Node.js 18, or higher. However, BitGo recommends using Node 20 LTS.Change Log
For a comprehensive list of all changes, view the BitGoJS Change Log in GitHub.
See Also