#kevindc-subscription
1 messages · Page 1 of 1 (latest)
We ideally want both products on the same subscription because the billing cycle would need to be aligned.
Hi! If I understand correctly you have one subscription with 2 products. And by default the subscription will charge the 2 products at once, but you'd like to do that separately?
Let's say I have products A and B. A customer is subscribed to both products on the same subscription. They get invoiced together at the end of each billing cycle. Now, the customer upgrades product A (=they go to a higher price on the same product). We would then like to charge this proration immediately BUT it could be that they still have pending proration invoice items of product B, but we don't want to include these in the invoice, those need to be charged at the start of the new billing cycle. As far as I can see there is no way to only invoice certain invoice items of an upcoming invoice?
Got it! The best way to do that would be to have one subscription for each product.
Note that when a subscription creates a new invoice, the invoice is in draft and can be edited for 1 hour. So maybe you could try edit the invoice to achieve what you want?
I thought about two subscriptions. Is it easy to align the regular billing cycle of two subscriptions? Is it possible to create 1 invoice for 2 subscriptions?
Is it easy to align the regular billing cycle of two subscriptions?
You could usebilling_cycle_anchorfor this https://stripe.com/docs/api/subscriptions/create#create_subscription-billing_cycle_anchor
Is it possible to create 1 invoice for 2 subscriptions?
Each subscription will create their own invoice.
If I manually create an invoice through the API to invoice all pending items do I still have the 1 hour period to change things?
Doesn't seem like I can change the line items of an invoice.
When you create a subscription that require payment immediately, the very first invoice is directly finalized and cannot be updated. But the following ones can be edited for 1 hour.
When a subscription renews and creates an invoice, Stripe sends the invoice.created webhook event. Stripe waits approximately one hour before finalizing the invoice and attempting payment or sending an email. During that delay, the invoice is a draft and is editable.
https://stripe.com/docs/billing/invoices/subscription#adding-draft-invoice-items
If you want to simulate this, you could create a subscription and set trial_end to 5 minutes in the future. This way you will get a draft invoice to play with.
https://stripe.com/docs/api/subscriptions/create#create_subscription-trial_end