claude · paddle-mcp · production
Preview a plan upgrade before charging
Preview an upgrade for alice@example.com from Starter to Pro monthly. Don't actually change anything.
I'll find the customer first, then preview the change.
find_customer · email=alice@example.com
{ "match": { "id": "ctm_01h…", "email": "alice@example.com" }, "match_count": 1 }
list_subscriptions · customer_id=ctm_01h… · status=active
1 active · "sub_01h…" · Starter monthly $29 · next billed in 22 days
preview_subscription_update · subscription_id=sub_01h… · items=[Pro monthly]
running dry-run · prorated_immediately…
immediate_transaction:
subtotal: $83.19 (Pro net, 22d of 30d remaining)
discount: $0.00
tax (19%): $15.81
total: $99.00 ← charged today
next_transaction (Jun 22):
Pro monthly · $99.00 / mo
Upgrading today would charge $99.00 immediately (Pro at 22 days proration + 19% VAT), then $99.00/mo from next cycle.
Nothing was changed in Paddle — pass confirmed: true to update_subscription to apply.
Show me what events fired on her account last week.
list_events · customer_id=ctm_01h… · per_page=10
5 events · subscription.activated, transaction.completed × 2, subscription.updated × 2
refund with dry-run
Refund a customer — agents can't fat-finger it
Refund alice's last past_due transaction. Reason: duplicate charge.
find_customer · list_transactions(status=past_due, limit=1)
txn_01h… · $99.00 USD · past_due · billed 3 days ago
create_adjustment · action=refund · reason="duplicate"
DRY RUN — create_adjustment not executed.
Would refund $99.00 on txn_01h….
Call again with confirmed: true to proceed.
Dry-run only — no money moved. Confirm to issue the $99.00 refund?
support ticket triage
Answer a "what happened?" ticket in one prompt
bob@example.com says his subscription disappeared. Help.
find_customer · list_events(last 14 days)
5 events · subscription.canceled 2d ago (origin: customer_portal)
← bob cancelled himself via the portal Jun 18 14:02 UTC
create_customer_portal_session · customer_id=ctm_01h…
{ "urls": { "general": "https://customer-portal.paddle.com/…token=pga_…" } }
Bob cancelled himself via the customer portal on Jun 18. Here's a fresh signed link he can use to re-subscribe →
new plan, end to end
Stand up a new pricing plan + coupon
Create a Team Plan at $49/mo and $490/yr, plus a 20% launch coupon WELCOME20 valid for 90 days.
create_product · name="Team Plan" · tax_category=saas
pro_01h… created
create_price × 2 · $49/mo, $490/yr
pri_01h…, pri_01h…
create_discount · code=WELCOME20 · 20% · expires=+90d
dsc_01h… · enabled_for_checkout=true
Team Plan is live — monthly + annual prices created, WELCOME20 coupon active until Sep 22.
localized quoting
Quote international pricing with VAT
How much would Pro monthly cost a customer in Germany with VAT applied? Show me EUR.
preview_pricing · items=[Pro monthly] · currency_code=EUR · customer_ip_address=…
calling Paddle pricing-preview…
line_items[0]:
subtotal: €91.20
tax (19%): €17.33
total: €108.53
formatted: €108.53 (country: DE)
In Germany the Pro Plan rings up at €108.53/mo (€91.20 + 19% VAT). No checkout was created.