Looking for commerce advice

Topics: Announcements, General
Coordinator
Jun 29, 2011 at 3:31 AM

We are currently considering some core e-commerce features for Orchard, and we are looking for advice and validation from Web professionals who routinely implement commerce sites.

Specifically, we could start with the following questions:

- What are your customers selling (physical objects, digital documents, subscriptions, customizable objects, etc.)? Who are their customers?

- What volumes of product catalogs and sales are they handling?

- Are your customers selling in a specific region or everywhere in the world? If a specific region, which?

- What is the set of features that you need to implement commerce sites for your customers?

- Any other comment, or anything you'd like to draw our attention to?

Jun 29, 2011 at 10:16 AM
Edited Jun 29, 2011 at 10:16 AM

I would say an import function from the old system is really important. So something like the import/export module with a neat xml format to enable easy migration of products from the old system. Or like most of my customers they already have a product system, for them we need a smooth integration of product info/data with this e-commerce module.

Jun 30, 2011 at 8:17 AM

Something such as nopCommerce :)

Jul 1, 2011 at 2:57 AM

One thing that would set Orchard miles apart from anything else would be the ability to handle recurring, subscription based services.  I've researched many shopping cart solutions and it is a very small percentage which support them.  Paypal has a recurring payments api and a couple of the other processors do as well, however they're complex and take a lot of effort to integrate.

On the flip side of things (i.e. physical merchandise) , one thing that I hear a lot of people requesting are the ability to support inventory at multiple locations. 

Jul 4, 2011 at 8:57 PM

Hello Bertrand,

I am not a real coder like all the people here but trying to learn from you here but what I do realy know is Implementing ERP software since I did this most off my live. In my opinion the most important functionality for a webshop are:

  1. the abbility to link to these kind of systems.
  2. Retrieving Clients, Items, Stock levels on a regular basis
  3. Then there should be a good export for Sales Orders back to the ERP.
  4. Another feature that might be needed if a client changes or adds delivery address and Contact person details.
  5. Something like workflow on the Sales Orders should also be present.
  6. Retrieving updates on order status from the ERP.
  7. Possibility to make quotations to clients instead of Sales Orders
  8. Possibiltity to promote quotations to sales order or giving them status lost.

Etc. Etc. Etc.

But to resume A good easy and user friendly mapping and import system is very important. This might be mapping to SQL or XML CSV Excel etc.

Rgds

Wim 

 

Jul 5, 2011 at 10:32 AM

I agree with @ldhertert that a subscription management and payment module would be very nice, and linking that to permissions somehow would be great!

Jul 7, 2011 at 2:12 PM

Hello Bertrand,

I'll answer some of your questions using  my experience as an in-house developer for a mid-sized shop in the Netherlands:

- What are your customers selling (physical objects, digital documents, subscriptions, customizable objects, etc.)? Who are their customers?
We are selling physical products (mobile accessoiry) or combinations of physical products (virtual products). 

- What volumes of product catalogs and sales are they handling?
We currently manage over 11.000 different products categorized by mobile phone Brand / Type / Articlegroups. Handling over 15.000 orders / month.

- Are your customers selling in a specific region or everywhere in the world? If a specific region, which?
We are currently only selling in the Netherlands and Belgium. We are planning to extend to other EU countries. 

- What is the set of features that you need to implement commerce sites for your customers?
We have an in-house development team, so we basically have only one customer. We manage all IT related systems (front- & backend, warehouse, shipment, etc.)
What I'd like to see in an orchard commerce module:

  - very good extendability points. Like pluging in custom product types, custom order processing flows. payment modules.
  - Import/Export/Syncing with existing product catalogs. (In our case we developed a custom product management tool specific for mobile accesoiry products), we need to keep that in sync with a frontend catalog.
  - Event/Bus based. So we can plug in our custom order processing/warehouse/inventory components

