Marketplace software for the day something goes wrong
Matching buyers and sellers is the easy half. Your platform gets judged on the job that went badly, the money sitting in the middle, and who you side with.
What a two-sided platform actually has to solve
5 things that decide this
- 01A marketplace is a trust business wearing a software costume. Two strangers transact because your platform stands between them, and everything you build is either supporting that or spending it.
- 02Money held between strangers is the hardest engineering on the page. WorkMateAI runs hold-and-release payments through Stripe Connect that freeze when a dispute opens.
- 03Verification decides who gets in, and it has to happen before the first job. WorkMateAI checks ABN, trade licence, insurance and identity before a provider can accept work.
- 04A dispute process invented during your first dispute will not survive the second. Define the stages, the timers and the evidence before you need them.
- 05Growth multiplies your exposure. Ten jobs a week means occasional bad days, while a thousand means a queue that needs rules rather than goodwill.
Your platform is fine until the first real fight
Most marketplaces launch on matching and payments and call it done. Supply meets demand, money moves, a commission lands. For a while that works.
Then a customer says the work was botched and the tradesperson says it was finished. Both are convincing. The money has already gone, the conversation happened over text, and nobody wrote down what either side agreed to. Now your support team is a court with no law.
WorkMateAI came to us at that point. We built the trust layer underneath. A three-layer agreement model with version history. Payments held until the work stands up. Verification before a provider can accept a job, and a dispute process that escalates in defined phases.
- 01Write down what both sides agreed, per job, and keep the version they actually signed.
- 02Careless messaging can imply your platform is liable for the work. Language is an engineering decision here.
- 03Decide who you side with when evidence is equal. That policy is a product feature.
- VerifyLicence, insurance, identity, before work.
- AgreeA job contract per accepted quote.
- ChargeFunds land with the platform, not the provider.
- HoldReleased only when the work stands up.
- DisputeFreeze, gather evidence, run the timers.
- ReleaseOr refund. Either way it is recorded.
Step four is what a buyer means by escrow, and the word is doing a lot of work. What you are really building is a delayed transfer with rules about who can stop it.
What we build for marketplaces
Held-and-released payments
Stripe Connect separate charges and transfers, so a payment settles with the platform and the transfer to the provider happens later. WorkMateAI freezes that transfer when a dispute opens and generates chargeback evidence.
Provider verification
ABN validation, trade licence, insurance and identity checks before a provider can accept work, with documents stored encrypted on AWS S3 and role-based admin access over them.
Agreements that hold up
A three-layer model on WorkMateAI: platform terms at signup, a provider agreement at onboarding, and a job contract per accepted quote. Every layer keeps version history, and e-signature runs through DocuSign or HelloSign.
Dispute operations
Submission with an evidence locker, an admin case dashboard with automated timers and notifications, and audit logging on every action. Built to move from manual to rule-based handling as volume grows.
You are probably not building escrow
Founders ask for escrow and usually mean something narrower: take the money now, pay the provider after the job. Stripe Connect supports that pattern by separating the charge from the transfer, so funds sit in the platform balance until you send them on.
The details are where projects fall over. A transfer fails if your platform balance cannot cover it, and adding funds later does not retry it for you. Reversing a transfer needs the provider's balance to cover the reversal, or reserves enabled. Plan for a provider who has already withdrawn.
Chargebacks are their own trap. On a countered dispute the cardholder's bank decides, and it can take up to three months. You get one submission and cannot add to it afterwards. So WorkMateAI assembles evidence as the job happens, not after the claim.
- Real escrow is a regulated activity in many places. Say what you actually do and take legal advice on the wording.
- Model the provider who withdraws before you can claw the money back.
- Collect dispute evidence during the job, because you only get one shot at submitting it.

Two-sided systems that move money between strangers
The usual marketplace build against ours
| Criterion | The usual approach | How we build it |
|---|---|---|
| Payments | Provider paid on completion, which means on trust. | Charge and transfer separated, so funds are held until the work stands up. |
| Who can sell | Anyone who signs up. Credentials checked when someone complains. | Licence, insurance and identity verified before a provider accepts a job. |
| The agreement | Site terms at signup, then messages that may imply you are liable. | Platform terms, provider agreement and a per-job contract, all versioned. |
| Disputes | Handled by whoever answers the email that day. | Defined phases with timers, an evidence locker and an audit log. |
| Chargebacks | Absorbed, because nobody kept proof of the job. | Evidence assembled as work happens, ready for the one submission you get. |
The stack behind these builds
Payments and documents
Built with
Trust and safety
Questions marketplace founders ask first
01How do you hold money between a buyer and a seller?
Separate the charge from the payout. With Stripe Connect the payment settles into the platform balance, and the transfer to the provider is a second action you control later. That is what most founders mean by escrow. Tie the transfer to the original charge so it succeeds before funds settle, and pays out once they do.
02What happens if we need money back after paying a provider?
Assume it is hard, and design as though the provider has already withdrawn. Stripe only lets you reverse a transfer when the connected account's balance covers it or reserves are enabled. That single constraint is the argument for holding funds until the work stands up, rather than paying fast and hoping.
03Can we win chargebacks on a marketplace?
Only with evidence gathered while the job was happening. The cardholder's bank decides the outcome, and the decision can take up to three months. You get one submission per dispute and cannot add to it. WorkMateAI builds the evidence pack from job records, rather than scrambling after a claim.
04How much verification is enough before a provider takes work?
Enough that a bad job is a mistake rather than a stranger. WorkMateAI validates ABN, trade licence, insurance and identity before a provider can accept anything, with documents stored encrypted. Verification you can prove afterwards is worth far more than a tick box, because the record is what defends you.
05When should we build the dispute process?
Before launch, at a smaller size than you think you need. Write the phases, the timers, the evidence each side must supply and who decides when it is equal. WorkMateAI runs a phased model that started manual and moved toward rules, which is the right order. Automating a process you have not yet defined just makes bad decisions faster.
06Do we need our own payment infrastructure?
No, and building it is how marketplaces burn a year. Use a provider that supports platform payouts and spend your engineering on verification, agreements and disputes, since that is where your reputation actually lives. Revisit the decision when volume makes the fees a board-level line.
07What is the first thing you would look at in our marketplace?
Your last ten disagreements and what each one cost to settle. That set tells us where money leaks, which agreement is missing and what evidence you wish you had. Scoping calls are free. If the work means going inside a platform you already run, a paid two-week diagnostic ends in a fixed price.
Go deeper
- Payment gateway integration →Getting money in and out without reconciliation pain.
- Settlement vs authorisation →Why the money is not yours when the payment says approved.
- Idempotency key →How to stop a retry becoming a second charge.
- Ecommerce and retail work →Retail breaks behind the buy button, not in front of it.

