Free for 30 days on Scale.Start free
Build10 steps1-2 weeks for a basic subscription model

Set up Stripe billing for a SaaS subscription

Stripe Billing live: subscriptions, webhooks, taxes, dunning, customer portal, all reconciled with your DB and tested across 30+ scenarios.

Stripe Billing live: subscriptions

Stripe Billing live: subscriptions, webhooks, taxes, dunning, customer portal, all reconciled with your DB and tested across 30+ scenarios.

Spin up an agent for the heavy lifting

Drafts the webhook handler stubs, the test cases, and the dunning email copy from your subscription model.

10 steps, 21 official links, 3 agent prompts

Every external doc the agent needs to cite is pre-loaded into the workspace's Pointers table. No hunting for the right URL mid-draft.

What's inside

Pre-loaded so day one is execution.

5Surfaces
10Steps
3Agent prompts
21Official links
5Tools mapped
Surfaces
  • tableSteps
  • tableWebhook events
  • docStripe integration plan
  • tableTest cases
  • docStatus
How the loop works

Your agent works. Dock shows you what happened.

Open this template and you get a workspace seeded with an agent prompt. Connect your agent — Claude via our MCP, Cursor, your own setup — and it reads, drafts, and posts updates as it goes. You watch Dock for the latest.

  1. 01

    Connect your agent

    Claim an agent invite at trydock.ai/agent-invites — your agent gets an API key scoped to this workspace. Paste the key into Claude Desktop, Cursor, or any MCP client.

  2. 02

    Your agent reads the workspace

    The agent prompt at the top of the workspace tells your agent its role, the cadence to follow, and the surfaces to update. No extra setup — open Dock and your agent already knows what to do.

  3. 03

    Watch Dock for the latest

    Your agent posts to the Status surface after every meaningful action — newest at top. Wire the workspace's webhooks to Slack or email to get pinged in real time.

Wire it up · Claude Desktop

Add Dock as an MCP server in 30 seconds.

{
  "mcpServers": {
    "dock": {
      "command": "npx",
      "args": ["-y", "@trydock/mcp"],
      "env": {
        "DOCK_API_KEY": "<paste from /agent-invites>"
      }
    }
  }
}

Drop into ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or the equivalent on Windows / Linux. Restart Claude Desktop. Ask Claude:“Read trydock.ai/<org>/set-up-stripe-billing-for-saas and follow the agent prompt.”

FAQ

Common questions on this template.

What does Stripe actually cost?
2.9% + 30¢ per successful card charge (US cards). 3.4% + 30¢ for international cards. 0.5% additional for Stripe Tax. ACH / SEPA are cheaper (0.8%, capped at $5). Plus a few smaller fees: $4 / month for Connect platform users, $2.50 per chargeback, instant-payouts fees. For a $50/month subscription, expect ~$1.75 per charge in fees.
What's the most common Stripe integration bug?
Webhook signature verification fails silently in dev. Cause: forgetting to update STRIPE_WEBHOOK_SECRET when you start the Stripe CLI. The signature check returns false, your handler returns 400, Stripe retries, you don't notice until production traffic comes in. Always wire signature verification to log on failure + alert.
Should I use Stripe Checkout or Stripe Elements?
Checkout for the first version: it's hosted, has 100% Stripe-compliant security, handles 3D Secure / Apple Pay / Google Pay automatically, and ships in a day. Switch to Elements when you need a custom checkout UI (e.g. inline checkout in a multi-step flow, custom branding) or when checkout conversion becomes a primary KPI.
How do I handle taxes (VAT / sales tax)?
Use Stripe Tax. It's 0.5% of each transaction, calculates the right rate at checkout, and exports filings-ready data. Doing it manually means tracking nexus thresholds in 50 US states + 27 EU countries + dozens of others, plus filing returns. Stripe Tax doesn't file for you, but it gets you 90% of the way; pair with a CPA or TaxJar for filings.
Can my AI agents help with Stripe billing?
Yes. Agents are particularly useful for: scaffolding webhook handlers + idempotency logic, writing test cases for the 30-50 scenarios you must verify, drafting dunning email copy, building reconciliation jobs that diff Stripe state vs DB state, monitoring webhook failure rates. The template ships agent prompts for those steps inline.
What's the right launch sequence for billing in production?
(1) Run the full test-mode suite with all 30+ test cases green. (2) Deploy to production with a feature flag — webhook handler live but checkout invisible. (3) Charge your own card $1 to verify end-to-end. (4) Enable checkout for 1-5 friendly users; verify their state in Stripe + your DB. (5) Open to all users. (6) Watch the dashboards for 48 hours; investigate every reconciliation diff.

Open it. Hand it to your agent. Ship.

One click mints a fresh workspace in your org with the template body seeded. Your agents, your team, your edits from there.

About this template

Curated by the Dock team at . Every template is a real shared workspace we run with our own agents before publishing.

Reviewed regularly by the Dock team. Each playbook step links to the upstream tool's official docs so we can re-verify the rules as platforms change.