9.5.9-4

Expensify/App9.5.9-4Oct 15, 2026by github-actions[bot]

Upgrading?

AI Summary

This release focuses on enhancing the Wise payment integration, improving navigation stability, and adding new selectors to the Spend footer. It also includes updates to the DynamicForm system and various bug fixes for the iOS app.

Key Highlights

  • Wise payment integration updates (Batch 2/4 and 3/4) for DynamicForm
  • Add count and spend total selectors to the Spend footer
  • Block browser back from leaving onboarding after React Navigation bump
  • Show balance and remaining limit for Plaid company card feeds
  • Add audit trail for receipt additions

New Features

  • Wise DynamicForm field types and multi-page flow
  • Count and spend total selectors
  • Plaid company card feed balance display
  • Audit trail for receipt additions
  • Cloudflare Worker for web build

Full Release Notes

## What's Changed
* [No QA] Docs updates for E/A#101150 Describe group columns in grouped Current view CSV exports by @MelvinBot in https://github.com/Expensify/App/pull/102462
* Block browser back from leaving onboarding after React Navigation bump by @sumo-slonik in https://github.com/Expensify/App/pull/103837
* [CP Staging] Revert "Keep the tax sign of a merged expense in line with its amount offline" by @grgia in https://github.com/Expensify/App/pull/103803
* [No QA] [Wise] [Batch 2/4] Add the remaining DynamicForm field types and lone-field pages by @mikolajpochec in https://github.com/Expensify/App/pull/103718
* terminate responder on 'select' when text is actually selected by @jmgraa in https://github.com/Expensify/App/pull/103460
* Add page navigation to multi-page PDF receipts by @ishpaul777 in https://github.com/Expensify/App/pull/102776
* feat: Add count and spend total selectors to the Spend footer by @truph01 in https://github.com/Expensify/App/pull/100674
* Show balance and remaining limit for Plaid company card feeds by @ishpaul777 in https://github.com/Expensify/App/pull/94096
* [Payment due @ZhenjaHorbach] [No QA] Override tinypool to 2.1.2 to patch Dependabot alerts by @MelvinBot in https://github.com/Expensify/App/pull/103756
* [No QA] Add a Cloudflare Worker that serves the web build with Workers Static Assets by @justinpersaud in https://github.com/Expensify/App/pull/103501
* Open the exitTo route after a supportal login by @yuwenmemon in https://github.com/Expensify/App/pull/103414
* Extract useSignedMagnitudeEditingController and expand NumericField test suite by @jmgraa in https://github.com/Expensify/App/pull/103474
* Prevent resubmission until report violations are acknowledged by @huult in https://github.com/Expensify/App/pull/101662
* Add an audit trail for receipt additions by @dukenv0307 in https://github.com/Expensify/App/pull/103279
* [cp staging] Hide Describe rule button behind a client side beta by @rushatgabhane in https://github.com/Expensify/App/pull/103896
* Consolidate integration to one Connection screen by @Krishna2323 in https://github.com/Expensify/App/pull/102265
* ReportActionAvatars decomposition - RoomAvatar decomposition by @jmusial in https://github.com/Expensify/App/pull/103308
* Keep the Concierge thread row visible while Concierge is thinking by @MelvinBot in https://github.com/Expensify/App/pull/102732
* [NoQA] Fix iOS crash when RNS pushes the same view controller twice by @WojtekBoman in https://github.com/Expensify/App/pull/103603
* [No QA] Docs updates for E/A#99025 move travel billing settlements toggle to export page by @MelvinBot in https://github.com/Expensify/App/pull/100341
* Show an error above the Assign button when company card assignment fails by @MelvinBot in https://github.com/Expensify/App/pull/102693
* Allow changing the workspace on the confirmation page when scanning from the camera button by @MelvinBot in https://github.com/Expensify/App/pull/103130
* refactor: remove allPolicies read from canMergeReports by @daledah in https://github.com/Expensify/App/pull/102402
* Revert "Collapse consecutive system messages in report audit trails" by @inimaga in https://github.com/Expensify/App/pull/103915
* [Refactor] Move PolicyUtils custom unit and tax helpers into customUnits.ts and tax.ts by @MelvinBot in https://github.com/Expensify/App/pull/103820
* [Payment due @abzokhattab] Add the join-workspace onboarding intent and Concierge follow up tasks by @carlosmiceli in https://github.com/Expensify/App/pull/103652
* [Insights] Support multiple series in chart data by @mhawryluk in https://github.com/Expensify/App/pull/103754
* Show backend settlement account error on Expensify Card settings by @mkhutornyi in https://github.com/Expensify/App/pull/103630
* Limit calendar year and month navigation to minDate and maxDate by @MelvinBot in https://github.com/Expensify/App/pull/103246
* Show the server error when adding a contact method fails by @MelvinBot in https://github.com/Expensify/App/pull/103832
* [No QA] Add onDebouncedValueChange option to useDebouncedState by @jmgraa in https://github.com/Expensify/App/pull/103318
* [No QA] Deprecate legacy non-composable `MenuItem` by @war-in in https://github.com/Expensify/App/pull/103034
* Migrate tap and fling gestures to Gesture Handler 3 hooks by @collectioneur in https://github.com/Expensify/App/pull/103454
* Allow resubmitting the non-USD bank account confirmation after an error by @heekinho in https://github.com/Expensify/App/pull/103123
* Refactor buildRetryPayload to remove currentUser Onyx subscription by @parasharrajat in https://github.com/Expensify/App/pull/103446
* Refactor Duplicate lib to remove onyx allTransactions subscription by @parasharrajat in https://github.com/Expensify/App/pull/103306
* Go straight to the Concierge step when copying workspace settings offline by @MelvinBot in https://github.com/Expensify/App/pull/103812
* Display user-friendly error messages for CTB settlement account selection failure by @akinwale in https://github.com/Expensify/App/pull/97737
* Allow sorting the Expensify Card table on narrow layouts by @MelvinBot in https://github.com/Expensify/App/pull/103897
* [Payment due @Krishna2323] [No QA] Override serialize-javascript to 7.1.2 to fix Dependabot alerts by @MelvinBot in https://github.com/Expensify/App/pull/103016
* Use provider terminology for accounting selectors by @lakchote in https://github.com/Expensify/App/pull/103911
* [Part 2.5] Remove Onyx.connect(ONYXKEYS.SESSION) in ReportActionsUtils: thread currentUserAccountID through isWhisperActionTargetedToOthers by @truph01 in https://github.com/Expensify/App/pull/102385
* Fix Category list shows excess space by @DylanDylann in https://github.com/Expensify/App/pull/103303
* Revert "Restore: Show up to three report fields per row and edit them inline" by @AndrewGable in https://github.com/Expensify/App/pull/103929
* [No QA]Update Expense-and-Report-Actions.md by @flaviadefaria in https://github.com/Expensify/App/pull/103857
* [No QA] Update How-to-Delete-Expenses.md by @flaviadefaria in https://github.com/Expensify/App/pull/103854
* Wait for the app to be active before requesting iOS Always location permission by @MelvinBot in https://github.com/Expensify/App/pull/102929
* Show the invite Approver row on Dynamic External Workflow workspaces by @MelvinBot in https://github.com/Expensify/App/pull/103300
* Add retake photo option for native by @hungvu193 in https://github.com/Expensify/App/pull/103685
* Roll back optimistic split expenses when the split request fails by @MelvinBot in https://github.com/Expensify/App/pull/102414
* [No QA] Docs updates for E/A#97958 Mention cash back rows in Expensify Card reconciliation by @MelvinBot in https://github.com/Expensify/App/pull/103849
* [No QA] Fix ESLint and typecheck failures on main by @yuwenmemon in https://github.com/Expensify/App/pull/103949
* [Payment due @Krishna2323] [No QA] Bump socket.io-parser to 4.2.7 by @MelvinBot in https://github.com/Expensify/App/pull/103001
* Fix multi-message copy on desktop web chat rows. by @neerajbachani in https://github.com/Expensify/App/pull/102143
* Remove getReportTransactions callers' reliance on the deprecated default in prepareRejectMoneyRequestData (Part 6) by @linhvovan29546 in https://github.com/Expensify/App/pull/102940
* Send individual Per Diem rate updates by @carlosmiceli in https://github.com/Expensify/App/pull/103229
* Keep bulk actions available for expenses with a missing or unloaded IOU action by @MelvinBot in https://github.com/Expensify/App/pull/103668
* Make director signer-info chat notification copy actionable by @MelvinBot in https://github.com/Expensify/App/pull/98625
* Keep the search router open when the window is resized by @MelvinBot in https://github.com/Expensify/App/pull/103577
* Announce "Your review is required" on expense form rows in an error state by @MelvinBot in https://github.com/Expensify/App/pull/103573
* Skip members pending deletion when building approval workflows by @MelvinBot in https://github.com/Expensify/App/pull/99988
* [Payment due @ZhenjaHorbach] [No QA] [Wise] [Batch 3/4] Add the DynamicForm multi-page flow and confirmation page by @WojtekBoman in https://github.com/Expensify/App/pull/103870
* [CP Staging] Send complete wallet details after the phone validateCode by @MelvinBot in https://github.com/Expensify/App/pull/103967
* [Performance] Wide pre-mount 3/5: reveal through the root router by @JakubKorytko in https://github.com/Expensify/App/pull/103765
* Keep Payer row visible on Workflows after disconnecting bank account by @MelvinBot in https://github.com/Expensify/App/pull/99278
* refactor: thread hasCompletedGuidedSetupFlow through navigateToConciergeChat by @daledah in https://github.com/Expensify/App/pull/100613
* [No QA] Fix missing onboarding argument in LinkTest by @mjasikowski in https://github.com/Expensify/App/pull/103971


**Full Changelog**: https://github.com/Expensify/App/compare/9.5.8-5...9.5.9-4

Related Repositories