Home » Item #999
I want customers to be able to checkout and not create an account. I also want to move all the checkout steps to a single page. These will make the checkout much faster. How can I do this?
We are often asked if it is possible to checkout without creating an account, or without giving an email address, or without providing other personal information. Unfortunately it isn't quite as simple as it might seem in practice.
Faster checkout?
The reason for the request is normally that it will make the checkout faster.
Nearly all of the information we ask for during checkout is required in order to process an order. The only extra information requested that is specifically used just to create an account is the password - one single text field.
We require the following information:
- Email address
- Name
- Billing address (street, town, county, postcode, country)
- Shipping address (street, town, county, postcode, country)
- Telephone number
'Company' is optional, so can be skipped if the user wants to.
Even if it was possible to conduct your business without some of this information, the user would still be required to give it when they get to the payment gateway because virtually all payment gateways now require all this information in order to process a credit card payment.
And in practice, the information is vital to smooth operation of a store. Collecting both email and phone number gives you alternative methods of contact; very useful if mail to a customer bounces because their mailbox is full (it happens to us all the time).
So whether we save this information to create a customer account really has no bearing on the time it takes a user to checkout. They have to give virtually all of this information anyway whether it is saved or not.
Of course, returning customers do get the benefit of the customer account - they don't need to rekey most of their information, only select shipping options.
Google Checkout can provide a faster checkout experience if the user already has a Google Checkout account, because they are essentially logging into that while making an order.
Reducing checkout steps?
Another request to speed up or streamline the checkout process is to change the order of the steps in the checkout, or combine them into a single page, or sometimes to move fields from one step to another.
The checkout process is broken up in the way it is because subsequent steps rely on information from previous steps. For example, on the first stage we ask for an email address - this is done so we can check whether an account exists or not.
On the next step, we collect the billing country, the shipping country and the shipping postcode, as well as EU VAT number if applicable. Only with this information can we determine which types of shipping are available and the prices for it (postcode is used by real-time shipping systems, although not the banded system).
The next step shows the shipping choices available... if there is only a single option available, we automatically skip through to the next step to save time.
With all this information, we can price an order, determine the tax on it, and then collect the final information from the user.
Because of the need to dynamically offer pricing and choices based on the selections in previous steps, it is not possible to combine the steps into a single page checkout
Our ASP.NET cart Kartris accomplishes fewer steps (although it still collects the same information) as it uses the AJAX support in ASP.NET to do partial page postbacks.