canonical: https://jentic.com/apis/paddle.com/paddle

# Paddle API

Jentic publishes the only available OpenAPI specification for Paddle API, keeping it validated and agent-ready. Handle subscription billing as a merchant of record where Paddle collects payment, calculates sales tax and VAT, and remits to tax authorities on your behalf. The API manages the full billing lifecycle across products, prices, customers, subscriptions, transactions, invoices, and adjustments. Paddle supports multiple currencies, automatic tax calculation for 200+ countries, and configurable proration on plan changes.

## For AI agents

Create products, manage subscription billing, process transactions, and handle adjustments with Paddle as merchant of record. Paddle handles sales tax, VAT, and compliance automatically.

## Scope

Does not handle direct card processing, marketplace multi-party payouts, or in-person POS - use for SaaS subscription billing with tax-handled payments only.

## Capabilities

- Define products with multiple price points across currencies and billing intervals
- Create and manage customer subscriptions with automatic tax calculation for 200+ jurisdictions
- Process one-time and recurring transactions with Paddle handling payment collection and remittance
- Issue adjustments (credits and refunds) against completed transactions with reason tracking
- Configure discount codes with percentage or flat-amount reductions and usage limits
- Subscribe to event notifications for transaction completions, subscription changes, and payment failures

## Use cases

### AI Agent Billing Automation

AI agents manage Paddle billing through Jentic without storing API tokens directly. An agent searches for 'create a Paddle subscription' via Jentic, receives the operation schema with required customer and price fields, and executes the call with credential isolation. Transaction monitoring, invoice retrieval, and refund processing follow the same intent-based pattern, all while Paddle handles tax compliance.

Example prompt: Search Jentic for 'create a Paddle subscription', load the schema, create a subscription for a customer on a monthly price, then verify the subscription status is active

### SaaS Product Billing with Tax Compliance

Sell software subscriptions globally with Paddle acting as merchant of record, meaning Paddle collects payment from customers, calculates and remits sales tax and VAT in 200+ countries, and pays the net revenue to your bank account. You define products and prices, Paddle handles checkout, invoicing, and tax obligations. This eliminates the need for tax registration in multiple jurisdictions.

Example prompt: Create a product, add a monthly price of $29 USD, create a customer, then retrieve a subscription to confirm tax was calculated and the total includes VAT

### Transaction and Refund Management

Track payment transactions from initiation through completion with full details on payment method, tax breakdown, and settlement status. Issue refunds and credits via the adjustments endpoint, specifying the original transaction ID, refund amount, and reason. Paddle handles the refund processing and adjusts the payout to your account accordingly.

Example prompt: Retrieve a completed transaction by ID, create an adjustment of type refund for the full amount with reason 'customer_request', then verify the adjustment status

### Subscription Lifecycle and Upgrades

Manage subscription state transitions including upgrades, downgrades, pauses, and cancellations with automatic proration. When a customer changes plans mid-cycle, Paddle calculates the credit for unused time and charges the difference immediately or applies it to the next invoice. Cancellations can be immediate or scheduled for the end of the current billing period.

Example prompt: Update a subscription to a higher-tier price, verify the proration credit was applied, then cancel the subscription effective at period end using POST /subscriptions/{id}/cancel

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | /products | Create a new product in the catalog |
| POST | /prices | Create a price for a product |
| POST | /customers | Create a new customer record |
| GET | /subscriptions | List all subscriptions with filtering |
| POST | /subscriptions/{subscription_id}/cancel | Cancel a subscription |
| GET | /transactions/{transaction_id} | Retrieve transaction details |
| POST | /adjustments | Create a credit or refund adjustment |
| GET | /invoices/{transaction_id} | Retrieve invoice for a transaction |

## Key resources

- **Products** — Catalog items representing what you sell, with name, description, and tax category
- **Prices** — Billing configurations for products with amount, currency, and billing interval
- **Customers** — Buyer records with email, name, and locale for tax and communication purposes
- **Subscriptions** — Recurring billing relationships with state management, scheduled changes, and proration
- **Transactions** — Payment records with line items, tax breakdown, payment method, and settlement status
- **Adjustments** — Credits and refunds applied against completed transactions

