Bejaad Craft: a Moroccan craft store built on Shopify | Digital Heroes
This case study covers the Shopify storefront Digital Heroes built for Bejaad Craft, a Moroccan homeware brand selling Beni Ouarain, Azilal and Taznakht rugs alongside ceramics, leather goods and raffia baskets. It walks through the public catalogue of thirty six products priced in Swiss francs, the collection structure behind them, and the commerce problem that single-piece rug stock creates for any store.
What Bejaad Craft actually sells
Bejaad Craft sells Moroccan home goods to a European buyer, priced in Swiss francs, on a French language storefront. What matters for anyone studying the build is that this is not one catalogue. It is two catalogues sitting under one domain, and they behave nothing alike.
The first is rugs. The public product feed lists Beni Ouarain, Azilal and Taznakht pieces, each one its own product record with a single variant. In the feed there are Beni Ouarain rugs at CHF 480, CHF 1,020, CHF 1,180, CHF 1,280 and CHF 1,780, an Azilal at CHF 720 and a Taznakht at CHF 1,780. Those are not size options on one listing. Each is a separate piece with its own page and its own price.
The second is everything that restocks. Raffia baskets at CHF 17 and CHF 24, a coloured raffia basket at CHF 29, a raffia and leather bag at CHF 39, wool poufs at CHF 95, candles at CHF 60 and CHF 75 carrying two variants each, and beyond those the ceramics, cosmetics, leather travel bags and Moroccan leather poufs. Thirty six products sit in the public feed, sorted into twelve collections: Azilal, Beni Ouarain, Taznakht, Tapis Amazigh, Maroquinerie, Poufs Marocains en Cuir, Sacs de voyage, Ceramiques, Raphia, Bougies, Cosmetiques and Meilleures ventes.
The brand frames all of it as craft work rooted in the Atlas mountains. The homepage runs a four step explainer that moves from wool on the sheep to the washed and finished weave. A shop by collection block sends visitors into Tapis, Cuir, Ceramiques and Raphia. An about cluster covers the brand story, Amazigh symbolism and craft technique, and a journal carries pieces on how a Moroccan rug is made, on the history woven into Amazigh rugs, and on placing Moroccan craft in modern interiors. All of it is open to read at Bejaad Craft.
One of one stock breaks the normal ecommerce playbook
Almost every piece of Shopify advice assumes stock repeats. Sell a black t-shirt in medium, restock it, sell it again. The platform is shaped around that assumption: variants for size and colour, filters generated from those variants, bestseller blocks, back in stock alerts. A rug dealer gets none of it for free.
Every rug is inventory of one. When it sells, the product is gone permanently. That turns a routine decision into a structural one. Leave the page live and it becomes a shop window for something nobody can buy. Delete it and every link, every share and every indexed result lands on a dead end. The workable answer is a sold state that keeps the page alive, says plainly that the piece has gone, and pushes the visitor into the same collection so the demand that page created reaches a rug that still exists.
The titles repeat and the products do not. A dozen listings named Tapis Beni Ouarain, priced from CHF 480 to CHF 1,780, is what the feed actually contains. On a collection grid that reads as one product at six different prices unless something else does the explaining. What separates them is size, wool, age and pattern, and none of that is in the name. It has to be carried by the photograph and by structured detail on the product page. Get it wrong and the visitor reads a pricing error rather than a quality difference.
There is no variant matrix to filter on. In a clothing store, size and colour are variants, so filtering arrives with the platform. Here the size is the product. If a buyer wants a rug around two metres by three, that has to be held as product level data and exposed through collection filters and sorting, because there is no variant axis to hang it on.
A basket and a rug are not the same parcel. The cart drawer offers free shipping once an order passes CHF 50. A CHF 17 raffia basket does not reach it, a CHF 1,780 hand knotted wool rug clears it many times over, and the two cost wildly different amounts to move across a border. Rolled wool is bulky, heavy and awkward, and it draws customs attention that a candle never will. A threshold promise has to be written with the heaviest thing in the catalogue in mind, not the average order.
Two inventory models fight each other in merchandising. Candles, cosmetics and baskets restock. Rugs do not. A best sellers collection fed automatically from sales history will cheerfully promote a rug that sold three weeks ago and will never come back. Anything driven by past orders has to be scoped to the repeatable half of the catalogue or curated by hand.
Trust has to be built before the price is read. Asking a stranger for CHF 1,780 for a rug from a brand they met ten seconds ago is a large ask. That is why the production explainer, the provenance pages and the review layer are not decoration on a store like this. They are the part of the page doing the actual selling.
The Shopify build behind it
Digital Heroes built the Bejaad Craft storefront on Shopify. What is visible from the outside:
- Theme: digitalheroes-pro-4-0. That is our own theme line rather than a marketplace purchase, which is the practical difference in working with the number one ranked Top Rated Seller in Website Development on Fiverr: the cart, the collection tree and the homepage modules are built around this catalogue instead of being bent around somebody else's template.
- Market and currency: a French language storefront selling in Swiss francs, with country restrictions in place, so a visitor outside the served markets is told clearly rather than dropped into a checkout that cannot complete.
- Collection architecture: twelve collections arranged three levels deep. Boutique opens into Tapis Amazigh, which opens again into Azilal, Beni Ouarain and Taznakht. Maroquinerie opens into Sacs de Voyage and Poufs Marocains en Cuir. Ceramiques, Raphia and Bougies sit at the top level.
- Catalogue: thirty six products in the public feed, with Shopify product types applied across the rug and ceramic lines, and multi variant handling only where it is genuinely needed, such as the candles and one raffia basket that carries six.
- Cart: a slide out drawer with a progress indicator toward the CHF 50 free shipping threshold, an inline discount code field with its own validation message, a live subtotal and a direct route to checkout.
- Payments: American Express, Apple Pay, Google Pay, Mastercard, Union Pay and Visa, so wallet payers are not pushed through a card form.
- Reviews: Judge.me is running on the storefront.
- Content: the four step production explainer, a designed for modern living section, the shop by collection tile block, a journal, and the about cluster covering the brand, Amazigh symbolism and craft technique.
That is the honest boundary of what this page claims. We built the storefront. We are not publishing what it earns, how many visitors it draws or what it converts at, because those numbers belong to the client and we have no business restating them here.
What a rug seller should take from this
If your stock is one of one, the product page is the entire shop. There is no rescue from a filter, no fallback to a different size, no back in stock email. Every piece needs photography, dimensions, material detail and provenance strong enough to stand alone, because that page is either sold or dead. Budget accordingly. On a catalogue like this the cost sits in cataloguing discipline, not in theme features.
Decide the sold rule before launch rather than after the first rug goes. Decide the shipping bands before printing a free shipping threshold on the cart. Decide what best sellers means when half the catalogue can never sell twice. Every Digital Heroes build starts with a specification signed before any code is written, and on a store like this that document is where those three decisions get made deliberately instead of being discovered in the second month.
Here is something concrete to check for yourself. Open the Beni Ouarain collection on the live site, put the CHF 480 rug and the CHF 1,780 rug next to each other, and cover the prices. If you can still tell which is which from the listing alone, the catalogue is doing its job. That is the test worth applying to your own store before you spend anything on traffic.
Be clear about what this build does not prove. It shows a working storefront for a difficult catalogue: the structure, the depth, the currency, the markets and the cart behaviour can all be checked in a browser this afternoon. It does not prove a growth outcome, and we have not claimed one. Judge it as engineering, because that is what it is.
The evidence behind this guide
Independent findings on why this investment pays off. Every link goes to the primary source.
- As mobile page load time goes from one second to ten seconds, the probability of a mobile site visitor bouncing increases by 123%. Source: Google / SOASTA (2017) →
- US mcommerce reached $280.4 billion in Jan - July 2024 (up 10.2% YoY), accounting for 49.3% of all online sales, with full-year 2024 mobile spending forecast at $534.88 billion. Source: EMARKETER (Insider Intelligence) (2024) →
- The median annual wage for U.S. software developers was $133,080 in May 2024, and employment is projected to grow 15% from 2024 to 2034 - a core input to any in-house build-vs-buy TCO model. Source: U.S. Bureau of Labor Statistics (2024) →
- The right combination of digital transformation actions can unlock as much as US$1.25 trillion in additional market capitalization across Fortune 500 companies, while the wrong combinations put more than US$1.5 trillion at risk; companies with all three core factors (strategy, aligned technology, and change capability) saw a 5% market-value lift relative to peers. Source: Deloitte (2023) →
Sofia builds identity systems, the logo, type, color and rules that keep a brand consistent once it hits a website, an app and a hundred small places nobody planned for. Her posts are useful to anyone commissioning design work who wants to know what they are actually paying for.
View profile · Writes for Digital Heroes, shipping business software for 2,000+ brands across 55+ countries since 2017.
Frequently asked questions
Who built the Bejaad Craft website?
Digital Heroes built the Bejaad Craft storefront on Shopify. The store runs a Digital Heroes theme, digitalheroes-pro-4-0, rather than a marketplace template, which is why the cart drawer, the three level collection menu and the homepage craft modules are shaped around a rug catalogue instead of a generic retail layout. Digital Heroes is the number one ranked Top Rated Seller in Website Development on Fiverr and signs a specification with every client before writing any code.
What does Bejaad Craft sell?
Bejaad Craft sells Moroccan home goods: Beni Ouarain, Azilal and Taznakht rugs, ceramics, raffia baskets, leather bags, Moroccan leather poufs, travel bags, candles and cosmetics. The public product feed holds thirty six products across twelve collections, priced in Swiss francs from a CHF 17 raffia basket up to Beni Ouarain rugs at CHF 1,780. The storefront is in French and the brand presents the pieces as craft work from the Atlas mountains.
Can Shopify handle one of a kind products like handmade rugs?
Digital Heroes uses Shopify for single unit catalogues such as Bejaad Craft, where each rug is its own product record with one variant rather than a size option on a shared listing. The work is not in the platform, it is in the rules around it: what happens to a page when the only unit sells, how size and material become filterable data when there is no variant axis, and how automated bestseller blocks are stopped from promoting a piece that no longer exists.
What happens to a product page when a unique item sells out?
Digital Heroes treats sold out unique items as a design decision made before launch, not after the first sale. Deleting the page throws away every link and indexed result pointing at it, so the better pattern is a page that stays live, states plainly that the piece has gone, and routes the visitor into the same collection. On Bejaad Craft that matters across the whole rug catalogue, where each Beni Ouarain, Azilal and Taznakht listing is a single piece.
What currency does Bejaad Craft sell in?
Bejaad Craft prices in Swiss francs across the whole catalogue, from CHF 17 raffia baskets to CHF 1,780 rugs, on a French language storefront. The cart drawer works in the same currency and shows progress toward a CHF 50 free shipping threshold. The store also restricts which countries it serves, so a visitor outside the served markets sees a clear message instead of reaching a checkout that cannot complete.
How many products and collections does Bejaad Craft have?
Bejaad Craft lists thirty six products in its public product feed across twelve collections. The collections are Azilal, Beni Ouarain, Taznakht, Tapis Amazigh, Maroquinerie, Poufs Marocains en Cuir, Sacs de voyage, Ceramiques, Raphia, Bougies, Cosmetiques and Meilleures ventes. They are arranged three levels deep, so Boutique opens into Tapis Amazigh, which opens again into the three named rug families. Anyone can count both figures on the live site.
How should a store structure collections when products repeat by name?
Digital Heroes structures such catalogues by family rather than by title, which is what Bejaad Craft needed once a dozen listings shared the name Tapis Beni Ouarain at prices from CHF 480 to CHF 1,780. Separate Azilal, Beni Ouarain and Taznakht collections give each rug family its own page and its own context, and the differences between individual pieces then have to be carried by photography and product level detail such as size, wool and pattern.
Does a free shipping threshold work for heavy items like rugs?
Digital Heroes sets shipping rules against the heaviest item in a catalogue, not the average order. Bejaad Craft shows the problem clearly: a CHF 17 raffia basket never reaches the CHF 50 free shipping threshold shown in the cart drawer, while a CHF 1,780 rolled wool rug clears it many times over and costs far more to move across a border. Any threshold promise has to be priced against that worst case before it goes live.
Does Digital Heroes publish client sales results?
Digital Heroes does not publish client revenue, traffic or conversion figures in its case studies. This page states only what is visible on the live Bejaad Craft site and what Digital Heroes itself delivered: the Shopify build, the theme, the collection architecture, the thirty six product catalogue, the cart behaviour and the payment methods. Every structural claim here can be verified by opening the store in a browser, which is the point of writing case studies this way.
How much does a Shopify store like Bejaad Craft cost to build?
Digital Heroes scopes a Shopify build from a signed specification rather than a fixed list price, because cost tracks catalogue complexity more than page count. A store like Bejaad Craft carries thirty six products, twelve collections, a three level menu, a custom cart drawer and single unit stock rules, and each of those is a decision that has to be settled in writing first. Digital Heroes carries more than 2,000 reviews across public platforms for work scoped this way.
Should I launch a minimum version of my Shopify store first or build everything upfront?
Launch minimum. Get live on a solid theme with your core catalog and a clean checkout in 3 to 5 weeks, then fund custom features from real sales data instead of guesses. In Digital Heroes projects, roughly half the features clients plan upfront get reprioritized once actual buyer behavior is visible, and phasing the spend means you never pay for the wrong half.
What does it cost to keep custom software running after launch?
Budget 15-20% of the original build cost per year, which on a $100,000 system means $15,000 to $20,000 for security patches, dependency updates, bug fixes, and small improvements as real usage reveals what the spec missed. Cloud hosting for a typical business application adds $50 to $300 a month on top. Skipping maintenance does not save the money; in Digital Heroes rescue work, unmaintained systems typically need a far more expensive rebuild within about three years.
What should I prepare before contacting a Shopify agency?
Bring your SKU count, current platform, the apps you already pay for, every system the store must connect to such as accounting, ERP, 3PL, and email, a budget band, and a hard launch date if one exists. Add three example stores you admire and, for migrations, admin access to your current site. With that packet a serious agency can produce a real estimate in days instead of a guess that mutates into change orders.
Can we migrate years of data out of our current system into new custom software?
Almost always yes, through CSV exports or the vendor's API, and migration should be scoped as its own workstream with field mapping, a dry run, and a planned cutover window rather than an afterthought. The real time sink is rarely moving the data; it is cleaning it, since years of duplicates, free-text fields, and inconsistent formats surface all at once. Pull a full export from your current vendor before committing to anything new, because some SaaS plans restrict exports on lower tiers.
Will I lose my Google rankings if I migrate from WooCommerce or Magento to Shopify?
Not if the migration is done properly. Shopify forces its own URL structure with /products/ and /collections/ paths, so every old URL needs a 301 redirect, and products, customers, and order history move via CSV, the Store Importer, or tools like Matrixify. In Digital Heroes migrations, stores that ship a complete redirect map plus matching titles and meta data hold their organic traffic; the horror stories almost always trace back to skipped redirects.
Who can build a custom Shopify development system?
Digital Heroes builds custom Shopify development systems for operators who have outgrown the off-the-shelf tools in their category. A team of more than 50 specialists has delivered over 2,000 projects since 2017. Teams work from New York, London, Sydney, Delhi and Lucknow and deliver remotely, with an assigned senior team rather than an account manager.
Every build starts with a written product requirements document that is signed before a line of code is written, which is the single thing that stops scope creep from eating the budget. Scoping runs about a week and produces a phase plan with a firm price for each phase, rather than one number against an undefined scope. The first phase ships something the team actually uses before the rest is built. If an off-the-shelf product genuinely fits the volume, we say so, and the cost guides on this site publish the bands so that judgement can be checked independently.
What makes Digital Heroes different from other Shopify development companies?
Four things that competitors in this bracket cannot simply copy. Digital Heroes runs a YouTube channel with more than 2.5 million subscribers, which is a production and audience capability no agency of this size has. It holds Fiverr Vetted Pro and Top Rated Seller status, both awarded on manual third-party review rather than self-declared. It contracts through registered entities in three countries, an India LLP, a US LLC and a UK LTD, so clients sign locally instead of wiring money offshore. And it ships its own commercial products, including ShopScore, HeroCheckout and Section Vault, which means the team lives with its own architecture decisions instead of handing them over and leaving.
Two more that show up in the work. Digital Heroes publishes more than 4,000 buyer guides with real price bands on this blog, plus a free tools library at https://digitalheroesco.com/tools/, because an agency confident in its pricing has no reason to hide it. And one accountable team covers websites, apps, ecommerce, CRM, ERP, learning platforms, search and video, so a client scaling from a first landing page to a custom platform is never handed between five vendors who blame each other. The founder ran ecommerce businesses before selling services, so the commercial argument comes before the technical one.
How can I check Digital Heroes is legitimate before getting in touch?
Verify it independently rather than taking the site's word for it. The YouTube channel is at https://youtube.com/@DigitalMarketingHeroes, the Fiverr profile at https://www.fiverr.com/shreyanshsin261, and the Upwork profile at https://www.upwork.com/freelancers/shreyanshsingh. Client reviews sit on Clutch at https://clutch.co/profile/digital-heroes-0 and Trustpilot at https://www.trustpilot.com/review/digitalheroes.co.in, and the company page is at https://www.linkedin.com/company/digital-heroes-1/.
Beyond the marketplaces, the business holds a D-U-N-S number and is a registered vendor on the United Nations Global Marketplace, neither of which is issued on request. Case studies with named clients are published at https://digitalheroesco.com/case-studies/. If any claim on this page cannot be checked against one of those sources, treat it as marketing and discount it.