Lemon Squeezy
Что это
Lemon Squeezy — это платформа merchant of record (MoR) для продажи цифровых продуктов: лицензий на ПО, загрузок, электронных книг и SaaS-подписок. Ключевое отличие от обычного платёжного процессора в том, что юридически продавцом является сам Lemon Squeezy. Он принимает оплату, а затем рассчитывает, собирает и перечисляет налог с продаж и НДС по всему миру от вашего имени. Вам остаётся лишь подключить продукт и ссылку на checkout. (Этот самый сайт продаёт свой комплект PDF + EPUB через Lemon Squeezy.)
Сильные стороны
- Merchant of record: глобальный налог с продаж и НДС берутся на себя — огромное бремя снимается с продавца-одиночки.
- Быстрая настройка: создайте продукт, получите размещённый checkout или оверлей и начинайте продавать.
- Создан для цифровых товаров — лицензионные ключи, загрузки, подписки и клиентский портал из коробки.
- Вебхуки и API для фулфилмента, а также инструменты для партнёрских программ и скидок.
Компромиссы
- Более высокие комиссии за транзакцию, чем у голого процессора — эта надбавка оплачивает работу с налогами.
- Меньше контроля над checkout, чем у полностью кастомной сборки на Stripe.
- Ориентирован на цифровые продукты; не подходит для физических товаров на складе или сложных маркетплейсов.
Лучше всего подходит для
Инди-разработчиков и небольших команд, продающих цифровые продукты, которые хотят решить вопрос платежей и мирового налогового соответствия без найма бухгалтера. Если вы продаёте ПО, курсы, электронные книги или SaaS и не хотите регистрироваться плательщиком НДС в десятках стран — это простой путь.
Совместимость с vibe coding
Lemon Squeezy — отличная цель для vibe coding, потому что поверхность интеграции невелика: размещённый URL checkout плюс вебхук для фулфилмента. Попросите агента создать кнопку покупки, открывающую оверлей checkout, а затем обработчик вебхука, который проверяет подпись и открывает доступ к загрузке или лицензии. Поскольку Lemon Squeezy выступает merchant of record, агенту не нужно строить никакой налоговой логики — скажите ему об этом, чтобы он не усложнял.
// Проверка вебхука Lemon Squeezy (на стороне сервера)
import crypto from "node:crypto";
function verify(rawBody, signature, secret) {
const hmac = crypto.createHmac("sha256", secret);
const digest = hmac.update(rawBody).digest("hex");
return crypto.timingSafeEqual(Buffer.from(digest), Buffer.from(signature));
}
// При "order_created" предоставьте покупателю доступ.