Skip to content

Paddle

SaaS billing and payments platform with built-in tax compliance, acting as merchant of record for global sales.

Capabilities

IntegrationAvailableNotes
APIREST API for products, prices, subscriptions, transactions
MCP-Not available
CLIpaddle.js
SDKNode.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

Released under the MIT License.