> ## Documentation Index
> Fetch the complete documentation index at: https://staging-docs.crosspoint.finance/llms.txt
> Use this file to discover all available pages before exploring further.

# Sandbox

> Build and test your integration with test money before you go live

The sandbox is a separate copy of Crosspoint for building and testing. Payments use test cards, nothing is charged, and nothing you do there touches your live store.

| | Live | Sandbox |
| - | - | - |
| Dashboard | [app.crosspoint.finance](https://app.crosspoint.finance) | [sandbox.crosspoint.finance](https://sandbox.crosspoint.finance/start) |
| API | `https://api.crosspoint.finance` | `https://sandbox-api.crosspoint.finance` |
| Money | Real | Test only |

Accounts, stores, products, customers and access tokens are separate in each. A token from your live store doesn't work in the sandbox, and the other way round.

## Get started

1. In your Crosspoint dashboard, click **Sandbox** at the bottom of the sidebar. The sandbox opens in a new tab, already signed in with your Crosspoint account: there's no separate sign-up. You can also choose **I'm just exploring → Launch sandbox** when you first sign up.
2. Create a sandbox store. It's ready to sell straight away: no identity check, no review.
3. Create a product and an access token under **Settings**, the same way as on your live store.

## Test payments

Pay at checkout with Stripe's [test cards](https://docs.stripe.com/testing#cards). For a successful payment, use:

```
4242 4242 4242 4242
```

with any future expiry date and any CVC. To place an order without a card, create a discount code worth 100% and enter it at checkout.

## Use the SDKs

Set `CROSSPOINT_ENVIRONMENT=sandbox` next to your sandbox access token, and the SDKs talk to the sandbox. Every example in these docs then works unchanged.

```bash .env theme={null}
CROSSPOINT_ACCESS_TOKEN=cxp_oat_...   # created in the sandbox
CROSSPOINT_ENVIRONMENT=sandbox
```

Or choose it in code:

```ts TypeScript theme={null}
import { createCrosspoint } from "@crossdev/sdk";

const crosspoint = createCrosspoint({ environment: "sandbox" });
```

```python Python theme={null}
from crosspoint import Crosspoint

crosspoint = Crosspoint(server="sandbox")
```

Calling the API directly? Use `https://sandbox-api.crosspoint.finance` as the base URL.

When you're ready to go live, create a store and an access token on [app.crosspoint.finance](https://app.crosspoint.finance), then set `CROSSPOINT_ENVIRONMENT=production` (or remove it).

## Embedded checkout

The [embed script](https://staging-docs.crosspoint.finance/features/checkout/embed.md) opens sandbox checkout links too: use a checkout link from your sandbox store. Add your website under **Settings → Preferences → Embedding** in the sandbox, the same as on your live store.

## How the sandbox differs

* **Identity.** There's no ID check: on **Finance → Account**, "Verify your identity" lets you mark yourself verified in one click.
* **Payouts.** You can add any payout account, including a stablecoin wallet, without verifying your identity or asking for access. Splits are open too. A withdrawal is marked as paid straight away, and no money is sent.
* **Emails to customers** (order confirmations, receipts) only go to members of your store, so test orders don't email strangers. Add teammates under **Settings → Members**. Addresses like `you+test@example.com` work.
* **Split recipients.** [Recipients](https://staging-docs.crosspoint.finance/africa/splits.md) are approved as soon as you add them, so you can try splits end to end. No money is sent to them.
* **Limits.** Payout limits don't apply.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.