FonQ

Built for the impossible

How FonQ moved 15 years of custom code to a Shopify-powered marketplace engine.

Read more
  • 250k+

    Products

  • 2x

    Lower technical overhead

  • 50k+

    Collections

There are online retailers, and then there are category definers. FonQ is the latter.

The place Dutch and Belgian consumers go to when they want to get a room right.

Fifteen years is a long time to carry.

The platform that had once given FonQ control was now the thing slowing them down.

Shopify as infrastructure, not store software.

Six engineering challenges defined the build.

With the platform stable and running at scale, FonQ's focus has shifted from migration to momentum. A smaller, more focused internal team is now free from the overhead of maintaining custom code, with that capacity redirected toward optimising the customer journey, refining UX, and iterating at a pace that simply wasn't possible before. The lift and shift created the foundation, and building on top of it is where the real work begins.

Want to know what's possible for yours? Let's talk.

Work with us.

  • Design
  • Development
  • Migration
  • Multi-Store

FonQ

Built for the impossible.

Built for the impossible.

How FonQ moved 15 years of custom code to a Shopify-powered marketplace engine.

There are online retailers, and then there are category definers. FonQ is the latter.

Founded in 2005 and now one of the largest home and living destinations in the Benelux, FonQ has spent two decades becoming the place Dutch and Belgian consumers go when they want to get a room right. From a ceramic pendant lamp to a full dining set, the brand blends a curated own inventory with a thriving marketplace of third-party sellers, making it closer in ambition to a bol.com for home living than a conventional retailer. Today it also holds the distinction of being one of the first true marketplace builds on Shopify in Europe, a fact that says as much about where enterprise commerce is heading as it does about the complexity of what was built.

Key stats: 250k+ Products / 50k+ Collections / 2x Lower Technical Overhead

"The world of commerce is moving faster than ever. With a custom platform, it's hard to keep up with all innovations. We wanted to adopt new technology faster, and do more with less." — Arjan Hoeks, Project Lead, FonQ

Fifteen years is a long time to carry.

FonQ's original platform was a point of pride. Built entirely in-house and refined over more than a decade, it did exactly what it was designed to do. The problem was that it had been designed for a different era.

Every new feature required a dedicated sprint. Every integration was a negotiation with legacy code. The platform that had once given FonQ control was now the thing slowing them down. As commerce accelerated and platform-native innovation changed what was possible, FonQ found itself spending more energy maintaining the past than building for the future.

Moving to Shopify was as much a strategic decision as a technical one: a smaller, more focused team, lower total cost of ownership, and the ability to ride Shopify's release cadence rather than build against it. The catch was that FonQ's requirements are not standard. Their catalogue runs to 250,000 products across 50,000 collections, with up to 1,000 possible attributes per product. They operate own fulfilment, dropshipping, and a live marketplace powered by Mirakl. Rebuilding this on Shopify required more than confidence, it required a proof of concept first.

Proving it before building it.

We started the project in October 2023, spending the first three months on a proof of concept before a single line of production code was written. The goal was to find every edge case, stress-test every assumption, and confirm that Shopify could carry the weight. It could, though the work to get there was substantial. Six engineering challenges defined the build.

Delivery date computation at checkout. When a customer reaches checkout, FonQ needs to present an accurate delivery window in real time. That window is calculated across the time of day, the day of the week, the customer's market and location, the carrier assigned to that specific product, the carrier's delivery schedule, and national holidays, with every variable affecting the others. We engineered this computation to resolve fast enough to render in the checkout UI without delay, across every possible combination of product, carrier, and customer.

Delivery promise across the full storefront. The same delivery estimate needed to appear earlier in the journey too, on the product page, the collection page, and in the cart, condensed into a single accurate line that updates dynamically if the product's offer or carrier changes. Surfacing consistent, real-time delivery communication across every touchpoint in the funnel is a distinct engineering challenge from the checkout computation alone.

Algolia-powered filtering at catalogue scale. With 250,000 products, 50,000 collections, and up to 1,000 possible attributes per product, standard filtering wasn't viable. FonQ's collection structure is also nested like a tree, where collections have child collections, which have further children below them. We integrated Algolia with a custom faceting system that surfaces the right filters per collection automatically, color, material, and size for one collection, volume and dimensions for another, without requiring manual configuration at every level of the hierarchy.

Carrier management. A sofa and a vase don't ship the same way, and FonQ works with multiple carriers including DPD and PostNL, each with their own delivery days and schedules. Each product needed to be mapped to the right carrier, and that mapping can change at any point if the commercial deal behind the product changes. We built a system that keeps carrier assignments accurate and dynamically updated, without manual changes cascading through the catalogue.

Dynamic offer integrity. FonQ's marketplace runs on a bidding model, where whoever wins the bid gets to sell the product, and offers can change at any point in time. This creates a real inventory integrity problem: ensuring a customer always checks out against the correct, current offer, and that products no longer available for sale cannot be purchased. We built the logic to handle offer changes in real time, protecting both the customer experience and the integrity of every transaction.

External fulfilment with Mirakl. Marketplace orders are processed and fulfilled by external sellers through Mirakl, with Mollie handling payments at checkout and paying out the relevant seller directly at the moment of purchase. Given that offers change dynamically, we needed to ensure every order is processed against the correct seller and offer, that every order syncs reliably to Mirakl, that status updates flow back from Mirakl to Shopify throughout the order lifecycle, and that customers can contact the relevant seller directly when needed, all working in concert.

"Once the project was on the way, it became clear that it was possible to get everything into Shopify. The team started believing it was possible." — Paul Veen, Co-founder, Ask Phill

Shopify as infrastructure, not store software.

The framing that guided the entire build: Shopify handles the core 80% of commerce, while the remaining 20%, where FonQ's complexity lives, is covered through custom logic, external APIs, and precise architectural decisions. Mirakl powers marketplace operations, with Mollie managing seller payouts directly at checkout. Algolia handles search and discovery at scale. A custom offer and carrier engine sits alongside Shopify's commerce layer, keeping pricing, availability, and delivery data accurate in real time.

The migration was also a lift and shift, with the existing design largely preserved so FonQ could go live without disrupting the customer experience their audience already knew. Both fonq.be and fonq.nl are now live on the new platform.

What's next.

With the platform stable and running at scale, FonQ's focus has shifted from migration to momentum. A smaller, more focused internal team is now free from the overhead of maintaining custom code, with that capacity redirected toward optimising the customer journey, refining UX, and iterating at a pace that simply wasn't possible before. The lift and shift created the foundation, and building on top of it is where the real work begins.

Want to know what's possible for yours? Let's talk.