Как я могу узнать, закончилась ли пробная подписка на полосу без веб-крючка?

#stripe-payments

Вопрос:

Я создаю клиента Stripe и подписку с 7-дневной пробной версией:

 
    const stripeCustomer = await stripe.customers.create({
        email: req.body.email
    });

    await stripe.subscriptions.create({
        customer: stripeCustomer.id,
        items: [{
            price: process.env['STRIPE_PRICE_ID']
        }],
        trial_period_days: 7
    })
 

Когда я проверяю статус, он отображается как trialing . После окончания пробной версии, если я получу подписку, она получит статус active . Но это неверно, потому что клиент еще не заплатил за подписку.

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

Ответ №1:

Вы хотели бы начать свою подписку с payment_behavior 'default_incomplete' : https://stripe.com/docs/api/subscriptions/create#create_subscription-payment_behavior

Таким образом, статус подписки будет incomplete сохранен после окончания пробной версии, только active после того, как будет оплачен первый счет.

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

1. Я тоже это пробовал: ` ожидание полосы.подписки.создание({ клиент: stripeCustomer.id, товары: [{ цена: process.env[‘STRIPE_PRICE_ID’] }], payment_behavior: ‘default_incomplete’, trial_period_days: 7 }) « Но когда испытание заканчивается, оно переходит к active

2. Вы прикрепили метод оплаты после создания подписки, но до окончания пробной версии? Подписка должна находиться в incomplete состоянии примерно в течение часа, пока счет-фактура создается и завершается, прежде чем автоматически оплачиваться и переходить на active . Если это не то, что вы видите, вам следует обратиться в службу поддержки Stripe, чтобы они могли продолжить расследование: support.stripe.com/contact