Skip to main content
In this document, you’ll learn about the product status lifecycle and how a submission becomes a live catalog product.

Status

A product’s state is held in the status field of the Product model, typed by Medusa’s ProductStatus enum. A master product moves through four statuses:
Vendor-created products default to proposed. A store submits a product for review rather than publishing it directly. An operator (or a low-risk auto-confirm rule) is what promotes it to published.

Transitions

Each review transition has a dedicated Mercur workflow so the audit trail, events, and side effects run consistently: Every transition validates that the product is currently proposed before it runs, and records an immutable STATUS_CHANGE (or CHANGE_REQUESTED) action in the product-change pipeline for a full history of who reviewed what.
Reviewing a product doesn’t touch offers. Publishing makes the master product sellable, but each store still lists it independently through its own offer.