#ericcecchi
1 messages · Page 1 of 1 (latest)
Hello there
Can you give me an example where you see it not requiring this mandate and then where you do?
Two PaymentIntents would be great
Required mandate: https://dashboard.stripe.com/payments/pi_2NVLwuPxnTIUcyZy01g52oAm
Not required mandate: https://dashboard.stripe.com/payments/pi_2NUxfJPxnTIUcyZy1tOLzJou
Thanks give me a moment to look
Okay so it looks like one of those mandates is inactive. Are you listening for mandate.updated Events to know when Mandates move to inactive and you need to collect a new one?
Hmm, we are not listening for that event. What would cause a mandate to expire if it is created for multi-use? I've struggled to find any documentation on mandates and how they should be implemented. I assumed the payment element would take care of them without any work on our end.
Hmm yeah you are right we don't really talk about mandates in our docs on Cash App. That does feel like a gap and I can flag that to get info added for the future. Overall, Payment Element does handle creating the mandate initially and you don't need to do anything. However, mandates can be invalidated if the customer deactivates Cash App as a re-usable payment method in their mobile app. We talk about this a little bit here: https://stripe.com/docs/payments/cash-app-pay/set-up-payment?platform=web&ui=API#revoke-reusable-payment-method-events
Interesting, this is new to me since we initially implemented the integration. The paragraph mentions that if the customer deactivates the payment method in the Cash App, Stripe will send both mandate.updated and payment_method.detached. However, in the event logs for that customer, I don't see either event.
Also, the payment method is still attached to the customer.
The payment_method.detached Event would only be relevant if you provided a way for them to deactivate via your App and you detach via your Server.
I think that paragraph is a bit confusing as written but it is taling about two different things. You provide the option - meaning you detach the PaymentMethod using https://stripe.com/docs/api/payment_methods/detach. Or the customer goes in their app and deactivates, which would just fire the mandate.updated Event
That Event won't be tied directly to the Customer
Am I reading that paragraph wrong? It says "In both cases" which I took to mean if the customer deactivates or we detach via the API.
Either way, the mandate.updated event was not sent for that customer either: https://dashboard.stripe.com/events?related_object=cus_KPJgLI9658Dcpd&type=mandate.updated
Yeah that paragraph needs to be revamped.
We will not detach a PaymentMethod from your Customer without you taking an explicit action.
I'll flag that as feedback for our docs team and get that fixed up.
And currently the mandate.updated Events will not show up in those Customer Events. You would need to filter all of your Events for mandate.updated to see it. Which would be tough here. I'll also add feedback about that internally as I think we could/should surface this in the Customer Events
Mostly it is expected that you ingest this data via a Webhook
To track it
Ah ok