- Any other comment, or anything you'd like to draw our attention to?
  - customize, customize, customize.
  - dont try to write a Full e-commerce system. Focus on the front-end. There are very good 3rd party order processing / inventory / warehouse management systems. Maybe just offer a minimal/basic component for order processing/inventory and instead offer very good extension points to integrate with 3rd party components.
    What I see in most (oss) products is they try to deliver a full front/back end for displaying products, taking orders, payment fullfilment, order processing, invoice handling, shipping, etc.
    What I learned from using those is that they never work like and grow with your business processes. And it's a pain in the ass to customize and integrate it with 3rd party software.
  - So basically: focus on the front-end, displaying / searching / categorizing products and taking orders. Provide a simple admin interface for products and orders. But also provide very good extension points (bus/services) to integrate with 3rd party components.

 

my 2 c.

 

Jul 14, 2011 at 3:37 PM
Edited Jul 14, 2011 at 3:47 PM

I will plus one the vote for something like nopCommerce. It looks like a really great project with a good team behind it, it is based on MVC.

From what I understand there are ways to integrate existing MVC applications with Orchard and perhaps this could be done with nopCommerce, I would certainly vote for something like this if it's possible.

I have found the discussion at the following link to be useful in this regard.

Turning a fully functional MVC project into an Orchard Module/Widget. HOW?

There is a discussion going on over at nopCommerce about this matter, it can be found at

NopCommerce integration with Orchard Project

One issue seems to be the fact that nopCommerce uses EntityFramework for the data access layer, whereas Orchard uses nHibernate.

Could this issue be dealt with something like what Bertrand has previously suggested?

"If you do your own database access, you need to opt out of Orchard's ambient transaction. This is done by surrouding your data access code with a using (new TransactionScope(TransactionScopeOption.Suppress)"

 

In terms of features, two things I'd like to see aside from the normal range of eCommerce features would include Affiliates referral/sales tracking features and integration with accounting systems or an API/Webservice/Data Export capability to be able to do use the sales data with an accounting system.

 

My two cents!

 

Cheers

 

Austin

Jul 23, 2011 at 4:06 AM

Ya.. what Autsin said!

I have clients in both the US and Canada so currencies, taxes, and shipping are all major issues when choosing an ecom solution for them.

Cheers,
jon v

Jul 24, 2011 at 7:04 AM

+1 for nopCommerce :) Or leverage the form builder module (oForms) to post user input and content properties to Paypal or other checkout systems.

Ecommerce is a whole other beast and would not want to take away from CMS. Also imagine all the nice API extensions Orchard would get if it does a collaboration project with nopCommerce. It could also lead into elegant integration patterns for forums, wiki, social, and mobile.

IMHO

Jul 24, 2011 at 4:06 PM

I also vote for nopCommerce. Today it's the best ASP.NET shopping cart. And it's MVC. Integration with nopCommerce will be just great!

Jul 25, 2011 at 6:30 PM
Edited Jul 25, 2011 at 7:04 PM

 



In the 1990s, Intuit was able to disrupt the accounting industry by replacing general ledger account numbers with account names. This simple change broke down a barrier for non-accountants who had trouble using accounting software. Add in a low cost-of-entry and Quickbooks quickly became a runaway success.

Today, many SMBs still spend too much time and money on training new hires and maintaining eCommerce solutions. I think an Orchard Commerce module that is very simple to use and administer, yet is highly extensible can provide $$$ opportunities for ISVs, VARs, web hosting companies, and Microsoft.

- What are your customers selling?

·     o Physical objects, digital documents, subscriptions

- What volumes of product catalogs and sales are they handling?

·     o Small – large volumes

- Who are their customers?

·     o B2b and b2c

- What is the set of features that you need to implement commerce sites for your customers?

Start with a very basic product catalog for companies that only want to display categories of products for customizable units of measure. A product catalog that is easy to understand and maintain by entry-level personnel.

Additional features such as a discounts, product bundles(parent/child product relationships), shopping cart, wish lists, favorites, user profiles, social, promotions, cross-selling and upselling functionality that the administrator is able to turn on/off via an administration page.

It would be great to have an import/export/synchronization functionality that 3rd party modules can participate with simply by providing some sort of data mapping. 

I would like to see an order processing pipeline in the shopping cart that uses Windows Workflow Foundation. This can be a good place to make calls to 3rd party ($$$) modules for VAT /sales tax calculations and shipping, as well as integration with CRM and ERP applications.

 

