Files
0pt/docs/01-product.md
T
adminandClaude Opus 4.8 22e09d984d feat: rebrand MONO->0pt (hero, header, layout) + add project docs/contract
Hero is now a data-native 0pt artifact (no photos, keeps grain/reveal/float); header is the 0pt wordmark with Swedish nav; layout is sv + loads JetBrains Mono + 0pt metadata; globals wires the loaded fonts. Adds CLAUDE.md + docs/01-09 as the build contract. next build green (5 routes).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-24 17:38:07 +02:00

4.1 KiB
Raw Blame History

01 · Product

Vision

0pt is the most flexible, honest data-services platform for the Nordic + European B2B market. Customers order any kind of data work — from ready-made datasets to bespoke pipelines — and get full visibility into where every value came from and how confident it is. The differentiator is honest accuracy: provenance per field, freshness tracking, source transparency. Incumbents (Apollo, Cognism, ZoomInfo) overclaim; 0pt shows its work.

The three flows (everything reduces to these)

Every service maps to one of three intake/delivery flows. The nine "categories" (scraping, structuring, datasets, ICP/leads, BI, ML, documents, subscriptions, custom) are tags/filters within these flows, not separate machinery.

  1. Catalog product — ready-made, browse → sample → buy → deliver. Exists in Postgres or produced fast from the pipeline. Margin + scale.
  2. Custom job — does not exist yet; must be scoped. configure (AI-assist) → estimate → manual scope/quote confirm → produce → QA → validate → deliver. The hero flow. Consulting in a portal.
  3. Subscription / feed — recurring product or job: lead feeds, freshness monitoring, ongoing enrichment. configure → recurring payment → recurring delivery/webhook.

Order lifecycle (state machine)

DRAFT → QUOTED → DEPOSIT_PENDING → IN_PRODUCTION → REVIEW
      → (REVISION → IN_PRODUCTION)*  → ACCEPTED → DELIVERED → [SUBSCRIPTION_ACTIVE]
  • DRAFT: configurator in progress.
  • QUOTED: estimate produced (catalog = instant; custom = after scope confirm).
  • DEPOSIT_PENDING: awaiting 50 % deposit.
  • IN_PRODUCTION: deposit captured → workers run. Customer watches live.
  • REVIEW: QA passed threshold → customer validates (table/map/schema/quality).
  • REVISION: customer requested changes → escrow untouched → back to production.
  • ACCEPTED: customer approves → remaining 50 % released from escrow.
  • DELIVERED: exports + destinations unlocked; provenance log + quality report attached.
  • SUBSCRIPTION_ACTIVE: if converted to a feed.

Business / escrow model

  • 50 / 50. Deposit (50 %) captured to start production. Balance (50 %) held and only captured/released on ACCEPTED. Revision never moves the held amount.
  • Pricing models: pay-per-job, volume, subscription (monthly), custom quote.
  • Estimate is a function of: selected field weights × markets × volume × entity multiplier × confidence-target multiplier + enrichment. Custom jobs get a manual scope/quote gate before DEPOSIT_PENDING.
  • Stripe: deposit = capture now; balance = either a held authorization released on accept, or a second invoice on accept (implement as a second Checkout/invoice keyed to the order; see docs/04-api.md).

Customer DB access (designed, not a checkbox)

Default: the customer pushes data (upload/export) — we rarely need to read their DB. If we must: a read-only, table-scoped, time-boxed role the customer creates, IP-allowlisted, ideally against a replica. Creds encrypted, deleted after the job. Everything logged. This is a selling point to compliance-heavy buyers, and it requires a DPA.

Personas (brief — for copy + prioritization)

SaaS-Martin (RevOps, wants clean ICP/leads), Bilhandlar-Bengt (vehicle + company data via VehIQ), Rekryterar-Rebecka (people/firmographics), Investor-Ivar (diligence, sanctions/UBO, scrutinizes compliance), Ekonomi-Erik (financials, scrutinizes compliance), Data-David (raw datasets + API). Ivar and Erik are why honest sourcing + DPA must be airtight.

First-launch scope (de-risked)

Do not ship "20 markets × 9 categories." Ship the thinnest sellable slice: Nordic company data (the open stuff — GLEIF + Brreg + verified sources) + vehicle data (VehIQ synergy) as a couple of catalog datasets, plus the custom-job intake, Stripe, and delivery to download + into FiveCRM/Data Loader. First customers are Protosell internally + existing dealer relationships — services you already deliver, productized. Then expand markets as the sourcing map fills in.