8 solution docs
Lemon Squeezy solution docs
Merchant of record with license keys built in. VAT and sales tax are its problem.
Pick Lemon Squeezy and all 8 land in docs/solutions/lemonsqueezy/, next to the rules and skills that reference them.
Every Lemon Squeezy doc in the registry
Tags: activation · billing · chargebacks · checklist · cli · compliance · desktop · dunning · entitlements · environments · hmac · idempotency · incidents · invoices · launch · lemonsqueezy · license-keys · lifecycle · lifetime-deal · live-mode · merchant-of-record · one-time-payments · operations · orders · reconcile · refunds · sales-tax · security · signature · subscriptions · tax · test-mode · vat · webhooks
Idempotent Lemon Squeezy webhooks when there is no delivery id
Lemon Squeezy signs the raw body with X-Signature, sends no event id, and retries three times. Build your own idempotency key, verify in constant time, and know what to re-read.
lemonsqueezy · webhooks · idempotency · hmac
Lemon Squeezy license keys for desktop apps, CLIs and plugins
Turn on license keys per variant, activate and validate from the client with the public License API, and tie key expiry to the subscription. What to cache and what never to ship.
lemonsqueezy · license-keys · desktop · cli
What "merchant of record" means for your taxes on Lemon Squeezy
Lemon Squeezy sells to your customer and you sell to Lemon Squeezy. What that moves off your plate, what it does not, and how to show prices honestly.
lemonsqueezy · merchant-of-record · tax · vat
One-time purchases on Lemon Squeezy, from lifetime deal to refund
A lifetime deal is a single-payment variant, and order_created fires for subscriptions too. How to tell them apart, find the buyer, show the purchase, and take access back on a refund.
lemonsqueezy · one-time-payments · lifetime-deal · orders
Lemon Squeezy orders, invoices and partial refunds, and what each does to access
The first payment arrives as an order and an invoice, refunded_amount is a running total, and chargebacks send no event. How to record each once and revoke access on the right one.
lemonsqueezy · refunds · orders · invoices
Recovering from missed Lemon Squeezy webhooks
Three retries over about two and a half minutes, then the event is gone. A nightly reconcile from the API, what it can and cannot rebuild, and how to fix the rows it cannot.
lemonsqueezy · webhooks · reconcile · operations
The Lemon Squeezy subscription state machine, and who keeps access
on_trial, active, past_due, unpaid, paused, cancelled, expired. Which unlock your product, how to normalize them, and the two states people get wrong.
lemonsqueezy · subscriptions · lifecycle · dunning
Moving a Lemon Squeezy integration from test mode to live mode
Test and live are separate worlds with separate keys, webhooks and variant ids. The checklist, and the silent mismatch that sells nothing.
lemonsqueezy · test-mode · live-mode · launch