From b9dddc50dcf3b8f79a573e5943d31b662235191a Mon Sep 17 00:00:00 2001 From: Kevin Brian Bader Date: Thu, 12 Mar 2026 17:26:41 -0700 Subject: [PATCH 1/3] fix: settlement frequency API call when value is not changed --- .../WorkspaceTravelInvoicingSettlementFrequencyPage.tsx | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/pages/workspace/travel/WorkspaceTravelInvoicingSettlementFrequencyPage.tsx b/src/pages/workspace/travel/WorkspaceTravelInvoicingSettlementFrequencyPage.tsx index e451084380c9e..735355fb14c2d 100644 --- a/src/pages/workspace/travel/WorkspaceTravelInvoicingSettlementFrequencyPage.tsx +++ b/src/pages/workspace/travel/WorkspaceTravelInvoicingSettlementFrequencyPage.tsx @@ -53,7 +53,9 @@ function WorkspaceTravelInvoicingSettlementFrequencyPage({route}: WorkspaceTrave })); const selectFrequency = (item: FrequencyItem) => { - updateTravelInvoiceSettlementFrequency(workspaceAccountID, item.value, travelSettings?.monthlySettlementDate ? new Date(travelSettings.monthlySettlementDate) : undefined); + if (item.value !== currentFrequency) { + updateTravelInvoiceSettlementFrequency(workspaceAccountID, item.value, travelSettings?.monthlySettlementDate ? new Date(travelSettings.monthlySettlementDate) : undefined); + } Navigation.goBack(); }; From bd93b3587d549f8b2bb4e0918051c5b28c851274 Mon Sep 17 00:00:00 2001 From: Kevin Brian Bader Date: Thu, 12 Mar 2026 18:22:49 -0700 Subject: [PATCH 2/3] fix: allow retry for failed settlement frequency updates --- Mobile-Expensify | 2 +- .../WorkspaceTravelInvoicingSettlementFrequencyPage.tsx | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/Mobile-Expensify b/Mobile-Expensify index 490c5378fb6b5..34c44ab9dc5e1 160000 --- a/Mobile-Expensify +++ b/Mobile-Expensify @@ -1 +1 @@ -Subproject commit 490c5378fb6b5ec4a1665bc77ecdc57bc454bdc8 +Subproject commit 34c44ab9dc5e18e9d06a6aea3ee64c65b9039366 diff --git a/src/pages/workspace/travel/WorkspaceTravelInvoicingSettlementFrequencyPage.tsx b/src/pages/workspace/travel/WorkspaceTravelInvoicingSettlementFrequencyPage.tsx index 735355fb14c2d..da4bac8346a61 100644 --- a/src/pages/workspace/travel/WorkspaceTravelInvoicingSettlementFrequencyPage.tsx +++ b/src/pages/workspace/travel/WorkspaceTravelInvoicingSettlementFrequencyPage.tsx @@ -12,12 +12,14 @@ import useThemeStyles from '@hooks/useThemeStyles'; import useWorkspaceAccountID from '@hooks/useWorkspaceAccountID'; import {updateTravelInvoiceSettlementFrequency} from '@libs/actions/TravelInvoicing'; import {getCardSettings} from '@libs/CardUtils'; +import {getLatestErrorField} from '@libs/ErrorUtils'; import Navigation from '@libs/Navigation/Navigation'; import type {PlatformStackScreenProps} from '@libs/Navigation/PlatformStackNavigation/types'; import type {SettingsNavigatorParamList} from '@libs/Navigation/types'; import {getTravelInvoicingCardSettingsKey, getTravelSettlementFrequency} from '@libs/TravelInvoicingUtils'; import CONST from '@src/CONST'; import type SCREENS from '@src/SCREENS'; +import {isEmptyValueObject} from '@src/types/utils/EmptyObject'; type WorkspaceTravelInvoicingSettlementFrequencyPageProps = PlatformStackScreenProps; @@ -36,6 +38,9 @@ function WorkspaceTravelInvoicingSettlementFrequencyPage({route}: WorkspaceTrave const currentFrequency = getTravelSettlementFrequency(travelSettings); const frequencies = [CONST.EXPENSIFY_CARD.FREQUENCY_SETTING.MONTHLY, CONST.EXPENSIFY_CARD.FREQUENCY_SETTING.DAILY]; + const monthlySettlementDateError = getLatestErrorField(travelSettings, CONST.TRAVEL.MONTHLY_SETTLEMENT_DATE); + const hasFrequencyError = !isEmptyValueObject(monthlySettlementDateError); + function getSettlementFrequencyLabel(frequency: ValueOf) { if (frequency === CONST.EXPENSIFY_CARD.FREQUENCY_SETTING.MONTHLY) { return translate('workspace.common.frequency.monthly'); @@ -53,7 +58,7 @@ function WorkspaceTravelInvoicingSettlementFrequencyPage({route}: WorkspaceTrave })); const selectFrequency = (item: FrequencyItem) => { - if (item.value !== currentFrequency) { + if (item.value !== currentFrequency || hasFrequencyError) { updateTravelInvoiceSettlementFrequency(workspaceAccountID, item.value, travelSettings?.monthlySettlementDate ? new Date(travelSettings.monthlySettlementDate) : undefined); } Navigation.goBack(); From 87d905762a1fc467d6e349e691aa2e33b1b3cfcc Mon Sep 17 00:00:00 2001 From: Kevin Brian Bader Date: Thu, 12 Mar 2026 18:24:34 -0700 Subject: [PATCH 3/3] chore: submodule sync --- Mobile-Expensify | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Mobile-Expensify b/Mobile-Expensify index 34c44ab9dc5e1..490c5378fb6b5 160000 --- a/Mobile-Expensify +++ b/Mobile-Expensify @@ -1 +1 @@ -Subproject commit 34c44ab9dc5e18e9d06a6aea3ee64c65b9039366 +Subproject commit 490c5378fb6b5ec4a1665bc77ecdc57bc454bdc8