Indian Vastraa
Online storefront for ethnic wear and traditional textiles — a catalogue-heavy build with variant handling and a merchandising-led browse experience.
Visit siteServing Canada
EasyWork Solutions builds online stores and e-commerce platforms for Canadian retailers from Surat, India. Canadian e-commerce carries two complications that stores built for other markets do not have to solve: the sales tax owed depends on where your customer is rather than where you are, and shipping a parcel across the second largest country in the world costs enough that it changes what you can profitably sell.
E-commerce development for Canadian retailers has to calculate GST, HST, QST or PST according to the customer's province rather than the seller's, satisfy Quebec distance-selling rules including the restriction on charging before shipment, handle domestic shipping costs that vary enormously by destination, present duties honestly on cross-border orders, and carry a product catalogue in French where the Charter of the French Language applies.
This is the single most common thing that is wrong with a store built for Canada by a team that has not built for Canada. Sales tax here is charged according to place-of-supply rules, which for most goods sold online means the destination province. A retailer in Alberta shipping to Ontario charges the Ontario rate. The same retailer shipping to Nova Scotia charges a different one, and shipping within Alberta charges GST alone. One store, one product, several correct answers depending on the delivery address.
The structure underneath is genuinely layered. There is a five percent federal GST. Several provinces have merged their provincial tax into a single harmonised HST at a combined rate that differs between them. Quebec runs QST, which is administered by Revenu Québec rather than the CRA and requires its own registration. British Columbia, Saskatchewan and Manitoba each levy their own separate provincial tax that sits alongside GST with its own rules about what is taxable. So the correct handling is not one lookup table but several regimes with different registration obligations, filing schedules and exemption lists.
What it means for the build is that tax is a service, not a field. The rate has to be resolved from the shipping address at cart time, displayed before the customer commits, recalculated when the address changes, applied correctly to shipping charges themselves where the province taxes them, and recorded per line so remittance and returns reconcile. Whether you are registered in a given province, and from what threshold, is a question for your accountant — but the store has to be built so the answer can be configured rather than hard-coded, because it changes as you grow.
Quebec regulates distance contracts more prescriptively than the rest of Canada, through the Consumer Protection Act, and the requirements land on the checkout flow rather than on a terms page. A merchant must disclose a defined set of information before the consumer is bound — the identity and contact details of the merchant, an itemised description of the goods, the total price including all charges, the delivery arrangements and the cancellation terms — and the consumer must be able to review and correct their order before accepting it.
There are two provisions that surprise merchants most. One concerns when payment can be taken: the framework is built around the merchant's obligation to deliver, and a consumer gains cancellation rights where the merchant fails to perform within the stated period, so a store that charges on order and ships a month later is exposed in a way it would not be elsewhere. The other is the requirement to give the consumer a copy of the contract after the fact, which means the order confirmation is a legal artefact and not merely a courtesy email.
None of this is difficult to build, and all of it is expensive to retrofit into a checkout that was designed around a template. We treat the Quebec requirements as the baseline for the whole store rather than a conditional branch for Quebec addresses, because a checkout that discloses fully, allows correction before commitment and issues a proper confirmation is simply a better checkout everywhere. Your legal adviser confirms exactly what applies to your goods; we build the flow so it can satisfy it.
Canadian retailers underestimate domestic shipping more consistently than any other cost in the model. The population is concentrated in a narrow band, and the moment an order leaves it the economics change completely. A parcel to a Toronto or Vancouver address and the same parcel to a northern community are separated by a multiple, not a margin, and remote-area surcharges apply to a long list of postal codes that most rate calculators handle badly by default.
That leaves a real strategic choice which the store has to implement rather than assume. Flat-rate shipping is simple and predictable for customers and quietly loses money on the long-tail destinations. Live carrier rates are accurate and produce checkout numbers that make customers abandon. Free shipping over a threshold is the most effective conversion lever in Canadian retail and only works if the threshold is set from real order data rather than copied from an American store where the underlying distances are smaller.
We build the rate logic so it can be tuned rather than replaced: real carrier rates available at cart, the ability to zone the country and price zones differently, thresholds configurable by zone, and honest handling of remote surcharges instead of discovering them on the invoice. The dimensional weight question matters too — bulky, light products are priced on volume rather than mass, and a store selling those needs accurate package dimensions per product or every quote will be wrong.
A great many Canadian shoppers buy from American stores, and a great many Canadian stores sell into the United States, so cross-border handling is closer to a core requirement than an edge case here. The thresholds at which duty and tax become payable on courier shipments differ depending on origin — CUSMA established more generous de minimis levels for goods shipped from the United States and Mexico, with different figures for tax and for duty, and the general threshold for other origins is far lower.
The part that damages customer relationships is not the duty itself but how it is collected. When a shipment arrives with charges owing, the courier typically presents duty, tax and its own brokerage fee at the door, and a customer who paid a checkout total has no context for a second bill from a company they have never heard of. That produces refused deliveries, chargebacks and reviews, all of which cost more than the amount in dispute.
The fix is architectural rather than diplomatic. Either the store quotes and collects landed cost at checkout so the parcel arrives with nothing owing, or it states clearly and prominently before payment that duties and brokerage will be charged on delivery and gives a realistic estimate. Both are defensible; silence is not. Building the first option means integrating a landed-cost calculation and holding accurate country-of-origin and tariff classification data per product, which is a catalogue data problem that has to be solved before the checkout can use it.
Where the Charter of the French Language applies to your store, it is not only the interface that needs French — it is the catalogue. Product names, descriptions, specifications, care instructions, size charts, category names, filter values, shipping and returns policies, and the transactional email that follows the order. On a store with a few dozen products this is a translation invoice. On a store with thousands of SKUs and a supplier feed updating daily, it is an architecture problem.
The failure mode is predictable. French is added as a duplicate set of product records, the two sets drift within weeks, a supplier feed updates the English descriptions and silently leaves the French ones describing last season's specification, and eventually the French store is quietly wrong about prices and availability. We build one product entity with translatable fields instead, so stock, price and status are shared and only language-bearing fields differ — that way a feed update cannot desynchronise the two storefronts because there is only one of them.
The related decisions follow from that. Which fields genuinely require translation and which are language-neutral, such as a model number or a dimension. How to handle a new product that arrives without French copy — publish in both languages or hold, and it should be hold. How search and filtering behave in French, including accent-insensitive matching, because a customer typing "etagere" without accents expects to find "étagère". And URL structure, so that the French product page is a proper indexable page in its own right rather than a query parameter on the English one.
We do not publish a price list, because a number given before understanding the work is a guess someone pays for later. These are the factors that actually move the figure in this market.
Destination-based resolution across GST, HST, QST and the separate provincial taxes, applied per line and to shipping where applicable, with registration configurable as you cross thresholds.
Zoned rates, live carrier quotes, remote-area surcharges and dimensional weight, plus accurate per-product package dimensions in the catalogue for any of it to be right.
Quoting duty and tax at checkout requires country-of-origin and tariff data per product and an integration to calculate it — more work than a disclaimer, and far cheaper than refused deliveries.
One product entity with translatable fields costs a little up front and prevents the English and French storefronts drifting apart, which is the failure that eventually produces wrong prices in French.
Adding Interac alongside cards and wallets is additional integration and settlement work, and it is what stops a Canadian checkout looking like an imported one.
Online storefront for ethnic wear and traditional textiles — a catalogue-heavy build with variant handling and a merchandising-led browse experience.
Visit siteCRM and ERP platform for the apparel export industry, covering order tracking, documentation and financial reporting where order data has to reconcile exactly.
Visit siteInventory platform with real-time stock across multiple warehouses — the system of record an online store depends on to avoid overselling.
Visit siteWhich provinces you are registered in, which regimes apply, what is taxable and how shipping is treated — established with your accountant before the cart is built, because it shapes the data model.
One product entity with translatable fields, language-neutral attributes identified, and a publishing rule that will not release a product with missing French copy.
Carrier rates, zones, thresholds, remote surcharges and dimensional weight wired in, with per-product dimensions captured so quotes reflect reality.
Full disclosure before commitment, a review-and-correct step, honest total pricing and a proper confirmation record — Quebec's requirements applied as the baseline everywhere.
Landed-cost quoting where it is worth building, clear pre-payment disclosure where it is not, and country-of-origin data maintained in the catalogue either way.
Tax recorded per line, orders reconciling against the accounting system, and a handover covering source code, credentials and how to change the rate configuration yourself.
These apply to us as much as to anyone else bidding for your work.
The one that belongs to your customer's province, under place-of-supply rules, not the one for where your business sits. That means GST alone in some provinces, a harmonised HST at rates that differ between the participating provinces, QST administered separately in Quebec, and standalone provincial taxes in British Columbia, Saskatchewan and Manitoba. Your accountant determines where you are required to register; the store has to be built so those settings are configurable.
Not administratively. QST is administered by Revenu Québec rather than the CRA, carries its own registration and filing obligations, and has its own rules. A store treating it as another provincial rate in the same table will produce numbers that do not reconcile at filing time even when the arithmetic looks right.
Broadly: disclosure of a defined set of information before the consumer is bound, including the merchant's identity, an itemised description, the total price with all charges, the delivery arrangements and cancellation terms; an opportunity to review and correct the order before accepting; and a copy of the contract afterwards. Cancellation rights arise where the merchant does not perform as stated. We build the flow to satisfy it and your adviser confirms the scope for your goods.
A threshold is the most effective conversion lever in Canadian retail, but the threshold has to come from your own order data and your own shipping costs. Copying a figure from an American store is the classic mistake, because the distances underneath it are smaller. Set it above your current average order value by enough to move behaviour, and check it against the cost of your long-tail destinations rather than your typical one.
Because duty, import tax and the courier's brokerage fee are being collected on delivery rather than at checkout. Thresholds differ by origin — CUSMA set more generous de minimis levels for goods from the United States and Mexico than the general ones. The fix is to quote landed cost at checkout so nothing is owing on arrival, or to state clearly before payment that charges will apply and estimate them. Saying nothing produces refusals and chargebacks.
You can build that way and we would advise against it. If the Charter applies to your store the French catalogue is an obligation rather than an expansion, and adding it later usually means duplicating product records — which is precisely the structure that drifts and leaves your French storefront quoting last season's specifications. One product entity with translatable fields costs very little at the start.
Cards and wallets will work, but Interac Debit and e-Transfer are what Canadians actually expect to see, and a checkout without them reads as a foreign store. Whether both are worth integrating depends on your average order value and whether you sell to consumers or businesses, which is a decision worth making before the checkout is designed.
A meaningful share of search in this market happens in a language other than English. These are the terms people actually use — we work with your translator for customer-facing copy rather than relying on machine translation.
Last reviewed 2026-08-06 by the EasyWork Solutions team.