9.4.56-3
Expensify/App9.4.56-3Aug 20, 2026by github-actions[bot]
AI Summary
This release adds search operators for custom fields and reimbursement IDs, alongside various bug fixes for distance screens, keyboard focus, and bulk payment flows.
Key Highlights
- [No QA] Add search operators for custom fields and reimbursement IDs
- Fix landscape mode on Odometer photo screen
- Fix: Duplicates-Not here RHP opens when Admin clicks 'Review duplicates' offline
- Auto-focus search input in Category/Tag inline-edit popovers
- Fix - Search bulk pay drops the selected payment method after magic code verification
New Features
- Add search operators for custom fields and reimbursement IDs
- Fix - Search bulk pay drops the selected payment method after magic code verification
Full Release Notes
## What's Changed * [No QA] Docs updates for E/A#97337 Add search operators for custom fields and reimbursement IDs by @MelvinBot in https://github.com/Expensify/App/pull/97743 * [NO QA] Add Expensify Visa Commercial Card press release to Home announcements by @MelvinBot in https://github.com/Expensify/App/pull/98803 * Part 6: Remove Onyx.connect() for the key: ONYXKEYS.COLLECTION.TRANSACTION_VIOLATIONS in src/libs/actions/IOU.ts by @thelullabyy in https://github.com/Expensify/App/pull/97051 * Show non-USD bank accounts as incomplete instead of pending by @marufsharifi in https://github.com/Expensify/App/pull/98023 * fix: display read-only Role selector at full opacity in member details by @mukhrr in https://github.com/Expensify/App/pull/98109 * Migrate money request hold reason and receipt view routes to dynamic … by @suneox in https://github.com/Expensify/App/pull/98751 * Lazy-load contact options: shell first, createOption after getValidOptions by @jmgraa in https://github.com/Expensify/App/pull/97087 * [Payment due @parasharrajat] Add reasonCodes for shipping cards by @chuckdries in https://github.com/Expensify/App/pull/97157 * [CP Staging] fix: gate Download receipts on receipt presence in Search by @truph01 in https://github.com/Expensify/App/pull/98849 * Migrate per diem subrate step to dynamic routes (#83850 part 3) by @suneox in https://github.com/Expensify/App/pull/98629 * [Internal QA] Fix Account and Wallet RBR still showing for personal cards past the 90-day grace period by @wildan-m in https://github.com/Expensify/App/pull/96364 * Return keyboard focus to the popover trigger, without touching DOM globals on native by @Krishna2323 in https://github.com/Expensify/App/pull/98727 * Fix device back from Submit to my employer confirmation landing on the workspace chat by @abzokhattab in https://github.com/Expensify/App/pull/97512 * Display full category hierarchy across category display surfaces by @KJ21-ENG in https://github.com/Expensify/App/pull/95830 * [NO QA] Show a banner when a Consolidated Travel Billing invoice is past due by @blimpich in https://github.com/Expensify/App/pull/98234 * [No QA] Fix SubmitDetailsPage typecheck by @rlinoz in https://github.com/Expensify/App/pull/98875 * [NO QA] Update Rillet settlement copy to Consolidated Travel Billing by @blimpich in https://github.com/Expensify/App/pull/98666 * Move multi-level tag Required from the Tags table to Rules by @Krishna2323 in https://github.com/Expensify/App/pull/98414 * [Split #94595] Final PR - Remove useOnyx dependencies arg and bump Onyx by @fabioh8010 in https://github.com/Expensify/App/pull/97594 * Fix typecheck: pass isMovingTransactionFromTrackExpense to share flow pre-mount route by @MelvinBot in https://github.com/Expensify/App/pull/98874 * Open the broken card feed from the wallet company cards link by @marufsharifi in https://github.com/Expensify/App/pull/98021 * Use group policy filtering in create report flow by @fedirjh in https://github.com/Expensify/App/pull/98731 * Fix blank background when copiloting into an agent from the agent-DM RHP by @MelvinBot in https://github.com/Expensify/App/pull/97869 * Refactor FAB create/track workspace checks to rely on group-policy by @fedirjh in https://github.com/Expensify/App/pull/98729 * chore: update NWWebSocket to 0.5.10 by @adhorodyski in https://github.com/Expensify/App/pull/98052 * Fix regressions from SelfDM splits flow by @ZhenjaHorbach in https://github.com/Expensify/App/pull/97475 * Fix inconsistent font style on unverified Domain members header by @MelvinBot in https://github.com/Expensify/App/pull/98773 * [CP Staging] fix - Android - Distance - Address suggestion list loads infinitely by @situchan in https://github.com/Expensify/App/pull/98836 * Fix: Update billable setting page by @nkdengineer in https://github.com/Expensify/App/pull/98258 * Fix monthly Next Step submit date shifting one day back in UTC-negative timezones by @MelvinBot in https://github.com/Expensify/App/pull/98132 * [No QA] Use native concurrency queue for test builds by @roryabraham in https://github.com/Expensify/App/pull/98694 * refactor: Bump @react-navigation/core to 7.21.12 and drop the now-upstream beforeRemove patch by @TaduJR in https://github.com/Expensify/App/pull/98097 * [No QA] Fix flaky useReportActionAvatarsTranslateTest by pinning actionName by @NicolasBonet in https://github.com/Expensify/App/pull/98901 * Follow-up: narrow useIsAgentAccount personal-details selector to avoid extra re-renders by @jakubstec in https://github.com/Expensify/App/pull/98756 * [NoQA] Use Intuit icon for IES by @ShridharGoel in https://github.com/Expensify/App/pull/98726 * Auto-focus search input in Category/Tag inline-edit popovers by @MelvinBot in https://github.com/Expensify/App/pull/98626 * [CP Staging] Indent GL code subtitle to match the subcategory name in list rows by @yusufdeveloper2903 in https://github.com/Expensify/App/pull/98850 * Fix: Duplicates-Not here RHP opens when Admin clicks "Review duplicates" offline by @annaweber830 in https://github.com/Expensify/App/pull/97906 * Fix: gate forceKeyboardIfAlreadyFocused per-platform to remove Android discard-changes keyboard regression by @MelvinBot in https://github.com/Expensify/App/pull/98808 * Fix - Search bulk pay drops the selected payment method after magic code verification by @jmusial in https://github.com/Expensify/App/pull/98310 * Required 2FA setup screen is unresponsive, blocking new-domain login and account merge by @neerajbachani in https://github.com/Expensify/App/pull/94486 * Remove OnyxUtils.get() from GPSTripStateChecker (use useOnyx) by @MelvinBot in https://github.com/Expensify/App/pull/98703 * [NO QA] InteractionManager cleanup by @collectioneur in https://github.com/Expensify/App/pull/95493 * [No QA][Payment due @ahmedGaber93] Docs updates for E/A#97998 document 500-expense per-report move limit by @MelvinBot in https://github.com/Expensify/App/pull/98684 * Update contributing guidelines Docs to require responding to ai reviews by @FitseTLT in https://github.com/Expensify/App/pull/97361 * Recover the missing report ID once the reports collection loads by @wildan-m in https://github.com/Expensify/App/pull/97636 * ReportActionAvatars -> UserAvatar for multi avatars migration + leftovers by @jmusial in https://github.com/Expensify/App/pull/97983 * [No QA] fix(ci): Raise generateTranslations bun test timeout to fix oxfmt SIGTERM flake by @MelvinBot in https://github.com/Expensify/App/pull/98905 * [No QA] Tag the cherry-pick requester in the automated retest request by @jasperhuangg in https://github.com/Expensify/App/pull/98907 * Re-validate report rows against the status filter in Reports search by @mukhrr in https://github.com/Expensify/App/pull/98556 * fix deleted status on narrow screen by @nkdengineer in https://github.com/Expensify/App/pull/98115 * [Phase 2] Part 5 - Migrate deprecatedGetReportName → getReportName in pages + tests files by @hoangzinh in https://github.com/Expensify/App/pull/97111 * [CP Staging] Revert optimistic scan-failed expense move on pay by @deetergp in https://github.com/Expensify/App/pull/98914 * [Payment due @Pujan92] Add Cancel payment action for pending P2P wallet payments by @KioCoan in https://github.com/Expensify/App/pull/95005 **Full Changelog**: https://github.com/Expensify/App/compare/9.4.55-4...9.4.56-3