Platforms & Apps

How Does Shopping Cart Software Work?

Editor’s Note: This article was originally published by Web Marketing Today. Practical Ecommerce acquired Web Marketing Today in 2012. In 2016, we merged the two sites, leaving Practical Ecommerce as the successor.

Just what is a shopping cart? It’s a term that has come to mean either an online ordering system or a store-building system:

  • An online ordering system (separate from your regular website). Usually these supply HTML code for “order buttons” that you can paste into pages on your regular website. Your customer looks through your website to pick out products, but when she clicks on the order button, she is transported to the ordering system (usually hosted on an entirely different website) to complete the transaction.
  • A store-building system, on the other hand, handles your web pages as well as orders on the same site.

If you’re selling only a few products, just an online ordering system will do fine. But when you try to display and sell 50 or 100 or 1,000 or 100,000 products, you’ll need a store-building, catalog-managing system that produces and manages the pages for each of your products.

The term “shopping cart” is inadequate to describe all the functions of the variety of modern e-commerce systems. “Storefront software” might be a better term. But, like it or not, the term “shopping cart” has stuck, so that’s the term I’ll be using throughout this book — “cart” for short — as a generic term to refer to both types of systems. To distinguish between the two, I’ll refer to an “online ordering system” or a “store-building system.”

In this chapter, I’ll describe the features typically included in all carts — an ordering system. Next, I’ll discuss the additional features included in store-building systems. As you read these chapters, I hope it will help you determine the features you need and decide which features aren’t important for your needs.

No one magic cart fits all needs, but probably dozens that will meet your particular needs.

The Basic Functions

Sally Shopper doesn’t care about the inner workings of your store. She’s only looking for convenience, security, and efficient handling of her order. Let’s look at shopping first from her viewpoint.

Shopping cart

You want Sally to feel free to browse without being locked into purchasing decisions until later. Online stores quickly developed the metaphor of a shopping basket or shopping cart (“trolley” in Britain) into which customers place selections. Business-to-business sites such as W.W. Grainger use the term “order form,” more suited to a business purchasing model.

This product selection feature needs to allow Sally to add or remove products from her cart and indicate quantity. Nearly all carts these days will enable her to indicate two or three options for each product, such as an extra-large (size) green (color) flannel shirt. Imagine selecting shoes (size, width, color) or window blinds (color, height, width). A few carts even allow sales of fractions of a unit, such as when buying cloth or lumber.

An increasing number of store-building systems show the items in the cart and a running total on each page. This helps customers remember where they are in the ordering process.

Tax calculations

All ordering systems keep a running total of the items Sally has put in her shopping cart. Once Sally enters her physical address, the program can calculate taxes.

When you only need to calculate taxes for shoppers in the merchant’s state or city, a simple look-up table by tax jurisdiction indicates the sales tax percentage to add. All carts do this adequately. The better carts allow tax calculation by ZIP code, which enables you to handle collections from states (such as New York) that require in-state merchants to collect taxes according to the rate in each county or other jurisdictions.

But what happens when you have physical store locations in 15 states? More sophisticated software now allows for plug-ins such as TaxWare’s Sales/Use Tax System (Taxware.com) or CertiTax (Esalestax.com/products.htm), which calculate in real-time exact taxes for the U.S. and Canada.

Currently, a coalition of about 35 states is seeking to streamline sales tax collection and get the U.S. Congress to pass legislation requiring all larger stores (with revenue over $1 million, is one proposal) to collect and distribute sales taxes from all cooperating states. If you do a lot of online business, make sure your software allows for a tax plug-in. As the law is presently proposed, smaller companies would be exempt from such a requirement, so most likely any cart will do to calculate taxes.

If you ship to Europe, however, be aware that the E.U. wants foreign merchants to collect and remit VAT taxes. So far, it isn’t clear how this will affect smaller merchants outside the E.U.

Shipping calculations

Shipping calculations have become much more sophisticated in the last few years. All up-to-date carts include two types:

  • Calculations from look-up tables set up by the merchant,
  • Real-time calculations that pull information from major shippers and couriers.

A cart that doesn’t enable at least UPS shipping calculations is not likely to be actively maintained. Even if you don’t need UPS shipping, this is a fairly accurate barometer of the “up-to-dateness” of the cart. Avoid carts that don’t offer this, even if they seem to be cheaper.

Having said that, shipping calculations from look-up tables that the merchant sets up can work perfectly well. True, shipping costs may be a bit more or less than your table setting, but it should all average out in the long run. Carts often include a wide variety of shipping calculations, such as:

  • By sales total,
  • By weight,
  • By the number of items in the order,
  • By weight and zone,
  • A fixed shipping price for all products,

