burnbright / silverstripe-shop
Provides an ecommerce product catalog, shopping cart, and order management system
Package info
github.com/silvershop/silvershop-core
Type:silverstripe-vendormodule
pkg:composer/burnbright/silverstripe-shop
Requires
Requires (Dev)
- omnipay/dummy: dev-master
- omnipay/manual: ^3
- omnipay/paymentexpress: dev-master
- php-http/guzzle7-adapter: ^1
- phpunit/phpunit: ^11.3
- squizlabs/php_codesniffer: ^3.7.2
Suggests
- bummzack/silverstripe-omnipay-ui: Adds UI Components to manage payments in the SilverStripe CMS.
- silvershop/discounts: Create coupons and generic discounts to be applied at checkout.
- silvershop/shipping: Provide various shipping methods.
Replaces
- dev-main / 6.x-dev
- 6.0.0
- 4.x-dev
- 4.0.0
- 3.x-dev
- 3.3.1
- 3.3.0
- 3.2.0
- 3.1.1
- 3.1.0
- 3.0.4
- 3.0.3
- 3.0.2
- 3.0.1
- 3.0.0
- 3.0.0-alpha3
- 3.0.0-alpha2
- 3.0.0-alpha1
- 2.x-dev
- 2.4.2
- 2.4.1
- 2.4.0
- 2.3.1
- 2.3.0
- 2.2.1
- 2.2.0
- 2.1.1
- 2.1.0
- 2.0.1
- 2.0.0
- 1.x-dev
- 1.3.2
- 1.3.1
- 1.3.0
- 1.2.0
- 1.1.1
- 1.1.0
- 1.0.0
- 0.8.6
- dev-copilot/fix-errors-in-github-action
- dev-wernerkrauss-patch-1
- dev-merge-features-from-v3
- dev-ajax-cart
This package is auto-updated.
Last update: 2026-04-25 20:40:47 UTC
README
The SilverShop module aims to provide developers with a framework for building, and customising ecommerce-based projects.
It includes facilities for customers to browse products and place orders, and for administrators to manage products and orders.
We've put a strong focus on testing. You can see the of this project, running on MySQL, SQLite, Postgres, as well as a few different versions of PHP.
- Website: http://www.silvershop.io
- Demo: https://demo.silvershop.io
Your contributions, and feedback are welcomed and appreciated. There are many ways you can contribute to this project. A tremendous thanks to everyone that has already contributed.
Requirements
- SilverStripe ^6 framework & cms
- Omnipay Module + its dependencies.
See composer.json for exact set of dependencies.
- For a SilverStripe 4.x and 5.x compatible version, please use 3.0 or 3.1.
- For a SilverStripe 3.x compatible version, please use a 2.x release.
Stay up to date / get in touch
- Planning Trello Board
- Roadmap
- Live chat on Gitter! 
Documentation
- https://github.com/silvershop/silvershop-core/blob/master/docs/en/index.md - for Developers
- https://github.com/silvershop/silvershop-core/blob/master/docs_user/en/index.md - for Users
Installation Instructions
To install SilverShop using composer, run the following command:
composer require silvershop/core
Build Tasks
There are a few useful tasks that can be run via a url to help you test:
{yoursite.com}/dev/tasks/PopulateShopTask- will create cart, checkout, account, category and product pages{yoursite.com}/dev/tasks/PopulateCartTask- will add products to the cart, and navitate you to the checkout
Configuration
You can view various configuration options in the 'example_config.yml' file.
Offsite payment gateways (e.g. PayPal Express) lose the session on return in CMS6
SilverStripe CMS6 changed the default session cookie SameSite attribute to Strict. This means the browser will not send the session cookie when the user is redirected back from an external payment provider, resulting in a new empty session and a broken checkout flow.
To fix this, set cookie_samesite to None or 'Lax' in your project's session config:
SilverStripe\Control\Session: cookie_samesite: None # Required for offsite payment gateways (PayPal Express etc) to preserve session on return # or cookie_samesite: 'Lax' # Required for offsite payment gateways (PayPal Express etc) to preserve session on return
SameSite=None requires the cookie to be sent over HTTPS — SilverStripe enforces the Secure flag
automatically when this setting is used, so no additional config is needed. This was not an
issue in CMS5, which did not default to Strict.
Core Features
- Product Catalog - Products extend Page, and can be browsed within Product Category pages.
- Cart Page - For viewing and updating your cart.
- Checkout - Gather delivery/billing details and anything specific to the order. Can be single-page or multi-step.
- Online Payments - Via the omnipay module.
- Administration - Manage the catalog and orders in the CMS.
Futher functionality is provided by add-on submodules.
Add-on Sub Modules
Don't reinvent the wheel! Get additional pre-built functionality with sub modules. All additional functional will be tagged on packgist as #silvershop