From b3b89c84438e3e9e23946a9eadc7417346793009 Mon Sep 17 00:00:00 2001 From: Marshall Bowers Date: Tue, 22 Apr 2025 12:24:46 -0400 Subject: [PATCH] collab: Don't require payment method to start a trial (#29224) This PR makes it so a payment method is not required in order to start a Zed Pro trial. Release Notes: - N/A --- crates/collab/src/stripe_billing.rs | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/crates/collab/src/stripe_billing.rs b/crates/collab/src/stripe_billing.rs index cedd8b7e1961dc03e532164b8376f444f57ed64b..97c6ee4fb898299984344e3a1f7fe14d30d57848 100644 --- a/crates/collab/src/stripe_billing.rs +++ b/crates/collab/src/stripe_billing.rs @@ -416,9 +416,16 @@ impl StripeBilling { let mut params = stripe::CreateCheckoutSession::new(); params.subscription_data = Some(stripe::CreateCheckoutSessionSubscriptionData { trial_period_days: Some(14), + trial_settings: Some(stripe::CreateCheckoutSessionSubscriptionDataTrialSettings { + end_behavior: stripe::CreateCheckoutSessionSubscriptionDataTrialSettingsEndBehavior { + missing_payment_method: stripe::CreateCheckoutSessionSubscriptionDataTrialSettingsEndBehaviorMissingPaymentMethod::Pause, + } + }), ..Default::default() }); params.mode = Some(stripe::CheckoutSessionMode::Subscription); + params.payment_method_collection = + Some(stripe::CheckoutSessionPaymentMethodCollection::IfRequired); params.customer = Some(customer_id); params.client_reference_id = Some(github_login); params.line_items = Some(vec![stripe::CreateCheckoutSessionLineItems {