The following sections will step through funding the master wallet with USDC, EURC, BTC and ETH.

# Funding USDC Balance

There are two main ways of funding your wallets for testing. The first one is to use the Circle Payments API to accept a payment - the settlement of such payment will then fund your master wallet. The second one is to receive an external USDC transfer - we suggest using a faucet if you don't have any USDC for testing.

## Option 1: Fund your wallet by accepting a payment

If you are also using the [Circle Payments API](🔗) then the easiest way to fund a wallet for testing is to [accept a test card payment](🔗).

### 1. Accept a test card payment

Follow the [payments quickstart guide](🔗) to accept a card payment.

### 2. Wait 5-10 minutes for settlement

On the [sandbox environment](🔗) it takes 5-10 minutes for a payment to settle. You can check on the status of your payment by using the [retrieve payment endpoint](🔗). Run the following command for that.



You will notice that the payment has settled once its `status` changes from `confirmed` to `paid`.

### 3. Confirm your master wallet Balance

Once the processed payment settles in the sandbox environment, it will credit your [master wallet](🔗). You can confirm your master wallet balance by using the [balances endpoint](🔗) in the following way.



You should receive a response like below, and at this point you will be able to use your funds for Wallets API testing.



## Option 2: Fund your wallet with an external USDC transfer

If you are not using the [Circle Payments API](🔗) then the easiest way to fund a wallet for testing is to receive USDC from an external blockchain wallet, such as a faucet.

### 1. Generate a blockchain address for your master wallet

In order to receive funds from an external blockchain wallet, first you need to create a deposit address associated to your [master wallet](🔗). Use the [configuration endpoint](🔗) to obtain your master wallet id.

You can do so with the following command (you should generate your own [idempotency key](🔗)).



The response depends on the `chain` you've chosen, but will look similar to the following:



### 2. Send USDC funds from an external wallet

The [sandbox environment](🔗) is connected to the [testing networks](🔗) of the blockchains where [USDC is supported](🔗). So you can send USDC from any of the supported blockchain test network wallets in order to fund your Circle hosted wallet. For information see our guide on [USDC on testing networks](🔗).

For testing with Ethereum or Algorand, if you have USDC on an external Sepolia or Algorand TestNet wallet, simply send some amount to the address you generated above. If you don't have any USDC for testing, you can get some by using a [**USDC faucet**](🔗). Go to [faucet.circle.com](🔗) and make sure you choose either **ETH** or **ALGO**. Paste the address you generated above (be very careful to not miss any characters) and hit Submit. You will be able to monitor the transfer on the blockchain by using the Etherscan/AlgoExplorer link provided by the faucet.

Lost Funds

**Do NOT** send real USDC to addresses generated in the sandbox environment as your funds might be permanently lost.

### 3. Confirm your master wallet balance

After the required [confirmations](🔗) (a few minutes in the case of Ethereum, a few seconds in the case of most other chains), your transfer should settle on the sandbox environment and the amount sent should be credited to your wallet. You can confirm your master wallet balance by using the [balances endpoint](🔗) in the following way.



You should receive a response like below, and at this point you will be able to use your funds for Wallets API testing.



# Funding EURC balance

At the moment, to fund your wallets for testing EURC you need to receive an external EURC transfer.

## Fund your wallet with an external EURC transfer

At this time, there isn't a faucet that mints EURC. To acquire EURC on a Testnet you will need to go to a decentralized exchange (DEX) on the applicable TestNet and swap a token for EURC.

### 1. Generate a blockchain address for your master wallet

In order to receive funds from an external blockchain wallet, first you need to create a deposit address associated to your [master wallet](🔗). Use the [configuration endpoint](🔗) to obtain your master wallet id.

You can do so with the following command (you should generate your own [idempotency key](🔗)).



The response depends on the `chain` you've chosen, but will look similar to the following:



### 2. Send EURC funds from an external wallet

The [sandbox environment](🔗) is connected to the [testing networks](🔗) of the blockchains where [EURC is supported](🔗). So you can send EURC from any of the supported blockchain test network wallets in order to fund your Circle hosted wallet.

Lost Funds

**Do NOT** send real EURC to addresses generated in the sandbox environment as your funds might be permanently lost.

### 3. Confirm your master wallet balance

After the required [confirmations](🔗) (a few minutes in the case of Ethereum, a few seconds in the case of most other chains), your transfer should settle on the sandbox environment and the amount sent should be credited to your wallet. You can confirm your master wallet balance by using the [balances endpoint](🔗) in the following way.



You should receive a response like below, and at this point you will be able to use your funds for Wallets API testing.



# Funding BTC and ETH Balances

To fund BTC and ETH balances in Sandbox, you can similarly use a [Bitcoin testnet faucet](🔗) or an [Ethereum Sepolia faucet](🔗).