Medusa is an open-source headless commerce engine that enables developers to create amazing digital commerce experiences.
Medusa: Commerce engine
Next.js: React framework
Stripe: Payment provider
Medusa React: Hooks and components for Medusa
Prerequisites: To use Medusa Express, you need a Medusa server. Check out medusa-starter-default for a quick setup.
1. Create your Medusa Express project
Use npx and select medusa.express (recommended)
Use git clone
git clone --depth=1 https://github.com/medusajs/medusa-express-nextjs medusa-express
2. Navigate to project and install dependencies
cd <your-express-folder> yarn # or npm install
3. Link your Medusa server
In your project, you should have a
.env.template file with the following content:
Copy the template into a file used for local development:
mv .env.template .env.local
Add Stripe API key as environment variable to complete orders:
# Stripe key is required for completing orders NEXT_PUBLIC_STRIPE_API_KEY=pk_test_...
Your Medusa server runs locally on port 9000 by default. Make sure to update the above environment variable, if you've changed the port.
4. Try it out!
Start up both your Medusa server and Medusa Express and try it out!
Medusa Express is running at
Important: Medusa Express requires existing product. Either seed your Medusa server with some dummy products, or create your own through Medusa Admin.