#dazzling_chipmunk_99376
1 messages · Page 1 of 1 (latest)
Happy to help, are you doing this by directly updating a subscription? If so, you can pass proration_behavior: none which will tell Stripe not to not create prorations https://stripe.com/docs/api/subscriptions/update#update_subscription-proration_behavior
Complete reference documentation for the Stripe API. Includes code snippets and examples for our Python, Java, PHP, Node.js, Go, Ruby, and .NET libraries.
If you are updating some other way, let me know the details and I can look in to how to avoid prorations
new_items = items_plan_data.collect do |item|
{
id: item.id,
price_data: {
currency: item.price.currency,
product: item.price.product,
recurring: {
interval_count: 60,
interval: "day",
},
unit_amount_decimal: item.price.unit_amount_decimal
}
}
end
Stripe::Subscription.update(@subscription_id, {items: new_items})
would this work?
It should as far as I know. Can you run that code again and send me the request ID (req_123) if it does create prorations?
ok
req_QdFXU8IZA2zmKo
this seems to have created an invoice for the full amount of the subscription plan
My apologies, I forgot that switching the billing cycle length inherently resets the billing cycle to now
You can use a Subscription Schedule to do this https://stripe.com/docs/billing/subscriptions/subscription-schedules/use-cases#upgrading-subscriptions
With a subscription schedule, you can tell Stripe to upgrade at the end of the current cycle
there's no way to do this within the subscription by changing the price data or plan data?
Not while directly modifying the subscription. You have to schedule the change