-
Notifications
You must be signed in to change notification settings - Fork 134
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.verifyCard(): promise is always pending #655
Comments
We tried to rollback the libs/dropin but the result is the same. We also tried to provide a callback function and wrap the verifyCard in a Promise and using the resolve() reject() to continue our flow. But also in this case the callback is never called. return new Promise((resolve, reject) => {
instance.verifyCard(
{
onLookupComplete: function (data, next) {
console.log("onLookupComplete", data);
next();
},
amount: dsData.amount,
nonce: dsData.nonce,
bin: dsData.bin,
email: dsData.email,
},
function (err, payload) {
console.log("callback", { err, payload });
if (err) {
return reject(err);
}
return resolve(payload);
}
);
}) |
Can you clarify for me what version/SDK you're using? Your issue snippet says dropin and a dropin version, but this is the underlying SDK and your snippets show using As for the problem itself, are you getting any console errors or network failures when you experience this behavior? If the flow is otherwise going fine from a user perspective (in the popup), I'm trying to see where the break down my be happening. |
The only workaround I've found is to do the same I'm doing with the dropin. Even so sometime it still fails, but its a lot rare. |
We are using the dependecy from the dropin but importing the
No no error in console or failure in the network, it simply get stuck when the popup closes I excpect to have the callback called but it is never. I've tried with both Promises or classi callback function. Same result: code is never executed. |
@cgdibble I have same issue, when user cancel threeD popup, and then payment again. Then user submitted correctly but function verifyCard is never executed. |
We are just running into this issue now with the March update to 3DS and the requirement of 3DS 2.2. We were on braintreeweb 3.99.0 when we noticed it start happening, tried upgrading to 3.101.0, but the issue persisted. To be specific, the issue happens after calling
We have not observed it happening if the 3DS prompt closes from the user successfully confirming. There is no way to detect a difference between the modal still being open and waiting for user input or this issue happening, so we can't set a timeout to check if the result of For us it only happens the very first time a user is setting up their payment with us and if it's also their first time visiting our app. It doesn't even happen every time at that (but some of our developers can make it happen every time, so it is quite possibly impacted by browser/env). Reloading the page has a subsequent 100% success rate, and changing the credit card later is also 100% success. Since it's very unlikely with our app that a user signs up and also makes a payment on their first visit, the issue is nearly non-existent in production. |
General information
Issue description
we have the following code:
In the logs I only get the following messages:
The modal open correctly and it closes correctly once I confirm in the app.
But none of the code seems to execute. The promise is pending indefinetly.
The text was updated successfully, but these errors were encountered: