Almost anyone who has used SilverStripe for client work for any length of time has had a brush with the dreaded spectre of commerce. It can be difficult to make sense of the modules that are out there and even more difficult to customize or integrate with another product (we’re looking at you Magento). Last month at StripeCon European Conference, we had some great discussion around this topic and what we could do to move the platform forward.
What can you build with SilverStripe now?
While it's not always straightforward, you can actually do a lot with the solutions already in place. Here are a few examples:
originalnutribullet.co.nz - built with SilverStripe Shop by Toast
aboutshoes.co.nz - built with SwipeStripe by Little Giant
skinny.co.nz - built with SilverStripe Shop
What tools are available within the SilverStripe ecosystem?
SilverStripe Shop - Stability and Community
This fork of the original e-commerce module seems to have the most activity right now. It has a focus on creating an increasingly stable and extensible module through unit and Behat testing, semantic versioning, and sensible architecture. It uses the wonderful Omnipay library for payment, so you get 40+ payment processors out of the box.
It does have its weaknesses though: there’s a decent amount of technical debt from previous times; documentation can be confusing or lacking; and internationalization is spotty (but improving rapidly!).
Disclaimer: I'm one of the maintainers.
SwipeStripe - Clean and Lightweight
A relative newcomer - this module was written by SilverStripe developer Frank Mullenger in 2012. As such it boasts clean, tested code from the start. It's modular to a fault, and the CMS UI has had a little more love. It also has lovely branding as it started its life on a commercial license before being open sourced a couple of years ago.
The main downsides would be that the community seems to be less active these days and there are fewer payment drivers. You may find things like checkout to be less flexible than the other modules if you want to modify them.
SilverStripe E-commerce - Faster Progress
This is a continuation of the original e-commerce module, though not by the original authors. The pace of development is faster, so it tends to have more new features and more options (for example the order state machine is completely configurable via the CMS UI). The backend is much more developed and stylized and things like shipping, search, and ajax are built in.
The downside is that faster progress comes with a less disciplined development philosophy, so don't look for much automated testing and you may find new versions don't play as nicely with older code. If you can live with that and want the newer features, this one might be for you.
- Torindul Shop - https://github.com/torindul/torindul-silverstripe-shop - newer module still in early stages
- Shopic - http://www.shopic.se/ - Solid module with a commercial license
- FoxyStripe - https://github.com/dynamic/foxystripe - FoxyCart integration
- SilverCart - http://www.silvercart.org/ - This project has recently seen some new action and they’re promising a new release soon
- Moltin - https://moltin.com/ - API-based e-commerce (platform independent)
- Magento - http://magento.com - so many features, so much pain
What would it take for SilverStripe to be a first class commerce platform?
We can’t compete with Magento, Shopify, Sylius, or Spree for a breadth of features, but I don't think we have to. I think we can narrow it down to two use cases:
- SilverStripe developers and creative agencies who need to add a shopping cart to an existing site (i.e. adding a few simple products). These guys just need something that is simple and works out of the box.
- Agencies who need to build more custom e-commerce experience utilizing their team's expertise in SilverStripe. In this case, a solid foundation is needed that can easily be extended and customized.
Over the course of the conference in London, a vision began to emerge. What would happen if we picked the top 5 or 6 must-have features from those involved and put some time and resource into developing a "2.0" version of one of the existing modules? What if this release corresponded with the release of SilverStripe 4.0 and took on the same spirit of being willing to break some things to get on a more forward-looking course?
If you'd like to know more about the specific features we discussed, you might want to watch my talk, or have a look at the meeting notes and corresponding user stories, or this Trello board for ongoing updates.
Where to from here?
The next task is to identify the 4-5 features that will be targeted in this 2.0 release and then have a small team create a proposal that can be submitted back to the community RFC-style. From there maybe different companies or individuals will take features and run with them, or we can organize some hack days to knock out simpler features. If needed, we can run a small crowdfunding campaign to free up 1 or 2 developers to spend some concentrated time on this. Ideally we'll also be able to pull together a solid core team who can carry on the project from there.
The next step in that process though is to have a Google Hangout where we settle on those features and who will create the proposal. That will be a public hangout soon which anyone is welcome to watch and contribute to.
We've also created a Trello board to manage ongoing communication. Feel free to subscribe to and comment on the cards on there. That will be the central point of communication about this effort.
Additionally, feel free to drop by the Shop Gitter channel and share your thoughts or ask for advice if you decide to try out one of these modules.
Posted by Will, 13/01/2017 4:11am (6 years ago)
Posted by shirley collins, 06/12/2015 2:43pm (8 years ago)
I think you nailed it with:
>We can’t compete with Magento, Shopify, Sylius, or Spree for a breadth of features, but I don't think we > have to.
I'd agree, you absolutely don't have to. The market for Magento / Shopify is very different to the market that's looking for CMS + Shopping Cart.
I've traditionally done most of my work with Joomla. But as I've been finding more and more clients want to sell some sort of product online I've been picking WordPress for more and more projects **purely** because of how well WooCommerce integrates and how easy it is for the customer and for me.
Any CMS vendor that can get the CMS + shopping cart done well is going to be a really popular choice, both for designers and clients.
I think the biggest part of WooCommerce's success comes down to the 3PD community. There are WooCommerce plugins for virtually every use case you could imagine.
With that in mind, I think one of the important things would be to ensure that any solution that was to be implemented in the core SilverStripe product was also "open" enough to allow developers to easily create add on extensions. Then to also make it easy for 3PD to distribute and sell those extensions.
I'm heading over to check out your gitter and Trello page's now.
Posted by Eric Fernance, 01/12/2015 11:29am (8 years ago)
Should I stick to SS or for the first time in many years choose something else. I need a low budget little shop, so I am not willing to put in much work into it, but after trying all the available shops for SS I am not convinced they are up 2 date ( I've had problems with all the modules You did mention on SS 3.2) and stable enough.
I hope Your initiative will help us to have a stable ecommerce platform!
Posted by Szilárd Szerencsei, 30/11/2015 5:45pm (8 years ago)