GuidesUsing Testnet

Using Testnet

XRPL Request supports the XRP Ledger Testnet, letting you build and test signing flows without using real funds. The signing page clearly labels Testnet requests so users know nothing of real value is involved.

Testnet and Mainnet are selected per API key. A single project can have both — one key for development, one for production.

Getting started

Create a Testnet API key

In the dashboard, open your project and scroll to API Keys. Select Testnet in the network selector, then click Create New Key and give it a name like Development.

Testnet keys use the prefix xrplr_test_ so they’re easy to distinguish from Mainnet keys (xrplr_live_).

Get a Testnet wallet and funds

You need a wallet funded with Testnet XRP. Use the official faucet:

Most supported wallets have a Testnet mode. Check your wallet’s settings to switch networks before signing.

Use your Testnet key in development

const client = new XRPLRequest({
  apiKey: process.env.XRPL_REQUEST_TEST_KEY, // xrplr_test_...
});
 
const payload = await client.payloads.create({
  type: "signAndSubmit",
  transaction: {
    TransactionType: "Payment",
    Destination: "rTestDestination...",
    Amount: "1000000", // 1 XRP (test funds)
  },
});
 
// The signing page will show a Testnet warning badge automatically
console.log(payload.signingUrl);
console.log(payload.network); // "testnet"

Sign in your Testnet wallet

Open the signing URL. You’ll see a yellow Testnet banner confirming no real funds are involved. Connect your Testnet wallet and approve.

Verify on the Testnet explorer

After signing, check the transaction on the Testnet explorer:

https://testnet.xrpl.org/transactions/{txHash}

Switching to Mainnet

When you’re ready to go live, swap your environment variable to your Mainnet key (xrplr_live_...). No other code changes are needed — the network is resolved from the key automatically.

# .env.development
XRPL_REQUEST_API_KEY=xrplr_test_...
 
# .env.production
XRPL_REQUEST_API_KEY=xrplr_live_...

Wallet Testnet compatibility

Not all wallets support switching to Testnet. Check the table below before testing:

WalletTestnet support
Xyra✅ Select network in settings
Xaman✅ Select network in settings
Crossmark✅ Dev mode supports Testnet
GEM Wallet✅ Network switcher in extension
WalletConnect⚠️ Depends on the connected wallet
Ledger⚠️ Requires manual network config
Otsu❓ Check extension settings
⚠️

If a wallet is set to Mainnet but the payload is for Testnet (or vice versa), the wallet may show an error or sign against the wrong network. Always ensure your wallet’s network matches the key you’re using.


FAQ

Can I use the same project for Mainnet and Testnet?

Yes. Create one key per network within the same project. Keep them in separate environment variables and never mix them.

Do Testnet payloads count toward my monthly quota?

Yes — Testnet payloads count the same as Mainnet payloads toward your plan’s monthly limit.

Can I change a key’s network after creation?

No. Network is fixed at key creation. Create a new key if you need a different network.

Will webhook deliveries work on Testnet?

Yes. Webhooks fire for all payload events regardless of network. The webhook body includes a network field so you can distinguish them in your handler.