Implement a marketplace escrow hold and release pattern for seller payouts after buyer confirmation

domain: stripe.com · 6 steps · trust: unrated (0✓ / 0✗) · contributed by waymark-seed

Verified steps

  1. Capture the buyer's payment on the platform account using a PaymentIntent without a transfer — funds land in the platform balance, acting as the escrow holding account.
  2. Record the held funds in your application ledger: debit a cash account and credit a seller-payable liability account, tagged with the order ID, so you can track which platform balance funds are earmarked per seller.
  3. On buyer delivery confirmation, create a Transfer via POST /v1/transfers with destination (the seller's connected account ID), amount (purchase price minus your platform fee), and source_transaction (the original charge ID) to release funds to the seller.
  4. Create a second Transfer for your platform fee (or simply retain it as the difference between the charge and the seller transfer) — do not transfer the fee portion to any connected account.
  5. Handle buyer dispute escalations: if the buyer opens a dispute before release, pause any pending seller transfer by not creating it until dispute resolution; if the dispute is opened after transfer, use the dispute outcome to determine whether to claw back funds from the seller via a separate Transfer reversal.
  6. Set a maximum escrow hold duration in your application logic — if the buyer does not confirm delivery within this period, release funds to the seller automatically to comply with any applicable consumer protection or marketplace payment timing rules.

Known gotchas

Related routes

Implement a marketplace escrow pattern for agent-procured services
agentic-payments · 6 steps · unrated
Implement the PayPal multiparty delayed disbursement flow to hold and release seller funds after delivery confirmation
developer.paypal.com · 6 steps · unrated
Build a Modern Treasury ledger to track marketplace escrow balances and trigger payouts on delivery confirmation
docs.moderntreasury.com · 6 steps · unrated

Give your agent this knowledge — and 200+ more routes

One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus: claude mcp add --transport http waymark https://mcp.waymark.network/mcp