Menu Search
Jump to the content X X
Smashing Conf Barcelona

You know, we use ad-blockers as well. We gotta keep those servers running though. Did you know that we publish useful books and run friendly conferences — crafted for pros like yourself? E.g. our upcoming SmashingConf Barcelona, dedicated to smart front-end techniques and design patterns.

Getting Started With E-Commerce: Your Options When Selling Online

The world of online sales, whether of products or services, can be daunting at first; the options seem confusing and the information conflicted. Yet as the designer or developer of an online store, you will need to guide your client through the maze of choices in order to get it up and running.

I have developed many e-commerce websites during my career as a Web developer. I’ve used and modified off-the-shelf software and have also developed custom solutions — so I know from experience that there are a number of important questions to answer before presenting possible solutions to a client. Getting all the pertinent information up front is vital if such a project is to run smoothly, and it can save you from delays during the process. It can also help you advise the client on whether they need a full custom cart or an open-source or off-the-shelf product.

Further Reading on SmashingMag: Link

This article responds to some questions you should be asking of your client before putting together a proposal for the development of an e-commerce website. I’ll explain the most important things to think about in terms of taking payments and credit card security. It should give you enough information to be able to guide your client and to look up more detailed information about the aspects that apply to your particular situation.

What this article doesn’t cover is the design and user experience side of creating an e-commerce website, because gathering this information would normally occur alongside the designing and branding of the website.

What You Need To Know Link

It is really tempting to select a solution based on something you have used before or perhaps after asking around to see what others recommend. But you can get stuck in a rut this way. Every online business has different needs, so one solution is unlikely to fit all. Before writing any code or trying an off-the-shelf package, you need to ask yourself or your client a few questions:

  • What are you selling?
  • What shopping functionality should you offer?
  • How will you take payment?
  • How will items be delivered?
  • What reporting and other functionalities are required?

What Are You Selling? Link

Your online store may be selling physical products that are shipped by the postal service or a courier to the customer after a completed purchase. Or it might be selling products that are delivered electronically, such as e-book downloads, MP3 music or software. Donations and subscriptions are types of transactions to consider as well.

What Shopping Functionality Should You Offer? Link

Will you be selling a single item, (such as an e-book) or will visitors need to be able to browse and add multiple items to their cart? Are these items associated with distinct options? If you’re selling t-shirts, for example, size and color might be options to include. Are categories needed to make ordering easier? Will a given item be listed in only one category, or could it be found in several? Would the ability to tag items be useful, or the ability to link them to related items (thus allowing the store owner to promote accessories for items that the customer has added to their cart)?

Category listing on the Hicksmade store5
Items on the Hicksmade website6 can be displayed in categories. (Large view7)

Will there be special offers on the website? Standards ones are “Buy one, get one free,” “20% discount,” “two for one” and “buy item x and get item y at half price.” Setting up these kinds of offers can be quite complex if you are developing a custom system; and if you’re buying an off-the-shelf solution for the store, then you’ll need to know whether it supports them.

The devil (and the budget) is in the details. If your client is expecting particular functionality, find out about it now.

Accounts and Tracking Orders Link

Part of the user experience could include managing an account and tracking orders. Must users create accounts, or is it optional? Can they track their order and watch it move from “processing” to “shipped”? Account functionality must include basic management functions, such as the ability to reset a forgotten password and to update contact details.

How Will You Take Payment? Link

You’ll likely need to accept credit and debit card payments from customers. There are a number of options that range in complexity and expense.

PayPal Link

PayPal8 is a straightforward way to take payments online. The advantages are that creating a PayPal account is easy, it doesn’t require a credit check, and integration can be as simple as hardcoding a button on your page or as involved as full integration. Google Checkout offers a similar service (and a similarly low barrier to entry), as does Amazon (in the US) through Amazon Payments9.

Using A Merchant Account Link

To accept card payments directly, rather than through services like PayPal, you will need an Internet Merchant Account. This enables you to take credit card payments and process the money to your bank account. If you have an existing merchant account for face-to-face or telephone sales, though, you will not be able to use it for online transactions. Internet transactions are riskier. So, to start trading online, you’ll need to contact your bank. The bank will require that you take payments securely, in most circumstances via a payment service provider (or PSP, sometimes called a payment gateway).

What you should definitely not do is store card details in order to enter them in an offline PDQ later. This would be against the terms of the merchant agreement. So, unless you have written permission from your bank saying you are allowed to do this, and you’re complying with the PCI DSS, just don’t.

The Payment Gateway Link

The purpose of the payment gateway is to take the card payment of your customer, validate the card number and amount and then pass the payment to your bank securely. You can interact with a payment gateway in two ways:

  • Via a pay page
    The user moves from your website to a secure page on the payment gateway server to enter their details.
  • Via API integration
    The user enters their card details on your website (on a page with a secure certificate installed, running SSL), and those details are then passed to the gateway. Your website acts as the intermediary; the user is not aware of the bank transaction happening, having seen it only via your website.

