Headless Commerce

Spree is a modular, API-first headless ecommerce platform which consists of several APIs.
Spree architecture

Spree APIs

Spree is a modular, API-first headless e-commerce platform that consists of several APIs.

​Storefront API​

​Platform API (Developer Preview)

  • OAuth 2.0 authentication
  • designed for building application to application integration
  • permission sets based access to resources
  • access any resource on the Spree platform and perform any action


We're working hard to deliver webhooks in the Spree v4.4!


Spree allows limitless storefront customization.
You can build your own storefront from scratch using our SDK which takes care of all heavy lifting tasks, or you can use Next.js Commerce or Vue Storefront.

Spree modules

Spree is divided into several modules / ruby gems which you can install independently.
​Spree Starter comes with all modules pre-installed for your convenience!
Spree module
Data models, Services and APIs
Admin Panel UI
Sample seed data
Transactional emails, eg. order confirmation
There are many other packages adding more features called Extensions.
To change which Spree gems you would like to install you will need to modify your project Gemfile.

Headless installation (default)

gem 'spree'

Headless with Admin Panel

gem 'spree'
gem 'spree_backend'
After changing the Gemfile you need to run
bundle install
or if using Spree Starter:
bundle install
docker-compose build