Quick setup
For the checks that settle a payment — X402-06/07, MPP-01, and the
channel suite. If you only need the read-only checks, Try it in one
command is the whole story and you can stop there.
Three steps: install the CLI, generate testnet keys, fund them.
Install the CLI
npm install -g @wasit-dev/cliIdentical on every platform. Packages covers running it without a global install, and the other two packages.
Create a working directory
The CLI reads a .env file from the directory you run it in, so give it
one of its own rather than scattering keys through your projects.
macOS / Linux
mkdir wasit-testnet && cd wasit-testnet
touch .env
chmod 600 .envWindows (PowerShell)
New-Item -ItemType Directory wasit-testnet
Set-Location wasit-testnet
New-Item -ItemType File .envNote —
.envholds Stellar secret keys. On macOS and Linux,chmod 600makes it readable only by you; Windows files are already restricted to your user profile by default. Never commit it.
Generate and fund a key
wasit wallet does both. It is testnet-only and has no --network
flag, so there is nothing here that can be pointed at mainnet by mistake.
That prints a new keypair, funds it with 10,000 testnet XLM through
Friendbot, and shows the exact .env lines to paste. Repeat with
--role x402 or --role mpp-channel for the other suites.
Note — the secret is printed to your terminal. Do not run this on a screen you are recording, and never paste a mainnet key into these variables.
Paste what it printed into .env:
MPP_PAYER_SECRET=S...
MPP_PAYER_PUBLIC=G...Adding USDC
MPP-01 pays in USDC, so that key needs a USDC balance as well as XLM:
wasit wallet fund --role mpp-charge --asset usdcAn x402 target charges in whatever asset its challenge advertises, which
is usually USDC too; fund that key the same way with --role x402.
This opens the Circle testnet USDC trustline automatically. Receiving an
actual balance needs one manual step, because no scriptable testnet USDC
faucet exists for Stellar: paste the printed public key into
faucet.circle.com, or set
WASIT_USDC_DISTRIBUTOR_SECRET to an account you already funded that
way and every later run sends from it automatically.
Check what you have
wasit wallet statusPrints each configured role's address and balances, or tells you which variable is still unset.
Run a settling check
wasit mpp-charge --target https://your-service.example/dataNote — this one is not idempotent and has no read-only mode. Every run settles a real testnet payment and moves funds.
From here: the CLI Guide has every subcommand and flag, Configuration every environment value, and the Check Catalogue each check's pass criteria and spec citation.