Jul 27, 2011 at 12:56 PM

Hi im working on a company with an own ecommerce solution, we are investigating an integration with orchard.

Even if our ecommerce is not open source we hopefully can contribute with generic stuff, buggfixes etc.

These are my approximate answers.

 

Specifically, we could start with the following questions:

- What are your customers selling (physical objects, digital documents, subscriptions, customizable objects, etc.)? Who are their customers?

mostly physical, sometimes customizable with parts,variants etc, mixed b2b and b2c

- What volumes of product catalogs and sales are they handling?

number of products is 1000 to 100 000, number of customers per day 10 to 10000

- Are your customers selling in a specific region or everywhere in the world? If a specific region, which?

mostly europe

- What is the set of features that you need to implement commerce sites for your customers?

- Any other comment, or anything you'd like to draw our attention to?

I havent coded or digged in to the code of Orchard (just read a lots of blogs about orchard), but these are my thoughts! :)

first I must say that I, as a programmer, understand the importance of a good architect, but I was really looking forward to more out of the box cms features as:

  • ·     Publishing – Workflow/permissions, draft approval, history (restore from)
  • ·     Multiple templates for pages
  • ·     SEO – Semantic URLs, metas/keywords, Web standards, sitemap
  • ·     Navigation – Navigation management, front-end UI (menus, breadcrumbs)
  • ·     Themes – Additional themes improvements (in-browser editing, etc)
  • ·     Performance – Caching, optimization, script combining/minification

 

I hope you not run ahead making lots of ecommerce functionality (instead of cms functionallity) or hardcode an integration to nop commerce! :)

If we make an integration with our ecommerse solution my thoughts are:

  • Keep users in our system but implement your membership providers interface. Your system is more flexible and easier to change, we need customer information for storing adresses, get access rights to pricelists, campaigns, products. 
  • Keep e-commerce data in our solution and have cms data in orchard.
  • I think most of the cms content can be cached on language (country) and logged in (except A/B tests ). And I think I read a blogg about caching in orchard which is great because of performance is really important in e-commerce. Prices, stocks and product lists are harder to cache.
  • I have just installed and tried the plugin for menu trees, but we really need multi language urls to get good google ranking. We really need to develop a good content site tree in the admin for ordering, creating, deleting pages. We also need full control over the tree, i.e. hide nodes which dont contain products wich the customer can buy. The menu must be cached for performance because sometimes the product categories can be huge.
  • Im thinking of creating one cms page for each product or creating one template page as a child to a product list page. The template page will take as url parameter the product name to show. I want to avoid one route entry per product because this will give a slow big route table. i.e. 10 000 products * 5 languages. Im also not sure how the performance of orchard will be if we create one cms page for each product.
  • We want mutli site (tenanty) functionality , where mutiple sites sometimes can share products and sometimes share site tree and sometimes share optional parts of the site tree.
  • We have to extend the wysiwyg to be able to create product links.
  • As I understand we can use standard mvc forms for the checkout flow which is great.
  • Communication between widgets will be made with javascript, i.e. a buy event will trigger the mini cart to update.
  • I think most of the product pages will have the same widget configuration.
  • We will have to extend the search to index product information. It would be great to make queries for the customer specific price and products attributes like color etc.

Keep up with the great work and make Orchard the best flexible,simple cms system in the world!

 

 

Developer
Jul 30, 2011 at 2:36 PM

@snygging - Gotta say that that is a awesome list! To me it sounds like there should be some sorta greater colaboration??

Bertrand to do have any notion of the feature files yet?

Developer
Aug 2, 2011 at 2:48 PM

Here are some features provided by the last release of NopCommerce : http://nopcommerce.codeplex.com/

I tried to list the minimal features that an ecommerce site should implement :

General Catalog Features

    Supports hierarchical categories

    Supports manufacturers

    Products can be mapped to more than one category or manufacturer

    Multicurrency support

    Measure weights, measure dimensions

     

Product Features

    Product attributes (e.g. color, size)

    Configurable customer attributes (such as «Date of birth», «Phone number»)

    Supports multiple images per product

    Downloadable products supported

    Support for simple products (e.g. a book) or products with variants

    Support for sale prices

    Product search

    Featured products, new products

    Inventory tracking

    Product specifications (e.g. processor, memory, graphic card)

    Compare product feature

     

