# Lemon Squeezy solution docs

- [Idempotent Lemon Squeezy webhooks when there is no delivery id](https://agenticboilerplate.com/cookbook/lemonsqueezy/idempotent-webhooks-without-a-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.
- [Lemon Squeezy license keys for desktop apps, CLIs and plugins](https://agenticboilerplate.com/cookbook/lemonsqueezy/license-keys): 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.
- [What "merchant of record" means for your taxes on Lemon Squeezy](https://agenticboilerplate.com/cookbook/lemonsqueezy/merchant-of-record-tax): 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.
- [One-time purchases on Lemon Squeezy, from lifetime deal to refund](https://agenticboilerplate.com/cookbook/lemonsqueezy/one-time-purchases-with-lemon-squeezy): 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.
- [Lemon Squeezy orders, invoices and partial refunds, and what each does to access](https://agenticboilerplate.com/cookbook/lemonsqueezy/orders-invoices-and-partial-refunds): 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.
- [Recovering from missed Lemon Squeezy webhooks](https://agenticboilerplate.com/cookbook/lemonsqueezy/recovering-from-missed-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.
- [The Lemon Squeezy subscription state machine, and who keeps access](https://agenticboilerplate.com/cookbook/lemonsqueezy/subscription-states-and-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.
- [Moving a Lemon Squeezy integration from test mode to live mode](https://agenticboilerplate.com/cookbook/lemonsqueezy/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.

---

Agentic Boilerplate: A Next.js repo your agent already knows. Free during launch, then $99 once.

- Site map for agents: https://agenticboilerplate.com/llms.txt
- Public API: https://agenticboilerplate.com/openapi.json
- Contact: agenticstudio@gmail.com
