diff --git a/src/pages/TransactionDuplicate/Confirmation.tsx b/src/pages/TransactionDuplicate/Confirmation.tsx
index 7bb48ff9c77c..ec99d56ae95d 100644
--- a/src/pages/TransactionDuplicate/Confirmation.tsx
+++ b/src/pages/TransactionDuplicate/Confirmation.tsx
@@ -31,7 +31,6 @@ import {generateReportID} from '@src/libs/ReportUtils';
 import * as TransactionUtils from '@src/libs/TransactionUtils';
 import {getTransactionID} from '@src/libs/TransactionUtils';
 import ONYXKEYS from '@src/ONYXKEYS';
-import ROUTES from '@src/ROUTES';
 import type SCREENS from '@src/SCREENS';
 import type {Transaction} from '@src/types/onyx';
 import {isEmptyObject} from '@src/types/utils/EmptyObject';
@@ -41,12 +40,11 @@ function Confirmation() {
     const styles = useThemeStyles();
     const {translate} = useLocalize();
     const route = useRoute<PlatformStackRouteProp<TransactionDuplicateNavigatorParamList, typeof SCREENS.TRANSACTION_DUPLICATE.REVIEW>>();
-    const {threadReportID, backTo} = route.params;
     const currentUserPersonalDetails = useCurrentUserPersonalDetails();
     const [reviewDuplicates, reviewDuplicatesResult] = useOnyx(ONYXKEYS.REVIEW_DUPLICATES, {canBeMissing: true});
     const [duplicatedTransaction] = useOnyx(`${ONYXKEYS.COLLECTION.TRANSACTION}${getNonEmptyStringOnyxID(reviewDuplicates?.transactionID)}`, {canBeMissing: true});
     const newTransaction = useMemo(() => TransactionUtils.buildNewTransactionAfterReviewingDuplicates(reviewDuplicates, duplicatedTransaction), [duplicatedTransaction, reviewDuplicates]);
-    const transactionID = TransactionUtils.getTransactionID(threadReportID);
+    const transactionID = TransactionUtils.getTransactionID(route.params.threadReportID);
     const [allReports] = useOnyx(ONYXKEYS.COLLECTION.REPORT, {canBeMissing: false});
     const [transaction] = useOnyx(`${ONYXKEYS.COLLECTION.TRANSACTION}${getNonEmptyStringOnyxID(transactionID)}`, {canBeMissing: true});
     const [transactionViolations] = useOnyx(`${ONYXKEYS.COLLECTION.TRANSACTION_VIOLATIONS}${getNonEmptyStringOnyxID(transactionID)}`, {
@@ -60,8 +58,8 @@ function Confirmation() {
     const reviewDuplicatesReport = allReports?.[`${ONYXKEYS.COLLECTION.REPORT}${reviewDuplicates?.reportID}`];
     const [policyCategories] = useOnyx(`${ONYXKEYS.COLLECTION.POLICY_CATEGORIES}${getNonEmptyStringOnyxID(reviewDuplicatesReport?.policyID)}`, {canBeMissing: true});
     const compareResult = TransactionUtils.compareDuplicateTransactionFields(transaction, allDuplicates, reviewDuplicatesReport, undefined, policyCategories);
-    const {goBack} = useReviewDuplicatesNavigation(Object.keys(compareResult.change ?? {}), 'confirmation', threadReportID, backTo);
-    const [report, reportResult] = useOnyx(`${ONYXKEYS.COLLECTION.REPORT}${threadReportID}`, {canBeMissing: true});
+    const {goBack} = useReviewDuplicatesNavigation(Object.keys(compareResult.change ?? {}), 'confirmation', route.params.threadReportID, route.params.backTo);
+    const [report, reportResult] = useOnyx(`${ONYXKEYS.COLLECTION.REPORT}${route.params.threadReportID}`, {canBeMissing: true});
     const [iouReport] = useOnyx(`${ONYXKEYS.COLLECTION.REPORT}${newTransaction?.reportID}`, {canBeMissing: true});
     const [reportActions] = useOnyx(`${ONYXKEYS.COLLECTION.REPORT_ACTIONS}${newTransaction?.reportID}`, {canBeMissing: true});
     const reportAction = Object.values(reportActions ?? {}).find(
@@ -76,28 +74,19 @@ function Confirmation() {
     );
     const isReportOwner = iouReport?.ownerAccountID === currentUserPersonalDetails?.accountID;
 
-    const closeReviewDuplicates = useCallback(() => {
-        if (reviewDuplicates?.reportID) {
-            Navigation.setNavigationActionToMicrotaskQueue(() => {
-                Navigation.navigate(ROUTES.SEARCH_MONEY_REQUEST_REPORT.getRoute({reportID: reviewDuplicates.reportID}), {forceReplace: true});
-            });
-        }
-        Navigation.dismissModal();
-    }, [reviewDuplicates?.reportID]);
-
     const mergeDuplicates = useCallback(() => {
         const transactionThreadReportID = reportAction?.childReportID ?? generateReportID();
         if (!reportAction?.childReportID) {
             transactionsMergeParams.transactionThreadReportID = transactionThreadReportID;
         }
-        closeReviewDuplicates();
         IOU.mergeDuplicates(transactionsMergeParams);
-    }, [reportAction?.childReportID, transactionsMergeParams, closeReviewDuplicates]);
+        Navigation.dismissModal();
+    }, [reportAction?.childReportID, transactionsMergeParams]);
 
     const resolveDuplicates = useCallback(() => {
-        closeReviewDuplicates();
         IOU.resolveDuplicates(transactionsMergeParams);
-    }, [transactionsMergeParams, closeReviewDuplicates]);
+        Navigation.dismissModal();
+    }, [transactionsMergeParams]);
 
     const contextValue = useMemo(
         () => ({
diff --git a/tests/unit/TransactionDuplicateConfirmationTest.ts b/tests/unit/TransactionDuplicateConfirmationTest.ts
deleted file mode 100644
index 8e3cb5695fcd..000000000000
--- a/tests/unit/TransactionDuplicateConfirmationTest.ts
+++ /dev/null
@@ -1,150 +0,0 @@
-import Onyx from 'react-native-onyx';
-import Navigation from '@libs/Navigation/Navigation';
-import ONYXKEYS from '@src/ONYXKEYS';
-import ROUTES from '@src/ROUTES';
-import waitForBatchedUpdates from '../utils/waitForBatchedUpdates';
-
-jest.mock('@libs/Navigation/Navigation', () => ({
-    navigate: jest.fn(),
-    dismissModal: jest.fn(),
-    setNavigationActionToMicrotaskQueue: jest.fn((callback: () => void) => {
-        callback();
-    }),
-}));
-
-const mockedNavigation = Navigation as jest.Mocked<typeof Navigation>;
-
-describe('TransactionDuplicate Confirmation Navigation', () => {
-    beforeAll(() => {
-        Onyx.init({keys: ONYXKEYS});
-    });
-
-    beforeEach(async () => {
-        jest.clearAllMocks();
-        await Onyx.clear();
-    });
-
-    describe('closeReviewDuplicates behavior', () => {
-        it('should navigate to SEARCH_MONEY_REQUEST_REPORT when reportID exists before dismissing modal', async () => {
-            const reportID = 'testReportID123';
-
-            const closeReviewDuplicates = (reviewDuplicatesReportID: string | undefined) => {
-                if (reviewDuplicatesReportID) {
-                    Navigation.setNavigationActionToMicrotaskQueue(() => {
-                        Navigation.navigate(ROUTES.SEARCH_MONEY_REQUEST_REPORT.getRoute({reportID: reviewDuplicatesReportID}), {forceReplace: true});
-                    });
-                }
-                Navigation.dismissModal();
-            };
-
-            closeReviewDuplicates(reportID);
-            await waitForBatchedUpdates();
-
-            expect(mockedNavigation.setNavigationActionToMicrotaskQueue).toHaveBeenCalledTimes(1);
-            expect(mockedNavigation.navigate).toHaveBeenCalledWith(ROUTES.SEARCH_MONEY_REQUEST_REPORT.getRoute({reportID}), {forceReplace: true});
-            expect(mockedNavigation.dismissModal).toHaveBeenCalledTimes(1);
-        });
-
-        it('should only dismiss modal when reportID is undefined', async () => {
-            const closeReviewDuplicates = (reviewDuplicatesReportID: string | undefined) => {
-                if (reviewDuplicatesReportID) {
-                    Navigation.setNavigationActionToMicrotaskQueue(() => {
-                        Navigation.navigate(ROUTES.SEARCH_MONEY_REQUEST_REPORT.getRoute({reportID: reviewDuplicatesReportID}), {forceReplace: true});
-                    });
-                }
-                Navigation.dismissModal();
-            };
-
-            closeReviewDuplicates(undefined);
-            await waitForBatchedUpdates();
-
-            expect(mockedNavigation.setNavigationActionToMicrotaskQueue).not.toHaveBeenCalled();
-            expect(mockedNavigation.navigate).not.toHaveBeenCalled();
-            expect(mockedNavigation.dismissModal).toHaveBeenCalledTimes(1);
-        });
-
-        it('should only dismiss modal when reportID is empty string', async () => {
-            const closeReviewDuplicates = (reviewDuplicatesReportID: string | undefined) => {
-                if (reviewDuplicatesReportID) {
-                    Navigation.setNavigationActionToMicrotaskQueue(() => {
-                        Navigation.navigate(ROUTES.SEARCH_MONEY_REQUEST_REPORT.getRoute({reportID: reviewDuplicatesReportID}), {forceReplace: true});
-                    });
-                }
-                Navigation.dismissModal();
-            };
-
-            closeReviewDuplicates('');
-            await waitForBatchedUpdates();
-
-            expect(mockedNavigation.setNavigationActionToMicrotaskQueue).not.toHaveBeenCalled();
-            expect(mockedNavigation.navigate).not.toHaveBeenCalled();
-            expect(mockedNavigation.dismissModal).toHaveBeenCalledTimes(1);
-        });
-    });
-
-    describe('mergeDuplicates navigation flow', () => {
-        it('should close review duplicates before calling IOU.mergeDuplicates', async () => {
-            const reportID = 'testReportID456';
-            const callOrder: string[] = [];
-
-            const closeReviewDuplicates = (reviewDuplicatesReportID: string | undefined) => {
-                callOrder.push('closeReviewDuplicates');
-                if (reviewDuplicatesReportID) {
-                    Navigation.setNavigationActionToMicrotaskQueue(() => {
-                        Navigation.navigate(ROUTES.SEARCH_MONEY_REQUEST_REPORT.getRoute({reportID: reviewDuplicatesReportID}), {forceReplace: true});
-                    });
-                }
-                Navigation.dismissModal();
-            };
-
-            const mockMergeDuplicates = jest.fn(() => {
-                callOrder.push('mergeDuplicates');
-            });
-
-            const mergeDuplicates = () => {
-                closeReviewDuplicates(reportID);
-                mockMergeDuplicates();
-            };
-
-            mergeDuplicates();
-            await waitForBatchedUpdates();
-
-            expect(callOrder).toEqual(['closeReviewDuplicates', 'mergeDuplicates']);
-            expect(mockedNavigation.navigate).toHaveBeenCalledWith(ROUTES.SEARCH_MONEY_REQUEST_REPORT.getRoute({reportID}), {forceReplace: true});
-            expect(mockedNavigation.dismissModal).toHaveBeenCalledTimes(1);
-        });
-    });
-
-    describe('resolveDuplicates navigation flow', () => {
-        it('should close review duplicates before calling IOU.resolveDuplicates', async () => {
-            const reportID = 'testReportID789';
-            const callOrder: string[] = [];
-
-            const closeReviewDuplicates = (reviewDuplicatesReportID: string | undefined) => {
-                callOrder.push('closeReviewDuplicates');
-                if (reviewDuplicatesReportID) {
-                    Navigation.setNavigationActionToMicrotaskQueue(() => {
-                        Navigation.navigate(ROUTES.SEARCH_MONEY_REQUEST_REPORT.getRoute({reportID: reviewDuplicatesReportID}), {forceReplace: true});
-                    });
-                }
-                Navigation.dismissModal();
-            };
-
-            const mockResolveDuplicates = jest.fn(() => {
-                callOrder.push('resolveDuplicates');
-            });
-
-            const resolveDuplicates = () => {
-                closeReviewDuplicates(reportID);
-                mockResolveDuplicates();
-            };
-
-            resolveDuplicates();
-            await waitForBatchedUpdates();
-
-            expect(callOrder).toEqual(['closeReviewDuplicates', 'resolveDuplicates']);
-            expect(mockedNavigation.navigate).toHaveBeenCalledWith(ROUTES.SEARCH_MONEY_REQUEST_REPORT.getRoute({reportID}), {forceReplace: true});
-            expect(mockedNavigation.dismissModal).toHaveBeenCalledTimes(1);
-        });
-    });
-});
