Skip to main content

A marketplace is a liquidity problem before it is a code problem.

We build directories, booking platforms, B2B marketplaces and member communities, on Laravel or grown out of a WooCommerce store you already run. Onboarding for both sides, listings, payouts, reviews and the admin tools behind them. We will also tell you how little of it to build first.

Who this is for, and who it is not.

A good fit if

  • You run a directory or listing site and want the businesses on it to take bookings or payments through it.
  • Your WooCommerce store already sells, and suppliers are asking to list their own products on it.
  • You match buyers and sellers by hand over email and spreadsheets, and the volume now justifies software.
  • Each order has to pay several parties, with your commission taken and refunds that still reconcile.

Probably not the right call if

  • You have no buyers and no sellers yet. Spend the money finding the first ones by hand before building.
  • You want a copy of a large marketplace with every feature at launch. That is not a fixed-scope build.
  • One seller and many buyers is a store, not a marketplace. A well-built WooCommerce shop will serve you better.

What changes for your team.

01

Operations leave the inbox

Seller approvals, payouts and disputes happen in an admin panel with a history. They stop living in email threads only one person can find.

02

Money reconciles without a spreadsheet

Every order records who was paid, what commission was kept and what was refunded. Month-end becomes a report rather than an investigation.

03

You only automate what has proven demand

Steps stay manual until volume justifies code, so the build budget goes on the parts people actually use.

The parts that make it hold up in production.

Onboarding for both sides

Separate sign-up, verification and profile flows for buyers and sellers. Seller identity checks and bank details go through the payment provider's hosted onboarding, not your database.

Listings and search

Structured listings with the filters your category needs: location, availability, price and attributes. Meilisearch keeps filtering fast as the catalogue grows.

Commissions, payouts and refunds

Checkout on Stripe Connect, with your commission taken per order and payouts to each seller. Refunds, disputes and partial cancellations are built as flows, not left to support tickets.

Messaging and reviews

On-platform messaging between the two sides, with email notifications. Reviews are tied to completed transactions, so only people who actually bought can leave one.

Moderation and reporting

Approval queues for new sellers and listings, user reports and a record of every decision. It protects quality, and EU rules expect platforms to offer a working way to report illegal content.

Seller and operator dashboards

A seller dashboard for listings, orders and payouts, and an operator panel for everything behind the scenes. Built so manual work stays possible wherever you have not automated yet.

How it fits around what you already run.

A marketplace is a layer of accounts, listings and money movement. It can sit in a new Laravel application or grow out of the store or directory you already operate.

  1. Where people use it L4
    Buyer site Seller dashboard Operator panel Mobile app Email notifications
  2. Marketplace logic L3
    Listings & search Bookings & orders Messaging Reviews Moderation queues
  3. Money and verification L2
    Stripe Connect Hosted onboarding Commissions Refunds & disputes Payout webhooks
  4. What you already run L1
    WooCommerce store Existing directory Customer database Accounting export

From first call to running in production.

Each step ends in something you can look at. Scope grows after something is live, not before.

  1. 01

    Pick the narrow start

    We choose one side to serve first, one category or city, and the steps that stay manual. The output is a data model and a written list of what not to build yet.

  2. 02

    Map the money

    We settle whether the buyer pays you or the seller, when commission is taken, when sellers are paid and who absorbs a refund. That is decided before any checkout is built.

  3. 03

    Build the core loop first

    Listing, search, transaction, payout, review: the shortest path that lets one real buyer pay one real seller. Operator tools follow straight after, because you need them from the first live order.

  4. 04

    Launch small, then automate

    We go live with a limited group of sellers and watch payouts, webhooks and disputes under real use. The same engineers then automate the manual steps that volume has earned.

Published prices, fixed before we start.

01 System review

€1,000

delivered within a week

We read the system you already have and tell you what is actually wrong with it, what it would take to fix, and what it would cost.

02 Build

€5,000 – €20,000

typical project

Fixed scope, fixed price, agreed before anyone writes code. Most of what we do sits in this band.

03 Run

from €750

per month

We take the system over and keep it alive. This is the part most people discover they needed about six months after launch.

What moves the price for Marketplaces & Platforms

  • Whether money moves through the platform at all, and how many parties a single order is split between.
  • Whether we start from an existing WooCommerce store or directory, or from an empty Laravel application.
  • How much of onboarding, moderation and dispute handling must be automated at launch rather than done by an operator.
  • The number of listing types, search filters, languages and currencies the first release has to support.
Full pricing and terms

What we work with

Laravel PHP 8.4 Livewire Alpine.js Tailwind CSS MySQL Redis Meilisearch Laravel Horizon Stripe Connect WooCommerce Expo / React Native

Questions we get asked.

If you sell products and the catalogue, checkout and customers already live in WooCommerce, a multi-vendor plugin such as Dokan, extended where it falls short, is usually the faster and cheaper route. It gets harder when you sell bookings or services rather than products, need commission rules the plugin cannot express, or find plugin conflicts deciding your roadmap. At that point a Laravel build, often reading from the existing store at first, is the better long-term answer. We work on both and will tell you which fits after reading your setup.

The payment provider, if we set it up that way. With Stripe Connect we normally use Stripe-hosted onboarding, so identity checks and bank details are collected and stored by Stripe rather than in your database. Depending on the charge model, the platform can still be liable for refunds, disputes and negative seller balances, so we agree that with you before launch. The repository, the data and the Stripe account are yours from the first commit.

For most card payments in the EEA and the UK, yes. Strong Customer Authentication applies, which in practice means 3D Secure. We build on Stripe Checkout or the Payment Intents API, which ask for authentication when the bank requires it, and we test the failure paths, including saved cards charged later.

Less than you think, because the hard part of a marketplace is getting enough buyers and sellers into the same place, and no feature fixes that. We usually recommend one side, one category or city, and manual work behind the scenes at first, such as approving sellers or matching requests by hand, then automating only what has proven demand. We run directory platforms of our own, Real Estate Club Dubai and SchoolVita, where structured data and search carry the product.

The same engineers keep it running on a monthly plan: payout and webhook monitoring, security patches, backups and dependency upgrades. The remaining hours go on automating the manual steps that volume has justified. If you would rather take it in-house, the code, infrastructure accounts and documentation are already yours.

Have something to build — or something that is stuck?

Tell us what you are working on. You will talk to an engineer, not a salesperson.

Before you go

Tell us what you are building, or what needs taking over.

Limited Time: 2 bonus blog posts free

Starter plan — $1,500/mo (10 posts instead of 8)

00:00:00