> ## Documentation Index
> Fetch the complete documentation index at: https://apidocs.bridge.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# Sandbox integration

# **Overview**

Bridge wallets are fully supported in sandbox, allowing you to test wallet creation, deposits, and balance queries without moving real funds.

<Warning>
  Send all sandbox requests to `https://api.sandbox.bridge.xyz`
</Warning>

# **Integration**

## **Create a wallet**

Create a Bridge wallet for a customer using the standard wallet creation endpoint:

```bash theme={null}
curl --request POST \
     --url https://api.sandbox.bridge.xyz/v0/customers/{customerId}/wallets \
     --header 'Api-Key: <API Key>' \
     --header 'Idempotency-Key: <Unique Idempotency Key>' \
     --header 'Content-Type: application/json' \
     --data '{
       "chain": "solana"
     }'
```

```json Response theme={null}
{
  "id": "uuid",
  "chain": "solana",
  "address": "the-blockchain-address",
  "created_at": "2024-09-01T02:03:04.567Z",
  "updated_at": "2024-09-01T02:03:04.567Z"
}
```

Sandbox creates a wallet with a fake address and bypasses external wallet provider calls.

## **Simulate a deposit**

In production, you fund a wallet using [Transfers](/platform/orchestration/transfers/transfer), [Liquidation Addresses](/platform/orchestration/liquidation_address/liquidation_address), or [Virtual Accounts](/platform/orchestration/virtual_accounts/virtual-account).

In sandbox, you can simulate a deposit directly to a wallet:

```bash theme={null}
curl -X POST 'https://api.sandbox.bridge.xyz/v0/customers/<CustomerId>/wallets/<WalletId>/simulate_deposit' \
 --header 'Content-Type: application/json' \
 --header 'Api-Key: <ApiKey>' \
 --header 'Idempotency-Key: <IdempotencyKey>' \
 -d '{
   "amount": "100.0",
   "currency": "usdc"
 }'
```

This simulates the full deposit flow, including:

* Creating a token deposit event
* Processing through the hot wallet pipeline
* Updating the wallet balance
* Transitioning the deposit to a terminal state

## **Query a wallet balance**

Check the balance of a wallet after simulating a deposit:

```bash theme={null}
curl --request GET \
     --url https://api.sandbox.bridge.xyz/v0/customers/{customerId}/wallets/{walletId} \
     --header 'Api-Key: <API Key>'
```

```json Response theme={null}
{
  "id": "uuid",
  "chain": "solana",
  "address": "the-blockchain-address",
  "created_at": "2024-09-01T02:03:04.567Z",
  "updated_at": "2024-09-01T02:03:04.567Z",
  "balances": [
    {
      "balance": "100.00",
      "currency": "usdc",
      "chain": "solana",
      "contract_address": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"
    }
  ]
}
```

## **Other supported endpoints**

All standard Bridge wallet endpoints work in sandbox:

* `GET /v0/customers/{customerId}/wallets` - List all wallets for a customer
* `GET /v0/wallets` - List all wallets
* `GET /v0/wallets/total_balances` - Get aggregate balance across all wallets
* `GET /v0/customers/{customerId}/wallets/{walletId}/history` - Get transaction history

See [Move money to and from wallets](/platform/wallets/move-money) for full endpoint documentation.
