> ## Documentation Index
> Fetch the complete documentation index at: https://docs.indic8.ing/llms.txt
> Use this file to discover all available pages before exploring further.

# Paddle Billing Setup Guide

> Step-by-step guide to connect Paddle Billing API Keys, Customer Transactions, and Webhook Notifications to Indic8.

Connect Paddle Billing to track software subscriptions, Merchant of Record checkouts, European VAT withholdings, and B2B invoice billing.

## What You Need to Connect

| Credential                  | Where to find it in Paddle       | Description                                                                |
| :-------------------------- | :------------------------------- | :------------------------------------------------------------------------- |
| **Paddle API Key**          | Developer Tools > Authentication | Read-only API key to sync products, prices, and past customer transactions |
| **Notification Secret Key** | Developer Tools > Notifications  | Verifies real-time push events from Paddle                                 |

***

## Part 1: Generate a Paddle API Key

<Steps>
  <Step title="Open Paddle Developer Tools">
    1. Log in to your [Paddle Dashboard](https://vendors.paddle.com).
    2. In the left menu, click **Developer tools**.
    3. Click **Authentication** in the submenu.
  </Step>

  <Step title="Generate API Key">
    1. Click the button **+ Generate API key**.
    2. Set **Key name** to: `Indic8 Analytics Sync`.
    3. Under Permissions, select **Read-only** for all entities (Transactions, Subscriptions, Products, Prices, Customers).
    4. Click **Generate key**.
    5. Copy the generated API key string.
  </Step>
</Steps>

***

## Part 2: Connect Key in Indic8

1. In [Indic8](https://app.indic8.ing), go to **Settings > Integrations > Paddle**.
2. Paste your API key into the **Paddle API Key** field.
3. Click **Connect Paddle**.

***

## Part 3: Set up Real-Time Webhook Notifications

<Steps>
  <Step title="Copy Indic8 Webhook Destination">
    In Indic8 **Settings > Integrations > Paddle**, copy:

    ```text theme={null}
    https://api.indic8.ing/v1/webhooks/paddle/whk_live_xxxxxxxx
    ```
  </Step>

  <Step title="Create Notification Destination in Paddle">
    1. In Paddle, go to **Developer tools > Notifications**.
    2. Click **+ New destination**.
    3. Set **Destination name** to: `Indic8 Live Feed`.
    4. Set **Notification type** to: `Webhook`.
    5. In **Endpoint URL**, paste the Indic8 destination URL.
    6. Check events: `transaction.completed`, `transaction.billed`, `subscription.created`, `subscription.updated`, and `adjustment.created`.
    7. Click **Save destination**.
    8. Copy the **Notification Secret Key** (`pdl_ntf_set_...`) and paste it into Indic8.
  </Step>
</Steps>
