Docs/Billing/USDC billing

USDC billing

How subscriptions work — pay your plan each cycle with a plain USDC transfer on Solana.

Plans are priced monthly in USDC on Solana, paid with a plain wallet transfer — no card, no stored payment method, and no standing authorization that can pull your wallet. Each cycle you sign and send a single USDC transfer of your plan's exact amount straight to Quanaris; we verify it landed on-chain and grant the plan. Your wallet shows a normal "Send USDC" — nothing is ever auto-debited.

Subscription lifecycle

incomplete ──pay (USDC transfer)──▶ active (period = now + 30d)
   active ──period ends──▶ past_due (grace) ──pay again──▶ active
   past_due ──grace lapses──▶ canceled ⇒ plan reverts to free
   pay again anytime ──▶ active (period extended)

A verified payment grants the plan (and its mint slots/quotas) for one period. When the period ends you get a grace window; pay again (one click) to extend, or do nothing to lapse to free. There is no auto-renew and nothing to revoke — renewing is just sending the next transfer.

Payment flow

  1. POST /v1/billing/subscribe { plan } — creates an incomplete subscription.
  2. POST /v1/billing/pay-tx { wallet } — returns an unsigned USDC-transfer transaction (your wallet signs + sends it).
  3. POST /v1/billing/confirm — we find your transfer on-chain (via a payment reference), verify the amount + destination, and activate. You get an on-chain receipt (explorer link) in the dashboard.

Prices

Each plan has a fixed USDC price per cycle (no FX): Builder 50 USDC/mo, Scale 250 USDC/mo, Enterprise — custom (contact sales). See Plans & limits.