Linking Paddle as a source

Let AI connect your sources for you

Skip the manual setup — run this in your project and the wizard auto-detects your databases and APIs and connects them to PostHog.

Learn more
PostHog Wizard hedgehog

Contents

The Paddle connector syncs customers, discounts, prices, products, subscriptions, transactions, adjustments, and explore metrics from your Paddle account into PostHog.

Adding a data source

  1. Go to the sources tab of the data pipeline section in PostHog.

  2. Click + New source and then click Link next to Paddle.

  3. Next, you need an API key from Paddle. In your Paddle dashboard, go to Developer tools > Authentication and click New API key. Give the key a name and grant it Read access to the following entities:

    • Customers
    • Discounts
    • Prices
    • Products
    • Subscriptions
    • Transactions
    • Adjustments
    • Metrics (only required for the explore_metrics table — a key without this permission can still sync all other tables)

    Copy the generated API key (it starts with pdl_live_... for live keys or pdl_sdbx_... for sandbox keys).

  4. Back in PostHog, paste the API key into the API Key field and click Next.

  5. Select the tables you want to sync and modify the method and frequency as needed. Once done, click Import.

Once the syncs are complete, you can start using Paddle data in PostHog.

Configuration

OptionTypeRequired
API KeypasswordYes

Supported tables

TableDescriptionSync methodIncremental fieldPrimary key
customers

A customer who can hold subscriptions and be billed in Paddle.

Full refresh——
discounts

A discount (coupon) that reduces the amount charged on transactions or subscriptions.

Full refresh——
prices

A price for a product, including amount, billing cycle, and trial settings.

Full refresh——
products

A product or service you sell, which prices are attached to.

Full refresh——
subscriptions

A customer's recurring billing arrangement against one or more prices.

Full refresh——
transactions

A financial transaction — a payment, refund, or credit — for a customer.

Incremental, Full refreshbilled_at—
adjustments

A refund or credit applied to a transaction, reducing or returning charged amounts.

Full refresh——
explore_metrics

Daily (monthly for subscriptions) account totals from Paddle Explore metrics: revenue, transactions, refunds, chargebacks, checkout conversion, MRR, and MRR growth. One row per entity, measure, and time bucket.

Incremental, Full refreshtimestamp—

Sync methods

The transactions and explore_metrics tables support incremental syncing. The transactions table uses billed_at as its replication key, while explore_metrics uses timestamp. All other tables (customers, discounts, prices, products, subscriptions, and adjustments) are synced via full table refresh.

Still have questions?

Was this page useful?