# Testnet

> Test integrations with test API keys and test networks.

Canonical: https://stafiel.org/documentation/developer-integration/testnet
Version: v1.0.0

Testnet uses the same public API endpoints and request formats as live
integrations. Only the mode-specific parameters change.

Keep the endpoint path and request body shape the same as the corresponding API
reference.

## Request Parameters

Field
Required
Default
Description

X-API-Key
Yes
None
Use a test API key, for example mk_test_your_api_key.

X-App-Client
Yes
None
Use merchant-client-testnet.

Content-Type
Required for JSON requests
None
Use application/json when sending a JSON request body.

merchant-client-testnet tells Stafiel that the request belongs to testnet. It
must be used with mk_test_ keys. A test key with merchant-client, or a live
key with merchant-client-testnet, is rejected with 401 AUTH_FAILED.

## Data Isolation

Testnet and live data are separate. Keep testnet activity isolated from live
customer payments, accounting, reconciliation, webhook handling, and operational
records in your own system.

Do not treat a successful testnet payment as a real customer payment.

## Chain Labels

Testnet chain names use explicit labels:

Chain Label
Testnet
Chain ID

eth-sepolia
Ethereum Sepolia
11155111

base-sepolia
Base Sepolia
84532

bsc-testnet
BNB Smart Chain Testnet
97

polygon-amoy
Polygon Amoy
80002

solana-devnet
Solana Devnet
103

tron-nile
Tron Nile
3448148188

Use the chain and token options shown in your Merchant Dashboard as the source of
truth for what your account can create.

## Webhooks

Use separate webhook configuration for testnet. Treat testnet event IDs,
signing secrets, and delivery logs as separate from live deliveries.

## Go-Live Checklist

Before going live, replace:

- Merchant ID: use your live merchant ID in API requests.

- API key: use a live API key with the mk_live_ prefix.

- X-App-Client: change merchant-client-testnet to merchant-client.

- Chain labels: switch from testnet labels to mainnet chain labels.

- Webhook configuration: use the live webhook endpoint and signing secret.
