#tonyp - failed payment recovery
1 messages ยท Page 1 of 1 (latest)
Hello, good question. That sounds like a viable plan. The one other thing that I am thinking you can do would be to update the subscription and make the billing cycle now and then using the invoice that that generates
Still thinking on the best way to do this and what considerations you might have here
Using the payment intents that are from the invoices on the subscription is probably the way to go as those directly affect the subscription's status
I'd like to use the last unpaid invoice in order to keep track of customer's actions on the invoice events history
but your way avoids having to put a new trial period on the subscription ๐
Yeah that makes total sense. I am not thinking of anything wrong with your approach, I think my suggestion was more personal preference as there is less directly manipulating the status. But either need some extra API calls and whatnot
I'm a bit busy in other threads and am not giving this question proper time. I will consult my colleagues on what you might want to consider when doing these and will get back to you
thanks, I'll stick around then !
Hi there ๐ jumping in to lend a hand, please bear with me a moment while I catch up on the context here.
Your approach sounds like it will work as long as your Manage failed payments settings on this page don't transition the Subscription or Invoice to a terminal state:
https://dashboard.stripe.com/settings/billing/automatic
The other thing that I'd be mindful of if you're going to introduce a trial period in the middle of the Subscription, is that could look weird in some of our features. For instance, if you're using the Customer Portal, then it might look weird to a customer for them to see that their Subscription is in a trial state. If you're primarily using your own UIs then I don't think this is a concern.
Sign in to the Stripe Dashboard to manage business payments and operations in your account. Manage payments and refunds, respond to disputes and more.
I'd also recommend that you use our Test Clocks to run through this scenario just to make sure that it behaves the way you're hoping.
https://stripe.com/docs/billing/testing/test-clocks
Hey toby, thanks for the follow up
I agree that introducing a trial period is not the best in terms of clarity. But it was the only way I found in the docs
I'm not using the customer portal but even for us, it can be a bit confusing to have those trial periods popping up on our dashboard (and might break some stats ?)
so as @gentle finch suggested, the only other way to handle this use case would be to change the billing cycle anchor, and then use the generated invoice payment intent ?
Yeah, if you're using trial phases for actual trials as well, then that could get a bit confusing. To avoid that you could add a metadata value to the Subscription when putting it into a trial to indicate that it's a fake trial, so then your dashboard could read that value and adjust what it displays to avoid showing the Sub is in a trial state.
And yes, the other approach would include needing to adjust the billing_cycle_anchor which will result in a new invoice being generated.
I see ! Do you know if the subscription returned from the call updating the billing cycle anchor will already include the newly created invoice (in a finalized state ?) and its payment intent ? Just being lazy, but I'll test it out if you don't have the answer right on the spot
I'm asking this because the customer will actually be on session when it happens
I just tested to confirm, and setting billing_cycle_anchor to now causes the Subscription to immediately generate a new Invoice and attempts payment for it.
okay so this is not working if I have the customer on session
I have to go with the first approach then
thanks for your time @near lagoon and @gentle finch, I appreciate it !
Happy to help!