Generally, you have to select one system that applies to all your products, except that many carts allow you to add a shipping surcharge to selected products that are especially bulky or require special crates or shipping containers. Many merchants find a “by weight” system most flexible, especially if they have a number of products that are diverse in size and shape.

If you do a lot of shipping, however, you’ll find it convenient to use the plug-ins supplied by some of the major shippers. Each of the following provides a service to online merchants that estimates shipping costs, depending upon the type of service the customer selects (such as next day, second day, ground, etc.). Usually, the merchant has to sign up with each shipping service for this free service. Merchants can usually limit the shipping choices that they show to customers, even if the shipper offers other options.

  • UPS
  • FedEx
  • DHL
  • U.S. Postal Service
  • Canada Post
  • Australia Post

It doesn’t look like Royal Mail (U.K.) offers the service. Some, but not all, carts provide merchants the ability to include a handling surcharge (to cover shipping materials, etc.) on top of the shipper’s estimate.

Secure transactions

When it’s time to check out, Sally Shopper wants to complete the transaction securely and efficiently. This involves four elements to prevent hackers from stealing sensitive credit card information:

  • An SSL secure connection between the shopper and your website to block hackers. The current standard here is called SSL (Secure Sockets Layer), which encrypts communications. In most cases, you can piggyback at no extra cost on the digital certificate and secure server provided by your web hosting service or ordering system vendor. Without a secure server, don’t expect many sales.
  • A payment gateway for secure integration between your website and the credit card processor.
  • Protection of credit card numbers stored on the website. The best way to secure them is not to store credit card numbers on your server at all. Some carts, however, provide careful encryption of these numbers that can protect your customers.
  • Secure order retrieval that allows merchants to get orders without exposing credit card information to hackers. This is usually accomplished by the merchant viewing and downloading orders from the site with a web browser using a secure SSL connection. Other methods include XML, secure FTP, or encrypted e-mail.

Nearly all carts have these kinds of protections built in.

Payment gateways

However, to get real-time authorization of credit cards, you’ll probably also need to secure a payment gateway for an extra monthly fee. (Exceptions to this include PayPal, Yahoo!, and the third-party services that handle the credit card transaction themselves: 2CheckOut.com, CCNow, DigiBuy, Kagi, and others.) You can often find a payment gateway conveniently bundled with your merchant credit card account.

Don’t decide on a payment gateway before you know which shopping cart software best meets your needs. Many payment gateways aren’t compatible with all shopping carts.

The most common payment gateways available — by U.S.-based carts anyway — are Authorize.Net, VeriSign PayFlow Pro, LinkPoint, and WorldPay. PayPal is also offered as an alternate payment system in most shopping carts, though PayPal’s proprietary Instant Payment Notification (IPN) is available only in a few instances.

Is real-time credit card authorization really necessary? Can’t you authorize your orders with a desktop authorization system that you use for a physical store, tradeshow, or flea market sales? You can, perhaps. Some merchant credit card account vendors don’t allow Internet sales, since they offer a lower discount rate for “card present” transactions than they do for mail, telephone, and “card not present” Internet transactions, typically a full percentage point.

If you do many online sales, you’ll find that real-time credit card authorization is a cost-saving device since it saves:

  • Time in retyping orders and credit card numbers,
  • Errors created by re-entering orders,
  • Time in processing orders, since the authorization step is already completed.

E-mail order confirmation

Nearly all carts provide the customer with both on-screen and e-mail receipts to confirm the purchase. Only a few carts provide e-mail confirmation of shipping, but we’ll discuss that below under order management.

Keeping Orders Straight

Have you been in your local grocery store and couldn’t find your shopping cart? Someone mistook your cart for his and left you with 20 boxes of gourmet fortune cookies. In an online store, the shopping cart program must differentiate between shoppers, long before it tells you who it is at checkout time.

Programs use several systems to track shopping carts:

  • A cookie (small computer file) containing Sally’s cart number is transmitted to her Web browser and remains on her hard disk during her visit to the store. The use of cookies is quite widespread in most store software since this is probably the most efficient method. A few people see cookies as an invasion of privacy, however, so alternate tracking methods are sometimes needed.
  • A temporary IP number is automatically assigned by Sally’s Internet Service Provider (ISP) to identify her when she logs onto the Internet. While she never sees the IP number, it can be read by the store software.
  • A randomly-generated cart number can be appended to the URL appearing in her browser’s “location” or “address” field. Whenever Sally goes to another product page, that cart number goes with her.
  • Some web development programs, such as ColdFusion, can maintain the state of shoppers throughout a session.

Your cart must be able to identify shoppers by methods other than those that require cookies, since a small percentage of shoppers have turned off cookies. However, the cookie approach is preferred, if possible, since it sometimes allows the shopper to retrieve her cart when logging on again.

Advanced Features

Having looked at some of the basic features, let’s now look at advanced capabilities. While these vary from cart to cart, I’ll describe some of the most common.

