If you are building a cannabis, CBD or hemp brand, the website is rarely the hardest part. The hard part is everything the website has to survive: payment restrictions, platform policies, location rules, age controls, product data, inventory accuracy, POS integrations, mobile conversion, organic search and a checkout that still feels easy for the customer.
That is why cannabis ecommerce development should not start with a theme.
It should start with the business model.
A premium-looking store can still be commercially weak. It can rank for nothing. It can send customers into an iframe that Google barely understands. It can advertise products that disappear at checkout because inventory is stale. It can be tied to a payment stack that was never approved for the product category. Or it can create so much friction around verification and fulfilment that customers simply leave.
At Codefreex, we approach cannabis ecommerce as an engineering and growth problem. Our ecommerce development services cover the storefront, but also the systems underneath it: WooCommerce or Shopify architecture, custom checkout logic, APIs, headless builds, POS and inventory connections, migration, technical SEO, analytics and conversion optimisation.
The goal is not to give you “a cannabis website.” The goal is to build a commerce stack your marketing team can grow without constantly fighting the technology.
What this guide covers
- Why cannabis ecommerce is different
- CBD, hemp and dispensary business models
- WooCommerce vs Shopify vs custom/headless
- Payment architecture
- Storefront and conversion architecture
- POS, inventory and operational integrations
- Cannabis ecommerce SEO
- Migration and replatforming
- How Codefreex builds cannabis ecommerce
- Frequently asked questions
Cannabis Ecommerce Is Not Normal Ecommerce With a Green Colour Palette
A fashion store can choose a platform because it likes the admin experience. A cannabis-related merchant has to ask a different set of questions before a line of production code is written.
What exactly is being sold? Where is the company based? Where can the product be sold or shipped? Is the order shipped, delivered locally or collected in-store? Does the merchant already have a POS? Which payment provider has approved the business? Does the online menu need real-time inventory? Can the storefront own the product URLs? Who maintains product compliance information? What happens when a customer changes location halfway through the buying journey?
Those questions shape the build.
They also explain why a cheap template build often becomes expensive later. The store is finished visually, then the team discovers that checkout needs to be rebuilt, the POS cannot sync cleanly, the menu is not indexable, or the chosen app stack cannot support the operating model.
For cannabis brands, architecture is not a technical afterthought. It is part of go-to-market.
First Decide What Kind of Cannabis Ecommerce Business You Are Building
“Cannabis brand” covers very different businesses. A national hemp-derived CBD brand and a licensed local dispensary may both need ecommerce, but they should not be forced into the same technical blueprint.
CBD and hemp DTC brands
A direct-to-consumer hemp or CBD store behaves more like a conventional ecommerce brand. Product discovery, subscriptions where supported, bundles, content, reviews, lifecycle marketing, shipping, product education and repeat purchases can be major growth levers.
The complication is that mainstream commerce platforms and payment products do not always treat CBD like an ordinary retail category. Shopify currently allows eligible hemp and hemp-derived products when applicable laws permit them, but Shopify Payments does not process hemp, CBD or THC transactions. WooCommerce is more flexible because the core software can be self-hosted, but WooPayments does not support CBD transactions. That means payment and hosting choices must be confirmed before development is locked in.
If the model fits WooCommerce, our WooCommerce development team can build the store around custom product data, approved gateways, conditional checkout behaviour, subscriptions or memberships where appropriate, conversion-focused product pages and a content structure that supports organic growth.
Licensed dispensaries and multi-location retailers
A dispensary website is usually much closer to a real-time commerce application. The customer may need to select a store, see location-specific inventory, switch between pickup and delivery, browse a menu that changes constantly, reserve products and receive accurate fulfilment information.
That makes POS integration, inventory synchronisation and location architecture central to the project. Current cannabis ecommerce platforms increasingly emphasise native, indexable storefronts and real-time POS-connected menus for exactly this reason: operators want their own website to be the destination instead of giving the entire discovery and transaction journey to a marketplace.
For a multi-location operator, we may use WordPress as the high-control content and SEO layer, then connect it to the commerce or POS backend through APIs. If the existing commerce vendor exposes a capable API, the frontend can be designed around the brand instead of around a generic embedded menu.
Wholesale, B2B and hybrid businesses
Some cannabis companies are not primarily DTC. They sell to retailers, manage wholesale accounts, support field sales teams or operate several brands from a shared backend. Those projects may need gated catalogues, account-specific pricing, purchase-order workflows, sales-rep permissions, inventory by warehouse, ERP connections or custom admin tools.
That is where a standard ecommerce theme stops being useful. Codefreex can move the project into custom ecommerce development or a headless architecture when the business logic is too important to be squeezed into off-the-shelf plugins.
WooCommerce vs Shopify vs Headless: Which Stack Fits a Cannabis Brand?
There is no platform we recommend to every cannabis client. The right answer depends on product category, payment eligibility, geography, internal team, catalogue size, POS, integrations and the amount of control the business wants over the customer experience.
| Stack | Best fit | Strength | What needs checking early |
|---|---|---|---|
| WordPress + WooCommerce | CBD/hemp DTC, content-heavy brands, custom workflows | Control, SEO, extensibility, self-hosting | Gateway eligibility, hosting/service restrictions, plugin architecture |
| Shopify | Eligible hemp/CBD merchants wanting a managed commerce admin | Operational simplicity, strong merchant UX, app ecosystem | Product eligibility and third-party payment processor support |
| Headless commerce | High-growth brands, multi-location retail, custom experiences | Frontend freedom, speed, API-first integrations | Backend/API quality, development budget, operational ownership |
| Custom commerce | Complex B2B, proprietary workflows, unusual fulfilment or data models | Business logic can match the operation exactly | Scope discipline, maintenance model, infrastructure |
When WooCommerce makes sense
WooCommerce is compelling when content, SEO control and customisation matter. Because WordPress and WooCommerce can be self-hosted, the business has more control over the codebase and hosting stack than it would on a closed SaaS platform.
That matters when you want custom product attributes, advanced educational content, unusual filtering, location logic, custom checkout rules or a large organic-search programme. Our WordPress development services also let us build the editorial and landing-page system around the commerce layer rather than treating the shop and the marketing site as two separate properties.
WooCommerce is not a shortcut around payment or legal requirements. It simply gives the engineering team more room to build around the services for which the merchant is actually eligible.
When Shopify makes sense
Shopify can be a strong choice for eligible hemp and CBD merchants that value a managed backend and fast day-to-day merchandising. The key is validating the payment architecture first. Shopify itself supports eligible hemp-derived commerce in permitted jurisdictions, but Shopify Payments does not process hemp, CBD or THC products.
Once that commercial constraint is solved, Codefreex can handle Shopify development, custom themes, product templates, app integrations, custom apps, performance work, migrations and headless storefronts.
We would rather tell a client that Shopify is the wrong fit during discovery than force the project onto Shopify and discover the limitation after design approval.
When headless is worth the extra engineering
Headless is useful when the frontend needs to move faster than the backend allows. A React or Next.js storefront can consume commerce, inventory and content APIs while giving the brand far more freedom over performance and UX.
This can work particularly well for multi-location stores, high-traffic brands, custom product discovery, loyalty-heavy experiences, mobile applications or businesses that need one backend feeding several customer touchpoints.
Codefreex already builds full-stack applications and API-driven commerce, so the frontend, middleware and integration layer can be designed as one system rather than handed between unrelated vendors.
Payment Processing Is a Discovery Question, Not a Launch-Week Task
One of the most expensive mistakes in cannabis ecommerce is designing an entire checkout before confirming how the business can accept money.
The merchant category, product composition, jurisdiction and processor underwriting rules can affect which gateways are available. Shopify explicitly separates platform eligibility from Shopify Payments eligibility for hemp and CBD. WooCommerce similarly states that WooPayments cannot be used for CBD, while its current guidance points eligible hosted CBD merchants toward approved alternatives such as Square in the United States and Viva.com in certain European markets.
The development process should therefore be simple: determine the exact products and fulfilment territories, get processor eligibility confirmed, then build the checkout around the approved gateway.
We do not design systems intended to hide the merchant category from a processor. That is fragile architecture. If a business has to constantly worry that its checkout stack may disappear, growth campaigns, SEO investment and customer retention are all sitting on top of unnecessary operational risk.
The Storefront Should Reduce Friction Without Making the Brand Feel Clinical
Cannabis ecommerce often fails at one of two extremes.
The first is a lifestyle-heavy site that looks expensive but makes the customer work to understand what is for sale. The second is a compliance-heavy interface that feels like a database: too many warnings, too much technical language and no merchandising hierarchy.
The job of ecommerce UI/UX design is to make a complicated transaction feel obvious.
Start with the buying path, not the homepage
Before we design a hero section, we map how a buyer gets from intent to a valid order. For a CBD DTC brand that might be collection → product → bundle → cart → checkout. For a dispensary it could be location → menu → category → product → pickup window → checkout.
That distinction changes navigation, search, filters, product templates and even the first screen a returning customer should see.
Product pages should answer the objection before the customer asks it
A strong cannabis product page is not an image, a price and an Add to Cart button. Depending on the product, the shopper may care about formulation, ingredients, size, product type, test information, availability, brand, flavour, potency information, usage guidance or fulfilment options.
The page should reveal that information in a clear hierarchy without burying the purchase action. On mobile, we often use compact accordions, sticky purchase controls and carefully prioritised content so the page stays useful rather than endlessly long.
Filtering should match the way customers actually shop
Generic WooCommerce filters are often not enough. Search and filtering may need to understand category, brand, availability, price, product type, location and product-specific attributes. Large catalogues also benefit from predictive search, synonyms, zero-results handling and query analytics.
The goal is not “more filters.” It is fewer dead ends.
Age and location controls should be part of the journey
Where the business and its legal advisers determine that age or geographic controls are required, the interface should apply those rules without creating unnecessary repetition. A customer should not browse for ten minutes, fill a cart and only then learn the order cannot be fulfilled to the selected location.
Eligibility logic is most effective when it appears at the earliest sensible point in the journey and persists as the customer shops.
Your Ecommerce Site Is Only as Good as the Data Behind It
For a dispensary, nothing destroys trust faster than an online menu that lies.
If a customer sees an item, adds it to cart and completes the ordering process only to be told that inventory was wrong, the problem is not simply “stock sync.” It is a broken promise between the store and the customer.
Modern dispensary ecommerce vendors increasingly compete on real-time POS synchronisation and native storefronts. That is a useful signal: inventory accuracy and ownership of the online experience are now core commerce capabilities, not optional integrations.
What a proper POS integration needs to handle
A production integration needs more than a cron job that copies stock once an hour. We look at where product data originates, which system owns pricing, how locations are mapped, how frequently inventory changes, whether webhooks exist, what happens when the API is unavailable and how mismatches are logged.
For complex projects, Codefreex can develop middleware that sits between the storefront and the POS instead of placing all business logic inside WordPress or Shopify. That makes the integration easier to monitor and safer to evolve.
One brand, several locations
Multi-location commerce adds another layer. The same SKU may have different inventory, price, promotion or fulfilment options depending on store. The site therefore needs a location model that is usable for customers and understandable for search engines.
We typically treat each location as a genuine business entity with its own address, hours, service area, local content and indexable landing page, then connect the relevant menu or catalogue to that location. That gives the business a better foundation for “near me” and local-intent searches than a single generic locations page with a map and no useful content.
Cannabis Ecommerce SEO: Own the Search Demand, Not Just the Checkout
A cannabis store should not have to repurchase every customer through ads, directories or marketplaces.
Organic search becomes more valuable when the website actually owns the pages people discover. That is why native, indexable menus are increasingly promoted by cannabis ecommerce platforms. If products, categories and locations live as crawlable URLs on your domain, the site has a much better chance to accumulate relevance and authority over time than if the core catalogue is hidden behind a third-party experience.
The SEO architecture starts with commercial intent
For a cannabis brand, we map search demand to page types instead of trying to make the homepage rank for everything. A typical architecture could include brand pages, category pages, product pages, location pages, educational guides and comparison content. For a development agency like Codefreex, this article itself targets the service intent around cannabis ecommerce development, while supporting related terms such as cannabis website development, CBD ecommerce development and dispensary ecommerce development.
The same principle applies to your store: one page should have one primary job.
Product and category URLs need to be indexable and useful
Each important category should have a stable URL, unique copy, internal links, clean metadata and enough context for both a customer and a search engine to understand why the page exists. Product pages need unique information rather than duplicated supplier copy.
Structured product data can help search engines understand price, availability, brand and other eligible attributes, but schema cannot rescue thin content or a confusing crawl structure.
Internal linking should move authority toward money pages
This is where most agency-written “SEO blogs” fall apart. They mention a service, then dump ten links at the bottom.
Internal links should appear where a reader naturally wants the next step. If we discuss performance problems, the reader can move directly into our ecommerce store optimisation services. If we discuss replatforming, the next useful page is our website migration service. If the business needs a fully proprietary stack, we link into custom ecommerce development.
That is good for users and gives search engines a clearer understanding of how the site’s topics relate.
Technical SEO is part of the build
Canonical URLs, faceted navigation, duplicate product paths, pagination, XML sitemaps, redirects, schema, Core Web Vitals and JavaScript rendering should be addressed during development. Adding Yoast after launch does not solve architecture problems that were coded into the store.
For WordPress builds, we structure the site so the marketing team can control titles, descriptions, indexation and content without asking a developer for every change.
Performance Matters More When Your Store Is Carrying Extra Integrations
Cannabis sites can become heavy quickly. Age gates, POS menus, analytics, consent tools, chat, reviews, loyalty widgets, location scripts and ecommerce plugins all compete for browser resources.
If every vendor is allowed to inject whatever JavaScript it wants, mobile performance collapses.
Our store optimisation work looks at the complete delivery path: hosting, database, PHP or Node performance, caching, CDN, image formats, fonts, JavaScript execution, third-party tags, API latency and frontend rendering.
We also separate “website speed score” from “commerce speed.” A homepage that gets 95 in a lab test is meaningless if product filtering takes three seconds or the cart stalls while it waits on an external API.
The pages closest to revenue deserve the strictest performance budget.
Compliance-Ready Development Without Turning Developers Into Lawyers
A development agency should not pretend to be your legal counsel. Cannabis rules vary by product and jurisdiction, and the business needs qualified advice for the markets in which it operates.
What we can do is make the platform capable of enforcing the rules your legal and compliance team defines.
That can include age-gating flows, location restrictions, conditional shipping methods, product-level restrictions, required product information, policy pages, test-document downloads, warning components and content workflows that make it harder for unauthorised claims to slip into product copy.
For U.S. hemp sellers, shipping logic also deserves technical attention. USPS currently permits domestic mailing of compliant hemp and hemp-derived products, including CBD within the federal THC threshold, when applicable requirements are met and records are retained; it prohibits these products in international mail. That is exactly the kind of rule that needs to be reflected in checkout rather than left in a policy page customers never read.
Likewise, the FDA continues to distinguish between lawful marketing and unapproved therapeutic claims around cannabis-derived products. A capable CMS should therefore support a reviewable content process instead of encouraging marketers to improvise medical claims in product descriptions.
Already Have a Cannabis Store? Replatform Without Throwing Away the SEO
Many of the cannabis projects that reach Codefreex are not greenfield builds. The store is already selling, but the team has hit a ceiling: weak SEO control, unreliable plugins, an embedded menu, slow mobile performance, poor conversion, expensive maintenance or a stack that cannot support the next integration.
Replatforming can fix those problems, but a careless migration can create new ones.
Our website migration services cover the commercial and SEO layer together. We inventory existing URLs, identify which pages have traffic or backlinks, preserve valuable content, move product and customer data where appropriate, rebuild integrations, map redirects and verify analytics before the switch.
For ecommerce, the migration plan also needs to answer operational questions: when does the old catalogue stop accepting changes, how are orders handled during cutover, which system is the inventory source of truth, and what happens if a payment or POS integration fails after launch?
“Zero downtime” is not just a DNS claim. It is a cutover plan.
What Codefreex Can Build for a Cannabis or CBD Brand
We do not package every cannabis project into the same template. The build can range from a conversion-focused WooCommerce store to a multi-location headless platform with custom middleware.
A typical engagement can combine brand and UI/UX design, WordPress development, WooCommerce engineering, Shopify development, custom/headless commerce, API integrations, custom plugins or apps, payment gateway integration, POS/inventory sync, technical SEO, analytics, CRO and ongoing website maintenance.
The point is not to sell you every service. It is to remove the bottleneck that will matter six months after launch, not just the one visible in the design mockup today.
How We Approach Cannabis Ecommerce Development
1. We start with product, market and fulfilment
Before choosing technology, we document what is sold, where it can be sold, how orders are fulfilled, which locations and inventory systems are involved, which processor is approved and which rules the website must enforce.
2. We map the revenue journey
We identify how customers arrive, what they need to understand, how they find the right product, where they are most likely to drop off and what happens after purchase. This becomes the basis for information architecture and UI.
3. We choose the stack after the constraints are known
WooCommerce, Shopify, headless and custom commerce are tools. None is a strategy. We choose the platform that gives the business the best balance of control, operational simplicity, performance and future flexibility.
4. We design the data and integrations before polishing screens
Product attributes, locations, inventory ownership, API flows, gateway behaviour and error handling are defined early. That prevents a beautiful UI from being built around data the backend cannot reliably provide.
5. We build SEO and analytics into development
Indexable pages, metadata controls, schema, redirects, sitemaps, event tracking and conversion funnels are not launch-day plugins. They are part of the acceptance criteria.
6. We test the ugly scenarios
Good QA is not clicking the happy path once. We test unavailable products, failed payments, slow APIs, invalid locations, mobile keyboards, empty search results, expired sessions, mismatched inventory and other cases customers will eventually hit.
7. We launch with a growth backlog
The first production version should be stable, fast and commercially usable. Then real behaviour tells us what to improve. That can become a CRO sprint, SEO expansion, automation project or new integration rather than an endless redesign cycle.
What a High-Converting Cannabis Ecommerce Site Should Feel Like
The customer should not feel the complexity of your stack.
They should land on the site and immediately understand the brand. They should find a product without wrestling with navigation. If location matters, the store should remember it. If an item is unavailable, it should not pretend otherwise. Product information should answer the important question without turning every page into a wall of disclaimers. Checkout should ask only for what it needs. Confirmation should make the next step clear.
Behind that simple experience can be WordPress, WooCommerce, a POS API, a payment gateway, an inventory service, analytics, a CRM and multiple compliance rules.
Good engineering makes all of that disappear for the shopper.
When You Should Rebuild Instead of Patch
Not every slow or awkward cannabis store needs a rebuild. Sometimes we can recover performance by removing plugin bloat, fixing templates, improving queries and repairing the checkout. Sometimes a new frontend can sit on top of the existing backend.
But if the current platform prevents the business from owning its product URLs, cannot integrate with the systems that run the operation, forces constant manual inventory correction, blocks the approved payment flow or makes every marketing change a developer project, patching can become more expensive than replatforming.
That is why we usually begin an existing-store engagement with an audit. Codefreex can review the current stack through our store optimisation services and recommend whether the highest-return move is optimisation, partial rebuild, migration or a new architecture.
Build the Store Around the Business You Want in Two Years
Your first cannabis ecommerce build should solve today’s problems without making tomorrow’s growth expensive.
If you plan to open more locations, the data model should know what a location is. If you plan to add wholesale, customer roles and pricing should not require a complete rewrite. If SEO is part of acquisition, the catalogue should live on URLs you control. If you expect high campaign traffic, checkout and search need performance budgets. If the current POS will eventually change, the integration should not contaminate every frontend template with vendor-specific logic.
This is the difference between a website project and ecommerce infrastructure.
Codefreex builds both.
Planning a Cannabis, CBD or Hemp Ecommerce Project?
If you already have a store, send us the URL and the biggest thing holding it back. We can review the platform, mobile experience, product discovery, technical SEO, performance and integration architecture before recommending a rebuild.
If you are starting from zero, bring us the business model before you choose the platform. We will map the stack around the products, payment path, fulfilment, marketing strategy and systems you actually need.
You do not need another cannabis website template. You need a store your operation can trust and your marketing team can grow.
Discuss your cannabis ecommerce project with Codefreex →
Frequently Asked Questions About Cannabis Ecommerce Development
What is cannabis ecommerce development?
Cannabis ecommerce development is the design and engineering of online commerce experiences for cannabis, CBD, hemp and regulated retail businesses. Depending on the business model, it can include an ecommerce storefront, online ordering, custom product architecture, age or location logic, payment gateway integration, POS and inventory synchronisation, SEO, analytics and custom APIs.
Can Codefreex build a CBD store with WooCommerce?
Yes, when WooCommerce is appropriate for the merchant’s products, geography, hosting and payment setup. WooCommerce gives brands strong control over content, SEO and custom functionality. The payment gateway must still support the business; WooPayments itself does not currently process CBD transactions.
Can CBD products be sold on Shopify?
Shopify currently supports eligible hemp and hemp-derived products where applicable laws permit them, but Shopify Payments does not support hemp, CBD or THC transactions. Eligible merchants therefore need a compatible third-party payment provider.
Is WooCommerce or Shopify better for a cannabis brand?
Neither is automatically better. WooCommerce provides more hosting and code-level control; Shopify can provide simpler managed operations for eligible merchants. We choose based on payment eligibility, product type, integrations, SEO requirements, internal workflow, performance and growth plans.
Can you integrate a dispensary POS with WordPress or a custom storefront?
Yes, when the POS or commerce provider offers suitable APIs. We can architect product, location, inventory, pricing and ordering synchronisation directly or through a middleware layer, depending on the complexity of the integration.
Can Codefreex build a headless cannabis ecommerce site?
Yes. We build API-first ecommerce using React and Next.js when a business needs more frontend freedom, performance or integration flexibility than a conventional theme can provide.
Can you migrate an existing dispensary or CBD website without losing SEO?
Yes. We inventory existing URLs, metadata, high-value pages and backlinks, then map redirects and preserve relevant content during the migration. Ecommerce data and integrations are handled as a separate cutover workstream so the operational store remains stable.
Do you handle cannabis ecommerce compliance?
Codefreex implements technical requirements defined by the business and its qualified legal or compliance advisers. That can include age flows, geographic restrictions, product rules, shipping conditions, required content and approval workflows. We do not replace legal counsel.
How much does cannabis ecommerce development cost?
The cost depends on the architecture. A focused WooCommerce CBD store, a multi-location POS-connected dispensary platform and a custom headless commerce build are very different projects. We scope around the catalogue, design, payments, integrations, migration, SEO and operational workflows rather than quoting from page count alone.