#Rob.Clayton
1 messages · Page 1 of 1 (latest)
hello! can you share an example Subscription id, and what status do you expect the Subscription to be in instead?
gimme a while to take a look, i'll get back to you shortly
No worries, thanks Alex.
My objective is to import our existing customers, and only charge them at the beginning of the next payment cycle.
So lift and shift their existing subscription, wait until the end of the current license period, then request their renewal, since we've already charged them for their current period.
i think generally, the idea is to schedule the subscription to start at the end of the current license period
i.e. start in the future
if you want to backdate it though and if you're already in the middle of the current cycle, try setting https://stripe.com/docs/api/subscription_schedules/create#create_subscription_schedule-phases-proration_behavior as none and see if that works for you
I'm happy to go with whatever stripe recommend
Am I understanding things correctly that I do need to use a scheduled subscription since I don't want to charge for this existing subscription?
What I really want to do is:
add a license subscription to customer a from june 2022 to june 2023, don't charge, don't create invoice, and only set the renewal process into action once the 2022-2023 subscription I imported expires
gimme a while to type out my reply
Okay, so setting the proration flag seems to have stopped the subscription being overdue.
bbbbut ... I can see the next invoice will be after the scheduled subscription ...
subscription = stripe.SubscriptionSchedule.create(
api_key=self.api_key,
start_date=start_time,
customer=stripe_account_id,
phases=[
{
"proration_behavior": "none",
"end_date": end_time,
"items": [
{"price": stripe_license.stripe_price_id, "quantity": quantity}
],
}
],
)
start date is set 2022, end date 2023
take your time
In the screenshot, what I wanted was the next invoice to be 2023 March 20, when the imported subscription is meant to expire
to clarify, when you import your existing customers, they don't have an existing Subscription in the Stripe account you're importing them to right?
you don't need to use a Subscription Schedule, you can create a Subscription with proration_behavior=none, backdate_start_date, and set the billing_cycle_anchor
right
all new data, this is our first import of customer + subscription
I see. Thanks, will try that now
That seems to have worked, thanks Alex.
We want to allow the customer to renew themselves, rather than autorenew ($20k straight out of the bank might be a bit harsh without active involvement), so I've set collection_method="send_invoice and days_until_due=30
I assume that will send an invoice on/before due date, and keep subscription active until 30 days later or if paid within the 30 days grace?
👋 taking over this thread