Paddle

Accept payments and subscriptions directly in your funnels using Paddle.

The Paddle integration allows you to process one-time payments and recurring subscriptions inside your funnel pages. Checkout is embedded in the experience, so users never leave your funnel.

Paddle acts as the Merchant of Record, meaning tax calculation, collection, and compliance are handled automatically.

With Paddle connected, Zellify automatically:

  • Creates Paddle Customers

  • Supports one-time payments and recurring subscriptions

  • Handles free trials

  • Attaches structured metadata for attribution

  • Registers webhooks automatically

  • Syncs payment data across other integrations

If Paddle is your payment processor, this integration keeps payments, attribution, and subscription data aligned.


Enabling the Integration

To connect Paddle:

Dashboard → Settings → Payments https://dash.zellify.app/settings?tab=paymentsarrow-up-right

  1. Click Connect next to Paddle (Live or Sandbox)

  2. Enter your Paddle API Key

  3. Click Connect

Your Paddle account is now connected.

When connected, Zellify automatically:

  • Provisions a client token

  • Registers a webhook endpoint on your Paddle account

You can connect Live and Sandbox accounts independently.

To disconnect, click Disconnect next to the connected account.


Generating Your Paddle API Key

To create an API key in Paddle:

  1. Go to your Paddle Dashboard

  2. Navigate to Developer Tools → Authentication

  3. Click Generate API Key

  4. Copy the generated key

  5. Paste the key into Zellify


How Checkout Works

Zellify uses Paddle’s overlay and inline checkout modes.

When a user selects a plan and proceeds to payment:

  • A Paddle Customer is created or matched using the user’s email

  • A Transaction is created on your Paddle account with attribution metadata

  • The Paddle checkout is opened using the transaction

  • After successful payment, the user advances to the next funnel step


Checkout Display Modes

You can choose between:

  • Overlay — The payment form appears as a Paddle overlay on top of the funnel page

  • Inline — The payment form is rendered directly within the funnel page


Customer Creation

When checkout is initiated, Zellify creates or reuses a Paddle Customer on your account.

Customer logic:

  • If a customer with the same email already exists, it is updated with the latest metadata

  • Otherwise, a new customer is created

All customers are created with Zellify metadata attached.


Metadata

Zellify attaches structured metadata (Paddle custom data) to Paddle objects so every payment and subscription can be traced back to the originating user, funnel, and campaign.

The following metadata fields are attached:

  • app_user_id — Identifier used to associate the Paddle customer with a Zellify customer record

  • organization_id — ID of the Zellify organization

  • funnel_id — ID of the funnel where the purchase occurred

  • campaign_id — ID of the campaign that drove the user

  • experiment_id — ID of the experiment (only included if the campaign targets an experiment)

  • fbp — Facebook browser identifier

  • fbc — Facebook click identifier (only included if the user comes from a Meta ad)


Where Metadata Is Set

These metadata fields are attached to:

  • Paddle Customer custom data

  • Paddle Transaction custom data

This allows your team to:

  • Attribute revenue to specific funnels and campaigns

  • Analyze experiment performance

  • Reconcile Meta ad conversions with Paddle revenue

  • Match Paddle records with Zellify data


Payment Types

Zellify supports two payment types.

One-Time Payments

  • A single transaction is created via Paddle Checkout

  • The charge is processed immediately

Recurring Subscriptions

  • A subscription is created via Paddle Checkout

  • The subscription is linked to the Paddle Customer

  • Metadata is attached to the subscription


Free Trials

If a product includes a trial period:

  • The subscription is created in trialing status

  • No charge is made until the trial ends

  • The payment method is collected upfront

Trial lengths are configured directly on the Paddle Price and can use any interval supported by Paddle (day, week, month, year).


Tax Handling

Paddle acts as the Merchant of Record.

This means:

  • Tax is calculated and collected automatically

  • Products are created with a standard tax category

  • No additional tax configuration is required


Webhook Syncing

When you connect Paddle, Zellify automatically registers a webhook endpoint on your Paddle account. No manual configuration is required.

Zellify listens to the following events:

  • transaction.completed

  • transaction.payment_failed

  • subscription.created

  • subscription.activated

  • subscription.past_due

  • subscription.canceled

  • subscription.updated

These events are used to:

  • Track revenue across funnels and campaigns

  • Monitor subscription lifecycle events

  • Sync payment data across integrations

This ensures all systems remain aligned with real payment activity.


Products & Pricing

Products and prices are created directly on your Paddle account through the Zellify dashboard.

Each product includes:

  • Name

  • Currency

  • Price

  • Payment type (one-time or recurring)

  • Billing interval (for subscriptions)

  • Optional trial configuration

Products created in Zellify are standard Paddle Products and Prices and are fully visible and manageable inside your Paddle Dashboard.

Last updated