Skip to main content

Glossary

Domain words that mean specific things in the KA26 codebase. When in doubt, check here before naming a new variable, table, or feature.

User-facing concepts

TermWhat it meansNOT to be confused with
AdA peer-to-peer resale listing posted by a Consumer. Stored in Product table with consumerId set + sellerId null.A "store product" (which has sellerId set)
Store productA product listed by a verified Seller for catalog/checkout. Product.storeId is set.An "Ad" (consumer-posted)
StoreA seller's commerce surface (clothing shop, kirana, photo studio). Has its own page at /stores/[id].A "Restaurant" (Eats vertical, archived)
RestaurantEats-vertical entity. Currently archived (2026-04-17). Models still exist for historical orders.A "Store"
RequestA community Q&A post (e.g., "Need a plumber"). May be private (1-to-1 supporters, max 3) or public (one shared discussion thread).A StoreOrder
ReelShort-form video uploaded by a Consumer or Seller. Up to 60s, 100MB.A "Story" (we don't have those)
Discussion typerequest.discussionType"private" (default, 1-to-1 chats) | "public" (one shared community thread)
Public DiscussionSingle shared thread on a request, anyone can join, no MAX_THREADS_PER_REQUEST cap

Account types

TermWhat it means
ConsumerEnd user of the platform. Auth via ka26_consumer_token (localStorage). Can post Ads, Reels, Requests, place orders.
SellerBusiness account. Auth via httpOnly cookie seller_token. Manages Stores + Products. Approval workflow before going live.
DoctorHealthcare provider. Auth via ka26_doctor_token. Manages Prescriptions in Health Records.
Delivery PartnerRider. Auth via ka26_delivery_token.
AdminCurrently a Seller with role='admin' and email matching the hardcoded admin email. RBAC TODO.

Payment terminology

TermWhat it means
paymentMethodOne of cod | pay_at_pickup | online. Server enforces — see Feature Flags.
paymentStatusMirrors method by default — unpaid (online) / cod / pay_at_pickup until handover, then paid / refunded.
fulfillmentTypedelivery | pickup_immediate | pickup_scheduled. Pickup auto-forces paymentMethod=pay_at_pickup.
PAYMENTS_ONLINE_ENABLEDEnv flag. When false, online payments are gated everywhere. Default false until bank account opens.

Naming conventions

  • Files: kebab-case.tsx for components, kebab-case.ts for libs, Capitalized.tsx for React components
  • API routes: /api/<resource>/<action> (e.g. /api/store-orders, not /api/orders/store)
  • DB models: PascalCase singular (e.g. StoreOrder, not store_orders)
  • Env vars: SCREAMING_SNAKE_CASE always
  • Feature flags: <DOMAIN>_<NAME>_ENABLED (e.g. PAYMENTS_ONLINE_ENABLED)

Acronyms you'll see

AcronymStands for
UPIUnified Payments Interface (India payment system)
UTRUnique Transaction Reference (UPI receipt)
DKIM/SPF/DMARCEmail authentication standards (see Email Infra)
TTLTime to live (cache/expiry)
PWAProgressive Web App
AABAndroid App Bundle (Play Store format, vs APK for direct download)
CTACall to action (button)
UGCUser-generated content (reels, requests, ads)
DPDP ActDigital Personal Data Protection Act 2023 (India's GDPR)
IT Rules 2021Information Technology Rules — intermediary safe harbour