The advantage of pay page integration is that your website never touches the card details, so you are not liable for the customer’s security. The most significant disadvantage is that you lose some control over the payment process, because the final step requires gathering all the details to pass to the payment server. In addition, you are often unable to customize the payment screen, even if only to upload a logo.

Store owners are often concerned about this break in the user experience: they fear the user will bail before going to the payment page on WorldPay10 or another server. But transferring your user to a known banking website where they’ll enter their card details might actually give them confidence in the legitimacy of your website. When I deal with an unknown website (perhaps a small retailer) and it asks me to enter my card details, I immediately worry about how it will handle them. Does the website email my card details in clear text? Will the details be stored in a database somewhere by the website? Even if the page has a secure certificate and checks out, I still have no idea what happens to my details after I hit “Submit” on the form. If the final step of checking out takes me to a known PSP page, then I can be confident that my details are safe and the small website isn’t handling them at all. I trust WorldPay with my details far more than I trust Joe Blogg’s Widget Store.

Another useful argument for using a pay page is that, should there be any changes in card payment regulations, these will be handled by the PSP. For example, 3-D Secure (verified by Visa or MasterCard SecureCode) was instituted recently. It requires that users verify their payment on a page related to their bank before it can be authorized. If you had API integration, you would need to edit your code to ready it for 3-D Secure; whereas on payment page websites, those changes are done by the PSP.

These points have encouraged many website owners to reconsider their reluctance to use a pay page — most realize that being responsible for credit card details is more trouble than it’s worth.

Pay page integration should work with most off-the-shelf software. After payment is made, it typically sends back something that enables your website — which has a script running for this — to identify the user and the transaction and perform any post-purchase processing that may be needed (such as marking an order as “Paid” in the database or giving access to an electronic download).

The advantage of full API integration is that you control the payment process from beginning to end, including the look and feel of the payment pages. However, you are also responsible for the security of the user’s card details, and regulations require that you prove you are following best practices.


The Payment Card Industry Data Security Standard11 (PCI DSS) is a set of 12 requirements that must by complied with by all businesses that accept credit and debit card payments. This doesn’t just cover online transactions; a street store that takes payments online must also comply with the PCI DSS for both their offline and online payment methods.

If you are just taking online payments via a pay page and do not take, process or store any card details at any time, then you can complete the shortened PCI DSS questionnaire (SAQ A) to confirm that your PSP is PCI DSS-compliant. If you use API integration, then you’ll be need to comply fully with the PCI DSS — even if you do not store the details — including by allowing quarterly security scans that check ongoing compliance. Explaining PCI DSS compliance in detail is beyond the scope of this article, but if you’re involved in a project that takes card details without a pay page, then you should acquaint yourself with it — or take on the services of someone who already knows it.

Storing Card Data Link

I would strongly advise any designer or developer against storing card data on their website server, even in encrypted form. Storing card data will, of course, require you to comply with the PCI DSS and to maintain a server and network capable of keeping this data safe. If you need the data of card holders for recurring billing, for example, some payment gateways offer data storage services.

If you are considering storing card data only for “one-click” ordering (as Amazon does), please be careful. Do you really want to be liable for your customer’s data? Are you willing to deal with the extra and ongoing expenses that maintaining compliance will require?

Multiple Currencies and Local Taxes Link

You’ll likely need to account for local taxes or VAT in Europe. Understanding exactly what taxes you need to collect can be difficult enough, but you also need to ensure that your system can process them correctly. For example, my company has a downloadable product, a mini CMS called Perch12. Our company is registered in the UK, so we need to collect VAT from UK buyers. We also need to collect VAT from EU (European Union) buyers, unless they have a valid VAT number. If the buyer is outside the EU, then we don’t need to charge VAT. So, our system has to allow for validation of VAT numbers as well as for the correct calculation of price with and without VAT. If you find yourself in a similar situation, then the European VAT Number Validation API13 (written by Aral Balkan) will be helpful.

Perch website account creation process14
Collecting the VAT Number here triggers the VAT Number Validation process so that we can determine whether to charge VAT. (Large view15)

Most stores take payment in a single currency. If you want to accept multi-currency payments — that is, allow visitors to select their regional currency, see pricing and make a payment in that currency — you will need to set the desired currencies in your merchant account. Another option is to get an up-to-date exchange rate and display prices in other currencies while accepting payment only in your local currency. You can either update these exchange rates manually or use data from an API to do automatic currency conversions. If the user will be paying in your currency and not theirs, then they will need to understand that the prices displayed are solely informational and that the actual price may differ slightly (owing to fluctuating exchange rates).

What About Delivery? Link

If you are selling physical items that need to be shipped, you’ll need to charge somehow for the shipping costs and perhaps arrange for order-tracking. Because you’re selling online, you may attract customers from other countries, so you’ll need to decide how to calculate shipping for different destinations. Otherwise, limit potential buyers to people in your country or a small group of countries.

