[BC][R1]Add the Business Central connector entry and connection flow - #100857
NikkiWines merged 19 commits into
Conversation
Adds Dynamics 365 Business Central to the Accounting connections list behind the businessCentral beta, with a prerequisites page, a credentials page that calls ConnectPolicyToBusinessCentral, a Company row and selector backed by UpdateBusinessCentralCompany, and the Onyx types the screens read.
|
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!
|
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 393e6f6ddf
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
…sibling connection files
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 393e6f6ddf
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
…con where integration icons render
…, matching syncConnection
|
@daledah the PR is ready for review. |
Adds the credentials, enableNewCategories and coding config fields plus the dimensions, vendors, paymentMethods, bankAccounts and vatPostingSetups data mirroring the Integration-Server beans. Covers App issue 99103.
… credentials type
…er models
Company drops currencyCode, dimension values drop blocked, vendors gain the
blocked state, payment methods are {id, code, name}, VAT posting setups use
the full field names, and the config gains the setup record.
…tching the Integration-Server model
|
cc: @twisterdotcom ad-hoc build for testing ⬆️ |
Reviewer Checklist
Screenshots/VideosiOS: HybridAppios.movMacOS: Chrome / SafariScreen.Recording.2026-09-15.at.22.59.14.mov |
NikkiWines
left a comment
There was a problem hiding this comment.
lgtm, minor style change. Otherwise good!
francoisl
left a comment
There was a problem hiding this comment.
Small thing, otherwise works well and looks good after we resolve Nikki's comments.
Yes this is correct 👍 |
|
I could not review this diff, so I did not approve the workflow runs. An Expensify employee will review it and approve them manually. |
NikkiWines
left a comment
There was a problem hiding this comment.
@c3024 this has conflicts now 😭
…ess-central-connector # Conflicts: # src/ROUTES.ts # src/SCREENS.ts # src/libs/Navigation/AppNavigator/ModalStackNavigators/index.tsx # src/libs/Navigation/linkingConfig/RELATIONS/WORKSPACE_TO_RHP.ts # src/libs/Navigation/linkingConfig/config.ts # src/libs/Navigation/types.ts # src/types/onyx/Policy.ts
|
Fixed the conflicts and the failed SVG check in the last run. |
|
🚧 NikkiWines has triggered a test Expensify/App build. You can view the workflow run here. |
|
🧪🧪 Use the links below to test this adhoc build on Android, iOS, and Web. Happy testing! 🧪🧪
|
|
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
|
🚀 Deployed to staging by https://github.com/NikkiWines in version: 9.4.82-0 🚀
|
|
🚀 Deployed to staging by https://github.com/NikkiWines in version: 9.4.86-0 🚀
|
|
🚀 Deployed to staging by https://github.com/NikkiWines in version: 9.4.89-0 🚀
|
|
🚀 Deployed to production by https://github.com/luacmartins in version: 9.4.89-0 🚀
Bundle Size Analysis (Sentry): |
Explanation of Change
Adds Dynamics 365 Business Central to the Accounting connections list behind the
businessCentralbeta, with the connection flow from the Figma: a "Before you connect" page, a credentials page (Tenant ID, Environment name, Client ID, Client secret) that callsConnectPolicyToBusinessCentral, and a Subsidiary row with a selector that callsUpdateBusinessCentralCompany. Also adds theBusinessCentral.tsactions, the Release 1 Onyx types forpolicy.connections.businessCentral, the sync-stage strings and the Business Central icon.The help-article links point at the connections help hub until a Business Central article exists.
Fixed Issues
$ #99052
$ #99103
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