Identifying shoppers on a return visit

More important to the merchant than mere cart numbers is keeping track of shoppers’ names and addresses. Better software products keep an online database of customers. When the shopper is ready to place another order (or, for store-building sites, clicks onto the site), a cookie on the shopper’s browser identifies him as a previous customer and often recognizes him by name.

Some of these database-energized sites can personalize contact with customers, such as:

  • E-mailing information about sales and special offers,
  • Providing filled-in billing and shipping address preferences (though usually not a credit card number),
  • Presenting the shopper with offers and product recommendations based on previous purchases or items placed in the cart,
  • Allowing customer access to past order history, current order status, package tracking, etc.

You won’t find sophisticated personalization features with lower-priced carts, though a customer login feature is becoming quite common.

Product databases

Nearly all carts have an online database that lists, at a minimum, SKU (item number), product name, weight, and price. But one of the most important low-end carts, PayPal, doesn’t employ an online database. All of the product details are encoded into the HTML order button. When a customer clicks on the order button, the product information is transmitted to PayPal to initiate a transaction.

The danger of this approach is fraud. It is quite possible for an unscrupulous shopper to copy your product web page, and do one of two things:

  • Change the price encoded into the order button. Then click on the altered order button. You may not even notice the price change and deliver the product at a substantial “discount.”
  • Observe the URL of the thank you or download page where a digital product is delivered, and go there to download the item without paying.

Avoid these problems by (i) encoding the web page HTML, (ii) using PayPal’s Instant Payment Notification to withhold downloading the product until payment is actually received, or (iii) manually e-mailing the download code only when you’ve confirmed that payment has been received.

I use PayPal as an alternate payment method to sell my products without experiencing any of these problems. But most carts avoid these problems by using an online database that hackers can’t get to and which contains product and price information.

Uploads and downloads

Most carts allow you to maintain your database offline and then upload it to your cart when changes occur. You can still make changes online using a web interface. But you would need to download the entire product database, including your changes.

Yesterday I spoke with a woman who is having trouble with the shopping cart her web hosting service sold her. She needs to move to a different cart and a different hosting service. If she can download her product database and upload it to a new cart, she can transfer her store with minimal downtime.

Sure, redesigning a new cart is a pain in the neck. But the crucial element is her product database: product descriptions, image names, etc., which represents scores of hours of work for her 100-product store.

Before you purchase a cart, check how easy it is to upload a product database. Will it “map” fields so that it imports your original fields into their corresponding field names in the new database? Also, make sure you have an exit strategy to download your product database in its entirety for backup purposes or to move to another cart.

Sales, coupons, discounts

Active online stores work hard at driving sales through various promotions. How do you put an item on sale?

  • All stores allow you to change prices using a web browser interface.
  • A few systems enable you to set up preset timed sales, programmed to begin and end automatically.
  • Some store-building systems enable you to place featured, sale, or new products on the site’s front page to drive sales.

Another promotional approach is to offer coupon discounts via e-mail to your customers or subscribers to your list. Look carefully at the specific features of several stores before making your final decision, as features vary.

Look for:

  • Percentage or dollar amount coupon.
  • Product- or department-specific coupons vs. all-store coupons.
  • Discount coupons that expire at a certain time.
  • Discount coupons that kick in when you purchase a minimum number of a particular product or at a product total threshold.
  • Free shipping for orders over $50 sounds easy (and may help boost your average transaction amount), but many coupon systems can’t handle it.

For many stores, discounts can be had with or without a coupon for the sale period.

The better carts allow tiered pricing on specific products: One for $7.50, three or more for $6.50 each, and 12 or more for $5 each.

Some stores allow a discount that kicks in at a particular dollar total threshold, such as 10% off on orders over $50.

B2B stores usually offer custom pricing. Customers identify themselves via their private login passwords. At the most basic level, these customers receive a set percentage discount on their order forms at checkout. In more sophisticated carts, they see only prices that reflect their companies’ negotiated discounts.

Order Fulfillment and Accounting

One of the hidden difficulties facing online storeowners is the paucity of “middleware” software that manages order fulfillment and interfaces easily with their accounting systems.

At the very least, a merchant needs to be able to mark a product as complete, pending, back-ordered, drop-shipped, split, etc. He should also e-mail the customer when the product is shipped or when there is a change to the order. Ideally, an order management system should be able to print invoices, packing slips, address labels, etc. — even better if it can interface directly with your main shippers.

