Start with responsibility, not the theme demo
Shopify hosts its online stores. WooCommerce is an open-source ecommerce platform built on WordPress, with a choice of hosting provider. That difference should shape the decision before colours, layouts, or homepage animations enter the conversation.
Our recommendation is to start with Shopify if nobody in the business wants to coordinate hosting and WordPress maintenance. Start with WooCommerce if you already depend on WordPress or need control over the application and hosting environment. For WooCommerce, name the person or provider responsible for keeping the installation working.
Neither choice removes operational work. Someone still needs to manage products, permissions, integrations, order problems, and changes to the storefront. A platform can host the checkout; it cannot decide who answers a customer whose parcel went to the wrong address.
| Decision | Shopify | WooCommerce |
|---|---|---|
| Hosting | Shopify hosts the online store | Choose and manage a host or managed service |
| Storefront editing | Theme sections and blocks | WordPress themes and the chosen editing setup |
| Custom functionality | Evaluate apps, APIs, and supported extension points | Evaluate plugins and custom development |
| Maintenance planning | Assign ownership of themes, apps, and integrations | Also assign WordPress, plugin, and hosting maintenance |
| Decision evidence | Demonstrate requirements on the intended plan | Demonstrate requirements on the intended plugin stack |
Turn your catalogue into a working test
Do not evaluate either platform with a single uncomplicated product. Bring representative products: an item with size choices, an item that needs special shipping, and anything with a recurring or personalised order process. Include the awkward item that currently needs a spreadsheet and an apology.
Describe each requirement as an observable action. Replace 'supports wholesale' with 'an approved buyer sees the correct catalogue and can reorder without contacting sales'. Replace 'integrates with inventory' with 'a cancelled order returns stock to the system responsible for availability'. Ask for a demonstration of those actions.
Classify each requirement as built in, provided by an extension, custom work, or unresolved. Record the exact plan, app, plugin, and external service involved. An unresolved requirement should remain visible in the decision document. A sales demo is not evidence that your particular combination works.
Separate storefront flexibility from checkout flexibility
Shopify theme sections are reusable modules that merchants can customise. Blocks let editors arrange content within those modules. This can suit a marketing workflow where staff need to change product storytelling and campaign pages without editing code. Demonstrate those edits using the proposed theme before approving it.
Checkout has its own boundaries. Shopify documents that Checkout UI extensions on the information, shipping, and payment steps require Shopify Plus. This restriction concerns those extension locations; it does not mean every checkout adjustment requires that plan. Ask the developer to identify the supported mechanism for each requested change.
WooCommerce lets you extend a WordPress store through plugins and custom development. Treat that flexibility as work to specify and maintain. Before approving a checkout extension, require evidence that it works with the chosen payment gateway, checkout implementation, currency setup, and other essential plugins.
Test CAD and USD through the entire order
For a store serving Canada and the United States, distinguish the currency shown on a product page, the currency charged at checkout, and the currency deposited into the business account. Write down the intended behaviour for each. A currency selector alone does not prove that the payment follows the shopper's selection.
Shopify Markets supports selling across markets, including local-currency experiences where the payment gateway supports them. WooCommerce has a base store currency; additional currency display or payment functionality requires a suitable extension. WooCommerce's currency documentation explicitly distinguishes display-only conversion from taking payment in another currency.
Test a Canadian shipping address and a US shipping address with each intended payment method. Follow the order into confirmation emails, fulfilment, reporting, and a refund. Ask your payment provider to explain settlement and currency conversion before committing to the setup. Keep expected and observed results together.
- Label amounts clearly as CAD or USD where the dollar symbol could be ambiguous.
- Check that the cart and checkout preserve the intended currency.
- Verify how a refund appears to the customer and in internal records.
- Confirm that accounting and inventory integrations receive the intended currency values.
Make shipping and language part of the selection
Build shipping examples from your actual fulfilment operation. Include a nearby customer, a distant Canadian destination, a US destination, and an address you cannot serve. Write the expected available delivery methods for each, then test the proposed store. Include mixed carts if some products cannot travel together.
Ask how staff will change service areas, handle an unavailable delivery method, and process a return from either country. Require a clear error or explanation when an order cannot be shipped. Do not let a successful homepage preview stand in for a completed delivery workflow.
If you intend to sell in English and French, inventory every customer-facing surface. Include product options, search, cart messages, payment errors, emails, and return instructions. Test each language through purchase and support. Assign an editor to keep both versions aligned when products change.
Plan privacy and accessibility as implementation work
This is general information, not legal advice. Have qualified advisers identify the requirements relevant to your business and markets. Translate that advice into specific work: approved notices, consent controls, data handling, email preferences, and accessible customer journeys. hehe.software helps implement the technical side; we do not certify compliance.
Make a data inventory before installing marketing tools. Record what each tool receives, why it is needed, and who can access it. Ask how consent preferences will reach connected services. Test the configured behaviour rather than assuming that installing a banner completes the work.
Use W3C's Easy Checks as an initial accessibility review. Check keyboard navigation, visible focus, form labels, text alternatives, and zoom. Then test the complete purchase journey, including third-party widgets and error states. These initial checks are useful, but W3C cautions that they do not establish comprehensive accessibility.
Compare the full operating commitment
Request comparable scopes for both options. Include design, catalogue preparation, integrations, payment setup, training, migration, and ongoing support. Separate launch work from recurring services and staff time. Compare the same requirements; a basic storefront and a customised order workflow are different jobs.
For Shopify, identify the required plan and every app or external service. For WooCommerce, identify hosting, extensions, backups, staging, and maintenance responsibilities. In both cases, ask what happens if a supplier stops supporting an essential integration or a business requirement changes.
WooCommerce's update guidance calls for current backups and testing on a staging copy before production changes. WordPress backups need both the database and files. Ask who can perform a restore and how they would protect orders placed after a backup. Record the answer before launch, while nobody is rushing.
Make marketers and operators test their own work
Give the proposed setup to the people who will use it. Ask a marketer to publish a campaign page and an operator to update a product, fulfil an order, and handle a refund. Note where they need developer assistance. Compare that result with the level of support you intend to retain.
For performance, evaluate representative product and collection pages with the proposed images and integrations installed. Core Web Vitals cover loading, responsiveness, and visual stability. Use those categories to discuss actual problems rather than treating a clean theme preview as a promise about the finished store.
For agency leads, include the handoff in acceptance criteria. The store owner should know which accounts they control, where configuration lives, how changes are released, and whom to contact when something fails. Require concise operating instructions that match the delivered setup.
Treat migration as its own project
Before moving platforms, inventory products, variants, images, customers, orders, content, and records held by extensions. Specify what must remain editable in the new store and what can remain in an accessible archive. Investigate customer login and recurring-payment migration separately; do not assume a product import covers either.
Map existing page addresses to their relevant replacements. Google's site-move guidance recommends permanent server-side redirects and updating internal links. Preserve useful content and check the mapping before launch. Redirecting every retired product to the homepage is not a substitute for matching relevant destinations.
Rehearse the import, compare records, and place test orders. Define when catalogue edits stop, how new orders are reconciled, and who approves the switch. Prepare a rollback plan that accounts for orders received during the transition. Platform selection is not complete until the move itself has an owner.
Use this decision checklist before committing
Choose based on demonstrated requirements and a maintenance model you can sustain. If both options pass, prefer the one your staff can operate with fewer unresolved dependencies. If neither passes, reduce scope or commission a focused technical investigation before buying extensions and rebuilding pages.
- Representative products complete the intended purchase flow.
- Required checkout changes work on the proposed plan and stack.
- Canadian and US addresses produce the intended delivery choices.
- CAD/USD behaviour is verified through payment, refund, and reporting.
- Staff can perform routine content and order tasks.
- Privacy requirements and accessibility review have assigned owners.
- Maintenance, backups, incident handling, and account access are documented.
- Migration scope, redirect mapping, and launch approval are agreed.
How hehe.software can help
hehe.software is a small, independent web and app studio based in Vancouver, British Columbia, working remotely with businesses across Canada and the United States. We offer Shopify and WooCommerce development, migrations, integrations, maintenance, and fixes for stores we did not build. Start with paid discovery when the platform choice needs investigation, or email mwe@hehe.software with your requirements for a fixed quote or hourly estimate. Agencies can also bring us a defined sub-project.