Lemon Squeezy Webhooks
How to Test Lemon Squeezy Webhooks Locally (2026)
Lemon Squeezy sends webhooks for subscription and payment events. Lemon Squeezy signs webhooks with HMAC-SHA256 using a secret you configure in your store settings.
Signature Header
X-Signature
Algorithm
HMAC-SHA256
Setup Guide
- 1Create a free HookSense endpoint at hooksense.com
- 2Copy your unique webhook URL
- 3In Lemon Squeezy Dashboard → Settings → Webhooks → Add webhook
- 4Paste your HookSense URL as the callback URL
- 5Enter a signing secret and save it — add the same secret to HookSense
- 6Select the events you want to receive
- 7Make a test purchase to trigger a webhook
Common Lemon Squeezy Webhook Events
order_createdorder_refundedsubscription_createdsubscription_updatedsubscription_cancelledsubscription_payment_successsubscription_payment_failedlicense_key_createdForward to Localhost
Use HookSense CLI to forward Lemon Squeezy webhooks directly to your local development server:
npx hooksense listen -p 3000 --path /api/integrations/lemonsqueezyNo ngrok or tunnel setup required. Install with npm i -g hooksense or use npx.
Tips & Best Practices
- Lemon Squeezy webhooks include a meta object with custom data from your checkout
- Test mode webhooks use the same endpoint — use HookSense to tell them apart
- Use replay to test subscription lifecycle events without making real purchases
- Custom data passed via checkout is available in the webhook payload — inspect it in HookSense
Related
Start Testing Lemon Squeezy Webhooks
Create a free endpoint and receive your first Lemon Squeezy webhook in seconds.
Get Started Free