#sudhanshu
1 messages · Page 1 of 1 (latest)
Please elaborate on which flow you are following, what do you expect vs. what actually happened
we are using display 3d secure flow code for our react native app , now on testing it with different test cards , the payment is not happening successfully
what different test card you used?
What is not happenning successfully? Any screenshot? or error message?
these are the test card we are using , is it not happening because it is test mode?
we are in test mode not in live
there?
hello?
we have tried all the cards
And which integration flow are you using?
react native
payment /More payment scenarios/Card authentication and 3D Secure
Can you paste the URL here?
Or any Id like PaymentIntent Id pi_xxx or request id req_xxx
this is what we are following
there?
test mode or live?
Test mode, the transaction you just tried
Btw did you use PaymentSheet here? https://stripe.com/docs/payments/accept-a-payment?platform=react-native&ui=payment-sheet
yes we have used the paymentsheet , pi_3NetoNHBzVLseUqK1epPPRsM
Okie so this PI you created on backend via PHP, correct?
Remove the confirm: true parameter
It won't try to confirm on backend anymore. That way it will leave for PaymentSheet to confirm it on frontend, and PaymentSheet should be able to handle 3DS
okay so in this case radar rules will also be active right?
in case if 3ds not able to detect the fraud , radar rule will come into play right?
Radar rules you set on your Dashboard, will always active. Radar will control Stripe to request 3DS on specific requests or not
on removing this confirm: true i am getting stripe exception error
Can you post the full error here?
"Your card was declined"
'amount' => ($data['amount']+ 3) * 100 + ($data['amount']*100)*0.03,
'currency' => 'usd',
'customer' => $customer,
'payment_method' => $data['payment_method_id'],
'confirm' => false,
this is my payment intent
creation request
Okie interesting, did you set any customer radar rule?
Can you provide the newest request id
surprisingly the failed transaction / declined transaction is not showing on dashboard failed section (test mode)
the radar rule is on live mode not on test mode
You can find your request log at https://dashboard.stripe.com/test/logs
Sign in to the Stripe Dashboard to manage business payments and operations in your account. Manage payments and refunds, respond to disputes and more.
sorry but your answers are not able to fix our errors , if possible can you transfer this request to some one else?
Hey, sorry but we need to see the request id first, to investigate further on what happened
Can you find the request id from Dashboard log above?
req_SqbibTjuSf9rL4
Okie so this is a SetupIntent Confirmation call, generated from your React Native integration. It returns a block of next_action which instructs the SDK to open an 3DS page
What did you see on your mobile screen?
your card was declined as an error message
Hmm I don't see any error message on that specific SetupIntent seti_1Nev3zHBzVLseUqK3WAOBdR9
Can you share the client secret first few character that you used in PaymentSheet?
It's just Test mode data so it's ok to share
sk_test_N6dR
No
I mean the client secret you passed into the PaymentSheet
not your backend secret key
That doesn't sound right. The request you gaved me req_SqbibTjuSf9rL4 is a SetupIntent, not PaymentIntent
Sign in to the Stripe Dashboard to manage business payments and operations in your account. Manage payments and refunds, respond to disputes and more.
what exactly you want ? paymentIntent , request id , setupintent what?
Sorry I think you may have mixed up a few things. Can you share the full PaymentIntent Id you are using? the full Id for pi_3Nev8PHBzVLs
that is not getting recorded in dashboard failed section
okay leave this can you help me in setting up 3d secure payment flow?
we have tried to follow a documentation
but in that when we are using a test card 4000000000003220 to make a payment its getting failed with message 'your card was declined' though the card set up was done seccessfully
pi_3NevWwHBzVLseUqK1Zw9RIjL this is the payment intent for the latest failed transaction
The correct Doc to follow is https://stripe.com/docs/payments/accept-a-payment?platform=react-native and yes 3220 should work with it. When you follow it you have step 3 "Add an endpoint" to create a PaymentIntent on backend.
When you create a PaymentIntent on backend, don't pass confirm: true. I still see confirm: true in your request to create pi_3NevWwHBzVLseUqK1Zw9RIjL: https://dashboard.stripe.com/test/logs/req_QlfOdab0ROLXpL
not working even without confirm: true
Can you share a PaymentIntent without confirm: true?
okay wait
"pi_3NevcQHBzVLseUqK0YocIy7L"
this is the latest one without confirm:true
but i got the same error 'your card was declined'
and this transaction was not even logged in payments--> failed section of dashboard
https://dashboard.stripe.com/test/payments/pi_3NevcQHBzVLseUqK0YocIy7L here you can see it
Sign in to the Stripe Dashboard to manage business payments and operations in your account. Manage payments and refunds, respond to disputes and more.
It's just been created, but hasn't been confirmed
Did you present the PaymentSheet and push on Pay on ReactNative?
so the flow we are using is creating a payment method and passing that payment method inside a payment intent creation
hye is anyone there?
Ah I see.
Okie so that Payment Method came from a separated SetupIntent before
And that SetupIntent was confirmed with 3DS successfully.
yes so from a setup intent we are creating a customer id and passing that customer id to a payment intent
yes
Hmm I see, and when you creating PI again, with confirm=true, it declined right away
what version of the react native library are you using?
even without confirm=true it is declining but not for every card only for few cards -- 4000000000003220 and 4000000000003238
but mainly this is going to be cause you are passing a PaymentIntent in status:requires_confirmation to the SDK, which is not what it expects; it wants as PaymentIntent in status:requres_payment_method.
it also doesn't make sense to use a SetupIntent and then immediately a PaymentIntent, if that's what you're doing, you should just use a PaymentIntent directly.
our flow has to be like that, first we have to link a card for a customer using create payment method api then show him/her all the cards which are linked to the user then the user will select a card and make a payment
we are using 0.19.0 this version of library
that's quite old and I think that at some point we fixed an issue with the library where it only accepted a PaymentIntent in status:requires_payment_method.
In any case, always worth using the latest version when you have any issue.
then show him/her all the cards which are linked to the user then the user will select a card and make a payment
consider using the PaymentSheet, it already mostly does that. https://stripe.com/docs/payments/accept-a-payment?platform=react-native
we are using paymentsheet only
how come it is asking status:requires_payment_method when we are already passing payment_method in payment intent creation? and why is this only happening for these two cards(4000000000003220,4000000000003238) and not for others?
how come it is asking status:requires_payment_method when we are already passing payment_method in payment intent creation?
it's not, that wasn't what I was saying
anyway I can't say much more ,wev'e already had a three hour conversation. I'd suggest trying to upgrade to the latest version of the SDK and trying again and seeing if that helps. If it doesn't, write to https://support.stripe.com/?contact=true or come back to Discord another day with the full code of your app and backend so we could dig in!