#Muhammad Awais
1 messages · Page 1 of 1 (latest)
Yep!
https://stripe.com/docs/invoicing/overview#invoice-statuses
uncollectible The customer is unlikely to pay this invoice (treat it as bad debt in your accounting process). You can void or pay the invoice.
This is the log of a subscription.
The subscription was canceled still invoice was paid.
should this not change the subscription status?
No those things are separate -- the invoice payment failed, but the invoice was still open and payable. The subscription was cancelled.
If you used "cancel at period end" this could be resumed by unsetting that
But if cancelled immediately, thats irreversible
The open invoice can still be paid -- depending on the nature of your business that might be something you wish to refund, or not.
eg, if you shipped a subscription box of goods already, you probably do not want to refund
If you offer a digital service you might want to
I think the subscription was automatically canceled because the invoice payment failed.
Thats possible - do you have your settings configured to do that?
Sign in to the Stripe Dashboard to manage business payments and operations in your account. Manage payments and refunds, respond to disputes and more.
yea, manage failed payments
Ok that makes sense, and seems to be what happened here
what should I do so that if the subscription is canceled then its invoice should not be payable?
You can void the invoice, if you want to block it from being paid
How?
Complete reference documentation for the Stripe API. Includes code snippets and examples for our Python, Java, PHP, Node.js, Go, Ruby, and .NET libraries.
Can we do it from settings or via API call?
You would need to make an API call for that
on subscription cancel webhook event I will find the invoice id?
If this is the only case where you expect uncollectible invoice, then you can set up a webhook endpoint to get invoice.marked_uncollectible events:
https://stripe.com/docs/api/events/types#event_types-invoice.marked_uncollectible
Complete reference documentation for the Stripe API. Includes code snippets and examples for our Python, Java, PHP, Node.js, Go, Ruby, and .NET libraries.
then you can receive those, and set your endpoint to void the invoice
yes you could also get the latest_invoice id from the subscription object there
anytime there will be only one invoice against one subscription right?
What do you mean? Subscriptions get a new invoice every cycle, so they can have many. But only one is mapped as the latest_invoice
ok