#Siva
1 messages · Page 1 of 1 (latest)
hello! how can we help?
I have the following requirement in my project. We have monthly subscription activated for our customers. Also we have the smart retries enabled for our payment failures (4 attempts in 21 days). Also we enabled the setting to mark the subscription status as 'unpaid' if all the retry attempts fails for an invoice. With this settings in place, we have to perform some business logic when the following criteria met,
- 2 month invoices failed
- All retry attempts failed for both the invoices
When the last retry attempt fails for the second month invoice we have to perform some business logic in our back end.
My question is, if subscription status changes to 'unpaid' because of the first month invoice failed (with all attempts) will it attempt to pay the second month invoice?
Because stripe doc says this - "Note that when a subscription has a status of unpaid, no subsequent invoices will be attempted (invoices will be created, but then immediately automatically closed). After receiving updated payment information from a customer, you may choose to reopen and pay their closed invoices."
If the second month invoices are not attempted then we can't perform our business logic. So please help me on this.
reading through this, gimme a while
sure
what you want to achieve isn't possible if you mark the subscription status as unpaid, why not leave the subscription status as it is i.e. past_due?
Ok. But from this link - https://stripe.com/docs/billing/subscriptions/overview#unpaid-subscriptions, I read as "If you leave the unpaid subscription in place, the most recent unpaid invoice remains open, new invoices are generated, and payments on new invoices are attempted. Use this behavior if you want to continue attempts to bill your customers every month, even when previous invoice payments have failed. If the most recent invoice gets paid the subscription status returns to active."
Here they say it attempts to pay the invoices. So I am confused
Can you please let me know which is the best approach?
I am not able to test these things quicker because,
I need to wait for smart retries to complete in order to change the subscription status to 'unpaid'. Is there any way we can manually update the subscription status to 'unpaid'?
in case you haven't seen this yet, you can use test clocks to mimic the passing of time : https://stripe.com/docs/billing/testing/test-clocks
but no, you can't manually update a subscription status
i don't know which behaviour is correct off the top of my head at the moment for unpaid subscriptions, but i'd suggest testing it out with test clocks on your Stripe account
Hey, taking over here. Let me know if there's any follow-up Qs I can answer!