## Why Jentic

- **Setup:** Wiring Paddle by hand means learning its bearer-key auth against api.paddle.com, shaping product, price, and subscription payloads correctly, and handling errors and retries yourself. Through Jentic you install once, import the Paddle API from the API Directory, store the key once, and your agent calls it.
- **Permission scoping:** Paddle puts the subscription id in the URL path (/subscriptions/{subscription_id}/cancel), so a rule can pin your agent to the subscription operations you approve. You choose the operations it may call, so a cancel or an adjustment is not included unless you add it.
- **Credential handling:** Your Paddle key is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'create a subscription' or 'issue a refund', and Jentic returns the matching Paddle operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Stripe API** — Full-stack payment platform where you handle tax obligations yourself
- **Recurly API** — Subscription management platform with advanced dunning (you remain merchant of record)
- **PayPal Subscriptions API** — PayPal-native recurring billing for PayPal wallet users
- **Stripe API** — Use Stripe for payment methods and checkout that Paddle doesn't natively support

## FAQ

### Why is there no official OpenAPI spec for Paddle API?

Paddle does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call Paddle API via structured tooling. It is validated against the live API and kept up to date. Run it through Jentic One, the self-hosted execution layer.

### What authentication does the Paddle API use?

The Paddle API uses Bearer token authentication. Pass your API key in the Authorization header as 'Bearer {api_key}'. Keys are generated in the Paddle dashboard under Developer Tools > Authentication. Through Jentic, your Paddle API key is stored encrypted in your Jentic One instance - agents receive scoped access without seeing the raw token.

### How does Paddle handle sales tax and VAT?

As merchant of record, Paddle automatically calculates sales tax and VAT for 200+ countries based on the customer's location and your product's tax category. The tax amount is included in transaction totals and Paddle remits directly to tax authorities. You receive net revenue after tax. Transaction details via GET /transactions/{transaction_id} show the full tax breakdown.

### What are the rate limits for the Paddle API?

Paddle applies rate limits of 100 requests per minute for write operations (POST, PUT, PATCH, DELETE) and 200 requests per minute for read operations (GET). If exceeded, the API returns HTTP 429 with a Retry-After header. Higher limits are available on enterprise plans.

### How do I create a subscription through the Paddle API via Jentic?

Search Jentic for 'create a Paddle subscription' to find the subscription creation flow. You need a customer ID and price ID (create these first via POST /customers and POST /prices). The subscription links the customer to a recurring price with automatic billing. Jentic loads the full schema so your agent knows which fields are required. Run it through Jentic One, the self-hosted execution layer.

### Can I issue refunds through the Paddle API?

Yes. Create an adjustment via POST /adjustments with action 'refund', the original transaction_id, and the items to refund. You can refund full or partial amounts. Paddle processes the refund to the customer's original payment method and deducts the amount from your next payout. The adjustment response includes the refund status and breakdown.

### Does the Paddle API support multiple currencies?

Yes. Prices can be configured in multiple currencies (USD, EUR, GBP, and 20+ others). Each price object specifies the currency and amount. When a customer subscribes, the transaction is processed in the price's currency. Paddle handles currency conversion for payouts to your bank account if your payout currency differs.

### Can I limit what my agent is allowed to do with the Paddle API?

Yes. Because Jentic One is self-hosted, you decide which Paddle operations your agent may call, so it can create products, prices, and customers or list subscriptions without ever being able to run a cancel or a refund unless you explicitly add those. Paddle puts the subscription id in the URL path, as in POST /subscriptions/{subscription_id}/cancel, so your own rules can pin the agent to just the subscription operations you approve. Destructive actions like POST /adjustments stay out of reach until you grant them, and the encrypted Paddle key is injected only for the calls you allow.
