From 261e18e0c5c67fbeef06d160e2134aafb4abd504 Mon Sep 17 00:00:00 2001 From: Yifan Goh Date: Fri, 13 Mar 2026 15:56:30 +0800 Subject: [PATCH] fix: use connectPolicyToNetSuite for unverified connections with auth errors When a first-time NetSuite connection fails with incorrect tokens, the connection is never fully initialized (unverified). On retry with correct tokens, we should use connectPolicyToNetSuite (full init) instead of updateNetSuiteTokens (which only works for already-initialized connections). Fixes #85196 Co-Authored-By: Claude Opus 4.6 --- .../NetSuiteTokenInput/subPages/NetSuiteTokenInputForm.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pages/workspace/accounting/netsuite/NetSuiteTokenInput/subPages/NetSuiteTokenInputForm.tsx b/src/pages/workspace/accounting/netsuite/NetSuiteTokenInput/subPages/NetSuiteTokenInputForm.tsx index 8b34d85277eb..671722aa583e 100644 --- a/src/pages/workspace/accounting/netsuite/NetSuiteTokenInput/subPages/NetSuiteTokenInputForm.tsx +++ b/src/pages/workspace/accounting/netsuite/NetSuiteTokenInput/subPages/NetSuiteTokenInputForm.tsx @@ -10,7 +10,7 @@ import useAutoFocusInput from '@hooks/useAutoFocusInput'; import useLocalize from '@hooks/useLocalize'; import usePolicy from '@hooks/usePolicy'; import useThemeStyles from '@hooks/useThemeStyles'; -import {isAuthenticationError} from '@libs/actions/connections'; +import {isAuthenticationError, isConnectionUnverified} from '@libs/actions/connections'; import {connectPolicyToNetSuite, updateNetSuiteTokens} from '@libs/actions/connections/NetSuiteCommands'; import {isMobileSafari} from '@libs/Browser'; import {addErrorMessage} from '@libs/ErrorUtils'; @@ -49,7 +49,7 @@ function NetSuiteTokenInputForm({onNext, policyID}: CustomSubPageTokenInputProps return; } - if (isAuthenticationError(policy, CONST.POLICY.CONNECTIONS.NAME.NETSUITE)) { + if (isAuthenticationError(policy, CONST.POLICY.CONNECTIONS.NAME.NETSUITE) && !isConnectionUnverified(policy, CONST.POLICY.CONNECTIONS.NAME.NETSUITE)) { updateNetSuiteTokens(policyID, formValues); } else { connectPolicyToNetSuite(policyID, formValues);