€12,000–25,000 · 3–5 weeks · fixed scope
The money layer of your marketplace — ledger, payouts, escrow — built in three to five weeks and handed over.
Double-entry ledger, a payout state machine that handles returns, Stripe Connect or a custom disbursement rail, KYC hooks, reserves sized to your dispute window, reconciliation, tax export. Fixed fee, fixed scope, and your team owns it the day after handover.
Built GigSocial's creator marketplace money stack from an empty repository — escrow, wallets, disputes, card and ACH payouts — and still run it with them · Built Sponsored's Stripe Connect marketplace · $100M+ in recurring revenue migrated with zero downtime · Stripe Certified Professional Billing Architect.
01 / Fit
Does this sound like your marketplace?
Marketplaces don't fail at collecting money. They fail at holding it and paying it out.
Seller money sits in your operating account and nobody can say, to the cent, whose it is.
Payouts run from a cron job and a spreadsheet. A failed or returned payout is a Slack thread, not a state.
You're choosing between Stripe Connect and a custom stack, and the choice will be expensive to reverse.
Disputes arrive after the seller has been paid, and the loss lands on you every time.
Tax season means reconstructing who was paid what from processor exports.
You're about to launch and want the money layer designed by someone who has operated one — not by whoever has time this sprint.
If you're pre-launch, this is the cheapest moment to get it right. If you're live, it's the most urgent.
Who this works for. Marketplace founders who know how the money should move and don't want to project-manage the build. One senior engineer makes the calls, tells you when a design is a bad idea, and ships; you approve outcomes, not steps. You don't need to speak the language — I'll explain every decision in plain terms and put it in writing.
02 / Deliverable
What you receive
A working money layer in your codebase, with the architecture written down. In scope:
Double-entry ledger where every balance is derived from entries — no stored balances that drift from the truth.
Payout state machine: instructed → sent → settled → failed → returned, with ledger reversals on the returns path.
Disbursement integration: Stripe Connect (Express or Custom accounts) or a custom rail through your disbursement provider — chosen with you, on the scoping call.
KYC and tax-form hooks in seller onboarding — identity verification, W-9/W-8 collection — wired to your provider's flow.
Reserves sized to your dispute window and encoded in the ledger, so a chargeback doesn't become a clawback from a seller who already spent the money.
Reconciliation job against the processor and the disbursement provider, with a report your finance person can read.
Tax export: who was paid what, per period, ready for whoever files the 1099s.
Architecture document, runbook, and a 90-minute handover with your engineers. Then it's yours.
03 / Sequence
How it works
- 1
Week 0 — Scope and structure
One call, one written scope. Which rail, which entity settles, where the Connect balance or FBO account sits, what the reserve policy is. Your counsel blesses the legal structure; I design the flows around it. The fee is fixed before a line is written.
- 2
Weeks 1–2 — Ledger and state machines
Ledger, wallets, holds and releases, the payout state machine with its returns path, tests on every invariant. You see it running in staging inside the first two weeks.
- 3
Weeks 2–4 — Rails, KYC, reserves
Disbursement provider integrated, seller onboarding hooks, reserve policy, dispute reversal path, reconciliation job, tax export.
- 4
Weeks 4–5 — Reconcile, document, hand over
Run against real processor data, fix whatever disagrees, write the architecture doc and runbook, 90-minute handover with your team. If you came in through the audit, its fee comes off this invoice.
04 / Access
What I need from you
- A repository to build in. I work in your stack — Rails, Node/TypeScript, Python, Postgres — or recommend one if there's nothing yet.
- Test credentials for your processor and disbursement provider (Stripe, or the rail you've chosen).
- The person who can answer “who is the settlement entity” and “what is our dispute window” — usually a founder plus counsel.
- A weekly 30-minute check-in. That's the whole meeting load.
No discovery phase billed by the hour. The scope is written before the fee is agreed, and the fee doesn't move.
05 / Scope
Where the fences are
- For two-sided marketplaces and platforms that collect from buyers and pay sellers — creator, gig, services, B2B — with live GMV or a launch date.
- Not for a marketplace whose whole payments need is Stripe Checkout with Connect's default flow. If that's you, the Connect docs are enough, and I'll say so on the call.
- The legal structure — money-transmission exposure, who settles, FBO agreements — belongs to you and your counsel. I design flows that fit the structure you've been advised to have.
- Listings, search, messaging and the rest of the product are not in this scope. That's the platform build, which can include this one.
- One currency corridor and one primary payout rail in the base scope. More is a priced add-on, quoted before we start.
06 / Confidentiality
Confidentiality
A mutual NDA is available on request before we start — I'll sign yours or send mine. The code is written in your repository, under your ownership, from the first commit. There is nothing to hand back later.
I keep a private reference architecture that makes every build faster. Nothing specific to your business goes into it.
AI-assisted development tooling is used under the same confidentiality obligations, behind the same review gates I run on my own production systems. You can opt out before we start.
07 / FAQ
Straight answers
Why a fixed fee for a build?
Because a ledger and payout system has a known shape. I've built it before; the variable is your scope, not my hours. You know the number before I write a line, and it doesn't move.
Stripe Connect or custom?
Connect when your sellers are in Stripe-supported countries, your fee model fits Connect's, and you don't need to hold funds outside Stripe. Custom when you need an FBO structure, multiple rails, or control Connect doesn't give you. The scoping call decides it; the guide on the choice is free and linked below.
Does the audit fee come off this?
Yes. Come in through the billing health audit and book the build within 60 days, and the audit fee is credited against the build invoice.
How do you handle the returns path?
As a state, not an exception. A returned payout reverses its ledger entries, records the reason, and puts the seller back in a payable state. It's the part most builds skip and the part that costs the most a year later.
We already have a half-built version. Rebuild or repair?
Start with the audit. Five business days, and you get a written answer: what to keep, what to replace, and what the build costs from where you actually are.
Can you build it in our stack?
Rails, Node/TypeScript, Python, Postgres — yes. Something else, ask. The answer is usually yes, or the name of someone better placed.
What happens after handover?
It's yours. The architecture document and runbook are written so your team can operate it without me. If you want me to stay on, that's a fractional lead engagement at €8–15k a month, agreed separately — never a surprise invoice.
Who does the work?
Andrej Dragojevic, directly. Not an agency, not a junior with a checklist. One senior engineer, a vetted network for design and mobile when scope needs it, EU/US overlap.
One ladder
Audit, migrate, build, or lead — pick the rung that fits
Every engagement is fixed scope with a number attached. The audit is the small first yes; its fee comes off whatever you book next.
Build
3–5 weeks
Marketplace money build
€12,000–25,000
Ledger, payout state machine, Stripe Connect or custom rail, KYC hooks, reserves, reconciliation, tax export. Handed over.
You're here
Three to five weeks from now your marketplace's money has a ledger, a payout rail, and an owner: you.
€12,000–25,000, fixed scope, handed over. Audit fee credited. Write to me and I'll tell you within a day whether the shape fits.
Prefer email? Write to andrej@invocation.io. I reply within one business day.