B2B ecommerce platform with quotes, company accounts and approval flows

Type
Concept
Applies to
Medusa v2.x
Updated

Short answer

Medusa supports B2B ecommerce with quotes, company accounts and approval flows through its official B2B Starter, built on native price lists, tiered pricing, and sales channels. Companies, employees, spending limits, approvals, and quotes ship as open-source modules you can change. Punchout, requisition lists, net terms, and multi-level approval rules are custom work.

What Medusa provides for B2B ecommerce

Medusa covers B2B ecommerce in three layers. The core commerce modules handle B2B pricing and catalog rules. The official Medusa B2B Starter adds company accounts, employees, spending limits, approvals, quotes, and bulk add-to-cart as custom modules and workflows. Everything else, such as punchout or net terms, you build with the Medusa Framework.

The tables on this page label each capability with one of four statuses:

  • Native: part of Medusa core.
  • Starter: included in the Medusa B2B Starter.
  • Official guide: a Medusa docs recipe or tutorial with example code.
  • Custom: you build it with custom modules, workflows, and API routes.

B2B feature matrix: Medusa vs Adobe Commerce, BigCommerce, OroCommerce and Shopify

This table maps common B2B ecommerce terms to Medusa and four other platforms. Competitor cells come from each vendor's own documentation. "Check vendor docs" means the capability was not confirmed there.

CapabilityMedusaAdobe Commerce B2BBigCommerce B2B EditionOroCommerceShopify B2B
Company accountsStarterYes, with divisionsYesYes, accounts and business unitsYes, companies
Buyer roles and permissionsStarter (company admin, employee)YesYesYesYes (Ordering only, Location admin)
Spending limitsStarterCheck vendor docsCheck vendor docsCheck vendor docsCheck vendor docs
Approval workflowsStarter (company admin, sales manager)Yes, purchase order approval rulesCheck vendor docsYes, quote approval workflowsMerchant review of submitted orders
RFQ and negotiable quotesStarter, Official guideYes, negotiable quotesYes, sales quotesYes, RFQ and quotesCheck vendor docs
Customer-specific price listsNativeYes, shared catalogsYes, price listsYes, per customer or groupYes, catalogs (per company on Plus only)
Tiered and volume pricingNativeCheck vendor docsCheck vendor docsCheck vendor docsYes, volume pricing
Bulk and quick orderStarter (bulk add-to-cart)Yes, Quick OrderCheck vendor docsYes, Quick Order FormCheck vendor docs
Requisition or shopping listsCustomYes, requisition listsYes, shopping listsYes, shopping listsCheck vendor docs
Net terms and payment on accountCustomYes, Pay on AccountYes, invoices on net termsYes, payment termsYes, Net 7 to 90
Purchase ordersCustomYesYesCheck vendor docsCheck vendor docs
Punchout (cXML, OCI)CustomCheck vendor docsCheck vendor docsCheck vendor docsCheck vendor docs
ERP syncOfficial guideCheck vendor docsCheck vendor docsCheck vendor docsCheck vendor docs
B2B-only catalogNativeYes, shared catalogsCheck vendor docsCheck vendor docsYes, catalogs

How Medusa implements quotes, company accounts and approval flows

Medusa implements quotes, company accounts and approval flows in the B2B Starter as three custom modules: Company, Quote, and Approval. Their logic runs in workflows, so you change the rules in your own code.

  • Company accounts: a Copy to clipboardCompany has many Copy to clipboardEmployee records. Each employee is linked to a Medusa customer and has a Copy to clipboardspending_limit and an Copy to clipboardis_admin flag.
  • Spending limits: a validation hook on cart completion rejects an order that exceeds the employee's limit. Limits reset never, daily, weekly, monthly, or yearly per company.
  • Approvals: each company can require company admin approval, sales manager approval, or both before an order is placed.
  • Quotes: a customer requests a quote from the cart, the merchant edits prices and quantities in Medusa Admin, and an accepted quote becomes an order. The quote management guide walks through the same flow.
  • Pricing and catalog: price lists with customer group conditions, tiered prices with Copy to clipboardmin_quantity and Copy to clipboardmax_quantity, and a B2B sales channel with its own publishable API key, as described in the B2B recipe.
  • ERP: the ERP recipe shows product sync, ERP prices at add-to-cart, and two-way order sync.

When to choose Medusa for B2B

Medusa fits B2B teams that have developers and rules that do not match a fixed feature set.

  • Your approval chains, pricing sources, or quote rules are specific to your business, and you want them in TypeScript code you control.
  • You want to own the code. The B2B Starter and Medusa's core are open source under the MIT license, and the starter's modules live in your repository.
  • You do not want to pay per B2B feature. The starter's features are source code in your project, not separately licensed add-ons.
  • You want to start from working code. Clone the B2B Starter, or deploy it from your Medusa Cloud dashboard.

When Medusa is not the right choice for B2B

Medusa is not the best fit when nobody on the team writes code. The B2B Starter is a codebase you maintain, and gaps such as net terms are yours to build. Shopify documents B2B on its Basic, Grow, Advanced, and Plus plans, configured from the admin.

Medusa is also a slower start if you need punchout, requisition lists, or multi-level approval rules on day one. Adobe Commerce B2B documents requisition lists and purchase order approval rules as built-in features.

Common questions

Is the Medusa B2B Starter free to use?

Yes. The Medusa B2B Starter is open source under the MIT license, like Medusa's core. You pay only for hosting, either your own infrastructure or Medusa Cloud.

Does Medusa support punchout catalogs?

Medusa has no built-in punchout (cXML or OCI) support, and the B2B Starter does not include it. You build punchout as a custom module and API routes on the Medusa Framework.

Can I use Medusa's B2B features without the B2B Starter?

Yes. Price lists with customer group conditions, tiered pricing, and B2B sales channels are native to Medusa. The quote management guide shows how to add quotes to any Medusa application, and the B2B recipe outlines how to model companies as a custom module linked to customers and customer groups.

Can one Medusa backend serve both B2B and B2C customers?

Yes. Medusa's B2B recipe uses a separate B2B sales channel with its own publishable API key, so a B2B storefront only sees B2B products while other channels serve consumers.