Почему подписки требуют другой конструкции
Толкать и тянуть
Это различие объясняет всё остальное.
Карточный платёж это вытягивание: мерчант отправляет запрос, эмитент его одобряет, и деньги двигаются без участия держателя карты в этот момент. Именно это делает возможными и подписки, и чарджбэки, поскольку механизм, способный двигать деньги по запросу, способен и возвращать их.
Криптоплатёж это толкание: плательщик подписывает транзакцию, и до этого не происходит ничего. Так снимается уязвимость к чарджбэкам, а вместе с ней и автоматическое продление.
Четыре подхода
Счёт на каждый период
Самый простой. Криптоинвойс создаётся по расписанию, а клиент получает напоминание со ссылкой на оплату. Технически ничего сверх того, что платёжный шлюз и так делает, не требуется.
Чего это стоит в оттоке
Цена этого способа в оттоке. Каждое продление становится решением, и часть клиентов его не принимает. Это честный компромисс, и именно поэтому предоплаченные модели ниже обычно выигрывают на масштабе.
Предоплаченный баланс
Клиент вносит средства на счёт, а сервис списывает с него ежемесячно. Один платёж покрывает несколько периодов, поэтому решение о продлении принимается раз в квартал или в год вместо раза в месяц. Широко используется хостинг-провайдерами и VPN-сервисами, и работает по той же причине, по которой работают подарочные карты.
Разрешение через смарт-контракт
Клиент один раз подписывает разрешение, позволяющее смарт-контракту списывать до определённой суммы по расписанию. Это уже настоящее вытягивание, и ближе к карточной подписке криптовалюта не подходит.
В чём компромисс
Компромисс здесь тот риск, который описывает запись про контракты: разрешение действует до отзыва, код после публикации не редактируется, и клиент, не понявший, что подписал, выдал программе постоянное право. Доступно в сетях с поддержкой контрактов и отсутствует в биткоине.
Кастодиальный счёт
Клиент держит остаток у провайдера, а тот с него списывает. Операционно это то же самое, что карточная подписка, и делает провайдера кастодианом со всеми вытекающими обязанностями.
Какой подход выбрать
Зависит от периода списания и от характера отношений с клиентом.
Месячные потребительские подписки страдают от ручного продления сильнее всего, поэтому предоплаченные балансы обычно выигрывают. Годовые корпоративные договоры прекрасно продлеваются по счетам, потому что одно решение в год трением назвать трудно. Дорогие контракты часто уходят на выставление счетов с отсрочкой, поскольку суммы там оправдывают участие человека.
Для SaaS-бизнеса практическим ответом нередко оказывается комбинация: предоплаченные единицы для самообслуживания и счета для корпоративных клиентов. Как соединяются части, разобрано в руководстве по приёму.
Что построить при любом подходе
Три вещи, независимо от выбранной схемы.
Напоминания до даты списания, потому что забывший клиент это выбывший клиент. Льготный период, чтобы опоздавший платёж не обрывал услугу немедленно. И понятную запись о том, какой период закрыл каждый платёж, поскольку фиатная стоимость между периодами различается даже при неизменной сумме в криптовалюте.