Как обновить запись об использовании клиента Stripe в конце платежного цикла?

#stripe-payments

#stripe-платежи

Вопрос:

Для тарифного плана с дозированным ценообразованием вместо ежедневного запуска cron для создания записей об использовании для каждого клиента я прослушиваю invoice.created событие, запускаемое в конце платежного цикла, и обновляю счет с помощью дозированного использования.

К сожалению, я не могу добавить запись об использовании, потому ERROR: Cannot create the usage record with this timestamp because timestamps must be after the subscription's last invoice period (or current period start time) что . Поэтому мне приходится вручную создавать новую позицию вместо использования тарифного плана.

Было бы здорово, если бы записи об использовании, созданные в течение периода составления счета-фактуры, можно было бы добавить к этому платежному циклу. Возможно ли это? Я полагаю, что это сэкономило бы Stripe огромное количество обращений к API, если бы это было так. Есть ли другой веб-хок прямо перед созданием счета, к которому я могу подключиться?

Комментарии:

1. Вы не можете добавлять записи об использовании в счет, который уже создан. Вы хотите, чтобы invoice.предстоящее событие вместо invoice.created . Упоминается на stripe.com/docs/billing/subscriptions/webhooks#tracking

2. К сожалению, похоже invoice.upcoming , что он запускается за 3 дня до окончания платежного цикла, поэтому я бы пропустил запись о 3 днях использования.

3. Тарифные планы предназначены для отслеживания использования в течение периода, а не для определения использования после периода. Если сумма выставления счета определена после окончания периода, вы, вероятно, захотите, чтобы план был бесплатным, а затем добавить элементы счета в счет в ответ на событие invoice.created . Это не столько недосмотр, сколько пример использования правильного инструмента для желаемого потока.

4. Я это понимаю. Но почему Stripe предпочла бы, чтобы я отправлял им миллион запросов post, обновляя использование в течение месяца (я отслеживаю минуты потокового видео), а не просто вводил хук прямо перед окончанием расчетного периода, когда я могу обновить использование один раз. Похоже, у них есть миллион других перехватов.

5. Я полагаю, это для поощрения использования другого потока, как вы предлагаете, который я в итоге использовал, что, к сожалению, потому что я теряю некоторые приятные свойства функции дозированного использования.