Skip to content

PRD: Organizer & merchant

ModuleCommercePRD IDPRD-ORG-001
StatusReady to devFEATORG
EpicPlaneBANA-1494
Date2026-06-01Versionv1.0
Packages@nx/commerceURDORG
SurfaceBO · OpsClient · Owner/Mgr
OwnerPhát Nguyễn

What organizer & merchant are

Everything in BANA hangs off a merchant - products, orders, inventory, finance. This PRD defines the business foundation for the whole system: one organizer for the brand, and at least one merchant for the legal selling unit, with its own sale channels and categories.

The organizer is virtual, the merchant is legal

The organizer is the brand: a multilingual name, a slug, a hierarchy, branding. It has no legal existence - no tax code, no e-invoice account, no wallet, no business type. Every legal and financial attribute - business type, tax identity, e-invoice details, finance accounts and wallets, currency, industry, physical location - belongs to the merchant, and never to the organizer. Every organizer always has exactly one headquarters merchant, created together with the organizer in the onboarding step. The full table of organizer/merchant principles lives in §8.1.

Why this feature exists

Building the structure piece by piece is slow and error-prone. A step that fails midway leaves a half-built business. Slug clashes only surface at save time. And there is no consistent rule for who may see which organizers and merchants. This feature covers it end to end: it stands the whole structure up in one step, saves a merchant as one package with its channels and categories, checks slugs before submit, and filters every list by the user's role.

One business, from sign-up to the first sale

A new owner onboards: the organizer, a default merchant, its sale channels, and access are created together in one step. The owner then adds more merchants, one at a time or together with their categories and channels. When something needs editing, the owner opens the Edit-merchant screen and changes the merchant details together with its sale channels and categories in a single save - either everything applies, or nothing changes. Each user who opens a launchpad afterward sees exactly the organizers and merchants their role permits: the owner sees their own business, an employee sees the merchants they are assigned to, and the Super Admin sees everything.

The easiest thing to get wrong

The merchant carries the tax code, the organizer does not

The organizer is a brand, not a legal seller. Tax identity, e-invoice accounts, wallets, and business type all belong to the merchant. One brand can cover several merchants with different tax registrations - confusing the two roles means confusing where every legal and financial attribute of the business actually lives.

Proprietary and Confidential. Unauthorized copying, distribution, or use of this software is strictly prohibited.