Now booking enterprise content platform builds for 2026. Contact us

01 Medusa.js development & consulting

Medusa.js development for teams who will run the commerce engine themselves. One marketplace built end to end, its commerce engine on Medusa — checkout through to the seller panel.

WAYF builds commerce platforms on Medusa.js. We designed and built Kaffy end to end, with Medusa as its commerce engine: a multi-vendor coffee marketplace with iOS and Android from one React Native codebase, a Next.js web store, a seller panel for the roasteries, and the admin that runs orders. Medusa is open source and self-hosted, so the commerce engine and the order data sit in infrastructure you control. Staying secure on it needs a maintenance track that is funded and staffed. That suits teams whose pricing, fulfilment, or vendor logic falls outside what a hosted platform will model. When it doesn't suit you, we say so on the first call.

Built on Medusa: Kaffy Multi-vendor marketplace, designed and built end to end ·
33+ roasteries and 400+ coffees on the platform · iOS, Android and web on one API

02 What we build

Marketplace mechanics and the operator tooling behind them. Three things we build on Medusa.

Multi-vendor marketplaces

One cart across many sellers, one payment, and an order that splits per seller behind the checkout. On Kaffy each split carried its own shipping label, and adding a carrier was a code change against an interface that already existed. This is the shape we have built and run in production.

The software the store is operated from

Kaffy shipped with a roastery panel covering products and variants, stock and pricing, the order queue, shipping defaults, and a buyer-message inbox. Alongside it, an admin where customer support sits next to the order it concerns, and a knowledge base inside the product. All of it went out in the same launch as the buyer apps.

Commerce inside a larger product

Medusa is Node.js and TypeScript, and so is Payload, the CMS we work in most; WAYF is an official Payload partner. The Kaffy platform ran a Payload instance alongside the Medusa engine. We build the frontends against the same API: Next.js on the web, React Native for iOS and Android.

Medusa is modular, so the pieces you do not need stay out of the build. Those are the parts we would build on for B2B accounts or multi-region pricing. The marketplace work is what we can currently point at in production.


03 When Medusa is the wrong choice

Most stores should stay on Shopify. Medusa earns its complexity when the business logic is the thing that doesn't fit.

If you sell a catalogue through a standard checkout and the customisation you need is a theme and a few apps, a hosted platform will do that job for less money and less maintenance. We'll tell you so early. Three patterns show up among teams that moved anyway and regretted it.

The first is budgeting the build and leaving the running of it unbudgeted. Self-hosting puts hosting, upgrades, security patching, and payment integrations on your side of the line, and the cost of that lands in the second year.

The second is customising early. Medusa's modularity invites custom everything, and building it before the business model is validated creates debt while there's still no revenue to service it.

The third is treating headless commerce as a frontend project. Order management, inventory sync, and fulfilment logic decide whether the store holds up once orders start arriving.


04 How an engagement works

Fixed scope, fixed price. Agreed in writing before any work starts.

A commerce project starts with a scoping session: the catalogue, the checkout, the money flow, and who operates the store day to day. We write that down and agree a price, and the price holds when the build meets complexity we should have anticipated. Kaffy began with a product workshop before the first ticket, covering customer segments, a value-proposition canvas, and a twelve-month KPI sheet both founders signed off.

You work directly with the engineers who build it. We're not a staffing agency and we don't place individual contractors. An engagement is a project with a defined scope, a delivery schedule, and a handover your team can run from.


05 Common questions

Questions we get asked before the first call.

  1. When does Medusa.js make more sense than Shopify?

    For a single business selling its own products, Shopify is the better answer, and it is worth saying so first. It carries hosting, payments, PCI DSS compliance and an admin most teams already know. Medusa earns its complexity when the business logic is the thing that does not fit: marketplace mechanics with independent sellers, pricing or fulfilment rules a hosted platform will not express, or a requirement to own the commerce data model outright. We work the comparison through in Medusa vs Shopify for multi-vendor marketplaces.

  2. Does Medusa support multi-vendor marketplaces out of the box?

    Order-splitting across sellers is something you write. Medusa's ecosystem lists Mercur, an open-source marketplace starter that ships vendor panels and order splitting prebuilt, and the code it gives you becomes your team's to evaluate, extend and maintain. Kaffy's marketplace ran that order-splitting workflow in production, on a platform the client's own team can run.

  3. What is the difference between Shopify Markets and a multi-vendor marketplace?

    Shopify Markets solves regional selling for one merchant: selling to multiple markets from a single store, with localized languages, currencies and pricing. Its page describes no independent-seller model, and its one mention of marketplaces refers to selling through external channels. Multi-vendor behaviour on Shopify is added by third-party apps sitting on top of the merchant's own store.

  4. Medusa is self-hosted. Who runs it after launch?

    Your team, or ours under a maintenance engagement agreed separately. Medusa is open source and self-hosted, so the commerce engine and the order data sit in infrastructure you control, and hosting, upgrades, security patching and payment integrations sit on your side of the line. That cost lands in the second year, so it belongs in the budget from the start.

  5. Can you migrate a Magento or Adobe Commerce store to Medusa?

    Yes. A Magento exit is a commerce migration first: catalogue data, customers, order history, extensions rebuilt as commerce code, and URL rewrites all have to be mapped, and Adobe Commerce and Magento Open Source are separate sources with different exports. Migrating from Magento to Medusa works through each of those in order.

  6. Does Payload sit alongside Medusa for content?

    It does where the storefront needs structured content. Medusa is Node.js and TypeScript, and so is Payload, the CMS we work in most; WAYF is an official Payload partner. The Kaffy platform ran a Payload instance alongside the Medusa engine, and we build the frontends against the same API.

  7. What does a Medusa project cost, and how long does it take?

    Both come out of a scoping session covering the catalogue, the checkout, the money flow, and who operates the store day to day. The consultation that produces that scope is free, and the quote follows it. We write the scope down and agree a price before any work starts, and the price holds when the build meets complexity we should have anticipated.


Let's talk about your Medusa project.

Twenty-five minutes to scope what you need and decide if we're the right team for it. Fixed price and timeline come after.