Repository navigation
[BC][Release 2] Add the Business Central per-card vendor override - #102670
NikkiWines merged 5 commits into
Conversation
|
Hey, I noticed you changed If you want to automatically generate translations for other locales, an Expensify employee will have to:
Alternatively, if you are an external contributor, you can run the translation script locally with your own OpenAI API key. To learn more, try running: npx bun ./scripts/generateTranslations.ts --helpTypically, you'd want to translate only what you changed by running |
Codecov Report✅ Changes either increased or maintained existing code coverage, great job!
|
…ness-central-card-vendor-override # Conflicts: # src/pages/workspace/companyCards/utils.tsx
Reviewer Checklist
Screenshots/VideosMacOS: Chrome / SafariScreen.Recording.2026-10-07.at.16.22.07.mov |
trjExpensify
left a comment
There was a problem hiding this comment.
@Expensify/design @lakchote in terms of the styling here, I thought these rows in the card settings were going to look like this?
|
In the Figma, every card has the card image at the top, but the action buttons differ between frames. The BofA card frame shows Last updated, then Update card and View transactions right below the card. The Expensify Card frame shows Freeze card and View transactions there. In the Visa card frames, View transactions, Update card and Unassign card are separate rows at the bottom. App already follows the BofA layout for every company card and the Expensify Card layout for Expensify Cards. This PR doesn't touch those layouts. |
…ness-central-card-vendor-override
|
@trjExpensify the Campfire and Digits mocks show the same separate action rows as your screenshot, and I think we should follow those. I checked Campfire’s code, and it still uses the shared card image and action-button layout that this PR reuses. @Expensify/design can you approve aligning the Card details layout and row styling with those mocks? Once confirmed, @c3024 can make the agreed changes here, and I’ll take care of aligning the remaining integrations too. |
Yeah, that's on purpose - we can't freeze external cards, but we can freeze the Expensify Card. Hence why those buttons are slightly different. I am pretty sure what we have in the product today is what we landed on, since we recently went through and updated all of these views. |
This sounds right to me too. |
|
Yeah, to clarify @c3024 .... I was talking about the styling of this row/section.
|
Got it. Updated that. |
daledah
left a comment
There was a problem hiding this comment.
LGTM
Screen.Recording.2026-10-07.at.16.22.07.mov
|
🚧 NikkiWines has triggered a test Expensify/App build. You can view the workflow run here. |
|
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
|
🧪🧪 Use the links below to test this adhoc build on Android, iOS, and Web. Happy testing! 🧪🧪
|
|
🚀 Deployed to staging by https://github.com/NikkiWines in version: 9.5.6-0 🚀
|
|
🚀 Deployed to production by https://github.com/puneetlath in version: 9.5.6-6 🚀
Bundle Size Analysis (Sentry): |


Explanation of Change
Adds a Business Central case to the company card export settings, so the Accounting section of the card details page shows an "Exports to" row with the Business Central icon, where admins can pick a vendor for that card or keep the workspace default vendor. The row follows the Card Details - Admin view Figma frame.
Fixed Issues
$ #101110
PROPOSAL: N/A
Tests
businessCentralbeta for your account (on dev: Account > Troubleshoot > Beta overrides).Offline tests
QA Steps
Same as tests.
PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectionAvatar, I verified the components usingAvatarare working as expected)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))npm run compress-svg)Avataris modified, I verified thatAvataris working as expected in all cases)Designlabel and/or tagged@Expensify/designso the design team can review the changes.mainbranch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTeststeps.Screenshots/Videos
Android: Native
Android: mWeb Chrome
iOS: Native
iOS: mWeb Safari
MacOS: Chrome / Safari