9.4.52-11
Expensify/App9.4.52-11Aug 12, 2026by github-actions[bot]
AI Summary
This release focuses on removing Onyx.connect() for the NETWORK key and implementing NetSuite OAuth support. It also introduces an insight-switcher dropdown for charts and fixes several iOS crashes and UI alignment issues.
Key Highlights
- Implement support for the NetSuite OAuth connect flow
- Remove Onyx.connect() for the key: ONYXKEYS.NETWORK
- Add insight-switcher dropdown to the chart slot in Home
- Fix iOS crash when returning from Settings after enabling Contacts access
- Enable multiline GL account names in NetSuite AP Approval Account list
New Features
- NetSuite OAuth integration
- Insight switcher dropdown
- Multiline GL account names in NetSuite
Full Release Notes
## What's Changed * Part 3: Remove Onyx.connect() for the key: ONYXKEYS.NETWORK in src/libs/ReportActionsUtils.ts by @thelullabyy in https://github.com/Expensify/App/pull/95776 * [NoQA] chore: Move `react-native-nitro-fetch` patch to correct subfolder by @chrispader in https://github.com/Expensify/App/pull/97772 * [NoQA] Support name-based agent emails by @ShridharGoel in https://github.com/Expensify/App/pull/97895 * [No QA] Docs: improve help-site discoverability (out-of-pocket keywords, Apple/Google Pay troubleshooting, member-onboarding synonyms) by @MelvinBot in https://github.com/Expensify/App/pull/97419 * Allow the workspace currency selector to open from the upgrade step and travel confirmation by @wildan-m in https://github.com/Expensify/App/pull/97543 * [No QA] Update ChatGPT MCP connection doc for official connector directory by @marcaaron in https://github.com/Expensify/App/pull/97139 * Implement support for the NetSuite OAuth connect flow by @akinwale in https://github.com/Expensify/App/pull/96677 * fix: allow FFA-only Certinia company selection by @ShridharGoel in https://github.com/Expensify/App/pull/96995 * Fix company cards bulk actions menu alignment by @KJ21-ENG in https://github.com/Expensify/App/pull/97405 * refactor: align expense preview card metadata line with mobile row styling by @Krishna2323 in https://github.com/Expensify/App/pull/96942 * Apply the sign-in response on arrival by @adhorodyski in https://github.com/Expensify/App/pull/97690 * Bump react-native-onyx to 3.0.94 by @TMisiukiewicz in https://github.com/Expensify/App/pull/96853 * [No QA] Remove copy for not yet released functionality from help doc by @NikkiWines in https://github.com/Expensify/App/pull/97986 * [No QA] fix: force own transaction for inbox tab navigation span by @BartekObudzinski in https://github.com/Expensify/App/pull/97966 * [CP Staging] Revert "Allow moving all matching expenses to a report from Search" by @arosiclair in https://github.com/Expensify/App/pull/97989 * [No QA] Update help docs for Release 1: Automatic report reassignment on workflow changes by @MelvinBot in https://github.com/Expensify/App/pull/97799 * remove unneccesary custom types from translations batch15 by @jakubstec in https://github.com/Expensify/App/pull/96605 * [Payment due @DylanDylann] Improve shipment error handling by @heekinho in https://github.com/Expensify/App/pull/97252 * Fix - Add react-native-live-markdown to the Custom Agent Instructions input by @FitseTLT in https://github.com/Expensify/App/pull/97876 * [No QA] Add support for consuming React Native artifacts on iOS by @mateuuszzzzz in https://github.com/Expensify/App/pull/96293 * Migrate Workspace Avatar usages by @jmusial in https://github.com/Expensify/App/pull/97465 * Fixed locale specific polyfills by installing it in IntlStore by @shubham1206agra in https://github.com/Expensify/App/pull/97786 * Fix Switch button tooltip alignment by @MelvinBot in https://github.com/Expensify/App/pull/97688 * [No QA] Docs updates for E/A#96065 interactive Concierge spend charts by @MelvinBot in https://github.com/Expensify/App/pull/97738 * Standardize Expense Report and Expense header with predictable button placement and carousel counter by @thelullabyy in https://github.com/Expensify/App/pull/97005 * Add DualEntry integration by @s77rt in https://github.com/Expensify/App/pull/97373 * Remove Onyx.connect() for the key: ONYXKEYS.PERSONAL_DETAILS_LIST in src/libs/ReportNameUtils.ts by @hoangzinh in https://github.com/Expensify/App/pull/97785 * Pass hasReportActions to openReport (p5) by @bernhardoj in https://github.com/Expensify/App/pull/96866 * Preserve Search context when opening trip previews by @marufsharifi in https://github.com/Expensify/App/pull/96283 * fix (batch 2): isNewManualExpenseFlowEnabled beta flag regressions by @thelullabyy in https://github.com/Expensify/App/pull/97264 * Fix report history showing the workspace's current bank account instead of the reimbursement's actual bank account by @x-dev90 in https://github.com/Expensify/App/pull/97707 * [No QA] - Remove some dead sidebarLinkActive styles by @jmusial in https://github.com/Expensify/App/pull/98037 * Refactor: migrate convertToDisplayString to useCurrencyListActions hook (part 16) by @shubham1206agra in https://github.com/Expensify/App/pull/97892 * Add insight-switcher dropdown to the chart slot in Home by @mhawryluk in https://github.com/Expensify/App/pull/96625 * [No QA] fix: report warm inbox tab navigations correctly on web by @BartekObudzinski in https://github.com/Expensify/App/pull/98022 * [No QA] Remove infinite-skeleton Sentry span tracking by @TMisiukiewicz in https://github.com/Expensify/App/pull/98034 * Fix iOS crash when returning from Settings after enabling Contacts access by @MelvinBot in https://github.com/Expensify/App/pull/97992 * Replace usage of getPersonalDetailByEmail in delegate flow by @bernhardoj in https://github.com/Expensify/App/pull/96860 * Fix company cards import crash by transposing spreadsheet data densely by @yusufdeveloper2903 in https://github.com/Expensify/App/pull/97573 * fix: Block raw HEIC upload when conversion fails by @annaweber830 in https://github.com/Expensify/App/pull/96024 * Fix stale split highlights when splitting from the Spend page by @aswin-s in https://github.com/Expensify/App/pull/97520 * Only show user from selected workspace filter for From/To filter by @bernhardoj in https://github.com/Expensify/App/pull/97516 * Use the room name for the contextual search suggestion by @mukhrr in https://github.com/Expensify/App/pull/96448 * Save offline receipts on sign out by @rinej in https://github.com/Expensify/App/pull/97562 * Migrate Button to ButtonComposed (batch 6) text-only styled — rest by @mikolajpochec in https://github.com/Expensify/App/pull/97402 * [Insights: Violations]: Expanding group & Suggested search by @nkdengineer in https://github.com/Expensify/App/pull/97067 * Fix APP-HNA: prevent use-after-free in Fabric findShadowNodeByTag focus traversal by @MelvinBot in https://github.com/Expensify/App/pull/97496 * fix: backfill report actions when the newest page has none visible by @BartekObudzinski in https://github.com/Expensify/App/pull/97689 * Migrate Button to ButtonComposed (batch 7) by @mikolajpochec in https://github.com/Expensify/App/pull/96731 * Hoist search row violations computation out of per-row hook by @TMisiukiewicz in https://github.com/Expensify/App/pull/97867 * Perf: use indexed derived value in useReportTransactions by @TMisiukiewicz in https://github.com/Expensify/App/pull/97965 * fix: Show IES details on upgrade page by @ShridharGoel in https://github.com/Expensify/App/pull/97931 * Unify distance display to 2 decimal places by @GCyganek in https://github.com/Expensify/App/pull/97862 * fix: disable enable personal karma on native by @nkdengineer in https://github.com/Expensify/App/pull/97177 * ReportActionAvatars -> UserAvatar for single avatars migration by @jmusial in https://github.com/Expensify/App/pull/94906 * Refactor: remove deprecatedReportsTransactions in hasNonReimbursableTransactions(Part 1) by @linhvovan29546 in https://github.com/Expensify/App/pull/94806 * [No QA] Add advance-vs-stall telemetry to reconnect requests and alert on the older loop-breaker by @adhorodyski in https://github.com/Expensify/App/pull/97585 * Optimistically add message for distance rate changes by @Gonals in https://github.com/Expensify/App/pull/97517 * [NoQA] fix typecheck by @Valforte in https://github.com/Expensify/App/pull/98072 * Fix - Merge expenses prompts for attendee selection even when both expenses have the same attendee by @FitseTLT in https://github.com/Expensify/App/pull/96526 * Fix missing padding on workspace avatar in menu item by @jmusial in https://github.com/Expensify/App/pull/98041 * [No QA] Show upgrade modal if user has no eliglbe policy for moving expenses by @s77rt in https://github.com/Expensify/App/pull/97280 * fix: persist search response code so an invalid query keeps hiding Retry by @BartekObudzinski in https://github.com/Expensify/App/pull/97674 * [No QA] [Payment due @truph01] Docs updates for E/A#96947 add Download receipts option to reports by @MelvinBot in https://github.com/Expensify/App/pull/97740 * [No QA] Skip write-wait for home screen search requests that don't need OpenApp data by @TMisiukiewicz in https://github.com/Expensify/App/pull/97669 * Add a `Time sensitive` to-do for employees with missing deposit accounts by @sharabai in https://github.com/Expensify/App/pull/96623 * Fix: show all categories in Search filter when workspace filter is cleared by @MelvinBot in https://github.com/Expensify/App/pull/98070 * Keep currency for CSV-imported personal cards by @Gonals in https://github.com/Expensify/App/pull/97968 * [Payment due @gijoe0295] fix: surface empty draft reports in Submit to-do bucket by @c3024 in https://github.com/Expensify/App/pull/97312 * [Payment due @marufsharifi] [Commuter Mileage Exclusion] [R1] Display and enforce fixed distance exclusions by @fedirjh in https://github.com/Expensify/App/pull/93848 * Share extension: pre-mount destination report and create expense before reveal transition by @jmgraa in https://github.com/Expensify/App/pull/97242 * Skip SearchForTodos when the queue drops the reconnect as a duplicate by @adhorodyski in https://github.com/Expensify/App/pull/98007 * fix: keyboard focus lost after Back on Enter-activated rows by @TaduJR in https://github.com/Expensify/App/pull/97306 * fix: open country selector RHP when adding a personal card after upgrade by @dilshodmackbook-sketch in https://github.com/Expensify/App/pull/96752 * Dedupe getTransactionsForReport lookups in Search row Action column by @TMisiukiewicz in https://github.com/Expensify/App/pull/97877 * fix: Invoice created via duplicate workspace shows error by @lorretheboy in https://github.com/Expensify/App/pull/97209 * fix: Clean-up some tax related bugs by @dmkt9 in https://github.com/Expensify/App/pull/94007 * [No QA] Update conciergeReportID to remove Onyx.connect - 35 by @cretadn22 in https://github.com/Expensify/App/pull/97882 * [NoQA] Retry failed locale chunk loads to prevent a permanently stuck boot splash by @VickyStash in https://github.com/Expensify/App/pull/97491 * [No QA] Update Rillet non-reimbursable config source by @s77rt in https://github.com/Expensify/App/pull/97845 * [NoQA] Fix AI Features Promo modal SecurityError from doubled-slash path and re-entrancy by @MelvinBot in https://github.com/Expensify/App/pull/97849 * Fix footer Reset falling back to a stale selected-expense currency by @c3024 in https://github.com/Expensify/App/pull/97767 * Migrate Button to ButtonComposed (batch 4) in iou+txn by @mikolajpochec in https://github.com/Expensify/App/pull/96299 * fix: migrate NewChatPage to use useSearchSelector by @mkzie2 in https://github.com/Expensify/App/pull/95778 * Prevent uncaught removeChild error in safe area provider cleanup by @wildan-m in https://github.com/Expensify/App/pull/97595 * fix: Force close app then open, home page displays instead of onboarding modal by @nkdengineer in https://github.com/Expensify/App/pull/97443 * Workspaces - Wrong warning message when delete Workspace with Travel Invoicing enable by @lorretheboy in https://github.com/Expensify/App/pull/96872 * Render Skia web charts on a software surface when WebGL is unavailable by @wildan-m in https://github.com/Expensify/App/pull/97219 * Remove Onyx.connect() usage for ONYXKEYS.COLLECTION.POLICY_TAGS from src/libs/actions/IOU/index.ts in splitBill, splitBillAndOpenReport, createDistanceRequest by @jakubstec in https://github.com/Expensify/App/pull/97077 * Enable multiline GL account names in NetSuite AP Approval Account list by @MelvinBot in https://github.com/Expensify/App/pull/98093 * Refactor: migrate convertToDisplayString to useCurrencyListActions hook (part 18) by @shubham1206agra in https://github.com/Expensify/App/pull/98096 * Only check for valid phone number in the deposit bank account flow by @mountiny in https://github.com/Expensify/App/pull/97801 * Correct policy changelog report action system messages for: Workflows Submission frequency by @rayane-d in https://github.com/Expensify/App/pull/97921 * Concierge HTML tables: make the whole row clickable and align styling with other tables by @dukenv0307 in https://github.com/Expensify/App/pull/97670 * Changes to AUS corpay setup for certification by @madmax330 in https://github.com/Expensify/App/pull/97333 * Remove Onyx.connect() usage for ONYXKEYS.COLLECTION.POLICY_TAGS in getPerDiemExpenseInformation function from src/libs/actions/IOU/PerDiem.ts by @Guccio163 in https://github.com/Expensify/App/pull/98035 * Patch react-native-nitro-sqlite so failed ROLLBACKs stop masking real SQLite errors by @elirangoshen in https://github.com/Expensify/App/pull/97954 * Show selected saved view name in Search page header by @MelvinBot in https://github.com/Expensify/App/pull/97663 * [No QA] Add unit tests for getWorkspaceCustomUnitUpdatedMessage in ReportActionsUtils by @rayane-d in https://github.com/Expensify/App/pull/97917 * Refactor: ConfirmModal to useConfirmModal | Batch 4 by @mohammadjafarinejad in https://github.com/Expensify/App/pull/92236 * 🍒 Cherry pick PR #14052 to staging 🍒 by @os-botify[bot] in https://github.com/Expensify/App/pull/98313 * 🍒 Cherry pick PR #98338 to staging 🍒 by @os-botify[bot] in https://github.com/Expensify/App/pull/98342 * 🍒 Cherry pick PR #98346 to staging 🍒 by @os-botify[bot] in https://github.com/Expensify/App/pull/98377 **Full Changelog**: https://github.com/Expensify/App/compare/9.4.51-1...9.4.52-11