Place test orders with real Canadian addresses typed the way customers type them. Make the form accept postal codes with or without the space, list provinces properly, and set tax and shipping by province.

A checkout that expects an American

A customer in Kamloops fills a cart, reaches the checkout and types her postal code. The form says it is not a valid ZIP code.

She tries again without the space, then in capitals. The field wants five digits, and there is no way to give it what it wants.

Shop software written for American stores does this more often than owners expect: a ZIP code field, a list of states with British Columbia missing or buried, prices that assume the US dollar.

The customer does not report the problem. She closes the tab, and the shop never learns a sale was nearly made.

Where Canadian addresses trip

The second fools owners who test their own shop. They type the code the way the form expects and it goes through, while a customer typing it as it appears on an envelope does not.

What the form should accept

A Canadian postal code is six characters: letter, digit, letter, then digit, letter, digit, usually with a space in the middle. Codes in British Columbia all begin with V.

People type them every way possible: with the space and without, in capitals and lower case, occasionally with a hyphen.

The form should accept all of those and tidy the result itself, adding the space and the capitals, rather than asking the customer to match a format nobody has told them about.

Whether the code actually exists is a question for the shipping step, not for a strict pattern on the form.

Provinces, not states

A field labelled State that offers Alabama to Wyoming tells a Canadian customer the shop was not built with them in mind. Some carts show provinces only after the country is changed, and some never do.

The labels matter as much as the options. With Canada selected, the fields should say Province and Postal code, and most current shop software can switch them automatically if the country list is set up properly.

Put Canada first in the country list, or make it the default. A shop that sells mostly in Canada should not make every customer scroll past the United States.

Tax and shipping by province

Sales tax depends on the province an order ships to: GST alone in some, GST plus a provincial sales tax in others, and a single combined tax, HST, in the rest.

A cart set up with American state taxes gets this wrong without any warning, and the error only shows when a customer or an accountant notices.

Shipping has the same weakness when rates come from tables built around American zones, or from a carrier lookup that needs a properly formatted postal code to return a price.

If the code is mangled earlier in the form, the shipping step may quote nothing, or the wrong amount.

A worked example

A hot sauce maker rents a commercial kitchen by the hour to cook and bottle its sauces. Its online store sells single bottles and gift packs of three, shipped across Canada, rural addresses included.

The shop ran on a cart plugin written for American stores. Its checkout asked for a ZIP code, listed states first and Canadian provinces after them, and treated the space in a postal code as an error.

At launch the owner had tested it by typing the kitchen's postal code without a space, and it went through.

Customers on phones, typing their codes with the space, got a message about ZIP codes they could not make sense of.

A few emailed their orders instead. Nobody knows how many simply left.

The developer rewrote the validation to accept any common way of typing a code, set Canada as the default country with provinces labelled properly, and set up the tax rules for each province.

Now someone places test orders with addresses from three provinces, one of them rural, after every update to the cart.

Testing with real addresses

Place one test order from a phone and another from a computer, each with a complete Canadian address typed the way a customer would type it.

Try a postal code with the space and without, in lower case, a unit number before the street number, a rural address, and a Quebec address with accented letters.

Then follow each order through: the confirmation email, the order screen, the packing slip and the shipping label. A code accepted at checkout can still be mangled further down the line.

Prices and currency

A shop that quotes in US dollars, or shows a dollar sign without saying which dollar, leaves Canadian customers guessing. With the lower Canadian dollar, the guess matters.

Say which currency the prices are in, at least on the cart and at checkout, and make sure the amount charged matches what the customer saw.

When the cart fights back

Some older carts cannot be set up properly for Canada, and fixes made to their checkout code are wiped out by the next update.

That is a sign the shop software itself needs replacing, which is far better planned than discovered by customers. A developer can usually tell within an hour whether a cart can be configured or is being worked around.

The counter-case

A shop on a current platform with Canada set up properly may find nothing wrong at all, and the test takes ten minutes.

A shop that sells mainly to customers in the United States has good reason to keep American defaults, though it should still accept a Canadian code without complaint.

For everyone else, test with real Canadian addresses typed the way people type them, and repeat the test whenever the cart changes.

Testing the checkout

  1. Place a test order from your phone.
  2. Type the postal code with a space.
  3. Try it again in lower case, without the space.
  4. Check the province list and its labels.
  5. Compare the tax lines for three provinces.
  6. Follow the order through to the shipping label.
  7. Repeat the test after every cart update.

Step seven is what keeps the checkout working. Cart and plugin updates replace checkout settings and custom code more often than anyone expects, and the first person to notice is usually a customer.

A checkout that fails without telling anyone is one more version of the enquiries your business lost last year.


Frequently asked questions

Why would a checkout reject a postal code?

Shop software built for the United States often expects a five-digit ZIP code, rejects the space or the letters, or limits the field to too few characters.

How should a form accept postal codes?

Every common way they get typed: spaced or not, upper or lower case. The form should tidy the code itself rather than make the customer match a hidden format.

Why does the province list matter?

A State field listing American states tells Canadian customers the shop was not built for them, and a missing province can block the order or break the tax.

What else breaks with Canadian addresses?

Sales tax by province, shipping rates calculated from American zones or a mangled postal code, unit numbers before street numbers, and accented letters in Quebec addresses.

How should I test my checkout?

Place real test orders from a phone with addresses from several provinces, typed different ways, and follow each one through to the confirmation email and the shipping label.

What if the cart cannot be configured?

Patches to an old cart are often overwritten by its next update. That usually means the shop software needs replacing, which is better planned than discovered by customers.

West Coast Media Solutions Inc. provides web design, web development, hosting, digital marketing, and business consulting to organisations across Canada, drawing on more than twenty-five years in the field.

Shop built on an American cart?

Send us your shop address. We will run test orders with Canadian addresses and fix what the checkout gets wrong.

Start a Conversation