CCX — Cannabis Commodities Exchange
B2BWholesale trading platform for licensed cannabis businesses. Sellers list lots; buyers browse, make offers, and purchase. Offline payment settlement in Phase 1.
- KYB business onboarding with CDAP license verification
- Lot listings with COA (lab test PDF) upload and parsing
- Offer / counter-offer / accept flow
- Proof-of-funds upload + dual payment confirmation
- CQI score badge on every lot
- Metrc / IMS two-way integration for lot push/receive
- Order tracking: Pending → Confirmed → In Transit → Received
- Dispute escalation to admin
BMC — Business Management Console
OperatorsUnified operator dashboard spanning CCX and ICC Maps. One login via ICC SSO; role-based access for Admin / Manager / Staff.
- Business profile: legal name, licenses, verification status
- CCX module: listings, orders, payment status
- ICC Maps module: dispensary profile, live menu management
- Integrations hub: IMS/POS connect, sync logs, API keys
- Team management: invite, roles, per-product access
- License expiry alerts (60-day warning)
CQI — Cannabis Quality Index
Internal serviceProprietary lot quality scoring algorithm (0–100). Phase 1 uses a weighted rule-based model; Phase 3 upgrades to a trained ML model once transaction data accumulates.
- 6 scoring components: THC, terpenes, safety panels, moisture, freshness, seller reputation
- Weights stored in DB — editable in Django admin without deploys
- Score breakdown surfaced to buyers (transparency)
- Async scoring via Celery — fires on COA upload
- Phase 3: XGBoost/LightGBM trained on CCX clearing prices
- Score displayed on CCX listings and ICC Maps consumer menus
ICC Maps
ConsumerDispensary locator, live menu aggregator, and product rating system. Differentiates from Weedmaps/Leafly via CQI quality scores on consumer menus.
- GPS-based dispensary discovery (PostGIS radius queries)
- Live menu sync: Dutchie, Jane, Treez, Flowhub via POS API
- CQI score badge on every product
- User reviews with effect tagging
- IVB "Find My Product" integration (Phase 3)
- Mobile app in Phase 4
IVB — ICC Virtual Budtender
AIAI product recommendation engine. Deployed inside ICC Maps as "Find My Product" and as a widget inside dispensary POS systems at checkout.
- Signals: purchase history, reviews, effect preferences, terpene similarity, collaborative filtering
- Cold-start: effect preference quiz for new users
- POS targets: Dutchie (public API), Flowhub, Treez (partnership required)
- Only recommends in-stock products (real-time inventory sync)
- No raw PII sent to POS — hashed customer IDs only
IMS / POS Integration Architecture
Two-way inventory integration is central to both CCX and ICC Maps. It eliminates manual data entry for operators and enables the wholesale-to-retail workflow for vertically integrated businesses.
Cultivator pushes a lot from their IMS to CCX. Lot metadata pre-fills the listing form.
Buyer receives a purchased lot back into their IMS from the CCX order confirmation.
Dispensary IMS/POS changes propagate to ICC Maps menu within 15–60 min via Celery beat, or near-real-time via webhook.
CCX purchase → IMS receiving → ICC Maps menu update — a single operator workflow via BMC + SSO.
ICC Social
ConsumerSemi-anonymous social platform for cannabis consumers. Pseudonymous identity — no real name required. C2C and B2C interactions.