#ericcecchi

1 messages · Page 1 of 1 (latest)

arctic knotBOT
static ruin
#

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

static ruin
#

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?

cinder hollow
#

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.

static ruin
#

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

cinder hollow
#

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.

static ruin
#

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

cinder hollow
#

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.

static ruin
#

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

cinder hollow
#

Ah ok