Overview

BitGo requires you to pre-fund a fiat reserve to cover potential unauthorized return claims (fraud) from your end users. The reserve account uses the Go Account in your parent enterprise in the organization - not the child enterprises of your end users.

Your reserve account must meet the following requirements:

  • Minimum balance: $25,000 if no deposit history.
  • Standard balance: 25% of the highest 2-day deposit volume in the previous month.
  • You must replenish the balance within 5 business days of dropping below the minimum balance.

Supported Payment Rails

Jurisdiction Currency Payment Rails
United States USD ACH debit, domestic and international wire transfers, Go Network
Europe EUR SEPA Instant, SEPA, BLINC transfers, Go Network
Singapore USD, SGD FAST, International Wire

Prerequisites

  • Get Started
  • Create Go Accounts
  • Contact your BitGo Customer Success Manager (CSM) to designate an enterprise in your organization to be your parent enterprise.

Cookbooks

Need just the steps? Expand a cookbook below to get started:

Set Up Fiat Reserve - Bank TransferOpen Cookbook Set Up Fiat Reserve - Go Network TransferOpen Cookbook

Fund Reserve Account

Deposit at least $25,000 into the Go Account of your parent enterprise using either a bank transfer or a Go Network transfer from another Go Account you control.

Bank Transfer

1. Get Deposit Info

Get deposit information for BitGo bank accounts. Available deposit mehtods vary by Go Account jurisdiction. EU residents have access to a Virtual International Bank Account Number (vIBAN).

Endpoint: Get deposit info

export CURRENCY="<FIAT_CURRENCY_ASSET_ID>"
export GO_ACCOUNT_ID="<GO_ACCOUNT_WALLET_ID>"
export ACCESS_TOKEN="<SERVICE_USER_ACCESS_TOKEN>"

curl -X GET \
  https://app.bitgo-test.com/api/v2/bankaccounts/deposit/info?currency=$CURRENCY&goAccountId=$GO_ACCOUNT_ID \
  -H 'Content-Type: application/json' \
  -H "Authorization: Bearer $ACCESS_TOKEN"

Step Result

Save the memoId if "virtualDepositOnly": false. BitGo uses this ID to link deposits to Go Accounts. If "virtualDepositOnly": true, then you have access to a vIBAN and a memoId isn't required.

{
  "bankAccounts": [
    {
      "accountNumber": "123456789",
      "accountType": "checking",
      "address": "Ste 1400, Phoenix, AZ 85004, United States of America",
      "address1": "Ste 1400, Phoenix, AZ 85004, United States of America",
      "bankAddressCityLocality": "Phoenix",
      "bankAddressCountryCode": "US",
      "bankAddressLine1": "Ste 1400",
      "bankAddressPostalCode": "85004",
      "bankAddressStateProvince": "AZ",
      "createdAt": "2026-07-22T19:39:01.484372Z",
      "currency": "tfiatusd",
      "enterpriseId": "68cc07a26b0eb871423ef15781d99121",
      "fee": {
        "amount": "1000",
        "individualFees": [{ "amount": "1000", "type": "static" }]
      },
      "feeInfo": {
        "amount": "1000",
        "bank": "customers_cubix_api",
        "coin": "tfiatusd",
        "type": "static"
      },
      "id": "b23bbce8-dad1-41dd-ac71-4fd9bcd0a58b",
      "idHash": "1d6fd97db569ff2b",
      "name": "WESTERN ALLIANCE BANK",
      "owner": {
        "name": "BitGo Bank & Trust",
        "address1": "2443 Ash Street, Suite 200, Palo Alto, CA 94306, United States of America"
      },
      "ownerAddress": "2443 Ash Street, Suite 200, Palo Alto, CA 94306, United States of America",
      "ownerAddressCityLocality": "Palo Alto",
      "ownerAddressCountryCode": "US",
      "ownerAddressLine1": "2443 Ash Street",
      "ownerAddressLine2": "Suite 200",
      "ownerAddressPostalCode": "94306",
      "ownerAddressStateProvince": "CA",
      "ownerName": "BitGo Bank & Trust",
      "routingNumber": "122105980",
      "shortCountryCode": "US",
      "token": "ofctusd",
      "trustOrg": "BitGo Trust",
      "type": "wire",
      "verificationState": "approved",
      "virtualDepositOnly": false
    }
  ],
  "memoId": "NKNKASPXVH"
}

2. Deposit Fiat Currency

Initiate the transfer from your bank app or API. Review the documentation provided by your bank or contact them to learn more.

Important

Ensure your deposit includes the memo ID returned in the previous step.

Step Result

The balance of fiat currency in your Go Account updates with the deposited amount. The deposited balance is immediately available for trades.

Next

If your ACH deposit volume grows, your fiat reserve must grow with it. Each month:

  1. Review your ACH deposit transaction history for the prior month.
  2. Identify the peak 2-day volume (the 48-hour window with the highest total USD inflow). For example, if you processed $1M in deposits over a Monday and Tuesday, then $1M is your peak 2-day volume.
  3. Calculate 25% of the peak amount. Using the prior example, that's $250,000.
  4. If 25% of your peak 2-day volume exceeds your current reserve balance, deposit the difference to bring the reserve up to the required level.

If the balance of your reserve account dips due to fraud or unauthorized returns, you must replenish it to the required level within 5 business days.

Warning

If your deposit volume increases but you don't maintain the reserve account to meet the 25% requirement, BitGo may suspend ACH access until you restore the reserve balance.

You can verify successful deposits by calling the Get Account Balance endpoint.

See Also