Hi, we’re trying to enable 3DS for a US Square account. Risk Manager still shows “Update your APIs to enable 3D Secure rules,” and the 3DS action is disabled.
We use the production Web Payments SDK and API version 2026-09-16. Our card flow is:
card.tokenize({
amount: "1.00",
currencyCode: "USD",
intent: "CHARGE",
customerInitiated: true,
sellerKeyedIn: false,
billingContact: {
givenName, familyName, email,
addressLines, city, state, countryCode
}
})
The billingContact entries above are variable names, not customer data. The resulting token goes to CreatePayment as source_id, with the matching amount/currency and production location.
Our sandbox 3DS challenge works. A real $1 production payment also completed and was captured, with CVV_ACCEPTED, AVS_ACCEPTED, and NORMAL risk. No bank verification popup appeared, and verification_method/verification_results were absent from the Payment response. Refreshing Risk Manager afterward still left the 3DS action disabled.
Could someone from developer support trace that production attempt and confirm:
- Was 3DS authentication initiated? If so, what was its result? If not, why was it skipped?
- What exact application/location eligibility check is preventing us from enabling a 3DS rule?
- What specific code or configuration change is required, or does Square need to correct something on the account?
- How can we confirm whether this payment received 3DS authentication and any applicable fraud liability shift?
General support referred us here. We can provide the payment ID, application/location IDs, timestamp, and support case number privately to verified Square staff. Please let us know the appropriate private channel; we don’t want to post those identifiers or customer information publicly.
Thanks.