views:

296

answers:

1

I need to build an internal order entry and tracking system for a grocery store which requires many of the features of existing e-commerce systems, such as product catalog, customer_to_order relations/views, movement reporting, order statuses, etc. However, the first phase of the product is purely internal, so I don't need any online e-commerce features such as shipping addresses, postal rates or a payment gateway. I've also got a bunch of business specific stuff that may not apply to a lot of on-line stores: complex product/customer discount system, lots of attributes for the products, a producer order-tracking flow (customer has an order with us and we have an order with the producer), and so on.

So I'm stuck wondering if I would be better off customizing an existing product, or rolling my own with a good web framework (such as Python/web2py)? If it was a cut-and-dry online store, then the decision would be clear - but it's not. So I'm trying to find the most extensible/flexible FOSS e-commerce software for prototyping.

The main contenders I've been considering so far are: Drupal/Ubercart, Django/Satchmo and RoR/Spree. Ubercart is undergoing a complete re-write as Drupal Commerce, so that puts me off. The Spree project looks clean and I like the ideas - but I'm already writing a product/customer ETL in Jython and don't want to balance the two languages - both Python and Ruby are new to me.

I don't like Magento's enterprise/community edition model. And I've heard lots of complaints about osCommerce and it's variants.

Thanks in advance for your thoughts.


By the way, I think the gap between the feature-set I need and what I could get out-of-the-box from an existing e-commerce product is on the order of 30%.

+1  A: 

if you need that much extra functionality I reckon roll your own so you aren't constrained later.

Or better yet fork the current very basic (and easy to understand) web2py estore:
http://code.google.com/p/web2py-estore/
http://web2py-estore.appspot.com/ (demo)

Plumo
As a matter of fact, I just came across the web2py e-store and am looking into it. Thanks.
Tony
Cool! I am the administrator of the google code site could give you commit privilege if you wanted to extend it. But your description sounds different enough that forking might be preferable.
Plumo
Thanks, Richard. Maybe we could implement a few of the more general features before forking. I'll follow-up if we decide to use web2py/e-store and get some code rolling.
Tony
I've decided rolling my own is probably my best option. Starting parallel prototyping with Django and web2py to see which one is a better fit for my development style.
Tony