Skip to main content
Funeli takes payments through Paddle. Each project connects its own Paddle account in the admin, and every funnel in the project checks out with that connection unless you choose another one for a funnel. Until a connection is set up, checkout runs in mock mode and nobody is charged.
Payment credentials are entered only in the admin, never in a chat with an agent, so they never end up in chat history. Agents can see which connections exist and test them, but never see the keys.

Connect Paddle

1

Open the project's payments

In the admin, open the project settings and choose Payments, then select Paddle. Only a Workspace owner can change payment connections.
2

Choose the environment

Paddle setup has two sections. A Sandbox connection takes test cards only, so nobody is charged. A Production connection takes real payments. A funnel checks out through the connection it uses, whether you preview it or publish it, so you can publish on Sandbox to test the whole flow and switch to Production before you send real traffic.
3

Enter the credentials

From your Paddle dashboard, copy:
  • the API key (pdl_...);
  • the client-side token (test_... for Sandbox, live_... for Production);
  • the webhook secret (pdl_ntfset_...).
Copy the webhook URL that Funeli shows and add it as a notification destination in Paddle.
4

Check the connection

Funeli verifies the API key, the client-side token and the webhook secret and shows a result for each. The client-side token and webhook checks need the client_token.read and notification_setting.read permissions on the API key.
5

Make it the default

Turn on Use Paddle for checkout and choose the connection as the project default. Funnels in the project now check out with it.

Choose a connection per funnel

A funnel uses the project default unless you pick another connection of the same project for it, in the funnel’s Settings, Payments section in the editor or through an agent. You can also switch a funnel back to mock checkout. A funnel can only use a connection of its own project.

Prices

Plan prices are set on the funnel’s paywall. If your Paddle catalog already has a price with the right amount, currency, billing period and trial, you can link it in the editor’s Pricing tab, or an agent can reuse it, instead of creating a new one.
Stripe and other providers are shown as Soon in the admin. Paddle is the only provider available today.

Troubleshooting

Each of the three checks has its own result. The client-side token and webhook checks need the client_token.read and notification_setting.read permissions on the API key; without them they cannot pass. The webhook check verifies the saved secret, an active notification destination with Funeli’s URL and the required events; it does not send a test delivery.
A plan’s terms were changed after it was linked to a Paddle price. Paddle prices cannot be edited, so pick or create a matching price in the editor’s Pricing tab before you publish.
A price link belongs to the Paddle account it was made in. After moving a funnel to another connection, link or create its prices under that connection; switching back finds the old links again.
The funnel uses mock checkout or a Sandbox connection. Switch it, or the project default, to a Production connection.