Finally, the orders should be able to be imported directly into your accounting program. However, the ideal is usually only partly realized. There are several ways smaller merchants deal with this:

  • Use a cart that includes order management features. Several of the better carts now do this.
  • Import orders into a desktop order management system. I use StoneEdge Order Manager, which can import orders from ShopSite, Storefront, AmeriCart, Yahoo!, Miva, and others. This is an excellent, full-featured product that runs on an Access database. The other popular order management system is M.O.M. (Mail Order Manager) from Dydacomp.
  • Import orders into QuickBooks or another small business accounting program and use it to track order fulfillment. QuickBooks has an adequate, if not great, order management system. Be aware that even though a vendor claims that orders can export to QuickBooks, it doesn’t mean it’s true. Verify any claims by contacting one of the store’s clients.

Inventory Management

Built-in inventory management capability is increasingly common. You enter the total number of products you possess, and the program subtracts from this number with each sale. The program alerts you via e-mail when a low-inventory threshold is reached and again when inventory is exhausted. When the inventory reaches zero, you can elect to (i) inform customers that the item is out-of-stock and not allow a purchase or (ii) accept the purchase and back-order the product.

A couple of small business programs can indicate how soon a product is likely to be shipped, depending on stock or distributor availability. The best programs provide ways to tie into real-time corporate inventory systems.

Store Statistics

Many programs provide reports on products viewed and purchased. One of the best is Yahoo! Merchant Solutions. Yahoo! has an awesome array of statistics which not only tell you what products were viewed, but (i) the most common paths customers take in your store — great for design analysis and improvement — (ii) what link the shopper clicked on to get to your store, and (iii) which ads, search engine links, and search words produced the highest per capita sales for your store. Most store software allows you to track sales between dates, but with nowhere near the detail of Yahoo!.

Statistics are vital strategically when studying what works and what doesn’t. If you know what ads and search words are producing sales, you can focus your investment on them, rather than the ones that don’t produce.

Graphics

All cart software with online catalog capability provides ways to upload product images and place them on a web page. The product database will indicate the file name of each graphic associated with it.

A few programs simplify your work by automatically creating thumbnail photos from your existing product photos. Sometimes they also show up in the cart so the customer can see what she has ordered. These thumbnails can then be used on sectional pages so the customer can browse visually.

Navigation

You don’t need to worry much about navigation when you have only a few products on your website with buttons connecting you to a hosted ordering system. Stores with 20 or so products can get away with a simple menu on the main page, with perhaps a small photo icon of the product.

But the more products you have, the more important a well-thought-out navigation system is. One of the chief reasons shoppers don’t complete an order is that they can’t find the product. The best systems offer many different navigation types:

More sophisticated store-building software assigns a category and one or several subcategories to each product so they can easily link to the store’s dynamic menu structure. Better systems allow you to place a product in several categories so that it can be found in several contexts.

Ideally, your goal is to allow your shopper to find any product in the store within three clicks using your category system. That’s difficult to achieve with huge stores. You’ll probably need to have a broad but shallow category system to achieve it.

Catalog Management

A coordinated, customer-friendly site needs a flexible product catalog system. While ordering-only systems may need merely a product name, SKU, price, and weight, catalog-management systems can contain a great deal of information about a product. Here’s an example of the fields used in ShopSite 6.0.

Basic Information

  • Product Name
  • Price
  • On Sale Price
  • Product Quantity Pricing
  • Taxable
  • SKU (stock code)
  • Image Name
  • Search Keywords
  • Search Destination
  • Product Description
  • QuickBooks Item Type
  • QuickBooks Sales Account

Shipping and Download Information

  • Weight
  • Shipping Box Dimensions
  • No Shipping Charges
  • Extra Handling Charge
  • Product Type
  • Product Download Location

Inventory Tracking

  • Quantity on Hand
  • Low Stock threshold
  • Out of Stock limit

Ordering Options

  • Order Options Description
  • Pull-down Menus
  • Customer Text Entry

Product Display Location

  • Category

More Info Pages

  • More Info Page
  • More Info Page Text
  • More Info Page Image
  • More Info Page File Name

Product Layout Info

  • Template
  • Name Toggle
  • SKU Toggle
  • Price Toggle
  • On Sale Toggle
  • Image Toggle
  • Display Order Quantity
  • Display Ordering Options
  • Product Name Style
  • Product Name Size
  • Product Price Style
  • Product Price Size
  • Product SKU Style
  • Product SKU Size
  • Product Description Style
  • Product Description Size
  • Image Alignment
  • Text Wrap

Button Customization

  • Add to Cart Button
  • View Cart Button

Extra Fields

  • Product Field 1
  • Product Field 2
  • Product Field 3
  • Product Field 4
  • Product Field 5

Digital Delivery

The last feature I want to highlight is the ability to sell digital products such as e-books and software. An increasing number of programs allow you to do this, using temporary URLs that will disappear after a few days or download attempts, to prevent purchasers from posting download URLs for others to use. A few programs also allow you to register software copies, but most just enable digital delivery of electronic products.

Dr. Ralph F. Wilson
Dr. Ralph F. Wilson
Bio