Project

Payments Platform Upgrade

Product & Growth, Laced

PAYMENTS PLATFORM UPGRADE

I upgraded Laced's payments platform to improve approval rates, expand payment method coverage (Apple Pay, Klarna, wallets), and modernise marketplace payout flows using Stripe Connect — across both UK and EU markets.

  • I prioritised improvements by conversion impact and operational risk, hardened Stripe infrastructure to reduce failures and improve observability, and defined the marketplace money model for payouts, refunds, and reversals so seller trust and ops efficiency both improved.
  • Checkout completion improved through fewer payment failures and better method coverage on mobile and EU traffic, with a reduction in payment-related support contacts and payout exceptions handled manually by Ops.

Overview

Marketplace payments break in expensive ways. Failed payments kill conversion immediately. Payout errors create seller trust issues and operational debt. Limited payment methods hurt mobile conversion and EU buyers. And weak instrumentation means you can't tell whether issues are coming from UX, PSP configuration, fraud rules, or routing. At Laced, I led a set of payment platform upgrades to make payments more reliable, more flexible, and more operationally safe.

The problem

The payment layer had a set of compounding issues. Payment step drop-off was higher than it should be, with failure reason codes showing a mix of hard declines, 3DS friction, and timeout-related abandonments. CS tags for "payment failed," "charged twice," and "refund timing" flagged operational gaps. Ops were handling payout exceptions manually because the Connect integration lacked clear state definitions.

The method coverage wasn't keeping pace with buyer expectations either — mobile buyers and EU customers in particular were hitting moments where their preferred payment method wasn't available or wasn't behaving predictably across device types.

What I did

I produced a prioritised backlog split by conversion impact and operational risk, and a payment architecture decision document covering method coverage, payout model, risk controls, and reconciliation principles. From that foundation, I drove delivery across four workstreams.

Systems I built

Payment method expansion: Added and expanded Apple Pay, Klarna, and wallet options. Ensured method availability was consistent across mobile vs desktop and UK vs EU — eliminating the "why is this missing?" moments that caused drop-off. Prioritised methods that reduced friction on high-consideration purchases and improved mobile conversion.

Stripe infrastructure hardening: Improved handling of decline states and retry logic; replaced generic error dead-ends with specific messages and clear recovery paths; implemented idempotency controls to prevent duplicate charges; built monitoring around authorisation rates, failure types, and provider timeouts. Made the payment layer diagnosable when things went wrong, not just when they were working.

Marketplace payouts via Stripe Connect: Implemented and upgraded Stripe Connect payout flows for the marketplace: seller onboarding requirements, payout timing rules and exception handling, and clear definitions of how refunds and chargebacks affected seller balances. Defined the full set of payout states (pending, paid, failed, held, reversed) and built operational workflows so CS and Finance knew exactly when to escalate and what to expect.

Risk and compliance alignment: Balanced conversion with risk controls — 3DS and SCA handling where required, behaviour signals linked to the broader seller reliability work. Ensured the policy, UX, and enforcement logic were all aligned so buyers saw consistent behaviour and Ops had clear override rules.

Rollout: Feature-flagged rollout by segment (device, market, traffic source). Staged release: observability improvements first, then method enablement, then Connect migration. Heavy edge-case testing on partial refunds, chargebacks, split payouts, reversals, and timeout/retry scenarios before any seller-facing payout changes went live.

Impact

Checkout completion improved through fewer payment failures and better method coverage — with the biggest gains on mobile and EU traffic where method availability and trust mattered most. Payment-related CS contacts reduced. Seller payout exceptions requiring manual Ops intervention fell as payout states became explicit and operational playbooks reflected reality. The payments layer became more reliable and more scalable as a foundation for future work.