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

bash
npm install -g @wasit-dev/cli

Identical 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

bash
mkdir wasit-testnet && cd wasit-testnet
touch .env
chmod 600 .env

Windows (PowerShell)

powershell
New-Item -ItemType Directory wasit-testnet
Set-Location wasit-testnet
New-Item -ItemType File .env

Note — .env holds Stellar secret keys. On macOS and Linux, chmod 600 makes 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.

text

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:

text
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:

bash
wasit wallet fund --role mpp-charge --asset usdc

An 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

bash
wasit wallet status

Prints each configured role's address and balances, or tells you which variable is still unset.

Run a settling check

bash
wasit mpp-charge --target https://your-service.example/data

Note — 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.