Skip to main content

Prerequisites

Before continuing, you should have already completed the following for this connector:
1

Configure the Connector

Enable the connector and set up its connector profile in your project. See Managing Connectors.

Connector Profile

Paddle - API Key
2

Link an Account

Connect an account using StackOne Hub or Auth Link.

Link Account

Paddle - API Key

Subscribe via the StackOne dashboard

This connector uses Programmatic Webhooks. When you enable webhook events for a connected Paddle account, StackOne automatically registers a notification setting in Paddle via the API.

1

Select event subscriptions in the dashboard

In the StackOne dashboard, open the Paddle connector profile and enable the webhook events you want to receive. See the Available Webhook Events section below for the full list.

2

Connect the Paddle account

On account connection (or when event subscriptions change), StackOne registers the webhook in Paddle on your behalf using the connected account’s API key. The notification setting is created via POST /notification-settings. Each account receives its own dedicated notification setting.

3

Verify delivery

Trigger a matching change in Paddle (for example, create a test customer or subscription) and confirm the event reaches your downstream consumer.

  • Paddle signs each delivery with the Paddle-Signature header using an HMAC-SHA256 signature computed with the notification setting’s endpoint secret key.
  • StackOne responds with 200 OK automatically for all recognised events.
  • Paddle retries failed deliveries if the endpoint does not return a 2xx response.
4

Unsubscribe

Disconnecting the account or removing all event subscriptions deletes the StackOne-managed notification setting in Paddle, stopping all event deliveries.

Available Webhook Events

The following Paddle events can be enabled. Only events selected in StackOne are included in the subscription.

1

Address events

Events related to customer address lifecycle.

  • Address Created (address.created) — Fired when a new address is created on a customer account
  • Address Imported (address.imported) — Fired when an address is imported
  • Address Updated (address.updated) — Fired when an address is updated
2

Adjustment events

Events related to refunds, credits, and chargebacks.

  • Adjustment Created (adjustment.created) — Fired when a new adjustment is created for a transaction
  • Adjustment Updated (adjustment.updated) — Fired when an adjustment status changes
3

API key events

Events related to API key lifecycle.

  • API Key Created (api_key.created) — Fired when a new API key is created
  • API Key Expired (api_key.expired) — Fired when an API key reaches its expiration date
  • API Key Expiring (api_key.expiring) — Fired shortly before an API key expires
  • API Key Revoked (api_key.revoked) — Fired when an API key is manually revoked
  • API Key Updated (api_key.updated) — Fired when an API key’s properties are updated
  • API Key Exposure Created (api_key_exposure.created) — Fired when a potential API key exposure is detected
4

Business events

Events related to business entity lifecycle on customer accounts.

  • Business Created (business.created) — Fired when a new business entity is created
  • Business Imported (business.imported) — Fired when a business entity is imported
  • Business Updated (business.updated) — Fired when a business entity is updated
5

Client token events

Events related to client-side token lifecycle.

  • Client Token Created (client_token.created) — Fired when a new client token is created
  • Client Token Revoked (client_token.revoked) — Fired when a client token is revoked
  • Client Token Updated (client_token.updated) — Fired when a client token is updated
6

Customer events

Events related to customer lifecycle.

  • Customer Created (customer.created) — Fired when a new customer is created
  • Customer Imported (customer.imported) — Fired when a customer is imported
  • Customer Updated (customer.updated) — Fired when a customer’s details are updated
7

Discount events

Events related to discount coupon and group lifecycle.

  • Discount Created (discount.created) — Fired when a new discount is created
  • Discount Imported (discount.imported) — Fired when a discount is imported
  • Discount Updated (discount.updated) — Fired when a discount’s properties are updated
  • Discount Group Created (discount_group.created) — Fired when a new discount group is created
  • Discount Group Updated (discount_group.updated) — Fired when a discount group is updated
8

Payment method events

Events related to saved payment methods on customer accounts.

  • Payment Method Saved (payment_method.saved) — Fired when a payment method is saved to a customer account
  • Payment Method Deleted (payment_method.deleted) — Fired when a payment method is removed from a customer account
9

Payout events

Events related to seller payouts.

  • Payout Created (payout.created) — Fired when a new payout is created
  • Payout Paid (payout.paid) — Fired when a payout is successfully sent to the seller’s bank account
10

Price events

Events related to product price lifecycle.

  • Price Created (price.created) — Fired when a new price is created for a product
  • Price Imported (price.imported) — Fired when a price is imported
  • Price Updated (price.updated) — Fired when a price’s properties are updated
11

Product events

Events related to product catalog lifecycle.

  • Product Created (product.created) — Fired when a new product is created in the catalog
  • Product Imported (product.imported) — Fired when a product is imported
  • Product Updated (product.updated) — Fired when a product’s properties are updated
12

Report events

Events related to report generation.

  • Report Created (report.created) — Fired when a new report is created
  • Report Updated (report.updated) — Fired when a report’s status changes (e.g., becomes ready for download)
13

Subscription events

Events related to subscription lifecycle.

  • Subscription Activated (subscription.activated) — Fired when a subscription becomes active
  • Subscription Canceled (subscription.canceled) — Fired when a subscription is canceled
  • Subscription Created (subscription.created) — Fired when a new subscription is created
  • Subscription Imported (subscription.imported) — Fired when a subscription is imported
  • Subscription Past Due (subscription.past_due) — Fired when a subscription payment fails and enters past due status
  • Subscription Paused (subscription.paused) — Fired when a subscription is paused
  • Subscription Resumed (subscription.resumed) — Fired when a paused subscription is resumed
  • Subscription Trialing (subscription.trialing) — Fired when a subscription enters a trial period
  • Subscription Updated (subscription.updated) — Fired when a subscription’s properties are updated
14

Transaction events

Events related to transaction lifecycle and payment processing.

  • Transaction Billed (transaction.billed) — Fired when a transaction is billed and an invoice is issued
  • Transaction Canceled (transaction.canceled) — Fired when a transaction is canceled
  • Transaction Completed (transaction.completed) — Fired when a transaction is fully completed
  • Transaction Created (transaction.created) — Fired when a new transaction is created
  • Transaction Paid (transaction.paid) — Fired when payment is successfully collected
  • Transaction Past Due (transaction.past_due) — Fired when a transaction passes its due date without payment
  • Transaction Payment Failed (transaction.payment_failed) — Fired when a payment attempt fails
  • Transaction Ready (transaction.ready) — Fired when a transaction is ready for payment
  • Transaction Revised (transaction.revised) — Fired when a completed transaction is revised
  • Transaction Updated (transaction.updated) — Fired when a transaction’s details are updated

Verify

Your Connector should now be able to receive and process events. Try triggering an event and you should see an Event appear in the Connector logs.