#benomatis
1 messages · Page 1 of 1 (latest)
Hello! I'd guess that the customer opted to save the PM in the Payment Sheet via the checkbox
yes, I understand why it's happening, the question is why off_session and not on_session?
We generally just recommend off_session wherever possible
isn't off_session allowing us to charge the card any time? wouldn't that need us to let the customer know they practically give us their card? at the same time, I'm really curious, is off_session the default if I set nothing?
isn't off_session allowing us to charge the card any time?
Yes, but there should be warnings in the Payment Sheet UI to that affect
at the same time, I'm really curious, is off_session the default if I set nothing?
Set nothing where?
Seems like the s_f_u value isn;t configurable. I'd recommend filing an issue/request on the GH repo if that is important to you
I know the warning you mean, but that's only appearing on web, in mobile there is just the checkbox and the title "Save this card for future Company Name payments"
"Seems like the s_f_u value isn;t configurable." > The code bit you showed doesn't specifically confirm it's forced, but it's the only thing I can think of as well. However, if I try and work it around by setting it on the PI, will the user's card always be saved even if the user doesn't check the checkmark?
It's not forced, but if you allow saving then the only possible value is off_session
However, if I try and work it around by setting it on the PI, will the user's card always be saved even if the user doesn't check the checkmark?
Yes
the description is confusing in the code you linked
I don't understand who / what is doing or supposed to be doing what
shouldSavePaymentMethod: This is
trueif the customer selected the "Save this payment method for future use" checkbox. Setsetup_future_usageon the PaymentIntent tooff_sessionif this istrue.
specifically this
Set setup_future_usage on the PaymentIntent to off_session if this is true.
shouldSavePaymentMethod is set when your customer checks the box
who sets it?
If they check that box, the SDK sets s_f_u: 'off_session' on the PI
this is basically an "instruction" for the app to itself...?
If you want to opt out of allowing customers to save their cards then you need to remove the customer parameter from your API request to create the PI
no, I want to allow them to save, but I'd like on_session rather than off_session...
so I'll open an issue then instead on GH, ok... however
do you know if I can change customers' payment methods from off_session to on_session, is that possible? or I should ask a new question?
No, you'd need to generate a new on_session Payment Method via a Setup Intent
I can do that without the involvement of the user?
No the customer would need to be on-session to provide card details and complete (likely) required 3DS/auth
ok, thank you
np!
sorry
last question
does off_session also mean we could just take the card and charge it any time with any amount?
practically use the card for whatever we want? just asking, because this then looks very worrying, I'm surprised this would be the default option
It means you can initialise payments where the customer is off-session (i.e. not in the checkout flow), also known as MIT. Don't believe there's any limit on that, but there is still the chance that the bank/issuer can request 3DS/auth for off-session payments
I'd never just give my card details to any company to use it as they wish (barring 3DS), not even the state... What can be the thought process behind why this would be the default? Am I missing something?
I don't believe you are. The APIs/UIs are designed to optimise payment flows and conversions for merchants. There are risk factors, sure, but merchants abusing saved cards are only likely to damage their merchant rep with card networks (via chargebacks/disputes) so it'll only impact their business in the long run
If you have any further questions about this, I'd recommend speaking with suport: https://support.stripe.com/contact
Find help and support for Stripe. Our support site provides answers on all types of situations, including account information, charges and refunds, and subscriptions information. Get your questions answered and find international support for Stripe.