#jiwon_cashapp-mandate
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/1230265272619765790
đ Have more to share? Add more details, code, screenshots, videos, etc. below.
Hi, the mandate is only needed if you're saving it for future payments, https://docs.stripe.com/payments/cash-app-pay. We talk about how you can do this here, https://docs.stripe.com/payments/cash-app-pay/set-up-payment?web-or-mobile=web&payments-ui-type=direct-api#retrieve-the-client-secret. I'm unsure what you mean by ' How explicitly does this mandate have to be shown to the customer for them to agree on it? '. Can you add more clarity here?
my understanding is that setup intents are for the purposes of saving for future payments - in what scenario would the mandate not be needed here?
is this (https://docs.stripe.com/payments/cash-app-pay/set-up-payment?web-or-mobile=web&payments-ui-type=direct-api#present-authorization-terms) authorization terms for the mandate? i.e. what needs to be shown for the customer to accept the mandate?
In cases where you process one-time payment and not use the payment method details again.
Yes, that is correct, that is the recommended text
I see. so this text (or some similar variant of authorization terms) must be shown, regardless of whether the stripe.confirmCashappSetup web element is used or not, in order for the user to accept the mandate
for when the user wants to save cashapp for future payments
That is correct, the documentation above is what you'd want to follow.
my confusion was around the fact that setting the "confirm" param to true when creating a setup intent object requires you to provide the mandate_data information. whereas not setting the confirm param to true (making it default to false) does not require mandate_data and you are able to confirm the setup using the web element
which seems unrelated to whether the user wants to save cashapp for future payments or not
the second flow (seemingly) does not require the creation of a mandate object or acknowledgement
as far as functionality goes
ultimately the reason why we cannot use stripe.confirmCashappSetup is because it is not supported on flutter, which requires us to handle the redirect and authentication manually. to do so, we have to provide a return_url when creating a setup intent, and thus we have to set confirm: true and thus pass in mandate_data. was mainly wondering why it'd be required when we go through this manual route vs with stripe.confirmCashappSetup, where it is optional. but it sounds like either way, if we want to save the payment method for future payments - we will need to provide mandate_data? is that correct?
this is the API doc I have been referring to for setup intent creation: https://docs.stripe.com/api/setup_intents/create
Ah, I see. We document how you can manually handle this here: https://docs.stripe.com/payments/cash-app-pay/set-up-payment?web-or-mobile=web&payments-ui-type=direct-api#handle-redirect-and-auth-manually. That is correct, you would need this. If you do not pass the mandate_date, you won't be able to use the payment method for future usage. It would error out.