hvac-marketing-skills/tools/integrations/paddle.md
Corey Haines 3a85964305 feat: add 23 new CLI tools and integration guides
New tools across 13 categories:
- Email/Newsletter: beehiiv, klaviyo, postmark, brevo, activecampaign
- Data Enrichment: clearbit, apollo
- CRO/Testing: hotjar, optimizely
- Analytics: plausible
- Scheduling: calendly, savvycal
- Forms: typeform
- Messaging: intercom
- Social: buffer
- Video: wistia
- Payments: paddle
- Affiliate: partnerstack
- Reviews: trustpilot, g2
- Push: onesignal
- Webinar: demio, livestorm

Each tool includes a zero-dependency CLI and integration guide.
Registry and CLI README updated with all new entries.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 11:28:41 -08:00

212 lines
4.3 KiB
Markdown

# Paddle
SaaS billing and payments platform with built-in tax compliance, acting as merchant of record for global sales.
## Capabilities
| Integration | Available | Notes |
|-------------|-----------|-------|
| API | ✓ | REST API for products, prices, subscriptions, transactions |
| MCP | - | Not available |
| CLI | ✓ | [paddle.js](../clis/paddle.js) |
| SDK | ✓ | Node.js, Python, PHP, Go |
## Authentication
- **Type**: Bearer Token
- **Header**: `Authorization: Bearer {api_key}`
- **Get key**: Paddle dashboard > Developer Tools > Authentication
- **Production URL**: `https://api.paddle.com`
- **Sandbox URL**: `https://sandbox-api.paddle.com`
- **Note**: Version specified via header, not path. Set `PADDLE_SANDBOX=true` env var for sandbox.
## Common Agent Operations
### List products
```bash
GET https://api.paddle.com/products
```
### Create a product
```bash
POST https://api.paddle.com/products
{
"name": "Pro Plan",
"tax_category": "standard",
"description": "Professional tier subscription"
}
```
### Create a price for a product
```bash
POST https://api.paddle.com/prices
{
"product_id": "pro_01abc...",
"description": "Monthly Pro",
"unit_price": {
"amount": "2999",
"currency_code": "USD"
},
"billing_cycle": {
"interval": "month",
"frequency": 1
}
}
```
### List customers
```bash
GET https://api.paddle.com/customers
```
### Create a customer
```bash
POST https://api.paddle.com/customers
{
"email": "customer@example.com",
"name": "Jane Smith"
}
```
### List subscriptions
```bash
GET https://api.paddle.com/subscriptions?status=active
```
### Get subscription details
```bash
GET https://api.paddle.com/subscriptions/{subscription_id}
```
### Cancel a subscription
```bash
POST https://api.paddle.com/subscriptions/{subscription_id}/cancel
{
"effective_from": "next_billing_period"
}
```
### Pause a subscription
```bash
POST https://api.paddle.com/subscriptions/{subscription_id}/pause
```
### List transactions
```bash
GET https://api.paddle.com/transactions
```
### Create a discount
```bash
POST https://api.paddle.com/discounts
{
"amount": "20",
"type": "percentage",
"description": "20% off first month",
"code": "WELCOME20"
}
```
### Create a refund adjustment
```bash
POST https://api.paddle.com/adjustments
{
"transaction_id": "txn_01abc...",
"action": "refund",
"reason": "Customer requested refund",
"items": [{"item_id": "txnitm_01abc...", "type": "full"}]
}
```
### List events
```bash
GET https://api.paddle.com/events
```
### List event types
```bash
GET https://api.paddle.com/event-types
```
## Key Metrics
### Transaction Metrics
- `totals.total` - Total amount charged
- `totals.tax` - Tax amount
- `totals.subtotal` - Amount before tax
- `totals.discount` - Discount applied
- `currency_code` - Transaction currency
### Subscription Metrics
- `status` - active, canceled, paused, past_due, trialing
- `current_billing_period` - Current period start/end
- `next_billed_at` - Next billing date
- `scheduled_change` - Pending changes (cancellation, plan change)
### Product/Price Metrics
- `unit_price.amount` - Price in lowest denomination
- `billing_cycle` - Interval and frequency
- `trial_period` - Trial duration if set
## Parameters
### List Filtering
- `status` - Filter by status (e.g., active, archived)
- `after` - Cursor for pagination
- `per_page` - Results per page (default: 50)
- `order_by` - Sort field and direction
### Subscription Cancel Options
- `effective_from` - `immediately` or `next_billing_period`
### Price Billing Cycle
- `interval` - `day`, `week`, `month`, `year`
- `frequency` - Number of intervals between billings
### Tax Categories
- `standard` - Standard tax rate
- `digital-goods` - Digital goods tax rate
- `saas` - SaaS-specific tax rate
## When to Use
- Managing SaaS subscription billing with tax compliance
- Creating products and pricing tiers
- Processing refunds and adjustments
- Handling subscription lifecycle (create, pause, cancel, resume)
- Global tax handling as merchant of record
- Discount and coupon management for promotions
## Rate Limits
- 100 requests per minute
- Applies across all endpoints
- HTTP 429 returned when exceeded
## Relevant Skills
- pricing-page
- saas-metrics
- churn-reduction
- launch-sequence
- monetization-strategy