ecommerce-archive / EcommerceCoreBundle

3 stars 0 forks source link

Question: Sonata Ecommerce #1

Open nicolas-bastien opened 10 years ago

nicolas-bastien commented 10 years ago

Hi, did you check Sonata Ecommerce bundle ?

http://sonata-project.org/bundles/ecommerce/master/doc/index.html

Ecommerce bundles are definitely a required for my company.

I'm looking to have something I can plug in PrestaCMS too.

So as you began your bundle before sonata ecommerce was released maybe it can be a better idea to use it ?

Can you tell me what are your plan for your ecommerce project please ?

hacfi commented 10 years ago

Hi @nicolas-bastien, looking into it this weekend..I wanted to do it last weekend but didn’t have enough time. I’m also considering http://leaphly.org/ / https://github.com/leaphly/ for the cart. The plans for this project is to have a extremely flexible platform to start custom ecommerce solutions on Symfony2. The first step is to provide a product catalog and cart where you just define which kind of products you have and this bundles takes care of storing them in PHPCR + syncing with Elasticsearch for the front-end. I’m releasing a proper sandbox with three different kinds of shops in December. We’re currently running a shop in betamode where you can rent different products for 4 or 8 days and buy other products. I’ll sent you an email later with more details and a beta access to the shop which runs this bundle.

hacfi commented 10 years ago

@nicolas-bastien So I checked out Sonata Extension the last few hours and it looks really good. It has a lot of features already and like other Sonata bundles you can customise/configure it quite well. If you want to create a shop selling products it is definitely the better choice.

The goal of this project is to provide something like a framework you integrate into your project and then develop a highly customised ecommerce solution on top of it. In the near future I won’t provide a complete out-of-the-box shopping system although there will be several sandboxes (coming December) you can use to get a shop running very quickly. I mainly develop solutions for customers which can’t be standardised so this is just a system where you plugin your own services.

This weekend I rewrote the product creation part so it doesn’t depend on Sonata Admin (which is great but not suitable for my current project) anymore. I still have to finish the product definition part the next few days and then will publish a major update.

The basic idea is that you have one or more product types. Using php, yml or a web interface you can define which product properties/attributes belong to which product type. After defining which properties exist you can immediately create products(meaning no schema update necessary) in an admin interface as it uses PHPCR (working with the node directly) to store the data. Optionally (but highly recommended) the products are synced with Elasticsearch (FOSElasticaBundle for simplicity) and you can add more data before syncing (I use it to load data from ORM and also calculate the availability). Product types need a product handler to define which options are required and validate a cart item, to check availability and process the purchasing of a product.

In my current project I have 5 different product types. 3 of them are for rental so availability depends on reservations of those items in different sizes. The other two are purchasable products - one is drop shipping and the other isn’t. So I have very different processing when someone orders a product. For rental items I create reservations which are linked to the order item and for purchasable items I create sale entities.

What kinds of shops is your company working on? I’ll do my best next week to create a fork of prestacms-sandbox for you and integrate it with one or two different product handlers.

In general you have to code more than with other libraries/bundles but you can define absolutely everything and it’s surprisingly fast.

nicolas-bastien commented 10 years ago

Hi @hacfi thanks for your answers.

As we develop application 'on measure' I don't have a specific needs for ecommerce, what I really want is something flexible and highly customizable.

So I'm looking for a separate cart / order / catalog / search bundle and not a all in one.

As we have based all our development on sonata, I kind of prefer to use it and contribute if something in missing.

I don't know if I will have time before next week but I will try your project and sonata to have a better idea of how it works.

So thanks again for all these details and by the the way here is my email : nbastien.pro@gmail.com

hacfi commented 10 years ago

@nicolas-bastien The new release I’m working on strictly separates catalog, cart, checkout, order and search. I’ve got a busy week ahead so I can’t make any promises when I can create a small demo for you but you’ll definitely get something by the end of the week! I can understand that you want to go for Sonata but I’d be happy about feedback on what I’m working on.