#sudhanshu

1 messages · Page 1 of 1 (latest)

rotund cosmosBOT
short fable
#

Please elaborate on which flow you are following, what do you expect vs. what actually happened

stable fossil
#

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

short fable
#

what different test card you used?

#

What is not happenning successfully? Any screenshot? or error message?

stable fossil
#

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?

short fable
#

Okie which card exactly?

#

3220?

stable fossil
#

we have tried all the cards

short fable
#

And which integration flow are you using?

stable fossil
#

react native

short fable
#

Yes, but which Doc exactly?

#

PaymentSheet?

stable fossil
#

payment /More payment scenarios/Card authentication and 3D Secure

short fable
#

Can you paste the URL here?

#

Or any Id like PaymentIntent Id pi_xxx or request id req_xxx

stable fossil
#

this is what we are following

#

there?

short fable
#

Sorry looking

#

Okie do you have any PaymentIntent Id? pi_xxx

stable fossil
#

test mode or live?

short fable
#

Test mode, the transaction you just tried

stable fossil
#

yes we have used the paymentsheet , pi_3NetoNHBzVLseUqK1epPPRsM

short fable
#

Okie so this PI you created on backend via PHP, correct?

#

Remove the confirm: true parameter

stable fossil
#

okay what will it do?

#

if we remove ut?

#

*it?

short fable
#

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

stable fossil
#

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?

short fable
#

Radar rules you set on your Dashboard, will always active. Radar will control Stripe to request 3DS on specific requests or not

stable fossil
#

on removing this confirm: true i am getting stripe exception error

short fable
#

Can you post the full error here?

stable fossil
#

"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

short fable
#

Okie interesting, did you set any customer radar rule?

#

Can you provide the newest request id

stable fossil
#

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

short fable
stable fossil
#

sorry but your answers are not able to fix our errors , if possible can you transfer this request to some one else?

short fable
#

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?

stable fossil
#

req_SqbibTjuSf9rL4

short fable
#

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?

stable fossil
#

your card was declined as an error message

short fable
#

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

stable fossil
#

sk_test_N6dR

short fable
#

No

#

I mean the client secret you passed into the PaymentSheet

#

not your backend secret key

stable fossil
#

pi_3Nev8PHBzVLs

#

there?

short fable
#

That doesn't sound right. The request you gaved me req_SqbibTjuSf9rL4 is a SetupIntent, not PaymentIntent

stable fossil
#

what exactly you want ? paymentIntent , request id , setupintent what?

short fable
#

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

stable fossil
#

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

short fable
#

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

Securely accept payments online.

stable fossil
#

not working even without confirm: true

short fable
#

Can you share a PaymentIntent without confirm: true?

stable fossil
#

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

short fable
#

It's just been created, but hasn't been confirmed

#

Did you present the PaymentSheet and push on Pay on ReactNative?

rotund cosmosBOT
stable fossil
#

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?

short fable
#

Ah I see.

#

Okie so that Payment Method came from a separated SetupIntent before

#

And that SetupIntent was confirmed with 3DS successfully.

stable fossil
#

yes so from a setup intent we are creating a customer id and passing that customer id to a payment intent

short fable
#

Hmm I see, and when you creating PI again, with confirm=true, it declined right away

pliant sandal
#

what version of the react native library are you using?

stable fossil
#

even without confirm=true it is declining but not for every card only for few cards -- 4000000000003220 and 4000000000003238

pliant sandal
#

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.

stable fossil
#

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

pliant sandal
# stable fossil 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

stable fossil
#

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?

pliant sandal
#

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!

stable fossil
#

i have a full code

#

want to see it now?