How it works

  1. Order created. The server derives a fresh shielded address for this order from the merchant's viewing key, then builds a ZIP 321 payment request (address, amount, memo) shown as a QR code.
  2. Client pays. Any shielded wallet (e.g. Zodl) scans the QR and sends — sender, receiver, amount and memo are encrypted on-chain. Or they pay USDC on Base: NEAR Intents gives a one-time deposit address and delivers ZEC to the invoice's shielded address. On Base it's a payment to a throwaway address, not to you.
  3. Server detects it. Every few seconds the server syncs compact blocks from a public lightwalletd and trial-decrypts them with the viewing key. A note landing on the order's address marks it paid.
  4. Invoice flips to Paid ✓. The invoice page, dashboard, recurring invoices and embed button all update live.

Keys

Your seed never touches the server. The server is initialised from a Unified Full Viewing Key — enough to see and confirm incoming payments, impossible to spend with.

Built on

zcash-devtool (librustzcash wallet backend) · lightwalletd · Sapling, Orchard & Ironwood shielded pools · NEAR Intents 1Click · Node.js