Marketing & Promotions

    Supports related products

    Marketing manager (campaigns)

    Customer groups can be marked as free shipping

    Customer groups can be marked as tax exempt

    Supports discounts

    Discount amount can either be a fixed value or a percent off

    Discounts can be applied to products

    Discounts can be applied to categories

    Discounts can be applied to whole order

    Discounts can be filtered by a customer role

    Recently added products page. RSS.

    Supports coupons

    You can specify a start date and an end date when the coupon is valid

    Froogle (google base), PriceGrabber / Yahoo Shopping, become.com product feeds

    Customizable email templates

     

Shipping Features

    Free Shipping Option

    Support for "no shipping required" products

    Calculate shipping by order total

    Calculate shipping by order weight

    Calculate shipping by country & total order weight

     

Tax Features

    Individual products can be marked taxable or tax-exempt

    VAT support

     

Payment Methods, Gateways

    Accept commons Purchase Order plateforms :

    Authorize.NET

    Google Checkout

    PayPal Standard

    PayPal Website Payments Pro (Direct)

    Manual gateway (offline processing)

     

Customer Service Features

    Customers can view their order history and order statuses

    Customer has an address book

    Customizable Order Emails

    Multiple billing and shipping addresses per customer

    Contact Us form + Email By Department

Aug 3, 2011 at 9:27 PM

I do not see a place in Orchard for e-commerce functionality - there are too many rules and points of failure IMHO. I am re-engineering an enterprise solution via MVC that we have been hosting internationally for over six years now. I have committed my firm to dropping our proprietary CMS and instead, integrating our core services with Orchard via Modules and Widgets and iQueryables.

Calendar Module for our existing Advanced Conference Management (with e-commerce, vat,hst, tax, early/late fees, discounts, tracks, sessions, custom configured registration forms).

Store Module for our existing Advanced Online Stores with Inventory Control, donations, discounts, delayed payments, multi-warehouse, etc.

Form Module for Complex multi-step online forms with e-commerce, advanced database updates and business rules.

Aug 9, 2011 at 8:13 PM
Edited Aug 9, 2011 at 8:14 PM

+1 vote for NopCommerce. No sense to dedicate efforts to create an application which will never match NopCommerce.

Aug 27, 2011 at 6:31 AM

I would also like to see integration between nopCommerce and Orchard CMS.  If the themes for each application were developed to look the same and nopCommerce could be wrapped in a module project, this might be possible???

Developer
Aug 27, 2011 at 6:07 PM

I also think that integration with Orchard and nopCommerce is a way to go. Writing some custom stuff while having a field-tested, full-featured commerce suite has no sense. Both are ASP.NET MVC so wrapping it up in a module shouldn't be that difficult. But even without such tight connection, some sort of a module that would wire internals of both applications (some simple API, event handlers on both sides, etc?), would seem usable.

- Piotr

Developer
Aug 27, 2011 at 6:47 PM

After rethinking the problem and what I wrote before, I'd not be so sure if integrating nopCommerce would be a good way to go... It's complex, it's big, it's specialized - simply just doesn't fit as an Orchard core feature.

Maybe the way to go would be to just provide a pluggable commerce framework (order/payment/shipping processing workflow) and pushing the rest to the community? Oh, and maybe integrate PayPal payment and UPS/FedEx shipping as an example (as these are the most common). That would be in line with "Orchard way of doing things".

I managed to create a simple, but extendible commerce module from ground-up. I use it specifically for selling simple digital content (on-line exam packages), so no fancy features besides simple workflow: "place order" - "do payment" - "accept/reject order" involved. All custom stuff is done via extension points, so I tried to add as much extension points as possible (such as order/payment lifetime events, payment providers and handlers).

It needs some more work and cleanup though, but could be a good starting point. Shipping, taxes, rebates etc. could be easily attached as a separate modules/features, keeping the basic module small and not bloated with lots of features. 

- Piotr