Threadless website checkout process16
Threadless17 explains to the user how shipping works and then presents shipping options based on the user’s mailing address. (Large view)

Typically, websites offer free shipping for orders of a certain price or higher. They also typically offer shipping with different carriers, such as by regular post or by priority courier (depending on when the user wants to receive the item). Consider these things when planning your website.

Digital Products Link

When customers buy a digital item (an e-book, music download or software) they expect to be able to download their item quickly after purchase. For digital products, delivery takes the form of a link or a page in their profile where the product can be downloaded (and a license code issued if required).

Your system will need to be able to secure products prior to download and provide an account — or at least an emailed link — through which the download can be accessed. When selling software, you may also need to generate a product code.

Reporting And Other Functionality Link

Your client will need to receive and process orders as they come in, and they might also need to mark items as shipped as they are processed. Some form of download to CSV would likely be helpful to allow a mail-merge of data onto address labels, as would the ability to import to an offline accounting system of payment information. Other questions to ask your client are:

  • Do you need the system to be linked to any other systems (for example, a system running in a street shop or an accounting package with particular data requirements)?
  • Do you need to be able to control stock through the website?
  • How do you want to deal with orders that you can only partially fulfill?
  • Will the website generate invoices or will this happen offline?

Most successful store owners will want to automate their accounting processes eventually in order to avoid duplicating data when calculating their year-end accounts. Many accounting systems have an API that allow you to send transactions from the store automatically to the accounting package.

Xero API18
Accounting systems with APIs, such as Xero19, make it simpler to tie website orders to accounts. (Large view)

Finding Your Solution Link

With all the above questions answered (in addition to thinking about the design — i.e. the look and feel of the store itself), you are in a position to prepare a solution that suits your client’s needs. Your options are either to develop something yourself (or contract a developer to do so) or to select an off-the-shelf system that meets as many of your needs as possible either on its own or with modifications.

With e-commerce, you can always start small. Begin with a simple solution or a simple payment method, and then move on to more complex solutions as you start to get a return on your investment. Including many features right away is tempting, but your goal is to make money, not to spend it. Testing the water before spending a fortune is perfectly acceptable.

Keep It Simple Link

First, be sure of your actual needs. For example, if you are selling a single product, then you won’t need a shopping cart; all you’ll need is a way for customers to pay. At the most basic level, this could be a PayPal “Buy Now” button on an HTML page, or your own form that posts the data to a PSP pay page. You could test the waters with PayPal’s “Buy Now” buttons for just a few products, using PayPal as a simple shopping cart.

Online Solutions Link

If you need more than a few PayPal or Google Checkout buttons but would rather not invest time or money in installing an e-commerce solution, then hosted solutions are available. Selling online becomes more straightforward when someone else worries about the complexities of the cart.

Popular hosted products include Shopify20 and Foxy Cart21. Both of these services allow you to create a store, hosted on their servers, for a monthly fee. Some hosted solutions target a particular market and are therefore more likely to have features that the market wants. A good example of this is Big Cartel22, a shopping cart for artists.

Big Cartel23
The Big Cartel website24. (Large view)

There are also specialist services that assist with the delivery of digital purchases such as e-books and software. Fetch25 is a hosted application that integrates with Shopify and other carts to deliver digital purchases.

You should be able to get up and running quickly with a hosted solution. But hosted solutions come with a few disadvantages: usually a monthly fee, limited customization, and the prospect that users will have to visit three websites to complete their purchase (your website, a hosted cart and a pay page). To keep things simple, though, it can be a great solution, especially in the early stages of a business.

Commercial and Open-Source Products Link

There is a huge range of off-the-shelf e-commerce products that you can download and install yourself, including plug-ins for CMS systems. When assessing these systems, check each one against your list of essential and ideal features. You don’t want to buy something that isn’t the best fit. Most software will have a demo website set up as a basic installation that you can play with to see what options are available. If you have a comprehensive list, it will be easier to see whether your needs are supported.

The Open Source CMS website has an e-commerce category26 that allows you to try out a number of open-source systems from one location, including the popular Magento27 and osCommerce28 applications.

With a store-bought system, consider whether creating templates or changing the look and feel are feasible. Some systems enforce their website design and thus compromise yours. You should also look at the mark-up generated by the system; will your pages still validate? How accessible and usable will the store be for visitors?

One problem with many popular existing systems is their reliance on JavaScript, both in administration and in the shopping experience. While JavaScript can greatly enhance the user experience, it should only be used as an enhancement. That is, your website should have basic functionality (e.g. purchasing and checking out) without JavaScript, even if the experience is less smooth. The popular Magento Cart requires that users enable JavaScript in order to add products to their cart; an article in the Magento wiki suggests that you display a message29 asking users to turn on JavaScript. Paul Boag recently wrote an article about Business Catalyst30 and its lack of support for users without JavaScript.

