Я хочу использовать Stripe API для выставления счетов пользователям каждый месяц на указанную ими сумму. Похоже, что Stripe не позволяет веб-сайтам создавать подписку без предварительной настройки плана для нее вручную, ограничивая то, за что люди могут выставлять счета заранее определенными суммами.
Каков наилучший способ сделать это?
Вы можете! Прежде чем говорить больше о том, как это работает на практике, убедитесь, что вы понимаете когда счет открыт для модификации.
Подписка вашего клиента на новый план или обновление существующей подписки вашего клиента
Если вы подписываете своего клиента на план через API, вы не сможете добавить какие-либо специальные сборы после создания первоначального счета, так как он будет немедленно закрыт. Это означает, что вам нужно будет настроить любые пользовательские суммы до создания первоначального счета. Вы можете сделать это одним из двух способов:
Установите account_balance при создании клиента или обновлении подписки клиента.
Создайте все элементы счета-фактуры до того, как ваш клиент будет подписан на план, а затем создайте подписку с помощью обновления подписки клиента.
В любом случае, мы внесем остаток на счету или все неоплаченные счета в первоначальный счет, поэтому с вашего клиента все равно будет взиматься плата за установку. По сути, это единовременные платежи, которые вы комбинируете с периодическими платежами подписки. Поскольку они добавляются к итоговой сумме счета, создается только один платеж.
Продление подписки
Баланс счета и счета-фактуры — это единовременные корректировки учетной записи вашего клиента, поэтому они не будут автоматически применяться каждый месяц. Если в вашей службе используется счет с оплатой по счету или вам нужно добавить пользовательские суммы для налогов или других динамических затрат, вам нужно будет ежемесячно создавать позиции счетов-фактур.
Чтобы начать, просто используйте webhooks, чтобы прослушать событие invoice.created. Всякий раз, когда счет открыт для изменения, ваша конечная точка webhook может создать элемент счета, который ссылается на идентификатор существующего счета. Мы автоматически внесем эту сумму в общую сумму счета-фактуры до выставления счета вашему клиенту, примерно через час после создания счета-фактуры.
Ссылка на сайт:
https://support.stripe.com/questions/metered-subscription-billing
Других решений пока нет …