Laravel Cashier: мне тоже добавить пробный период в Stripe?

Цитируя документацию кассы Laravel:

Если вы хотите предложить своим клиентам пробные периоды, в то же время собирая информацию о способе оплаты заранее, вы должны использовать метод trialDays при создании своих подписок.

Предполагая, что я хочу добавить 30-дневный пробный период к своим подпискам, я могу создать подписку с этим кодом:

$user->newSubscription('main', 'monthly')
        ->trialDays(30)
        ->create($stripeToken);

Как пользователь Stripe, должен ли я добавить пробный период в план Stripe?

введите описание изображения здесь

Я не уверен, чтобы понять логику Laravel Cashier здесь. Кажется излишним объявить что-то в двух разных местах.

2 ответа

Решение

Я бы сказал, что это не обязательно. Если вы добавляете пробные дни во время создания подписки (параметр trial_end при непосредственном использовании API), это будет иметь приоритет над пробными днями, определенными в плане в любом случае!

Я не на 100% удовлетворен этими ответами, так как вопрос касался использования кассира.

Создание подписки с помощью Кассы всегда установит trial_end

protected function buildPayload()
{
    return array_filter([
        'billing_cycle_anchor' => $this->billingCycleAnchor,
        'coupon' => $this->coupon,
        'metadata' => $this->metadata,
        'plan' => $this->plan,
        'quantity' => $this->quantity,
        'tax_percent' => $this->getTaxPercentageForPayload(),
        'trial_end' => $this->getTrialEndForPayload(),
    ]);
}

это trial_end будет либо "сейчас" (без пробного периода) по умолчанию, либо независимо от того, что вы передаете по желанию в ->trialDays(XXX),

Пробный период, определенный в Stripe, похоже, игнорируется.

Я согласен, ожидаемое поведение должно состоять в том, что то, что вы передаете через кассу, будет иметь приоритет над пробными днями, определенными в плане. Однако, похоже, это не так. (касса v8.0.1)

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

Другие вопросы по тегам