If you are tied to a particular payment method or PSP, make sure the product supports that method. Also, make sure the product allows you to comply with your local legal and tax requirements.

When assessing a product, find out what support is available. Open-source products might offer a community forum; check that the forum is active and the community helpful. For commercial products, find out what support you can expect after buying a license. Finally, check how frequently the product is upgraded. If the latest version is two years old, newer payment methods might not be supported.

Trading Eye31
With Trading Eye32, you must purchase support credits in order to get product support (Large view)

A Note on Modifying Commercial Products Link

If you can’t find an off-the-shelf product that meets your needs, it can be very tempting to grab whatever nearly does and start hacking away, trying to force it to fit your requirements. I urge caution when doing this: by modifying the basic source code, you might make the product very difficult to upgrade — because upgrading to a new version could overwrite your changes. Keeping up with security upgrades is also important; a compromise in a widely used system can attack many websites.

Many open-source products have a plug-in architecture that allows supported modifications and additions that can be upgraded. If you decide to modify an existing product, look for one with a good plug-in system and a helpful community. You could even offer your plug-in back to the community when it is ready for those with similar needs.

Developing Your Own Solution Link

Sometimes the only way to get the features or create the user experience you want is to develop your own solution. In this case, the requirements list that you created earlier will help you develop a specification before starting work or hiring a developer to build the solution for you.

Selecting product options33
MySoti34 offers many color options and types and sizes of t-shirts. (Large view)

Custom e-commerce systems are prone to scope creep, because there are so many potential elements of functionality to develop, and clients tend to expect a clone of Amazon! By outlining exactly how shipping, special offers, categorization of offers and so on will work, you keep the client’s expectations and yours in line. A well-built system should be able to extend as time goes on. I encourage clients to develop only what they need to begin, rather than spend a fortune on bells and whistles “just in case.”

“Special offers” is a good example of this. You could develop a system that lets the client create many combinations of special offers, which would require a complex user interface and a lot of logic. But in most cases, the client would use such a system minimally. A lot of time and money would be saved by creating only what is needed, but building it in such a way that it can be modified later if desired.

In Conclusion Link

I hope this article has clarified some of the technical considerations of developing an e-commerce website. I enjoy e-commerce projects; they’re a great opportunity to help clients develop their businesses online, and it’s nice to see quantifiable results as people start making purchases. When you create a solid set of requirements based on real business needs and match them with great design and care for the user experience, you build a website that increases sales — and you enable another business to grow. That is a satisfying thing to do.

If you have experience developing for e-commerce and have some tips to share, or if you have favorite commercial products, drop a line or two in the comments section.


Footnotes Link

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
  28. 28
  29. 29
  30. 30
  31. 31
  32. 32
  33. 33
  34. 34

↑ Back to top Tweet itShare on Facebook

