Error authenticating with 3DS Server

I’m creating my own api integration to process payments, but im production I get the error:
{ category: “INVALID_REQUEST_ERROR”, code: “BAD_REQUEST”, detail: “Error authenticating with 3DS Server” }

When I try to follow the guides to SCA, I fail at implementing the rule in the Risk Management center as the option is grayed out with a banner up the top saying “Update your APIs to enable 3D Secure rules.”

The only thing I’ve been able to find on this topic was in this article: Strong Customer Authentication in the enable SCA section where it said verifyBuyer needed to be called, but that’s depreciated (and my previous implementation used that to no effect.) so I’m wondering what the up do date solution is?

I’m using the current tokenize with no verifyBuyer payment processing flow, so I’m wondering what i need to update?
The only thing i can think of is the link I’m using to get the web sdk; "
https://web.squarecdn.com/v1/square.js" but when i try to use v2 it says 403 and i can’t find any mention of this anywhere.

So what to i need to update in my api to make the 3d secure rule not greyed out and remove the banner?

I am using a real debit card for this, so its not that.

Thanks for any help Bryan!!

:waving_hand: I’m Square Dev AI, here to help answer your question!
Based on the information you’ve provided, the following documentation will help answer your question:

https://developer.squareup.com/docs/sca-overview-web

Additional Documentation

Strong Customer Authentication
Verify a Buyer
Square Developer

If this documentation helped you find a solution, please check the box indicating that this reply solves the problem.
Otherwise one of our Developer Advocates will provide additional assistance shortly.

I did link to that in my question, but the problem is it dosn’t have the answer I’m looking for! :slightly_smiling_face:

Are you using our new flow where you pass the verification details in the tokenize() method. For example:

  // New payment flow
      async function tokenize(paymentMethod) {
        const verificationDetails = {
          amount: '1.00',
          billingContact: {
            givenName: 'John',
            familyName: 'Doe',
            email: '[email protected]',
            phone: '3214563987',
            addressLines: ['123 Main Street', 'Apartment 1'],
            city: 'London',
            state: 'LND',
            countryCode: 'GB',
          },
          currencyCode: 'GBP',
          intent: 'CHARGE',
          customerInitiated: true,
          sellerKeyedIn: false,
        };
        const tokenResult = await paymentMethod.tokenize(verificationDetails);
        if (tokenResult.status === 'OK') {
          return tokenResult.token;
        } else {
          let errorMessage = `Tokenization failed with status: ${tokenResult.status}`;
          if (tokenResult.errors) {
            errorMessage += ` and errors: ${JSON.stringify(
              tokenResult.errors,
            )}`;
          }

          throw new Error(errorMessage);
        }
      }

:slight_smile:

Thanks Bryan,

yes I am! [:slight_smile:]

This nearly identical to what I have, except I pass variables to tokanize, and I only pass name and email to billing contact as the user arrives at a place to collect the services for my app.

Is there anyway you can enable 3d secure on my account please?

thanks for your continued help! [:slight_smile:]

J

Yup, as mentioned here. :slight_smile:

Do you have any other ideas what it may be?

Is it possible for you to enable 3d secure on my account? my AppID is sq0idp-e9zPkxIt6VeRRfqfOgOIEw.

Your time and assistance is greatly appreciated.

Thanks!

This issue is still open and any help is greatly appreciated, @josh-square

Our works perfectly in development, but fails in production due to our account not being allowed to use 3d secure.

I’ve confirmed with Bryan that everything we’re using is up to date but still we cannot enable 3d secure on our account and so it fails in production.

Thanks for any and all help! :slightly_smiling_face:

What’s the exact error message your getting? If your getting an error when trying to verify have you asked the customer to contact their bank? :slight_smile:

Hi Bryan,
As stated above the error is:

:slight_smile:
Thanks

Is your page hosted? If so what’s the URL? :slight_smile: