My final entry in my series on elements for E-Commerce sites I want to go over some aspects related to programming. Some of this is as much marketing as it is programming because it involves making the user experience rich and at the same time including up and cross selling opportunities.
The first thing you need to make sure are in place when developing any site is a valid URL strategy. This involves knowing how you plan on designing URLs for each section of the site. Typically you will want this to somehow reflect the title of the page, but often you need it to somehow indicate where the data for the site is to be retrieved. For example a normal content page might just be a hyphenated version of the title, like the URL of this page (if you have opened this Blog post directly). You will notice the title of this entry is the most obvious part of the URL. A product catalog would want to indicate the title of a category, like Patio Furniture as \Patio-Furniture\category.aspx and then the name of the product, Cream Wicker Patio Set as \Cream-Wicker-Patio-Set\Product.aspx. Of course you could also switch the category for the page title, etc.
The point being you have the URL reflect the content of the page. Search engine representatives say it is not a big deal how you delineate the words of the URL, but say dashes tend to be the easier to parse. It is also a good idea to make the title and the URL targeted to a specific search phrase. There are many ways to harvest valid keyword phrases, and that is another topic.
To achieve the customized URLs it relies on leveraging URL Rewriting techniques available in ASP.NET. This is achieved through the RewritePath method and I have several articles on this topic in my Blog over the years.
Next it is important to create a comfortable experience for your users. I talked about a few concepts in the first post on E-Commerce points, but this needs to be extended to creating a comfortable and informative user interface. I am not going to get into the details of how to design a page, because each product type honestly requires many differences. This is one of the main reasons why most online stores need to be custom applications in order to make the products more desirable. Wine just does not require the same experience as furniture or dolls.
If you examine really successful online stores, like Amazon or Overstock.com, you will find they do a great job suggesting to the customer what else they may be interest in buying as well or in place of the item they are looking at. This is done with the large sites through a proven set of business intelligence systems, but more simple solutions can be utilized for smaller stores with great success.
Finally the checkout process needs to be easy. There should be sufficient error checking and communication to the custom to let them know comfortably where they are in the process and if any information is not correct or invalid. Commonly credit cards are declined and any good merchant gateway will return some good information as to why. This should be relayed to the customer along with instructions on how to remedy their situation.
Of course once the purchase has been made you need to have good on page and off page communication. So have a viable receipt in place the for customer. If the standard version is not printable, make a printer friendly version available. At the same time send the customer an e-mail detailing the purchase and any relevant delivery information you can provide. These should be followed up with informative e-mails as the status of their order changes, like when the order has been shipped. You may even want to provide tracking information too, this is a great customer comfort feature.
Finally a product search feature is a must have for any catalog with more products than can be reasonably displayed on the homepage. This can be done in a number of ways. I have created catalogs searches in the past that would filter by category name, product name and even a SKU number. I even track the searches that are done through the site and by whom if I can. This gives my client more insight as to how the site is being used, thus allowing them to make better business decisions. So know the products and the searches clients perform.