Payment Upgrades

Stripe integration and billing address — parked for future volume.


Payment Upgrades

Priority: Won't Have (This Sprint)

Stripe integration for online payments and required billing address. Documented for future implementation when payment volume or client friction justifies the build.


Why It's Parked

Bank transfer works. Research Tech paid via bank transfer without issues. At 1-3 clients per quarter, the manual overhead is minimal.

The cost math: Stripe charges ~2.9% + €0.30 per transaction. On a €10,000 sprint, that's ~€320 in fees. Bank transfers are free. At low volume, the convenience doesn't outweigh the cost.

The complexity math: Stripe integration adds webhook handling, receipt generation, fee management, and a new failure mode. That's build time and maintenance for a problem that doesn't exist yet.


What Would Be Built (When Ready)

Stripe Integration (V3 in architecture roadmap)

  • Stripe Checkout for one-time sprint payments
  • Support for deposit + milestone payment structure (40% upfront, 30% milestone, 30% final)
  • Automatic receipt generation
  • Payment status updates in the onboarding flow
  • Webhook handling for payment confirmation

Required Billing Address

  • Make billing address a required field (currently optional/editable on invoice)
  • Pre-populate from proposal acceptance
  • Required for formal invoicing in EU (VAT compliance)

When to Revisit

Consider building when ANY of these are true:

  • A client specifically requests card/Stripe payment
  • Processing 4+ invoices per quarter (manual overhead becomes real)
  • Expanding to non-EU clients where bank transfer is less common
  • Building the full booking flow (V5) which needs integrated payment

How It Connects

  • Deferred features: next-client.md items #7, #8
  • Architecture roadmap: V3 in architecture-decision.md
  • Current state: Bank transfer details on sprint.zebradesign.io invoice page

This is the right item to defer. It adds cost, complexity, and solves a problem that doesn't exist yet at current volume.