<!-- tempo-docs-context -->
> Source: [/docs/guide/private-zones](https://tempo.xyz/developers/docs/guide/private-zones.md)
> Section: [Zones](https://tempo.xyz/developers/docs/zones.md). Connect to a Zone and work with private balances, deposits, and withdrawals. Zones is in limited preview; see the introduction for access. Earlier testnet sandbox guides describe a separate integration.
> Earlier testnet sandbox: use [Zones](https://tempo.xyz/developers/docs/zones.md) for the current limited preview.
> [Documentation index](https://tempo.xyz/developers/llms.txt) · [Docs skill](https://tempo.xyz/developers/SKILL.md)

> Tempo MCP: Use `search`, `find_pages`, `read_page`, and `code` at `https://mcp.tempo.xyz` for Tempo and related documentation.
> If an indexed page is missing or reflects an older site, read this site’s [documentation index](https://tempo.xyz/developers/llms.txt) and Markdown pages directly.

<span id="build-with-tempo-zones" />

# Tempo Zones testnet sandbox

Try deposits, transfers, swaps, and withdrawals with test funds on Zone A and Zone B.

:::info
These demos use an earlier Zone deployment with plaintext deposits and direct transfers. The current preview uses encrypted deposits and restricts transfers. Use the named sandbox for these demos; follow [Tempo Zones](https://tempo.xyz/developers/docs/zones) for your integration.
:::

A deposit locks tokens on Tempo and credits a private balance in the Zone. A withdrawal moves funds back to a Tempo address. These operations settle in stages, so the guides show both the transaction being accepted and the balance arriving at its destination.

The public Tempo portal holds backing assets while a Zone operator runs the private account ledger. Deposits, withdrawals, and signed settlement commitments connect the two chains.

<span id="connect-your-application" />

## Connect to the sandbox

Your application uses a public Tempo client alongside a client for the Zone. The Zone client authenticates as your Tempo account so it can access that account’s private data.

To connect, you need the Zone’s RPC endpoint, chain ID, and access details from its operator. Start with [Connect to a Zone](https://tempo.xyz/developers/docs/guide/private-zones/connect-to-a-zone) to set up a client and make an authenticated request. For the underlying design, read the [Tempo Zones overview](https://tempo.xyz/developers/docs/protocol/zones).

<span id="before-you-start" />

## Try the testnet guides

The interactive guides use two example Zones on Tempo Testnet, called Zone A and Zone B. Zone A is the starting point for deposits and withdrawals; Zone B lets you try moving funds between Zones. The examples use the testnet tokens `OUSD` and `betaUSD`.

Each demo walks you through signing in with a passkey, getting testnet funds, and authorizing access to your Zone account. The embedded demos handle the RPC connection for you. If you are writing your own application, use the connection guide first.

<span id="choose-the-right-guide" />

* [Connect to a Zone](https://tempo.xyz/developers/docs/guide/private-zones/connect-to-a-zone) — Set up a Zone client, authorize your account, and make your first RPC request.
* [Deposit to a Zone](https://tempo.xyz/developers/docs/guide/private-zones/deposit-to-a-zone) — Move testnet funds from Tempo into a private balance and wait for the deposit to arrive.
* [Send tokens within a zone](https://tempo.xyz/developers/docs/guide/private-zones/send-tokens-within-a-zone) — Try a private transfer between accounts in the testnet sandbox.
* [Send tokens across zones](https://tempo.xyz/developers/docs/guide/private-zones/send-tokens-across-zones) — Move testnet funds between two Zones through Tempo.
* [Swap stablecoins across zones](https://tempo.xyz/developers/docs/guide/private-zones/swap-across-zones) — Combine a withdrawal, a public-chain swap, and a deposit into another Zone.
* [Withdraw from a Zone](https://tempo.xyz/developers/docs/guide/private-zones/withdraw-from-a-zone) — Withdraw stablecoins from a zone back to your public balance.

<span id="testnet-compatibility" />

## About the testnet sandbox

These demos use an earlier testnet deployment through the legacy Zone A and Zone B interfaces in `viem/tempo`. Its interfaces and chain IDs differ from the current Zone protocol. The sandbox also supports plaintext deposits and direct in-Zone transfers; the current permissioned runtime uses encrypted deposits and does not yet enable those transfers.

Use the guide’s connection details for this sandbox. For another Zone, get the endpoint, access credentials, and supported SDK version from its operator. The [protocol reference](https://tempo.xyz/developers/docs/protocol/zones) describes the current implementation; the [connection guide](https://tempo.xyz/developers/docs/guide/private-zones/connect-to-a-zone) explains direct RPC access and how the demos connect through the docs server.
