Отправная точка с открытым кодом

Скучная часть готова с первого дня.

Учётные записи, подписки Stripe, служебные письма на десяти языках и развёртывание в Kubernetes — уже написано и проверено. Начните с той части продукта, которую за вас никто не напишет.

Для регистрации карта не нужна.

Всё, что нужно платному продукту ещё до первого клиента

Это не шаблон. Это работающий бэкенд, в котором сценарии сбоев уже разобраны.

  • Учётные записи, которые действительно работают

    Почта и пароль, вход через Google, подтверждение адреса, сброс пароля, смена адреса с шагом подтверждения и удаление учётной записи, которое действительно удаляет.

  • Подписки, включая самые неудобные случаи

    Переход на более дорогой тариф пересчитывается сразу, на более дешёвый — ждёт конца периода, отмену можно отыграть назад, а вебхуки идемпотентны и не зависят от порядка доставки.

  • Письма на языке читателя

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

  • Десять языков и переведённые адреса

    Один список языков питает префикс в адресе, переключатель, hreflang и каталоги писем. /de/preise отдаёт ту же страницу, что и /en/pricing.

  • Админка, из которой можно действовать

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

  • Разворачивается в Kubernetes как есть

    Автономный образ, манифесты для продакшена, MongoDB, ingress и скрипт первичной настройки в одну команду. Либо запустите где угодно, где работают контейнеры.

Три команды до работающего продукта

  1. Дайте имя

    Один ответ на вопрос «как это называется?» перепишет конфигурацию, куки, манифесты и имя образа.

  2. Подключите Stripe

    Создаёт продукт и цены, регистрирует эндпоинт вебхука ровно с теми событиями, которые обрабатывает код, и записывает идентификаторы обратно в репозиторий.

  3. Проверьте и запускайте

    Диагностика смотрит на то, что реально увидит кластер, — ключи, цены, вебхук, индексы — и не назовёт готовым то, что не готово.

Просто, помесячно, отмена в любой момент

Каждый тариф включает продукт целиком. Отличается масштаб, а не набор функций, взятых в заложники.

Бесплатный

0 $

Всё, что нужно, чтобы как следует всё проверить.

  • Один проект
  • Поддержка сообщества
  • Без карты
Начать

Цены указаны без НДС там, где он применяется. Вы можете отменить подписку в любой момент и сохраните доступ до конца оплаченного периода.

О чём спрашивают первым делом

Нет. Достаточно адреса базы данных и секрета JWT, чтобы зарегистрироваться, войти, подтвердить адрес, сбросить пароль и переключить язык. Письма с подтверждением и сбросом печатаются вместе со ссылками в лог сервера. Stripe нужен только для экранов биллинга.

Начните с интересной части.

Остальное здесь уже есть.