Commerce

First-party commerce — no external store engine.

Catalog

  • Products carry variants. A product is physical or service; a variant's pricing mode is fixed or quote, with a billing interval (one-time/week/month/year) and optional bookable event type.
  • Intake fields capture buyer answers at checkout (e.g. property details for a cleaning service).
  • Media — product images live in a public commerce-media bucket served via CDN.

Selling

  • Carts → orders → checkout (storefront endpoints, buyer session). Checkout branches to instant payment, subscription, or quote.
  • Quotes → invoices — native records Navrik owns (numbered). A quote is an estimate; accepting it issues an invoice. Buyers act via signed tokens (no account). Invoices are paid via a rail or marked paid offline.
  • Promotions — percentage/fixed codes with limits; validate publicly before checkout.
  • Inventory — optional per-variant stock with backorder.

Payments

Per-workspace Stripe / Paystack accounts (encrypted secrets). Navrik owns the order/invoice; the provider is just the rail. Webhooks confirm payment and settle holds.

Operator UI

Manage all of this in the portal's Commerce section (products, orders, quotes, invoices, staff, reviews, payments).