Shopify Development · Custom Theme · E-commerce

Richdale Sofas

A static brochure site turned into a bespoke Shopify store for an independent British furniture maker, with a custom postcode checker that stops orders they cannot deliver.

Richdale Sofas website shown on a laptop
Client
Richdale Sofas
Location
Ilkeston, Derbyshire
Launched
August 2026
Stack
Shopify · Liquid · Custom theme · Bespoke postcode checker

Richdale Sofas are independent British furniture makers and retailers, based at The Old Co-op Building in Ilkeston, Derbyshire. Two decades of trading, a standard collection of British-made sofas and chairs, and the Long Eaton range: made-to-measure bespoke furniture handcrafted in their own workshop, where the height, depth and width of any piece can be altered to fit the room it is going into.

The brief

Richdale had a static website. It showed the furniture, and that was about as far as it went. Customers could browse a catalogue, then had to ring the showroom to do anything about it. For a business whose stock runs from a £159 oak lamp table to a £2,550 corner sofa, that is a lot of enquiries that never became orders.

They wanted a proper online shop, but not at the cost of the brand. Richdale sells fine British sofas from a showroom floor; a generic Shopify theme with a stock hero image and a sale banner would have undersold the product on sight. The site had to feel like the furniture.

And there was a problem no off-the-shelf theme solves. Almost everything Richdale sells is made to order in Britain and delivered into the room by hand, not shipped in a box. Thirteen UK postcode areas — the Scottish Highlands and Islands, the Borders, Northern Ireland, Cornwall and the Isles of Scilly — cannot be priced by Shopify's shipping calculator at all. Those have to be quoted by hand. Left alone, Shopify would happily take an order it would cost Richdale a fortune to fulfil.

My approach

I built the store on Shopify with a bespoke theme: Dawn as the technical foundation, then rebuilt from the ground up to Richdale's requirements. Around 9,200 lines of custom Liquid across eighteen bespoke sections, all of it exposed in the theme editor so the client can run the site without me.

A premium theme, built to the brand

  • A warm cream and olive palette with Cormorant Garamond and EB Garamond throughout, drawn from the Richdale crest rather than a theme preset
  • A tile-based homepage that splits the two sides of the business immediately: Bespoke — designed with you, and Online Store — ready to order
  • Custom sections for the store grid, sub-category navigation, showroom and about, fabric swatches, reviews, and a coming-soon state for categories still being photographed
  • A help centre with searchable, categorised FAQs that also outputs FAQ structured data for Google, plus custom delivery and returns pages
  • Every heading, image, colour and link is a theme setting — nothing is hard-coded into the markup

The bespoke route, kept off the shop

Made-to-measure pieces are not something you add to a basket. The bespoke side of the site runs as its own journey: a hero and workshop process walkthrough, a swipeable gallery of commissions already built, and an appointment booking form with preferred date and time that emails the showroom directly. No checkout, no invented pricing — a consultation, which is how the range is actually sold.

Migrating twenty years of catalogue

  • Every product on the old site was ported across, with the original marketing copy cleaned up and hundreds of product photographs re-uploaded in gallery order
  • Fourteen ranges that had been single listings with a price table pasted into the description were rebuilt as real Shopify products: Size and Colour options, a price and SKU per variant, and fabric or leather swatch images mapped to each colour
  • New 2026 ranges — beds, mattresses and wider furniture — were imported alongside, taking the catalogue past 200 variant rows
  • Smart collections driven by product tags, so new stock files itself into the right category on import

The custom postcode checker

This is the piece that made the store safe to switch on. I built a postcode checker from scratch and wired it into three places: the delivery page, under the buy buttons on every product page, and above the totals in the basket.

  • Three clear answers. Type a postcode and you get either “we deliver here, the charge shows at checkout”, or the name of your area with a quote request form, a phone link and a pre-filled email, or a prompt to try again if it is not a real postcode
  • It remembers. The answer is stored in the browser for 90 days, so someone who checks on a product page sees the same answer in the basket rather than being asked twice
  • Checkout closes itself. If a customer checks a hand-quote postcode, every route to checkout is shut across the whole site — the basket buttons, the express payment buttons, the add-to-basket pop-up, the basket drawer, and the Shop Pay, PayPal and Apple Pay buttons on the product page. Each one is replaced in place with a short explanation and a link to get a quote, so nothing simply disappears
  • No flash of the wrong thing. The state is set by an inline script in the document head, so blocked buttons never appear and then vanish
  • Adding to the basket still works. The point is to let those customers build a basket and then ask for a price, not bounce them off the site
  • The client owns the list. All thirteen areas, the quote email address and the phone number live in one theme settings panel. Change a line there and the delivery page, every product page and the basket all update together
  • No app, no monthly fee. Quote requests go through Shopify's own contact form and land in the store inbox with name, email, phone, full postcode and what they are interested in

I also documented the limits honestly and set up a Shopify Flow safety net, so that if an order from one of those areas ever does slip through, it is tagged and emailed to the showroom before anyone picks it.

Outcomes

  • A brochure site replaced by a working Shopify store
  • A bespoke premium theme, not a customised template
  • Custom postcode checker on delivery, product and basket pages
  • Checkout closed automatically for 13 hand-quote postcode areas
  • Full catalogue migrated: legacy listings rebuilt as real variants
  • Every price, postcode and page editable by the client, no developer needed

Got a project like this?

I build bespoke websites, Shopify stores, and marketing engines for businesses across Sutton Coldfield, Birmingham and the West Midlands. Pay When Happy. From £499.

Chat with me on WhatsApp