Rachel Andrew is a web developer, writer and speaker and one of the people behind the content management system, Perch. She is the author of a number of books including The Profitable Side Project Handbook. She writes about business and technology on her own site at

  1. 1

    Drew Clarke

    June 2, 2010 10:14 am

    I’ve used ekmpowershop ( as a subscription service. its GBP19.99 a month and has a huge range of options.

    What I found was especialily useful was that I could use it in cart only mode, that is I have my front end website which for all sorts of reasons I want to keep ( and I wanted to run a pure shopping cart against this in the back. No problem. At the time, this was the only entry level service that had this facility.
    It also has a comprehensive discount facility and like all the others links to a wide range of payment processors.

    I’ve found it reliable and easy to use.

  2. 2

    Trading Eye isn’t open source, and there support is terrible!

    • 3

      If you want open source, fast, and beautiful (well.. you can create the theme yourself) try PrestaShop

    • 4

      Completely agree with you Tom, Expensive to buy in the first place, and Zero support which also costs a fortune. would never use again.

    • 5

      Andrew Armitage

      June 3, 2010 4:52 am

      OK so Trading Eye isn’t technically open source as it requires a licence. However, it is built on PHP/MySQL and is easy to modify.

      For the price (approx £350) and feature set, I think its great value and far easier to work with than the likes of Magento. With Trading Eye you could happily start adding products out of the box and be selling in no time.

      Sure, support can be improved but there is an active forum community which will answer most questions. There is also a lot of scope to develop and improve the product (its certainly not perfect) but will help a new ecommerce business to a great start (and that seems to be what the article is about).

      We’ve done a lot of work with Trading Eye sites and I’ve still to find something else that betters it overall so for now, its still our preferred option for a smaller ecommerce site.

  3. 6

    Rachel this is an excellent, concise article, just what I needed to know.

  4. 7

    I don’t know how you do it, but you always seem to post articles like this right when I need them :)

    Thanks for the info.

  5. 9

    This is an excellent read. We will recommend this article to all our prospects.

  6. 10

    I’d like to see and article comparing the different online solutions. Based on the title, that’s what I thought would be in this article.

    • 11

      I kind of agree with you there. I thought I’d see a comparative analysis of e-store solutions like hosted (Shopify) and open source (magento, Zen Cart, etc.) – that would indeed be an interesting read.

      Nonetheless, this is a valuable and comprehensive article on getting up an e-commerce solution.

      • 12

        Yes, agree with you guys. The article is great but I feel like a comparative is missing.

      • 13

        herb414 on July 2, 2011 @MasterxKenobi It snadts for pretty hot and tastey… Or that’s what I believe it to mean. (: same dif

  7. 14

    Sean Nieuwoudt

    June 2, 2010 5:51 am

    Excellent Post!

    Also, don’t forget that is launching soon – another great e-commerce platform with great support :)

    • 15

      How do you know its going to be great system with great support when it hasn’t launched yet?

  8. 16

    thanks rachel for a great post! you’ve answered some question I’ve had rattling around my head for a while. Cheers!

  9. 17

    We use to sell our wordpress themes and their support is awesome. They handle the payment through PayPal or Google Checkout and then automatically deliver the themes to the customers right after they pay.

    I can’t say enough good things about this company, the people are great!

  10. 18

    One option worth mentioning is the Shopp plugin for WordPress — it has a one-time fee ($55) and provides advanced functionality without a ton of work. If you already run WordPress it’s a good option. (WP e-Commerce is another, but it’s a little rough around the edges.)

    • 19

      That’s interesting–my experience has been the opposite. Shopp seems rough around the edges and WP e-Commerce seems more polished. It’s especially apparent when it comes to shipping and promotions (you can check out an international order with local shipping, and a promotion for one product often gets applied to all when using Shopp). It’s possible that certain parts are rougher than others. What kind of stores were you running on Shopp?

  11. 20

    great article and definitely gives me a foundation to start on my e-commerce site.


  12. 21

    Another good question to ask clients when starting an e-commerce project is what types of customers they will target with their site. Along with normal retail customers they may want to have special pricing or terms for wholesale customers.

  13. 22

    Stephen Pratley

    June 2, 2010 7:10 am

    Interesting that you mention Foxycart, this is a nice little product for adding all the process from a buy it now bitton through to payment & order management but you’ll still need a site to manage your product catalogue.

    I wrote a little post about SME ecommerce which also discusses some other options including pros and cons of Shopify:

  14. 23

    That was a very useful read, thanks Rachel.

  15. 24

    Thanks Rachel. This could not have come at a more appropriate moment.

  16. 25

    I’m currently using bigcartel’s largest shop option with paypal payments. Bigcartel is somewhat limiting on discount options (i.e. they only offer percentage off, not more complex things like BOGO or linking to other items.) Considering switching to Shopp, the WordPress plugin and then switching my payment processor to on-site with an SSL.

    Anyone have any experience with Shopp they would like to share or would like to suggest a payment system they liked? My site is

    • 26

      Noticed a few people coming to my site via this link and just wanted to let peeps know that I did actually switch to Shopp a couple years ago… so don’t think that’s a bigcartel site when you see it. :)

  17. 27

    Zlatan Halilovic

    June 2, 2010 9:18 am

    Wow, what an awesome article this is. Luckily it came in the right time for me, as I’m building an e-commerce web site for a business that sells rugs, clothes, accessories, souvenirs and a bunch of other stuff. This is my first time making an e-commerce site, and I prior to reading this article I was confused about what solution to use, and now I think I’m just going to go with Magento.

    Btw, does anyone know a good tutorial on how to setup a custom theme and a store in Magento? I would be very grateful if someone could share some useful tips and resources for me to follow.

    Tnx in advance! :)

    • 28

      Hey Zlatan,

      I wonder what makes you choose magento considering you don’t have e-commerce experience ? In my opinion, Magento is the hardest of all popular open-source platforms out there and it requires good programming skills if you want to customize it. I’m not just talking about basic php knowledge here. It’s built for modularity, and it deliver it’s promises (it’s a great platform) – but if you don’t have the skills it’s a pain in the ass to customize.

      You should also consider that in order to run smooth, magento requires a dedicated server with proper settings (so server-side knowledge is a big plus, although I’ve came across a few hosting solutions dedicated to magento that will do all the work for you).

      Rachel provided a great link in the article with an objective listing of available solutions out there:

      I would advise you to take a look at what else is available out there, you have at least 3-4 carts that totally fit your needs and that are a lot easier to work with than magento.

      Just download the magento community edition and install it locally, then try to customize it, that would be a great way to see if you can go as far as you want to with this solution ;-)

      • 29

        Zlatan Halilovic

        June 3, 2010 3:53 am

        Dear Dagobert,

        Thank you for your throughout explanation of the problem. I really appreciate your help.

        While researching yesterday I came across these great series of tutorials on Magento on nettuts+ for all that I need to get started with it, but after hearing that it’s an enterprise e-commerce solution and that it runs pretty slow on shared hosted sites, I’m now willing to back up from magento and consider another solution. I just need a simple shopping cart, so maybe a wordpress plugin would do the job? What do you think? Oh, and once again, thanks for all your help! :)

        • 30

          Hey Zlatan,

          My heart goes to prestashop, the learning curve is fast and it really is easy to use, plus they have been growing a lot lately and are becoming very popular (which means good community: modules and help on the forum!)

          IMO Magento is great but it’s for the big projects, prestashop is the best for regular projects as it’s very powerful yet lightweight and with a fast learning curve.

          Try prestashop ;-)

    • 31

      I have been working with Magento for over a year now on several projects. It is an amazing piece of software, but very hard to work with, especially in the beginning, as it is built differently then most other PHP sites, such as wordpress. Working with it will give you great pleasure in the long run, but you will need a great deal of patience in the short term to learn it. I would definitely suggest using a knowing person for the work you wish to achieve… As far as tutorial go, there are a lot out there, a google search should as usual do the job

      • 32

        Zlatan Halilovic

        June 3, 2010 3:58 am

        Thanks raffi. After doing a bit of a research yesterday, I stumbled upon these great series of tutorials on Magento on , but after realizing that I’m quite short on time, I’m willing to let go of Magento and approach the problem from another perspective. Maybe a simple shopping cart plugin for wordpress would match my needs? After all, all I need is a simple shopping cart. What do you think?

    • 33

      Magento isn’t really that much harder to theme than anything else, it’s just organized differently. Just follow the docs or search the forums if you hit a snag. Chances are if you have a question it’s been asked and answered already. Once you get the hang of it it really isn’t much different than theming any other cart or cms, and I found it to be easier than zen or oscommerce. For jobs that only require a simple cart I prefer Opencart, theming is about as easy as it can get. The cart you choose should be determined by what you want to accomplish. If you follow that simple rule you’ll find things go smoothly.

      • 34

        Peter Kincses

        June 3, 2010 1:23 am

        I am a junior level developer so I’m not in a position as to be able to say which is the best e-commerce platform out there.Personally I found it very difficult to work with Magento.I had looked at other e-commerce solutions and choose to go with Opencart( ).Found the code very easy to modify, and it pretty much does what you would need: (this is what you can achieve after 2-3 hours of work: ).
        It has tons of features and the best thing is that it’s free.

        • 35

          Hey Peter,
          On the demo you showed us, did you manage to get the main images (that cycle) in the header to be administrated from the OC admin panel? if so how did you do it?

          • 36

            Peter Kincses

            June 4, 2010 11:24 am

            Hi there

            I edited the home.tpl to include a javascript gallery, then populated it by using a loop to display the images of each “parent” category(whichever has a parent_id=0)
            When you login to the admin panel you will see that you can add an image to every category.
            So the answer is both yes and no: you can pick which image to display through the admin panel, however you need to know some php to edit the home.tpl and the stylesheet.

      • 37

        Zlatan Halilovic

        June 3, 2010 4:03 am

        After doing a bit of a research I decided to distance myself from Magento. All I need is a simple shopping cart, and now I’m considering using a simple plugin for wordpress, but your proposed solution (openCart) seems interesting. Can you tell me something about it. In the meantime, I’m going to do research on it as well. Oh, and I almost forgot, THANKS for your help! I appreciate it :)

  18. 38

    Brandon Kirkland

    June 2, 2010 9:25 am

    Great article! I liked reading about the niche carts and your explanation of the gateway payments.

    I’m surprised BigCommerce wasn’t mention in the commercial part of the article and the open source part of the article. They just won Top Ten Reviews best eCommerce solution.

    Rachel if you haven’t read about BigCommerce, check them out. More info here:

  19. 39

    Nice overview!

  20. 40

    Exelente post Rachel

  21. 41

    Great Article :)

    e-Junkie and CartLoom are great inexpensive solutions for dealing with digital delivery (software, ebooks and so on) services too


  22. 42

    Excellent overview Rachel, particularly on the requirements side. A follow-up article with more detail and product comparison on the solutions side would be really welcome.

  23. 43

    Fab! And great to see some UK specific content, especially.

  24. 44

    An excellent article. It’s not just about design and the rest of the cart magically “happens”. Clients must take some responsibility in knowing the who, what and where of the products and functionality of the process. One suggestion for cart software and my cart of choice as a designer is Big Commerce. It’s updated often. Support is great. It is totally customizable for the designer and it rivals all of the hosted platforms on the market today. Best of all, the price is right. Check out the main site: or our site with them …

  25. 45

    Warning: Many small eCommerce solutions don’t support customized tax rules.
    My favorite full-featured solution is Drupal Ubercart. I tried others but I think its simply the best one out there right now.

  26. 47

    Erico Lisboa

    June 2, 2010 5:30 pm

    Hey guys, you should publish this:

    kind regars,
    Erico Lisboa

  27. 48

    Todd Lohenry

    June 2, 2010 6:01 pm

    Do you know of any solutions that support purchase orders?

  28. 49

    Terri MacMillan

    June 2, 2010 7:35 pm

    Excellent overview, and coming at a great time for me, as well. Thanks!

  29. 50

    Would be great to have a list and comparison IAM providers and PSP working internationally with attention to pay page customization. Just example – WorldPay pay page looks very rough – not sure I can customize it

    Any suggestion ?

  30. 51

    Jessy Brown

    June 2, 2010 8:58 pm

    Excellent suggestions. That is what i need! Thanks!

  31. 52

    Anand Vaidya

    June 2, 2010 9:02 pm

    Hi Rachel,

    Great article. Especially timely since I have an intention to study/compare various payment options for a small biz. is an opensource solution written in python , FYI

  32. 53

    Excellent article!

  33. 54

    Great tips. Thanks!

  34. 56

    Corporate logos

    June 2, 2010 10:13 pm

    Brilliant Article…! Good inspiration. Thank you for posting such a nice and informative article.

  35. 57

    Ubercart should definitely be mentioned as wel.
    Ubercart is an open source e-commerce solution fully integrated with the open source content management system, Drupal.

    • 58

      I had spent a good deal of my own time lkooing for anyone to explain this kind of subject clearly.

  36. 59

    Has anyone checked out Storenvy? It’s a great place to set up shop. And it’s 100% FREE!

    • 60

      Shame paypal is the only payment type accepted, you will loose a lot of shoppers instantly with such a barrier. Still really nice concept and site.

  37. 61

    Jason Ferdinando

    June 3, 2010 12:57 am

    Hi – we are currently using magento for our online shops – & – its an exceptional solution IMO and I haven’t even scratched the surface in terms of back end functionality. The extra modules that can be plugged in also are very interesting and we about to use one to go fully mobile.

  38. 62

    TRADINGEYE all the way!!!!!!!!!

    1) You get free support with every license
    2) The software is super easy to re-skin (one CSS file!)

  39. 63

    Excellent article! I’ve been looking around myself at what makes ecommerce sites tick over, and this blog has really pretty much just tied it all together. Incidentally, has anyone noticed DubLi’s ecommerce business model? Fascinatingly different.

  40. 64

    I used trading eye for a recent project and from a developer point of view I wouldn’t use it again.

    It was full of so many bugs and the stress that came with getting things sorted had me not sleeping properly for two weeks, no exaggeration here I was almost signed of by the doctor! Things such as no server side validation and development error messages like “this is f*$ked” are not what I expected from a commercial product.

    Although the support staff are as helpful as they can be the system is not as complete as it should be to justify the price tag and mature version of 6.1.

  41. 65

    Cathal Mc Carthy

    June 3, 2010 5:31 am

    Nice article. Shopify looks like a good solution, must try it out… Would love to see more E-Commerce articles on Smashing!

  42. 66

    I use a product called cs-cart (cs-cart dot com). and it’s by far the most flexible platform I’ve tried. It’s not free but its 100% open source code with no encryption.

    Their feature list is outstanding along with a slew of free templates out of the box.

  43. 67

    Under hosted solutions they should have mentioned I currently use them and they are great!

    • 68

      Dora E. H. Crow

      October 3, 2011 10:18 am

      Their 3D Zoom looks like a nice feature!

      I haven’t used them yet… I have been researching shopping carts and came across this very helpful blog post (and helpful comments). :)

  44. 69

    For me…it’s all about Drupal and the e-Com and Ubercart modules. <3

  45. 70

    I use Magento no matter what, even if my client is only going to sell one used piece of recycled paper, there is nothing out the that can compare to Magento, nothing!

  46. 71

    I discovered this little and quick ecommerce this week
    it seems nice, but I haven’t tried it yet

  47. 72


    June 4, 2010 5:46 am

    If you are looking for a WordPress shopping solution….forget it.

    wp-ecommerce is about the only semi-decent one but the disadvantages are that the shipping is rigid and sux. also the css is way too over complicated.

    if i was a good php programmer i would make a kickass ecommerce cart solution with awesome shipping options and make a killing.

    • 73

      WP-eCommerce is awful, but you should really give The Market Theme a shot. I was almost through with using WordPress as a cart until I came across them.

  48. 74

    Danny Halarewich

    June 4, 2010 7:22 am

    Just thought I would mention that LemonStand is a self-hosted, PHP shopping cart (currently in free, public beta) that is incredibly flexible and designer friendly.

    This article urges against hacking pre-made apps that *almost* do what you need. While I would usually agree with this, this isn’t the case with LemonStand, or at least hacking the core is not necessary.
    You can make it do whatever you want without hacking the source. Its API is powerful enough that you can build modules to add completely new functionality, or extend the out-of-box features. Website is located at

  49. 75

    Roberto Guttieriez

    June 4, 2010 2:09 pm

    If you like CodeIgniter, you might look at Community Cart, which is on Bitbucket:

    It is simple e-commerce application. Current repo tip includes Paypal website payments standard.

  50. 76

    Steve brown

    June 5, 2010 4:41 pm

    I try 20+ e-commerce carts and I found Opencart is the best! It cover all feaures I want and this project is improve and have new release every few months.

    Opencart is the star! Try it:

  51. 77

    DazzleCat Digital Agency

    June 6, 2010 4:52 pm

    This article in my opinion is an excellent primer for all to read over. saved .

  52. 78

    I love your article Rachel! Very concise, congrats!

  53. 79

    I really like big cartel, very simple but also easy to customize completely and affordable..
    i think shopify is very expensive for the features it offers..

    big commerce is great, but over complicated if you want a more simple ecommerce site. also when they update it’s a bitch..

  54. 81

    Marcel Sarrasin

    June 8, 2010 8:34 am

    For anyone who is creating their own e-commerce site I recommend reading this usability report from Webcredible on e-commerce sites It’s a list of 20 best practices with good and bad examples for each point and links to 20 companies they used in their study.

  55. 82

    Pinakin Patel

    June 10, 2010 2:38 pm

    I use XCart which is licensed but open source too. Approx £80.

    The support is fast and there response is outstanding.

    You need to get to grips with smarty templating but this does not take too long.

  56. 83 is a nice twitter-based e-commerce option. Everything is integrated with PayPal and Twitter’s new @anywhere service. Pretty cool.

  57. 84

    I’m on the lookout for new merchant services myself, since Paypal began holding a 20% reserve for 60 days at a time (despite the fact that I’ve never had a chargeback or done anything else to warrant it — well, besides succeed).
    Thanks for the article. Smashing as always.

  58. 85

    thi is a confidential coffe estate of larger amounts of hectares and will shown by any prove the buyer who is interested will like to know .

  59. 86

    Julie Carlson

    October 30, 2010 5:01 am

    I have worked with quite a few carts in the past, both open source and commercial. From Magento, Open Cart, OsCommerce to Pinnacle Cart, Magento Enterprise and X Cart Pro by far the most complete and flexible solution thus far is AbleCommerce. They do not get the same exposure as Interspire and such but it is the most powerful and custom configurable solution I’ve ever had the pleasure to work with. Whenever I find a valuable resource in the worlds of web design and programming I like to share that information in the hopes of saving others from some of the migraines I’ve endured (like Magento community edition…). Ooops! Did I just say that? lol

  60. 87

    I must agree Magento is powerful but it is a pain to deal with at times. It is quite buggy and has a lot of overhead. I’d like to see an unbiased article comparing all major e-commerce solutions.

  61. 88

    Hi. Looks like you bought me here.

    Im interested in setting up an e-commerce store and thus, looking for information on getting started. I have mid level of web design skill. So i have a couple of questions.

    E-commerce webpage: Should i used a free wordpress templates and edit that to save time? I wouldnt have a clue as how to start creating an e-commerce website and then having to install zen-cart.

    Product: Thats going to be the most important part, so my chosen product are clothing, lingerie and accessory. Where, how would i integrate or find such products to add to the service? I have seen many Shopping cart that sells clothes, whats the best way to find suppliers.

    Kind regards.

  62. 89

    It’s great that you mention local taxes in the article. We’ve tried some of the hosted applications out there, but since we are in Europe we had a hard time finding a solution that allowed us to set taxes depending on the shipping destination.

    Magento was a flexible option but it really was too complex for us and setting everything up and keeping up to date with patches wasn’t really what we wanted to do in the long run. We are now using and have had good experiences with it since they manage all the technical stuff automatically for you. Only downside is that it isn’t free :).

    • 90

      al90901 on June 9, 2011 Anything you can let me do.Oh yea (Like some tgiabeang) we have alot

  63. 91

    Product: Thats going to be the most important part, so my chosen product are clothing, lingerie and accessory. Where, how would i integrate or find such products to add to the service? I have seen many Shopping cart that sells clothes, whats the best way to find suppliers.

  64. 92

    The Commerce addon of Concrete 5 is pretty great and is pretty much plug and play. Works with and Paypal out of the box. There are some other plug in’s that help handle other gateways as well.

  65. 93


    I realize that this is an old post, but I’d still like to ask you a question.

    I’m in the process of opening an online store. I read that if you are running a German website you have to include the “Impressum”, well for me that’s a VERY BIG problem. I will be running my store from my house, I don’t want to publicize my home address. What can I do?

    My website is hosted on a US server, it’s in English and Spanish although I will be getting help to translate it to German, does it make a difference if it is not in German? Do I really have to include the impressum/my home address?

    Please help, this is really throwing me off!

  66. 94

    A long post,it takes much time and energy,but thanks for your sharing. It really difficult to get started with ecommerce and online sales
    At my blog, I also share some tips for those of us who have demand of Marketing tools/extension for Magento store especially for newbie or small retailer
    Everyone can view details here


↑ Back to top