Paddle only allows one webhook URL, so we need a demultiplexer.
How it works
This tool will run on a free tier Google AppEngine instance and listen for webhooks.
Once it receives a webhook it will look into its Body and redirect the payload to a specified URL based on
subscription_plan_id (also known as
The path is not configurable, meaning that all your apps must have the same URL structure for Paddle webhooks (e.g.
This tool doesn't validate the payload, it's up to your app to do that.
- Create a new Google AppEngine project, let's call it
main.goand enter your webhook URLs along with their matching Plan IDs. You can find your Plan IDs here.
- Edit the
- Tell Paddle to send webhooks to