Blog

Recently we’ve been in the process of reshuffling our eCommerce software offerings. The osCommerce core is getting dated, we’ve found Magento to be a pain in the rear and buggy, Nexternal feels a bit old-school to us, X-Cart the same. In the process of sourcing some nice, clean, modern eComm software I came across Shopify.

I was attracted to Shopify primarily because it seemed on the surface to be the exact opposite of Magento and more like what we’re trying to do with our own CakeCommerce: they started simple. But one thing Shopify does not offer is the ability for a customer to create an account in the store. That got me wondering why. The result of my wondering was a bit of an “ah-ha” moment. An iluminada.

What is the purpose of a web store at it’s core? To sell a product. Basically, you need a product with price, description, weight and photos. You need a secure checkout. You need support for a variety of payment gateways. You need the process to be easy. That’s about it.

For many years now, eCommerce has been evolving… with convenience features being at the core of that. I think it was Amazon that first started allowing customers to create an account in order to store shipping and payment information, alleviating the need for a customer to have their credit card or address handy. Eliminating extra data entry. A good idea at the time, and a good idea for such a large store, one with millions of frequent repeat visitors.

But as more and more web stores started adopting this technology, I’ve found myself frustrated… repeatedly. Requiring a customer to create an account is fine for a store I shop at all the time. When I visit the same place repeatedly, I tend to remember my password. Or at least Firefox remembers it for me. So no prob. But if you’re like me, you’ve got a gazillion usernames and passwords to remember by now. So what happens when you return to a store that you’ve not visited for a year or two?

Again, if you’re like me, you’ve forgotten the password and, being a relatively unimportant password, you’ve not logged it anywhere either. So here we are, ready to checkout, and we’re being prompted to login. We try a few of the usual suspects without success. We try the “lost password” link, but the confirmation email never arrives or gets dumped into the spam box. So we try to create a new account, only to be told “that email address already has an account with us. If you’ve lost your password, try the ‘lost password’ link.”

Foiled.

The end result of this is usually that the product doesn’t get purchased.

Look, I spend my life building websites. I’m what you would call ‘savvy’. But this happens to me all the time.

So let’s look at the issue from another angle. Most browsers autofill information now. When firefox hits a textfield named ‘address’ and I start typing 1 – 8 – 0 the rest is filled in for me. Why do I need the store to remember my address for me anyway? Especially when — if I’m too dumb or drunk to do it — my browser does. Having an account in a store saves me no time during checkout. Ok, maybe — if I happen to remember my password — maybe having an account would save me 10-20 seconds. BUT, if I happen to lose my password then it loses me 5-10 minutes… if I’m able to retrieve that password at all. More so, it simply loses the sale for that store’s owner. Not a good gamble for a store owner, if you ask me.

Some store owners might say “well, I want to be able to track sales by customer.” I would answer that the customer need not create an account to do this. You simply run a report using the email address as the key field. Or the customer name. Or the billing address.

Others may say “but I want to be able to follow up with my customers.” Don’t need an account for this either. A simple opt-in checkbox and an hour of programming with Campaign Monitor’s API and addresses get fed to your email broadcasting app.

What about storing payment details, you might say? Well, few small-scale eCommerce apps do this anyway. It’s too much of a liability for the store owner. Do you really want to be responsible for your customer’s payment information, hang your ass out there for a nice hefty lawsuit if your site gets hacked? I didn’t think so. Best to just pass that payment info off to your gateway provider via an ssl connection and be rid of it.

So in the end I’ve come around to whole-heartedly support Shopify’s decision to drop the whole customer account thing. It’s not only unimportant for all but the largest enterprise companies or special needs, it’s also a nuisance a lot of the time. Nuisances be damned– they’ve got no place in any site we’re building.