#siddhant_api
1 messages · Page 1 of 1 (latest)
👋 Welcome to your new thread!
⏲️ We'll be here soon! Typically we respond in a few minutes, but sometimes we might take a bit longer if the server is busy or if you have a particularly tricky question.
⏱️ We close idle threads, which makes them read-only. Once a thread is closed it won't be reopened, but you can always start a new thread if you have another question.
🔗 This thread will always be available, even after it's closed. You can find it again using Discord's search, or you can save this link: https://discord.com/channels/841573134531821608/1437549382772981841
📝 Have more to share? Add more details, code, screenshots, videos, etc. below.
Below are links to other discussions we've had with you in the past week in case you want to review that information. If your question is related to one of these previous discussions, please provide a comprehensive summary of the current state and what you need help with now. We help many users simultaneously, so a summary allows us to resolve your issue as soon as possible.
- siddhant_api, 5 hours ago, 10 messages
Hi there, looking into this now
A payment method can have multiple mandates, there is a preview feature to list mandates for a payment method
https://docs.stripe.com/changelog/basil/2025-08-27/mandates_listing_support
https://docs.stripe.com/api/mandates/list?api-version=2025-08-27.preview
If mandate can be created by setup intent API , isn't each setup intent will create different payment method and so different mandate?
Every different payment method will have a different mandate, yes (in other words, a mandate can only be associated with one payment method). But the payment method can have multiple mandates, because a mandate may be inactive and a new one is required (in that case the payment method would have two mandates)
Last question, can one payment method have multiple active mandates?
I don't believe so, but let me look into it
Actually, I'm seeing an internal discussion of a Payment Method having multiple active mandates. So I wouldn't rule out that possibility. With the preview feature I linked above, you can use status=active to get all the active mandates for the Payment Method:
https://docs.stripe.com/api/mandates/list?api-version=2025-08-27.preview#list_mandates-status
Or you can use the Payment Method's latest_active_mandate if you only needed the one to work with
https://docs.stripe.com/api/payment_methods/object?api-version=2025-08-27.preview#payment_method_object-latest_active_mandate
If you find a way of how one payment method can have more than 1 active mandate, do let me know, I wanted to test the same for one of my feature. Actually, I was working on task where if we receive mandate.updated webhook, we have to take certain actions. So, I was thinking what should we do, invalid the payment method or some other axctions, that's why asked
Got it. Can you provide a little more context about your use case? What actions do you want to take when the mandate is updated? Are you trying to handle when a mandate is cancelled, or some other situation?
Actually, assume CIT happens, we have stored payment method, recurring subscription, mandate created. We support Stripe India Card which required mandates and Direct Debit like ACH,SEPA,BACS,BECS. So, I was analysing if we recive webhooks specially mandate.updated, what are the actions we should take at our end?
Specially when we receive status as INVALID in mandate object in webhook payload
If a mandate is invalid, then you should inform the customer so they can create a new one. Or often times it happens because a customer wants to cancel their subscription. So you may want to pause their subscription and send appropriate communications.
So broadly speaking, you only need to process the event if you’ll be unable to charge the customer again, i.e. the mandate is tied to the default payment method of the Customer or Subscription. There can be other cases where the mandate becomes inactive that you don't need to handle (if they switched payment methods for example).