Start here
Use the staging faucet to seed test wallets safely
The public staging faucet mints fixed-amount PayChainHQ test assets on Base Sepolia and Solana devnet so your team can rehearse invoice, settlement, and withdrawal flows without sourcing tokens manually.
What the faucet is for
Treat the faucet as test-inventory provisioning, not as a payment rail.
- Use it to seed wallets before testing invoice creation, hosted invoice pages, webhook handling, settlement confirmation, and withdrawal flows.
- Use sandbox assets only. The faucet does not mint live/mainnet value and should not appear in operator runbooks for production treasury activity.
- Expect fixed dispense amounts rather than arbitrary mint sizes so abuse controls and test instructions stay predictable.
Current staging asset matrix
The public faucet page only lists assets after they are manually onboarded into PayChain staging and the matching signer is configured.
| Asset | Network | Decimals | Fixed dispense |
|---|---|---|---|
| `PCUSD` | `base-sepolia` | `6` | `1000` |
| `PCX` | `base-sepolia` | `18` | `25` |
| `PCUSD` | `sol-devnet` | `6` | `1000` |
| `PCX` | `sol-devnet` | `9` | `25` |
Operational rules
The public page is intentionally narrow so test traffic stays manageable.
Wallet cooldown
Each `recipientAddress + symbol + networkId` combination is limited to one successful claim every 12 hours.
IP rate limit
The public route allows up to 5 requests per hour per IP, including failed requests.
Chain-aware validation
Base Sepolia claims require valid EVM addresses. Solana devnet claims require valid base58 Solana addresses.
Signer-gated availability
An asset does not appear unless the token is active in staging and the matching platform signer is configured for that network.
How production-site linking works
The production website can expose the faucet safely as long as it routes faucet traffic to sandbox.
Production website, sandbox backend
The public `/faucet` page can be linked from the production docs and developers pages, but the requests must resolve against `NEXT_PUBLIC_SANDBOX_API_BASE_URL`, not the live API base.
Keep the copy explicit
Every production-site reference to the faucet should call it a staging or sandbox utility so operators do not mistake it for a live treasury feature.