Medusa
medusajs · Ecommerce
GitHub stars
36,523Stats updated
What is Medusa?
Medusa separates reusable commerce logic from the storefront and business-specific code around it. Its modules provide products, prices, promotions, inventory, carts, customers, orders, payments, taxes, fulfillment, and regions, while workflows coordinate those domains and offer rollback-aware extension points for custom applications.
Medusa is a commerce platform with open-source modules and a customization framework. It provides core building blocks for custom commerce applications, including B2B stores, marketplaces, and point-of-sale systems.
Core capabilities
- Use modular product, pricing, inventory, cart, order, payment, and fulfillment logic
- Compose commerce operations through reusable workflows and APIs
- Build DTC, B2B, marketplace, distributor, service, or point-of-sale applications
Core commerce domains exposed as modules
Products, prices, promotions, inventory, carts, customers, orders, payments, taxes, fulfillment, and regions are represented by focused modules. Default APIs and workflows use these components together, while application code can access the same domain logic for custom behavior.
- modules
- products
- orders
- fulfillment
Workflows coordinate custom commerce logic
A workflow can move an operation through several modules and define compensation when a later step fails. Developers can reuse standard flows such as adding to cart, introduce their own steps and providers, and connect the resulting backend to a tailored storefront, admin experience, or external service.
- workflows
- APIs
- providers
- customization
Where it fits
Use cases
- 01
Build a headless storefront backend
Use the commerce modules and API routes for catalog, customer, cart, checkout, order, payment, tax, and fulfillment flows while supplying a separate storefront experience.
- 02
Create a specialized commerce workflow
Compose or extend workflows for pricing rules, inventory decisions, order processing, fulfillment providers, promotions, and business-specific operations without replacing every core primitive.
- 03
Support a nonstandard commerce model
Arrange the modules for a B2B store, marketplace, distributor, point-of-sale system, service business, or another application whose requirements do not fit a fixed storefront product.