Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

sylius or sonata or custom for subscription based application

We are going to build something like cratejoy.com, but don't want spend lot's of time building which is already builded before for developers.

I was going through sonata and sylius, but not sure if we can build subscription based model with one of them. If yes we can, then which would be best to use? or should we just build complete custom solution, because it involve b2b solution.

What we will be building?

Basically e-commerce software like any os-commerce shopping system, but the only difference is, we will be adding subscription on each product.

So let's say, if you order a product, we will ship it to you every month to your door step.

but we are building this as service, so many people can just create their site and start using our tools to start selling there products.

like image 700
Basit Avatar asked Jun 07 '15 14:06

Basit


1 Answers

I might be a little biased towards Sylius, as I work with it constantly - I've tried using Sonata bundles in projects before but failed in making use of them.

Reasons for using Sylius are that it's heavily decoupled and customizable, which is exactly what you want if you need an e-commerce solution that is not the conventional "add product to basket, pay for it once" model.

There are two approaches you can take to use Sylius: Either use the full stack application and customize it, which is the most common approach and better supported. The other approach is to install Sylius like a library rather than an application and build the application and frontend yourself, using Sylius classes and services when you need to (which is what I do).

Things to be careful when using Sylius are that it's still in beta, with breaking changes occurring between releases. Also the documentation is very incomplete or outdated (something I plan to help improve), with the exception of Resource and ResourceBundle - these packages are the most important part of Sylius and are therefore very well documented. For your project, I recommend the first option.

For subscriptions, areas of Sylius you want to look at configuring and extending are OrderBundle, PricingBundle and PaymentBundle. If you're very familiar with Symfony, this should be straightforward.

like image 179
Adam Elsodaney Avatar answered Sep 29 '22 19:09

Adam Elsodaney