~/VibeHandbook

Платежи

stripe.com

Stripe

Что это

Stripe — это платёжный процессор: набор API и панелей управления, которые позволяют вашему приложению принимать оплату банковскими картами, через кошельки и банковские переводы, а затем управлять подписками, счетами и выплатами. Это выбор по умолчанию для разработчиков, потому что API аккуратный, документация превосходна, и почти каждое руководство и библиотека рассчитаны именно на него. Вы подключаете его, клиенты платят, и деньги поступают на ваш банковский счёт.

Сильные стороны

  • Лучший в своём классе опыт разработки — понятные API, тестовый режим и отличная документация.
  • Огромная экосистема: SDK, готовый checkout, биллинг и сторонние интеграции.
  • Достаточная гибкость для разовых платежей, подписок, маркетплейсов и тарификации по использованию.
  • Мощные инструменты против мошенничества (Radar) и надёжные, хорошо документированные вебхуки.
  • Работает во многих странах и с многими валютами.

Компромиссы

  • Это платёжный процессор, а не merchant of record — продавцом по документам являетесь вы, поэтому сбор и перечисление налога с продаж и НДС — ваша ответственность (Stripe Tax помогает с расчётами, но подавать декларации всё равно придётся вам).
  • Больше настройки, чем у готовой витрины; значительную часть процесса вы выстраиваете сами.
  • Соответствие требованиям, чарджбэки и налоговая регистрация ложатся на вас по мере роста.

Когда использовать

Обращайтесь к Stripe, когда вам нужен максимальный контроль над платёжным процессом и вы готовы взять на себя налоговое соответствие, либо когда вы строите то, что готовый магазин смоделировать не сможет — маркетплейсы, тарификацию по счётчику, сложные подписки или глубоко кастомизированный checkout.

Совместимость с vibe coding

Stripe — самый дружелюбный к ИИ платёжный вариант, потому что агент видел тысячи примеров Stripe и может быстро собрать checkout, вебхуки и клиентский портал. Подвох в том, что агент с радостью подключит платежи и забудет, что теперь вы должны платить налоги в десятках юрисдикций. Будьте прямолинейны: укажите, хотите ли вы вместо этого схему merchant of record, и всегда проверяйте подписи вебхуков и обрабатывайте события идемпотентно. Тестируйте на тестовых картах Stripe, прежде чем выходить в продакшен.

// Создание Checkout Session (на стороне сервера)
import Stripe from "stripe";
const stripe = new Stripe(process.env.STRIPE_SECRET_KEY);

const session = await stripe.checkout.sessions.create({
  mode: "payment",
  line_items: [{ price: "price_123", quantity: 1 }],
  success_url: "https://example.com/thanks",
  cancel_url: "https://example.com/cancel",
});
// перенаправьте клиента на session.url