Changelog
All notable API changes documented here.
v0.25.0 — 2026-08-21
Per-invoice addresses on Base and Polygon
A checkout on these chains now gets its own deposit address, so the customer
pays the round price — no fractional suffix to reproduce. Nothing changes in
how you call the API; POST /v1/checkouts is unchanged and the deposit address
still arrives the same way.
Everywhere else a checkout is still identified by its exact amount. GET /v1/chains reports this per chain as exactAmountRequired, and
available_chains on a checkout is sorted so chains taking the round price
come first. If you build your own network selector, sort by priority and show
a warning where exactAmountRequired is true.
References: customer_ref, product_ref, order_ref
Three optional strings on POST /v1/checkouts, also read from metadata.
They are opaque to us — compared, never interpreted.
order_refmakes creation idempotent. The same order, amount and currency returns the existing checkout instead of a second one. A changed amount always creates a new checkout, so a re-priced order can never show a buyer one figure and charge another.customer_ref+product_refrescue payments that would otherwise go unattributed: where the amount identifies the invoice, several checkouts at one price are indistinguishable if the customer pays the round figure. With both references we can tell they are the same person buying the same thing and credit one. Both are required — two products can cost the same and be different things.
Fully backwards compatible: send nothing and behaviour is exactly as before.
v0.10.1 — 2026-04-07
Security Hardening
- x402 verifiers — stricter on-chain validation (recipient, token contract, BigInt amounts)
- Auth —
requireRole()fix, timing-safe password comparison, login lockout (5 attempts → 15 min) - CSP — removed
unsafe-eval - SSRF — webhook URLs to private IPs blocked
- Rate limits — payment status polling + admin seed endpoints
v0.10.0 — 2026-04-06
x402 Facilitator
POST /v1/x402/verify— synchronous on-chain payment verification across 6 chainsGET /v1/x402/config— facilitator payTo addresses, supported networks/assetsPOST /v1/x402/settle— trigger settlement of x402 paymentsGET /v1/x402/payments— list merchant’s x402 payments- @inzi/x402 SDK — Express middleware + Fastify plugin (zero deps, native fetch)
- Supported chains: Polygon, Base, Ethereum, Tron, TON, Solana
Developer Portal
- docs.inzilink.com — Nextra 4 docs site with 22 pages
- API reference, guides, SDK examples, x402 integration guide
v0.9.0 — 2026-04-05
Wallet Monitoring & Reports
/api/v1/wallets— CRUD for watched wallet addresses (Polygon/Base/Ethereum/Tron/TON/Solana)- Balance fetching — EVM + TronGrid + TON Center, Redis cache 60s, background worker
- Transaction sync — Etherscan/Polygonscan/Basescan/TronScan/TON Center (5min cycle)
- Auto-tagging — matches tx hashes against Inzi payments (payment/sweep/settlement)
- Manual labels — user-defined tags on transactions
/api/v1/reports/summary— aggregate balances, inflow/outflow, tag breakdown/api/v1/reports/transactions— cross-wallet tx list (JSON + CSV export)
Bug Fixes
- TON added to checkout chain validation (was missing from Zod enum)
- Tron added to Merchant API checkout accepted chains
v0.8.0 — 2026-04-04
Rebrand & Domain
- Inzilink → Inzi — brand name updated across all UI, emails, schema.org
- Primary frontend domain:
inzipay.com - API domain unchanged:
api.inzilink.com - Payment links unchanged:
inzilink.com/p/{code}
Corrected 2026-09-06: this line named a path that never shipped. The hosted checkout has always been served at/c/{code}, onwww.inzipay.com.
Moved 2026-09-07:checkout_urlnow returnshttps://pay.inzilink.com/c/{code}. Links already issued onwww.inzipay.comkeep working — that host still serves the same checkout.
Fiat Waitlist
POST /api/v1/waitlist/fiat— capture card payment interest
v0.7.0 — 2026-04-03
Merchant Checkout API
POST /v1/checkouts— create checkout session, returns hostedcheckout_urlGET /v1/checkouts/:id— status + payment details withchk_live_/chk_test_prefixed IDsGET /v1/checkouts— paginated list with status/date filters- Metadata passthrough — arbitrary JSON (max 4KB), returned in webhooks untouched
- Inzi webhook format — timestamp-based HMAC (
X-Inzi-Signature), events:checkout.completed,checkout.expired,checkout.underpaid - Test mode —
sk_test_keys fire mock webhook after 5s, no blockchain monitoring - Stripe-like errors —
{ error: { type, message, param, code } } - Per-endpoint rate limits — 60/30/120 req/min with
X-RateLimit-*headers - redirect_url — auto-redirect 2s after payment success
- Amount tolerance —
max(1%, $0.05)for network rounding
TON Blockchain
- Chain.TON — The Open Network added as supported chain
- TonTheScanner — Jetton (USDT) transfer monitoring via TON Center v3 API
- TON wallet — V4R2 hot wallet on mainnet, memo-based addressing
v0.6.0 — 2026-03-30
Merchant Experience
- Payment link templates: invoice, donation, subscription, custom
- Custom branding on checkout (logo, color, support URL)
- CSV export for payments and settlements
- Daily email summary (08:00 UTC)
- Multi-user merchant accounts (owner/admin/viewer roles)
- Team management API and invite flow
v0.5.0 — 2026-03-30
Production Hardening
- Webhook retry dashboard + manual retry
- Sentry error monitoring
- PaymentRouter verified on Polygonscan and BaseScan
- Uptime monitoring
v0.4.0 — 2026-03-28
Non-Custodial Escrow
- PaymentRouter contract on Polygon
- Dual payment mode: escrow (non-custodial) + custodial fallback
- Wallet generation endpoint
- Auto on-chain merchant registration
v0.3.0 — 2026-03-22
Admin & Billing
- Admin panel for merchant management
- Fee system (starter 1.5%, growth 1.0%, scale 0.7%, custom)
- Subscription billing
v0.2.0 — 2026-03-15
Frontend & Deployment
- Merchant dashboard (Next.js)
- Checkout page with QR code
- Landing page
- E2E + integration tests
- Railway (API) + Vercel (web) deployment
- API key generation (
sk_live_prefix)
v0.1.0 — 2026-03-11
Initial MVP
- Monorepo (pnpm workspaces)
- Fastify 5 API with versioned routes
- Prisma 6 + PostgreSQL
- JWT + API key authentication
- EVM scanner (Polygon, Base, Ethereum)
- TronScanner (TRC-20 USDT)
- BullMQ workers (scanner, payment, webhook, sweep, settlement)