#cab-subscription-cashapp

1 messages · Page 1 of 1 (latest)

delicate sorrelBOT
chilly smelt
#

@vital flower Can you share more specific/actionable details? Exact PaymentIntent id, exact request id req_123, what your code does, whether you're showing PaymentElement, etc.

#

cab-subscription-cashapp

vital flower
#

Payment Intent: pi_3NpZX3K7tk54C3df1job6tp8
Request ID: req_pRwmHydMFsY2lX

#

On the backend, I upgrade the subscription with the PaymentBehavior: "allow_incomplete", and after making the update in Stripe, the payment Intent has a status "requires_confirmation", so I return the clientSecret to my client.
Then my client calls stripe.ConfirmPayment(clientSecret) and sees that error

chilly smelt
#

If you already have a CashApp PaymentMethod attached what happens if you just confirm on the server instead. Does that work?

vital flower
#

I will test, one sec

chilly smelt
#

my colleague @brazen solstice will help you figure out the right integration pth for this

brazen solstice
#

Let me know what comes of your test @vital flower

vital flower
#

So I tried confirming on the server side, and I got pretty much the opposite error:
When confirming a PaymentIntent with a cashapp PaymentMethod and setup_future_usage, mandate_data is required

brazen solstice
#

Interesting... Do you have a Request ID for that?

vital flower
#

req_jt6esUZlvoWbwS

brazen solstice
#

Can you try not passing setup_future_usage and see what happens?

#

If this is for a subscription upgrade, and you already have a saved payment method, then you don't need to set it up for future usage again, right?

vital flower
#

I am not explicitly passing that

#

I thought that was always inherited on subscription operations

brazen solstice
#

Ah, duh. Yeah, this is weird. Do you get the same error when attempting payment on the Invoice, rather than the Payment Intent?

#

Also, why are attempting confirmation on the client in this case? If you have the saved Payment Method, why not just make the server-side call to capture the payment?

vital flower
#

It would have already attempted payment on the invoice, and then I need to attempt payment on the paymentIntent because the payment on the invoice ended up requiring confirmation

#

Since I'm using the payment behavior "allow_incomplete" Stripe should have attempted payment behind the scenes on the newly created invoice. It looks like that payment failed, because it returns a payment intent that "requires_confirmation".

brazen solstice
#

Got it, is the customer on-session at this point?