Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

threeDSecure cardinal-sdk-setup-timeout #702

Closed
fape opened this issue Nov 6, 2023 · 6 comments
Closed

threeDSecure cardinal-sdk-setup-timeout #702

fape opened this issue Nov 6, 2023 · 6 comments

Comments

@fape
Copy link

fape commented Nov 6, 2023

General information

  • SDK version: 3.94.0
  • Environment: Production
  • Browser and OS: Chrome 118 windows 11

Issue description

We'd like to user threeDSecure payment on our web site. But sometimes when we inicialize the threeDSecure flow the payment flow is stuck at a loader screen. The last braintree call is an analytics call to with kind: web.three-d-secure.v1-fallback.cardinal-sdk-setup-timeout

I dug a little in the braintree-web source code and in the cardinal integration guide:

Based on cardinal's documentation: https://cardinaldocs.atlassian.net/wiki/spaces/CC/pages/131806/Getting+Started#GettingStarted-Step5%3AInitializeIt
The call flow should be the following:

  1. Cardinal.configure
  2. set callback for 'payments.setupComplete'
  3. set callback for 'payments.validated'
  4. Cardinal.setup

But in songbird.js#_configureCardinalSdk the currenly implemented flow is:

  1. set callback for 'payments.setupComplete'
  2. Cardinal.configure
  3. Cardinal.setup
  4. set callback for 'payments.validated'

And also from cardinals documentation: Cardinal.setup does not catch errors. Use the payments.validated event mentioned in Step 4 instead.
Currently error handing is coded in to 'payments.validated' callback

So if setup is failing very quickly we do not get back any error to BT nor our frontend.

Would you please change the order of the cardinal calls?

@jplukarski
Copy link
Contributor

Hello @fape , thanks for bringing this to our attention. We have not had any reports about this being an issue so we'll take a look at our setup. For internal tracking -> 27554

In the meantime, can you clarify the frequency when this happens? You mention it happens "sometimes." About how often does this happen? Is it unpredictable? Are you able to reproduce this issue consistently or does it pop up unexpectedly? What do you do to resolve this issue? Does just refreshing the page help you get past this issue?

Thanks.

@jplukarski
Copy link
Contributor

@fape , after taking another look at the documentation you linked, we noticed that that page has been archived, indicating it is outdated or no-longer-relevant piece of content.

In order to further help you, can you clarify the questions above, as well as provide steps to reproduce; we are not able to reproduce this error on our end so will need these steps so we can see if it is an issue with our integration.

You can also reach out to our support team if you want to move this conversation off of a public GitHub content.

Thanks.

@fape
Copy link
Author

fape commented Nov 10, 2023

Thank you.

Currently we are investigating some "stuck at loader" issue reported by our customers. Probably we faced #655 too. We are implementing the workaround from #645 too.

Unfortunately we can not find any steps to constanty reproducate this issue on sandbox.

Can you point us to the latest cardinal/songbird.js integration documentation?

@jplukarski
Copy link
Contributor

Hey @fape , thanks for getting back to us. Since you cannot reproduce this issue consistently, it’s likely we will have to reach out to Cardinal to see if there is an issue on their end. We will need you to add logging to collect the following information from the customers that experience this so that we can send this to Cardinal:
- IP addresses
- Geolocation
- User Agent

For additional logging, you can also include logging: {level: ‘on’} in your cardinalSDKConfig object in your threeDSecure.create() call.

Once you’ve collected this information you can reach out to our Technical Support team and they will work with Cardinal to see if they can pinpoint the issue.

@fape
Copy link
Author

fape commented Dec 6, 2023

@hollabaq86 Could you please check this too? Maybe #704 is related.

@hollabaq86
Copy link

@jplukarski is right, we really do need you to contact Technical Support with the details they mentioned. Since there are several moving parts to 3D Secure that include us, CardinalCommerce, and the customer's issuing bank or a third party Access Control Service(ACS) provider, it's incredibly difficult to track down root causes without more info from you when it happens.

I'm going to lock down this conversation since there are genuinely no other actions we can take at this time.

@braintree braintree locked as resolved and limited conversation to collaborators Dec 8, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants