Esta página se muestra en inglés. Una traducción al español está en curso.
SkillsApr 10, 2026·3 min de lectura

Vendure — Open Source Headless E-Commerce Framework

Vendure is a headless commerce framework built with TypeScript, NestJS, and GraphQL. Extensible plugin system, multi-channel support, and full API-first architecture.

Listo para agents

Instalación lista para agent

Este activo puede instalarse después de elegir el runtime, revisar el plan y ejecutar el comando correspondiente.

Native · 98/100Política: permitir
Superficie agent
Cualquier agent MCP/CLI
Tipo
Skill
Instalación
Single
Confianza
Confianza: Established
Entrada
step-1.md
Comando de instalación directa
npx -y tokrepo@latest install 6123e157-349e-11f1-9bc6-00163e2b0d79 --target codex

Ejecutar después de confirmar el plan con dry-run.

TL;DR
Vendure provides a plugin-based, API-first e-commerce backend using TypeScript, NestJS, and GraphQL.
§01

What it is

Vendure is an open-source headless commerce framework built with TypeScript, NestJS, and GraphQL. It provides the full backend for e-commerce: products, orders, payments, fulfillment, shipping, and tax, exposed through a GraphQL API so any frontend can consume it.

Vendure targets developers and teams building custom storefronts with React, Next.js, Vue, or any frontend framework who need a flexible commerce engine without vendor lock-in.

§02

How it saves time or tokens

Vendure removes the need to build commerce primitives from scratch. Its plugin system means you add payment gateways (Stripe, PayPal, Mollie), search (Elasticsearch), and custom business logic without modifying core code. The Admin UI ships ready-made, so back-office operations work on day one. Multi-channel support lets you run web, mobile, and POS from a single backend instance.

§03

How to use

  1. Scaffold a new project with the CLI:
npx @vendure/create my-shop
cd my-shop
npm run dev
  1. Open the admin panel at http://localhost:3000/admin and log in with superadmin / superadmin.
  1. Configure products, shipping methods, and payment integrations through the admin UI or programmatically via the GraphQL API.
§04

Example

Querying products from the storefront GraphQL API:

query {
  products(options: { take: 10 }) {
    items {
      id
      name
      slug
      variants {
        price
        currencyCode
        stockLevel
      }
      featuredAsset {
        preview
      }
    }
  }
}

Creating a custom plugin:

import { VendurePlugin, PluginCommonModule } from '@vendure/core';

@VendurePlugin({
  imports: [PluginCommonModule],
  providers: [],
  configuration: config => {
    // modify server config here
    return config;
  },
})
export class MyCustomPlugin {}
§05

Related on TokRepo

§06

Common pitfalls

  • Running npx @vendure/create without Node 18+ causes silent failures in dependency resolution
  • Vendure uses TypeORM under the hood; complex queries may need raw SQL or custom resolvers instead of relying solely on the built-in list queries
  • The default SQLite database is for development only; production deployments should use PostgreSQL or MySQL for data integrity and performance

Preguntas frecuentes

What databases does Vendure support?+

Vendure uses TypeORM and officially supports PostgreSQL, MySQL, MariaDB, and SQLite. PostgreSQL is the recommended choice for production. SQLite ships as the default for quick local development but should not be used in production.

Can I use Vendure with Next.js or Nuxt?+

Yes. Vendure is headless and exposes a GraphQL API. Any frontend framework can consume it. The Vendure docs include starter projects for Next.js, Remix, and Angular. Vue/Nuxt integrations work through standard GraphQL clients like Apollo or urql.

How does the plugin system work?+

Plugins are NestJS modules decorated with @VendurePlugin. They can extend the GraphQL schema, add custom entities, register event handlers, and modify server configuration. Vendure ships official plugins for Elasticsearch, Stellate, and various payment providers.

Is Vendure suitable for multi-vendor marketplaces?+

Vendure supports multi-channel out of the box, which lets you run separate storefronts from one backend. For true multi-vendor marketplaces with independent seller accounts, you would need custom plugin development on top of the channel system.

How does Vendure handle payments?+

Vendure uses a PaymentMethod abstraction with handler functions. Official integrations exist for Stripe, PayPal, Mollie, and Braintree. You implement a PaymentMethodHandler interface to add any custom gateway, handling creation, settlement, and refund lifecycle hooks.

Referencias (3)
  • Vendure GitHub— Vendure is built with TypeScript, NestJS, and GraphQL
  • Vendure Docs— Vendure plugin architecture based on NestJS modules
  • Vendure Docs— GraphQL API for storefront and admin operations
🙏

Fuente y agradecimientos

Discusión

Inicia sesión para unirte a la discusión.
Aún no hay comentarios. Sé el primero en compartir tus ideas.

Activos relacionados