~/tools/vendure
tool

Vendure

Vendure is an open source headless commerce platform built in TypeScript — a Shopify and commercetools alternative that runs your catalog, orders, pricing, and payments behind a single GraphQL API you self-host and own.

What is Vendure?

Vendure is an open source headless commerce platform that runs your product catalog, carts, orders, pricing, promotions, and payments behind a single GraphQL API. Built in TypeScript on Node.js and NestJS, it gives developers a strongly-typed commerce backend to extend with plugins and self-host on any Node-capable infrastructure.

What is Vendure best for?

Vendure suits development teams building serious B2C, B2B, or marketplace stores who want a clean, typed backend they fully control instead of a hosted SaaS. It’s a strong fit for complex B2B commerce — company accounts, customer-specific pricing, approval workflows — and for headless builds where the storefront is a separate React, Next.js, or Vue app talking to the API.

What can Vendure do?

  • Expose catalog, carts, orders, customers, promotions, tax, shipping, and stock through a unified GraphQL API
  • Support multiple sales channels, currencies, languages, and tax zones from one backend
  • Extend core behavior with a stable plugin architecture (custom fields, entities, resolvers, and admin UI extensions)
  • Handle B2B workflows: company accounts, quotes, contract pricing, and order approvals
  • Run on PostgreSQL, MySQL, MariaDB, or SQLite, deployed via Docker, Kubernetes, or any Node.js host
  • Ship a React-based Admin UI for managing products, orders, and settings
  • Integrate ERP, PIM, CRM, and payment providers through official and community plugins

Where does Vendure fall short?

Vendure follows an open-core model rather than the fully permissive licensing of Medusa (MIT) or Saleor (BSD-3). The commerce core is GPLv3 and free, but several advanced enterprise capabilities — SSO, richer B2B pricing, approval workflows — live in the paid Vendure Platform layer, so a fully self-hosted build may hit features that are commercial add-ons.

It’s also GraphQL-only and NestJS-centric, so teams that prefer REST or aren’t comfortable with the TypeScript/NestJS/GraphQL stack face a steeper learning curve than a lighter framework offers. And like most headless platforms, subscription and recurring-billing commerce isn’t built in — you add it through plugins or custom code.

Is Vendure free?

Yes — the Vendure core is open source under the GPLv3 (with a plugin exception that allows proprietary plugins) and free to self-host with no per-sale or GMV fees. Two paid options sit on top: Vendure Cloud, a managed hosting service with git-push deploys and flat annual pricing, and Vendure Platform, a commercial subscription that unlocks enterprise B2B and administration features.

What does Vendure replace?

Vendure is an open source alternative to hosted and licensed commerce platforms like Shopify, BigCommerce, Salesforce Commerce Cloud, and commercetools. Instead of monthly fees, revenue-share, or per-API-call composable pricing, you own the backend and pay only for the infrastructure you run it on.

FAQ

Is Vendure open source? Yes. The Vendure core is licensed under GPLv3 with a plugin exception, so the code is free to use, self-host, and build proprietary plugins against. Some enterprise features are separate commercial products.

Can I self-host Vendure for free? Yes. You can run the open source core on your own servers with no licensing cost — only your hosting bill. Vendure Cloud is an optional paid managed-hosting alternative.

Is Vendure a good commercetools alternative? For teams wanting a typed, API-first backend they own, yes — Vendure covers much of the same headless, multi-channel, B2B ground as commercetools without composable per-request pricing, though commercetools offers a larger managed enterprise ecosystem.

What do I need to run Vendure? Node.js (20.19+ or 22.12+), a supported database (PostgreSQL, MySQL, MariaDB, or SQLite), and a JavaScript/TypeScript build for the storefront. It deploys well with Docker or Kubernetes.