Aug 27, 2011 at 7:02 PM
I agree. A set of lightweight modules that can be added or removed depending on the solution required. About 30-60% of a platform like nopCommerce may not even get used on the majority of sites.

Steve.



On 27 Aug 2011, at 18:47, "pszmyd" <notifications@codeplex.com> wrote:

From: pszmyd

After rethinking the problem and what I wrote before, I'd not be so sure if integrating nopCommerce would be a good way to go... It's complex, it's big, it's specialized - simply just doesn't fit as an Orchard core feature.

Maybe the way to go would be to just provide a pluggable commerce framework (order/payment/shipping processing workflow) and pushing the rest to the community? Oh, and maybe integrate PayPal payment and UPS/FedEx shipping as an example (as these are the most common). That would be in line with "Orchard way of doing things".

I managed to create a simple, but extendible commerce module from ground-up. I use it specifically for selling simple digital content (on-line exam packages), so no fancy features besides simple workflow: "place order" - "do payment" - "accept/reject order" involved. All custom stuff is done via extension points, so I tried to add as much extension points as possible (such as order/payment lifetime events, payment providers and handlers).

It needs some more work and cleanup though, but could be a good starting point. Shipping, taxes, rebates etc. could be easily attached as a separate modules/features, keeping the basic module small and not bloated with lots of features.

- Piotr

Aug 29, 2011 at 12:00 AM

Hi Bertrand,

We are provising e-Commerce solutions to our client across globe. We have mostly used NopCommerce and AbleComemrce for setting up e-Commerce Store.
Orchard we have used so for as CMS application. 

We are currently considering some core e-commerce features for Orchard, and we are looking for advice and validation from Web professionals who routinely implement commerce sites.

Specifically, we could start with the following questions:

- What are your customers selling (physical objects, digital documents, subscriptions, customizable objects, etc.)? Who are their customers?

Physical , customizable with size and color variants.
B2B and B2C

- What volumes of product catalogs and sales are they handling?

products - 1000 - 50,000
sales -> 100 - 5000 / day

- Are your customers selling in a specific region or everywhere in the world? If a specific region, which?

US and Europe

- What is the set of features that you need to implement commerce sites for your customers?

We are using NopCommerce and Able Commerce for setting up most of the e-Commerce features.
- FedEx / USPS integration for Shipping
- Payment integration (PayPal, CrediCard  etc )
- BarCode integration

B2B - Integrating data exchange between NopCommerce  and ERP systems through web services.

Thanks
propeersinfo.com

Aug 29, 2011 at 9:49 PM

Apologies in advance if i'm going off the OP's topic, but I'd like to share my thoughts on some features for commerce, which are:

- I'd really like to have the ability to use content types to define types of products and their parts, a shop very rarely sells only one type of product. For example think of the case where a shop sells physical and virtual products. In other systems this gets blurry, and you tend to deal with a generic product. In Orchard I'd like to "Create a new Shoe" or "Create a new Hat", etc.

- Using lists instead of a brand or category or *any other custom business group*, many times these get mixed up in other systems, from experience clients get confused with categories and/or brands. Using only one rubust architecture for grouping/aggregating/querying products, such as lists, would save me a few headaches. Also think it makes it easier to interwight (not sure that's a word) other features of commerce, such as when the client wants to apply a custom pricing to a given set of products, etc.

- Data, data, data, shops are obsessed with their customer data, being able to provide analytics to the basket, stages of checkout, products viewed, etc would also be great.

The rest are all pretty standard, and most are mentioned in posts above, I do like the idea of creating the commerce as a set of lightweight modules that you could pick and choose the features, and nopCommerce should definitely be the benchmark, not from the word go but at sometime ;)

I'd really like to collaborate code to this, have never been involved in an open source project before and would be honoured if it could be for Orchard.

Oct 4, 2011 at 3:56 PM

Now that Nopcommerce is mvc based, this could be a powerful merger of sorts. I've been running nopcommerce on our paintball gear company's website - http://deadlywind.com for several years and watched the software progress. The latest MVC stuff is great, but the funny thing is the one major part it lacks in is the CMS portion... I can't easily add a new generic content page of any kind to the site without manually building it. By no means do I think this would be an easy migration, but the thought of how powerful these systems could be together is pretty amazing.

