Reference

Preflight checks

Each check exposes a stable code, a severity level (ok · warn · bad), and a human message. PASS when no check is bad.

Good UA · desk Bad t+memo · desk Reviewer path
Code Level when bad Meaning
engine warn Reports whether the WASM address parser loaded; heuristic fallback is less strict
address bad / warn Valid Zcash address; type (unified / sapling / transparent)
network bad Address network matches desk mainnet / testnet setting
amount bad Positive ZEC amount, ≤ 8 decimal places
memo bad Memo allowed on address type; ≤ 512 UTF-8 bytes
privacy warn Transparent receive — amount and linkability are public
uri · uri_roundtrip · uri_amount bad ZIP-321 encode / decode integrity; amount round-trip
parse bad Pasted URI failed to parse under supported subset

Fixture scenarios

Reproducible JSON fixtures in the repo — run with the CLI doctor or load samples on the desk.

Fixture Expected
good-ua.json PASS — unified + memo
good-sapling.json PASS — Sapling address
label-message.json PASS — label + message encoding
bad-transparent-memo.json FAIL — memo on t-addr
bad-network-mismatch.json FAIL — network mismatch
bad-empty-amount.json FAIL — missing amount
bad-huge-memo.json FAIL — memo > 512 bytes

Run checks on desk BTCPay handoff