Documentation

    Concepts, value, and typical clone scenarios — less code.

    Welcome to Ring
    Quick Reference
    Getting Started
    Prerequisites
    Installation
    First Success Validation
    Next Steps
    Features
    Multi-Vendor Store
    Inventory & Stock
    Vendor Management
    Commissions & Settlements
    SubscriptionConductor
    PaymentConductor
    Ring Oracle
    Payments Overview
    Public Pools & DAO Jars
    WayForPay Payment Integration
    Wallet & Credit System
    WalletConductor
    Affiliate & Referral Enablement
    Referral Codes (Refcodes)
    NFT Exhibition Marketplace
    Solana NFT Gates
    Token Staking System
    Owner Project Lab
    Entities
    Opportunities
    Real-Time Messaging
    Ring Tasks
    WebRTC Calls & STUNner TURN
    Peer Games
    News Module
    Member Blogs
    Public Profile Pages
    Profile Account Widgets
    Ring File Cabinet
    Username Reservation System
    Scientific Editor
    Notifications
    Push Notifications with FCM (Ring-Powered)
    Email AI-CRM
    Ring Mailer & RingdomX Mail
    Tunnel Protocol
    VideoConductor
    MediaConductor
    Generative Gallery
    Authentication
    Security & Compliance
    Admin console
    Admin Wiki
    Manage via Telegram
    Locale System
    Mobile Experience
    Performance Optimization Patterns
    Examples
    Quick Start
    Basic Setup
    White Label
    Custom Branding
    Web3 Integration
    Real World
    Advanced Features
    Customization
    Quick Start — Your First Ring Clone
    Customization Guide
    Vertical Presets (SSOT)
    Ringization playbook
    Branding
    Themes
    Features
    Localization
    Token Economics Setup
    Payment Gateway Integration
    Reference Ring deployments
    Web3
    Token launch jurisdictions
    Wallet
    Wallet Security Tips
    Integrations
    Ethereum wallets (Wagmi v3)
    RingFileBase (object storage API)
    Ring CDN (RingFileBase edge)
    Deployment
    Self-hosted deployment
    Vercel Deployment
    Docker
    Environment Configuration
    Monitoring & Analytics
    Performance Optimization
    Backup & Recovery
    Architecture
    Data Model
    Security
    Real Time
    Discovery Mutation Sync
    PaymentConductor architecture
    WalletConductor architecture
    Backend Services
    Firebase Integration
    Development
    Ring MCP Server

    Quick entry (CTOs · auditors · agents)

    Welcome — mission & audiences
    Quick Reference
    Getting started
    Architecture & Auth.js
    Backend modes & databases (DB_BACKEND_MODE)
    Self-hosted
    Ring MCP Tools
    Ring MCP Server
    Token economics
    Token launch jurisdictions
    Deploy (Docker · k8s)
    Security & compliance reads
    ringdom.org — LegioX homebase
    Source — MIT license (GitHub)

    Documentation

    Concepts, value, and typical clone scenarios — less code.

    Welcome to Ring
    Quick Reference
    Getting Started
    Prerequisites
    Installation
    First Success Validation
    Next Steps
    Features
    Multi-Vendor Store
    Inventory & Stock
    Vendor Management
    Commissions & Settlements
    SubscriptionConductor
    PaymentConductor
    Ring Oracle
    Payments Overview
    Public Pools & DAO Jars
    WayForPay Payment Integration
    Wallet & Credit System
    WalletConductor
    Affiliate & Referral Enablement
    Referral Codes (Refcodes)
    NFT Exhibition Marketplace
    Solana NFT Gates
    Token Staking System
    Owner Project Lab
    Entities
    Opportunities
    Real-Time Messaging
    Ring Tasks
    WebRTC Calls & STUNner TURN
    Peer Games
    News Module
    Member Blogs
    Public Profile Pages
    Profile Account Widgets
    Ring File Cabinet
    Username Reservation System
    Scientific Editor
    Notifications
    Push Notifications with FCM (Ring-Powered)
    Email AI-CRM
    Ring Mailer & RingdomX Mail
    Tunnel Protocol
    VideoConductor
    MediaConductor
    Generative Gallery
    Authentication
    Security & Compliance
    Admin console
    Admin Wiki
    Manage via Telegram
    Locale System
    Mobile Experience
    Performance Optimization Patterns
    Examples
    Quick Start
    Basic Setup
    White Label
    Custom Branding
    Web3 Integration
    Real World
    Advanced Features
    Customization
    Quick Start — Your First Ring Clone
    Customization Guide
    Vertical Presets (SSOT)
    Ringization playbook
    Branding
    Themes
    Features
    Localization
    Token Economics Setup
    Payment Gateway Integration
    Reference Ring deployments
    Web3
    Token launch jurisdictions
    Wallet
    Wallet Security Tips
    Integrations
    Ethereum wallets (Wagmi v3)
    RingFileBase (object storage API)
    Ring CDN (RingFileBase edge)
    Deployment
    Self-hosted deployment
    Vercel Deployment
    Docker
    Environment Configuration
    Monitoring & Analytics
    Performance Optimization
    Backup & Recovery
    Architecture
    Data Model
    Security
    Real Time
    Discovery Mutation Sync
    PaymentConductor architecture
    WalletConductor architecture
    Backend Services
    Firebase Integration
    Development
    Ring MCP Server

    Quick entry (CTOs · auditors · agents)

    Welcome — mission & audiences
    Quick Reference
    Getting started
    Architecture & Auth.js
    Backend modes & databases (DB_BACKEND_MODE)
    Self-hosted
    Ring MCP Tools
    Ring MCP Server
    Token economics
    Token launch jurisdictions
    Deploy (Docker · k8s)
    Security & compliance reads
    ringdom.org — LegioX homebase
    Source — MIT license (GitHub)

    Documentation

    Concepts, value, and typical clone scenarios — less code.

    Welcome to Ring
    Quick Reference
    Getting Started
    Prerequisites
    Installation
    First Success Validation
    Next Steps
    Features
    Multi-Vendor Store
    Inventory & Stock
    Vendor Management
    Commissions & Settlements
    SubscriptionConductor
    PaymentConductor
    Ring Oracle
    Payments Overview
    Public Pools & DAO Jars
    WayForPay Payment Integration
    Wallet & Credit System
    WalletConductor
    Affiliate & Referral Enablement
    Referral Codes (Refcodes)
    NFT Exhibition Marketplace
    Solana NFT Gates
    Token Staking System
    Owner Project Lab
    Entities
    Opportunities
    Real-Time Messaging
    Ring Tasks
    WebRTC Calls & STUNner TURN
    Peer Games
    News Module
    Member Blogs
    Public Profile Pages
    Profile Account Widgets
    Ring File Cabinet
    Username Reservation System
    Scientific Editor
    Notifications
    Push Notifications with FCM (Ring-Powered)
    Email AI-CRM
    Ring Mailer & RingdomX Mail
    Tunnel Protocol
    VideoConductor
    MediaConductor
    Generative Gallery
    Authentication
    Security & Compliance
    Admin console
    Admin Wiki
    Manage via Telegram
    Locale System
    Mobile Experience
    Performance Optimization Patterns
    Examples
    Quick Start
    Basic Setup
    White Label
    Custom Branding
    Web3 Integration
    Real World
    Advanced Features
    Customization
    Quick Start — Your First Ring Clone
    Customization Guide
    Vertical Presets (SSOT)
    Ringization playbook
    Branding
    Themes
    Features
    Localization
    Token Economics Setup
    Payment Gateway Integration
    Reference Ring deployments
    Web3
    Token launch jurisdictions
    Wallet
    Wallet Security Tips
    Integrations
    Ethereum wallets (Wagmi v3)
    RingFileBase (object storage API)
    Ring CDN (RingFileBase edge)
    Deployment
    Self-hosted deployment
    Vercel Deployment
    Docker
    Environment Configuration
    Monitoring & Analytics
    Performance Optimization
    Backup & Recovery
    Architecture
    Data Model
    Security
    Real Time
    Discovery Mutation Sync
    PaymentConductor architecture
    WalletConductor architecture
    Backend Services
    Firebase Integration
    Development
    Ring MCP Server

    Quick entry (CTOs · auditors · agents)

    Welcome — mission & audiences
    Quick Reference
    Getting started
    Architecture & Auth.js
    Backend modes & databases (DB_BACKEND_MODE)
    Self-hosted
    Ring MCP Tools
    Ring MCP Server
    Token economics
    Token launch jurisdictions
    Deploy (Docker · k8s)
    Security & compliance reads
    ringdom.org — LegioX homebase
    Source — MIT license (GitHub)
    Ring Platform Logo

    Loading documentation...

    Preparing Ring Platform content

    Ring Platform Logo

    Loading documentation...

    Preparing Ring Platform content

    Ring Platform Logo

    Loading documentation...

    Preparing Ring Platform content

    Multi-Vendor Store

    Ring Platform ships a multi-vendor marketplace where any verified Entity can operate a store, list products, and earn through automated commission settlements. Vendors enrich catalog copy with Agent Knowledge Research — WebConductor web research into structured fields, productAgent markdown, Admin Wiki NODUS, and File Cabinet alt images — then opt media into the product gallery explicitly.

    Use the Founder / Developer tabs in the docs sidebar to filter this page by audience. Pipeline names live in scripts/PIPELINES.md (store.web_conductor.research_populate).

    Why the multi-vendor store matters for your clone

    Every Entity in your Ring deployment can become a selling vendor — no external marketplace needed. The store generates platform revenue through tier-based commission rates (NEW → BASIC → VERIFIED → TRUSTED → PREMIUM, descending from 20% to 12%) on every sale. Vendors catalogue themselves; operators review submissions and settle commissions.

    Key operator capabilities

    Vendor lifecycle

    Onboard entities as vendors at /vendor/start. Trust scoring, tier progression, and suspension workflows are automated.

    Agent Knowledge Research

    On create/edit product forms: Research → fields + markdown + wiki NODUS + cabinet alt images. Use in gallery is explicit — nothing silently replaces the primary photo.

    Commission settlements

    Tier-based commissions per sale. Admin dashboard at /admin/store/commissions shows pending payouts with referral breakdowns.

    Product audience gating

    Mark products member-only. Non-members see public products only (hasMemberPrivileges()).

    Typical scenarios

    • Local business network — every shop lists inventory; settlements run automatically.
    • DAO marketplace — member-gated courses/NFTs; public SKUs as lead magnets.
    • Catalog enrichment — vendor pastes a manufacturer URL, runs Research, reviews suggested fields, saves Agent Knowledge, then clicks Use in gallery only for photos they want on the storefront.
    • DAGI assist — vendor ERP chat tool dagi_research_product returns the same suggested fields / research media / cabinet path for the bound vendor.

    Storefront product agent chats use Conversation.type: 'product' and stay visible in Messages. Generative Gallery tool chats reuse the product channel with kind: 'generative_gallery' and hiddenFromInbox: true — see Messaging and Generative Gallery.

    Implementation

    Multi-vendor architecture

    Agent Knowledge Research (Phase W — shipped)

    PiecePathRole
    Conductorlib/web/conductor/web-conductor.tsTextConductor webSearch: true → structured fields + productAgentMarkdown + NODUS JSON + citation-host image candidates
    Orchestratorfeatures/store/lib/product-agent-research.tsBuilds request + runProductAgentResearch
    Cabinet writerfeatures/store/lib/product-cabinet-media.tsDirs store/[storename]/[product-slug]/alt (fits MAX_FOLDER_DEPTH 3; conceptual prefix), , SSRF-safe image fetch → RingBase → cabinet nodes

    Related documentation

    Related documentation

    Ring File Cabinet

    Same-workflow: research images land under store/product/alt; Image/Video chat enhances siblings.

    Generative Gallery

    Next-step: Generative Gallery Upload \| Generate on product forms and cabinet scope.

    Admin Wiki

    Depends-on: Research writes product NODUS pages into the tenant wiki vault.

    Ring ERP

    Next-step: ERP hub for stock invariant, commitSale, and settlements cockpit.

    Multi-Vendor Store

    Ring Platform ships a multi-vendor marketplace where any verified Entity can operate a store, list products, and earn through automated commission settlements. Vendors enrich catalog copy with Agent Knowledge Research — WebConductor web research into structured fields, productAgent markdown, Admin Wiki NODUS, and File Cabinet alt images — then opt media into the product gallery explicitly.

    Use the Founder / Developer tabs in the docs sidebar to filter this page by audience. Pipeline names live in scripts/PIPELINES.md (store.web_conductor.research_populate).

    Why the multi-vendor store matters for your clone

    Every Entity in your Ring deployment can become a selling vendor — no external marketplace needed. The store generates platform revenue through tier-based commission rates (NEW → BASIC → VERIFIED → TRUSTED → PREMIUM, descending from 20% to 12%) on every sale. Vendors catalogue themselves; operators review submissions and settle commissions.

    Key operator capabilities

    Vendor lifecycle

    Onboard entities as vendors at /vendor/start. Trust scoring, tier progression, and suspension workflows are automated.

    Agent Knowledge Research

    On create/edit product forms: Research → fields + markdown + wiki NODUS + cabinet alt images. Use in gallery is explicit — nothing silently replaces the primary photo.

    Commission settlements

    Tier-based commissions per sale. Admin dashboard at /admin/store/commissions shows pending payouts with referral breakdowns.

    Product audience gating

    Mark products member-only. Non-members see public products only (hasMemberPrivileges()).

    Typical scenarios

    • Local business network — every shop lists inventory; settlements run automatically.
    • DAO marketplace — member-gated courses/NFTs; public SKUs as lead magnets.
    • Catalog enrichment — vendor pastes a manufacturer URL, runs Research, reviews suggested fields, saves Agent Knowledge, then clicks Use in gallery only for photos they want on the storefront.
    • DAGI assist — vendor ERP chat tool dagi_research_product returns the same suggested fields / research media / cabinet path for the bound vendor.

    Storefront product agent chats use Conversation.type: 'product' and stay visible in Messages. Generative Gallery tool chats reuse the product channel with kind: 'generative_gallery' and hiddenFromInbox: true — see Messaging and Generative Gallery.

    Implementation

    Multi-vendor architecture

    Agent Knowledge Research (Phase W — shipped)

    PiecePathRole
    Conductorlib/web/conductor/web-conductor.tsTextConductor webSearch: true → structured fields + productAgentMarkdown + NODUS JSON + citation-host image candidates
    Orchestratorfeatures/store/lib/product-agent-research.tsBuilds request + runProductAgentResearch
    Cabinet writerfeatures/store/lib/product-cabinet-media.tsDirs store/[storename]/[product-slug]/alt (fits MAX_FOLDER_DEPTH 3; conceptual prefix), , SSRF-safe image fetch → RingBase → cabinet nodes

    Related documentation

    Related documentation

    Ring File Cabinet

    Same-workflow: research images land under store/product/alt; Image/Video chat enhances siblings.

    Generative Gallery

    Next-step: Generative Gallery Upload \| Generate on product forms and cabinet scope.

    Admin Wiki

    Depends-on: Research writes product NODUS pages into the tenant wiki vault.

    Ring ERP

    Next-step: ERP hub for stock invariant, commitSale, and settlements cockpit.

    Multi-Vendor Store

    Ring Platform ships a multi-vendor marketplace where any verified Entity can operate a store, list products, and earn through automated commission settlements. Vendors enrich catalog copy with Agent Knowledge Research — WebConductor web research into structured fields, productAgent markdown, Admin Wiki NODUS, and File Cabinet alt images — then opt media into the product gallery explicitly.

    Use the Founder / Developer tabs in the docs sidebar to filter this page by audience. Pipeline names live in scripts/PIPELINES.md (store.web_conductor.research_populate).

    Why the multi-vendor store matters for your clone

    Every Entity in your Ring deployment can become a selling vendor — no external marketplace needed. The store generates platform revenue through tier-based commission rates (NEW → BASIC → VERIFIED → TRUSTED → PREMIUM, descending from 20% to 12%) on every sale. Vendors catalogue themselves; operators review submissions and settle commissions.

    Key operator capabilities

    Vendor lifecycle

    Onboard entities as vendors at /vendor/start. Trust scoring, tier progression, and suspension workflows are automated.

    Agent Knowledge Research

    On create/edit product forms: Research → fields + markdown + wiki NODUS + cabinet alt images. Use in gallery is explicit — nothing silently replaces the primary photo.

    Commission settlements

    Tier-based commissions per sale. Admin dashboard at /admin/store/commissions shows pending payouts with referral breakdowns.

    Product audience gating

    Mark products member-only. Non-members see public products only (hasMemberPrivileges()).

    Typical scenarios

    • Local business network — every shop lists inventory; settlements run automatically.
    • DAO marketplace — member-gated courses/NFTs; public SKUs as lead magnets.
    • Catalog enrichment — vendor pastes a manufacturer URL, runs Research, reviews suggested fields, saves Agent Knowledge, then clicks Use in gallery only for photos they want on the storefront.
    • DAGI assist — vendor ERP chat tool dagi_research_product returns the same suggested fields / research media / cabinet path for the bound vendor.

    Storefront product agent chats use Conversation.type: 'product' and stay visible in Messages. Generative Gallery tool chats reuse the product channel with kind: 'generative_gallery' and hiddenFromInbox: true — see Messaging and Generative Gallery.

    Implementation

    Multi-vendor architecture

    Agent Knowledge Research (Phase W — shipped)

    PiecePathRole
    Conductorlib/web/conductor/web-conductor.tsTextConductor webSearch: true → structured fields + productAgentMarkdown + NODUS JSON + citation-host image candidates
    Orchestratorfeatures/store/lib/product-agent-research.tsBuilds request + runProductAgentResearch
    Cabinet writerfeatures/store/lib/product-cabinet-media.tsDirs store/[storename]/[product-slug]/alt (fits MAX_FOLDER_DEPTH 3; conceptual prefix), , SSRF-safe image fetch → RingBase → cabinet nodes

    Related documentation

    Related documentation

    Ring File Cabinet

    Same-workflow: research images land under store/product/alt; Image/Video chat enhances siblings.

    Generative Gallery

    Next-step: Generative Gallery Upload \| Generate on product forms and cabinet scope.

    Admin Wiki

    Depends-on: Research writes product NODUS pages into the tenant wiki vault.

    Ring ERP

    Next-step: ERP hub for stock invariant, commitSale, and settlements cockpit.

    files/
    research-{runId}.md
    Actionsapp/_actions/product-agent-research.tsresearchProductAgentAction, researchProductDraftAction, saveProductAgentKnowledgeAction
    UIfeatures/store/components/product-agent-knowledge-section.tsxCreate + edit; Use in gallery explicit
    Wiki helperfeatures/store/lib/product-nodus-wiki.tscreateProductNodusWikiFromDraft → tenant Admin Wiki
    DAGIfeatures/store/services/dagi-erp-tools.tsdagi_research_product → suggestedFields / researchMedia / cabinetPath / skippedImages
    Schema notesAI-LEGIOX/legiox-truth-lens/AGENT-PRODUCT-SCHEMA.md§ photo / research generator steps
    Pipelinescripts/PIPELINES.mdstore.web_conductor.research_populate

    Auth: vendor entity owner or platform admin (resolveResearchVendor + ownership check). Draft research (no product id yet) uses researchProductDraftAction and still writes cabinet artifacts under the vendor owner.

    Gallery rule: research media is never auto-merged as primary. Operators must click Use in gallery.

    Product catalog SSOT

    getCachedProductCatalog() in features/store/config.ts ('use cache' + cacheTag('store:products')). Consumers: app/api/store/products/route.ts, getStoreProducts in app/_actions/store-products.ts, MCP app/api/mcp/v1/store/products/route.ts. Invalidate with updateTag('store:products') after create.

    Deferred client fetch

    features/store/context.tsx mounts StoreProvider globally but defers the catalog network call until pathname includes /store or cart items exist in localStorage (single-flight fetch).

    Verified routes

    RoutePurposeAuth
    /vendor/startVendor onboardingSubscriber+
    /vendor/productsVendor product CRUD + Agent KnowledgeVendor entity owner
    /admin/store/productsProduct approval queue (same form)Platform admin
    /admin/store/commissionsCommission settlementsPlatform admin
    /storePublic storefront + audience filterPublic

    Product custom fields

    1. 1

      Vendor selects a category on the product form.

    2. 2

      Adds name+value parameters (“Add product parameter”).

    3. 3

      Persists via createProductCustomField() in app/_actions/vendor-actions.ts (ownership-guarded).

    Product audience filtering

    Products with productAudience: 'member' are hidden unless isAdmin || hasMemberPrivileges(currentRole) in app/_actions/store-products.ts.

    Module summary

    ModulePurpose
    features/store/config.tsAdapter + cached catalog SSOT
    features/store/context.tsxDeferred client catalog + cart
    features/store/services/vendor-lifecycle.tsVendor profile + tiers
    features/store/services/settlement.tsCommission calculation
    lib/web/conductor/web-conductor.tsWeb product research
    features/store/lib/product-cabinet-media.tsResearch → File Cabinet alt
    app/_actions/product-agent-research.tsResearch / draft / save knowledge
    app/_actions/vendor-actions.tsVendor product CRUD + research form fields
    app/_actions/admin-store-erp.tsAdmin product path + Agent Knowledge hidden fields
    features/auth/user-role.tshasMemberPrivileges()

    Inventory & Stock

    Deep-dive: reserve → commitSaleForOrder → cancel/refund restore.

    PaymentConductor

    Depends-on: PaymentConductor paid handlers drive stock commit.

    Ring Oracle

    Depends-on: SSR FX hydrate and presentment convertPrice / displayMode for checkout.

    Store API

    Deep-dive: store REST routes for products, orders, checkout.

    files/
    research-{runId}.md
    Actionsapp/_actions/product-agent-research.tsresearchProductAgentAction, researchProductDraftAction, saveProductAgentKnowledgeAction
    UIfeatures/store/components/product-agent-knowledge-section.tsxCreate + edit; Use in gallery explicit
    Wiki helperfeatures/store/lib/product-nodus-wiki.tscreateProductNodusWikiFromDraft → tenant Admin Wiki
    DAGIfeatures/store/services/dagi-erp-tools.tsdagi_research_product → suggestedFields / researchMedia / cabinetPath / skippedImages
    Schema notesAI-LEGIOX/legiox-truth-lens/AGENT-PRODUCT-SCHEMA.md§ photo / research generator steps
    Pipelinescripts/PIPELINES.mdstore.web_conductor.research_populate

    Auth: vendor entity owner or platform admin (resolveResearchVendor + ownership check). Draft research (no product id yet) uses researchProductDraftAction and still writes cabinet artifacts under the vendor owner.

    Gallery rule: research media is never auto-merged as primary. Operators must click Use in gallery.

    Product catalog SSOT

    getCachedProductCatalog() in features/store/config.ts ('use cache' + cacheTag('store:products')). Consumers: app/api/store/products/route.ts, getStoreProducts in app/_actions/store-products.ts, MCP app/api/mcp/v1/store/products/route.ts. Invalidate with updateTag('store:products') after create.

    Deferred client fetch

    features/store/context.tsx mounts StoreProvider globally but defers the catalog network call until pathname includes /store or cart items exist in localStorage (single-flight fetch).

    Verified routes

    RoutePurposeAuth
    /vendor/startVendor onboardingSubscriber+
    /vendor/productsVendor product CRUD + Agent KnowledgeVendor entity owner
    /admin/store/productsProduct approval queue (same form)Platform admin
    /admin/store/commissionsCommission settlementsPlatform admin
    /storePublic storefront + audience filterPublic

    Product custom fields

    1. 1

      Vendor selects a category on the product form.

    2. 2

      Adds name+value parameters (“Add product parameter”).

    3. 3

      Persists via createProductCustomField() in app/_actions/vendor-actions.ts (ownership-guarded).

    Product audience filtering

    Products with productAudience: 'member' are hidden unless isAdmin || hasMemberPrivileges(currentRole) in app/_actions/store-products.ts.

    Module summary

    ModulePurpose
    features/store/config.tsAdapter + cached catalog SSOT
    features/store/context.tsxDeferred client catalog + cart
    features/store/services/vendor-lifecycle.tsVendor profile + tiers
    features/store/services/settlement.tsCommission calculation
    lib/web/conductor/web-conductor.tsWeb product research
    features/store/lib/product-cabinet-media.tsResearch → File Cabinet alt
    app/_actions/product-agent-research.tsResearch / draft / save knowledge
    app/_actions/vendor-actions.tsVendor product CRUD + research form fields
    app/_actions/admin-store-erp.tsAdmin product path + Agent Knowledge hidden fields
    features/auth/user-role.tshasMemberPrivileges()

    Inventory & Stock

    Deep-dive: reserve → commitSaleForOrder → cancel/refund restore.

    PaymentConductor

    Depends-on: PaymentConductor paid handlers drive stock commit.

    Ring Oracle

    Depends-on: SSR FX hydrate and presentment convertPrice / displayMode for checkout.

    Store API

    Deep-dive: store REST routes for products, orders, checkout.

    files/
    research-{runId}.md
    Actionsapp/_actions/product-agent-research.tsresearchProductAgentAction, researchProductDraftAction, saveProductAgentKnowledgeAction
    UIfeatures/store/components/product-agent-knowledge-section.tsxCreate + edit; Use in gallery explicit
    Wiki helperfeatures/store/lib/product-nodus-wiki.tscreateProductNodusWikiFromDraft → tenant Admin Wiki
    DAGIfeatures/store/services/dagi-erp-tools.tsdagi_research_product → suggestedFields / researchMedia / cabinetPath / skippedImages
    Schema notesAI-LEGIOX/legiox-truth-lens/AGENT-PRODUCT-SCHEMA.md§ photo / research generator steps
    Pipelinescripts/PIPELINES.mdstore.web_conductor.research_populate

    Auth: vendor entity owner or platform admin (resolveResearchVendor + ownership check). Draft research (no product id yet) uses researchProductDraftAction and still writes cabinet artifacts under the vendor owner.

    Gallery rule: research media is never auto-merged as primary. Operators must click Use in gallery.

    Product catalog SSOT

    getCachedProductCatalog() in features/store/config.ts ('use cache' + cacheTag('store:products')). Consumers: app/api/store/products/route.ts, getStoreProducts in app/_actions/store-products.ts, MCP app/api/mcp/v1/store/products/route.ts. Invalidate with updateTag('store:products') after create.

    Deferred client fetch

    features/store/context.tsx mounts StoreProvider globally but defers the catalog network call until pathname includes /store or cart items exist in localStorage (single-flight fetch).

    Verified routes

    RoutePurposeAuth
    /vendor/startVendor onboardingSubscriber+
    /vendor/productsVendor product CRUD + Agent KnowledgeVendor entity owner
    /admin/store/productsProduct approval queue (same form)Platform admin
    /admin/store/commissionsCommission settlementsPlatform admin
    /storePublic storefront + audience filterPublic

    Product custom fields

    1. 1

      Vendor selects a category on the product form.

    2. 2

      Adds name+value parameters (“Add product parameter”).

    3. 3

      Persists via createProductCustomField() in app/_actions/vendor-actions.ts (ownership-guarded).

    Product audience filtering

    Products with productAudience: 'member' are hidden unless isAdmin || hasMemberPrivileges(currentRole) in app/_actions/store-products.ts.

    Module summary

    ModulePurpose
    features/store/config.tsAdapter + cached catalog SSOT
    features/store/context.tsxDeferred client catalog + cart
    features/store/services/vendor-lifecycle.tsVendor profile + tiers
    features/store/services/settlement.tsCommission calculation
    lib/web/conductor/web-conductor.tsWeb product research
    features/store/lib/product-cabinet-media.tsResearch → File Cabinet alt
    app/_actions/product-agent-research.tsResearch / draft / save knowledge
    app/_actions/vendor-actions.tsVendor product CRUD + research form fields
    app/_actions/admin-store-erp.tsAdmin product path + Agent Knowledge hidden fields
    features/auth/user-role.tshasMemberPrivileges()

    Inventory & Stock

    Deep-dive: reserve → commitSaleForOrder → cancel/refund restore.

    PaymentConductor

    Depends-on: PaymentConductor paid handlers drive stock commit.

    Ring Oracle

    Depends-on: SSR FX hydrate and presentment convertPrice / displayMode for checkout.

    Store API

    Deep-dive: store REST routes for products, orders, checkout.

    1. Docs
    2. /Features
    3. /Multi-Vendor Store

    Updated Aug 3, 20264 min listen

    1. Docs
    2. /Features
    3. /Multi-Vendor Store

    Updated Aug 3, 20264 min listen

    1. Docs
    2. /Features
    3. /Multi-Vendor Store

    Updated Aug 3, 20264 min listen