Oct 12, 2011 at 2:59 PM

Is ecommerce functionality coming soon in orchard ? when ? 1.4 version ?

Have anybody used this module "WebStore e-commerce - 1.0.2" - Is it good ?

Coordinator
Oct 12, 2011 at 9:53 PM

Commerce work is not currently scheduled for a release and most likely won't in the near future. We've had to revise our priorities and will have to leave commerce to motivated community members for now.

Oct 19, 2011 at 8:27 AM

I am quite happy to give my time to build a module (series of modules) for ecommerce functionality to add into Orchard. I like the simple set of pluggable modules idea over integration with another solution. Please contact me if you need an extra pair of hands.

Coordinator
Oct 20, 2011 at 12:59 AM

@aimkai: sure, that sounds great. Let me know what I can do to help.

Oct 30, 2011 at 11:54 AM
bertrandleroy wrote:

We are currently considering some core e-commerce features for Orchard, and we are looking for advice and validation from Web professionals who routinely implement commerce sites.

Specifically, we could start with the following questions:

- What are your customers selling (physical objects, digital documents, subscriptions, customizable objects, etc.)? Who are their customers?

- What volumes of product catalogs and sales are they handling?

- Are your customers selling in a specific region or everywhere in the world? If a specific region, which?

- What is the set of features that you need to implement commerce sites for your customers?

- Any other comment, or anything you'd like to draw our attention to?

 

I agree with most of what wim3025 says: being able to exchange information with an ERP is very important.

We recently implemented an e-commerce on our company website, based on my experience, these are my answers to your questions:

- We sell physical objects. Normally we sell through retailers and distributors, but selling direclty to end customers on our website is becoming more and more important. We do sell to two different kind of customers, consumers and pros. Pros have a discounted price and need to send us proof of their status. Currently the website does not handle this scenario and we need to process pro orders by email. It would be cool if pro customers could register as pros, send us a copy of their pro status. Once we receive the proof, the user could automatically make purchases with a pro-price (in this case we would also need to monitor/limit the quantity pros can order as the pro price is only for their personal use).

- We have about 20 products (next year about 40) and we sell online from 1 to 5 per day according to the time of the year. It would be good to have categories of products and also a discount category for clerance sales (only active certain times of year).

- We do sell in the EU and some other countries (Switzerland, US and Canada). Currently we only support one currency, but I would like to add more(not necessarely for all countries). Also some products are not availables in all regions.

- The most difficult thing to implement were payments: banks are a real pain in the neck and we ended up using Paypal. Also, it would be neat to have an order tracking function.

- Important feature: if this is a companhy online catalog, it is important to have a gallery of pictures for each product with images, videos, downloads, etc. Lastly: make it simple to use!

Thanks

Jan 7, 2012 at 10:52 AM

Is there any Solution or Document for Newer Version of Umbraco and Nop Commerce Version  2.3(MVC)?

If Yes then please guide to me.

Coordinator
Jan 7, 2012 at 9:44 PM

Ahem. I hate to break the bad news, but you're on the Orchard discussions forum. You might want to go to those people's forums instead. It's ok, they are nice people too ;) Probably nicer than myself now that I think about it.

http://our.umbraco.org/ <- see, they are even the *friendliest* in the world :)

http://www.nopcommerce.com/boards/default.aspx

Jan 26, 2012 at 6:31 AM

Hi:

I am now needing to write e-commerce functionality for a project I'm involved in.

I would be happy to lead this effort, and will most likely be starting this when 1.4 is released.

as others have stated it would be nice to make this completely extensible so that a user could just drop in a new payment provider in to a plugins directory for example.

if anyone would like to help contact me and we'll se what we can get started.

Regards

Sean

 

Aug 24, 2012 at 3:28 AM

Hello All,

I read through all of this, but has anything come to fruition?

I am looking for features describes in this thread and I am wondering if anything is available anywhere.

Thanks

Joshua

Coordinator
Aug 27, 2012 at 7:01 AM

Not as core features, but there are commerce modules available on the gallery, including one I wrote, Nwazet.Commerce.