Skip to content

Add Rillet integration advanced pages#95116

Merged
lakchote merged 27 commits into
Expensify:mainfrom
s77rt:Rillet-integration-advanced
Jul 10, 2026
Merged

Add Rillet integration advanced pages#95116
lakchote merged 27 commits into
Expensify:mainfrom
s77rt:Rillet-integration-advanced

Conversation

@s77rt

@s77rt s77rt commented Jul 2, 2026

Copy link
Copy Markdown
Member

Explanation of Change

Fixed Issues

$ #94850
PROPOSAL:

Tests

  1. Create a workspace and enable accounting feature
  2. Go to Accounting
  3. Connect Rillet integration
  4. Click on Advanced
  5. Verify the toggles work and verify the sub pages selections work
  6. Verify you do not see the Sync Expensify Card settlements unless workspace has Expensify Card enabled and configured
  7. Verify you do not see the Sync Travel Invoicing settlements unless workspace has Travel Invoincing enabled and configured
Screen.Recording.2026-07-09.at.5.07.08.PM.mov
  • Verify that no errors appear in the JS console

Offline tests

Same as Tests

QA Steps

Same as Tests

  • Verify that no errors appear in the JS console

PR Author Checklist

  • I linked the correct issue in the ### Fixed Issues section above
  • I wrote clear testing steps that cover the changes made in this PR
    • I added steps for local testing in the Tests section
    • I added steps for the expected offline behavior in the Offline steps section
    • I added steps for Staging and/or Production testing in the QA steps section
    • I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
    • I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
    • I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).
  • I included screenshots or videos for tests on all platforms
  • I ran the tests on all platforms & verified they passed on:
    • Android: Native
    • Android: mWeb Chrome
    • iOS: Native
    • iOS: mWeb Safari
    • MacOS: Chrome / Safari
  • I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
  • I followed proper code patterns (see Reviewing the code)
    • I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
    • I verified that comments were added to code that is not self explanatory
    • I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
    • I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
  • If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
  • I followed the guidelines as stated in the Review Guidelines
  • I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
  • If any new file was added I verified that:
    • The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory
  • If a new CSS style is added I verified that:
    • A similar style doesn't already exist
    • The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))
  • If new assets were added or existing ones were modified, I verified that:
    • The assets are optimized and compressed (for SVG files, run npm run compress-svg)
    • The assets load correctly across all supported platforms.
  • If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
  • If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
  • If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
  • If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
  • If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:
    • I verified that all the inputs inside a form are aligned with each other.
    • I added Design label and/or tagged @Expensify/design so the design team can review the changes.
  • I added unit tests for any new feature or bug fix in this PR to help automatically prevent regressions in this user flow.
  • If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

Android: Native
Android: mWeb Chrome
iOS: Native
iOS: mWeb Safari
MacOS: Chrome / Safari

@melvin-bot

melvin-bot Bot commented Jul 2, 2026

Copy link
Copy Markdown

Hey, I noticed you changed src/languages/en.ts in a PR from a fork. For security reasons, translations are not generated automatically for PRs from forks.

If you want to automatically generate translations for other locales, an Expensify employee will have to:

  1. Look at the code and make sure there are no malicious changes.
  2. Run the Generate static translations GitHub workflow. If you have write access and the K2 extension, you can simply click: [this button]

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 ts-node ./scripts/generateTranslations.ts --help

Typically, you'd want to translate only what you changed by running npx ts-node ./scripts/generateTranslations.ts --compare-ref main

@lakchote

lakchote commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

@s77rt don't forget to send billPaymentAccountCode and settlementsBankAccountID

@lakchote

lakchote commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

@s77rt a few things to wire here now that the Release 4 backend PRs are in review:

  1. Add the two Travel Invoicing rows to the Advanced page (gated on Travel Invoicing being enabled, per the doc): the toggle fires UpdateRilletSyncTravelInvoicingSettlements with {policyID, enabled} and the account picker fires UpdateRilletTravelInvoicingSettlementsAccount with {policyID, travelInvoicingSettlementsBankAccountID} (Web-Expensify#54198).

  2. Enabling the settlement toggles must also point the domain reconciliation at Rillet via the existing shared commands, like the other connectors: ToggleCardContinuousReconciliation for Expensify Card settlements and ToggleTravelInvoicingContinuousReconciliation for Travel Invoicing (both accept rillet). The account setters deliberately don't write the domain pair. For travel this is required (settlements won't sync with a blank connection), for the card pair it avoids double posting when another connector reconciles the domain.

Reminder: the {settingValue, idempotencyKey} shape flagged on #94920 needs to become {policyID, enabled} here too since this PR is stacked on it.

@s77rt

s77rt commented Jul 3, 2026

Copy link
Copy Markdown
Member Author

Enabling the settlement toggles must also point the domain reconciliation at Rillet via the existing shared commands, like the other connectors: ToggleCardContinuousReconciliation for Expensify Card settlements and ToggleTravelInvoicingContinuousReconciliation for Travel Invoicing (both accept rillet). The account setters deliberately don't write the domain pair. For travel this is required (settlements won't sync with a blank connection), for the card pair it avoids double posting when another connector reconciles the domain.

Hmm not sure I got this part right but when enabling the Expensify or TI toggle we will only call one command and that is UpdateRilletSyncExpensifyCardSettlements/UpdateRilletSyncTravelInvoicingSettlements (following the 1:1:1 rule)

@s77rt s77rt marked this pull request as ready for review July 3, 2026 04:10
@s77rt s77rt requested review from a team as code owners July 3, 2026 04:10
@melvin-bot melvin-bot Bot requested review from eh2077 and trjExpensify and removed request for a team July 3, 2026 04:10
@melvin-bot

melvin-bot Bot commented Jul 3, 2026

Copy link
Copy Markdown

@eh2077 Please copy/paste the Reviewer Checklist from here into a new comment on this PR and complete it. If you have the K2 extension, you can simply click: [this button]

@melvin-bot melvin-bot Bot removed the request for review from a team July 3, 2026 04:10
@s77rt s77rt removed the request for review from eh2077 July 3, 2026 04:10
@lakchote

lakchote commented Jul 6, 2026

Copy link
Copy Markdown
Contributor

Core PR for a WN project. 👍 Would be nice to see the screenshots here when ready.

We'll trigger an adhoc build so you can test it out

Comment thread src/languages/en.ts
@truph01

truph01 commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

Bug 1: There is a different between design and the PR

PR:
Screenshot 2026-07-09 at 04 11 34

Design:

Screenshot 2026-07-09 at 04 12 03

@truph01

truph01 commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

Bug 2: The RBR is shown next to the "advance" option without any explanation:

Screen.Recording.2026-07-09.at.04.20.59.mov
JSON payload
{
    "config": {
        "autoSync": {
            "enabled": true,
            "jobID": "5718745148721365290"
        },
        "coding": {
            "fieldMappings": {
                "019dda01-0370-76ef-9807-566afe6fd658": "NONE",
                "019dda01-03c2-74c9-b01d-3ed8fc8c1f75": "NONE"
            },
            "syncTaxRates": false
        },
        "credentials": {
            "apiKey": "Se1ePfUdYfi7U67R8Olkhl480Hc4/mRWK98p5b/sguOE+OmakZfoHd2yKVynn2VbtC7me7mIsE1bEDjqtSFZBw==;HKG9Js26W75zWgK9fpzR5w==;DISuaSQ7Xf597FBX7I8ps0enfqtJOGbY7ss52BpRNNL8hWRoaFzDNHsuKeEKjtKvXW6/Ewzqep+RNj4a6OhG5A==",
            "companyID": "019dda00-f893-72cf-bdb4-3a75ac237689"
        },
        "enableNewCategories": false,
        "export": {
            "accountingMethod": "ACCRUAL",
            "creditCardAccountCode": "",
            "defaultVendorID": "",
            "expensifyCardAccount": "",
            "exportDate": "LAST_EXPENSE",
            "exporter": "",
            "nonReimbursable": "CREDIT_CARD_CHARGE",
            "reimbursable": "VENDOR_BILL"
        },
        "isConfigured": true,
        "subsidiaryID": "019dda00-f893-735c-963d-d3e194077708",
        "sync": {
            "billPaymentAccountCode": "",
            "settlementsBankAccountID": "",
            "syncExpensifyCardSettlements": false,
            "syncReimbursedReports": false,
            "syncTravelInvoicingSettlements": false,
            "travelInvoicingSettlementsBankAccountID": ""
        },
        "pendingFields": {},
        "errorFields": {
            "syncExpensifyCardSettlements": {
                "1783545289130000": "Oops... something went wrong and your request could not be completed. Please try again later."
            }
        }
    },
    "data": {
        "accounts": [
            {
                "code": "11320",
                "id": "019dda00-fa47-7753-aa61-7a2b198292b8",
                "intercompany": false,
                "name": "Prepaid Expenses",
                "status": "ACTIVE",
                "subtype": "Prepaid Expense",
                "type": "ASSET",
                "updatedAt": "2026-04-29T16:09:50.420609Z"
            },
            {
                "code": "40110",
                "id": "019dda00-fa47-77a9-b033-1eca6ee626c1",
                "intercompany": false,
                "name": "SaaS Subscriptions",
                "status": "ACTIVE",
                "subtype": "Revenue",
                "type": "INCOME",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "40120",
                "id": "019dda00-fa47-77a0-a9c4-cf2e2f907fb0",
                "intercompany": false,
                "name": "Professional Services",
                "status": "ACTIVE",
                "subtype": "Revenue",
                "type": "INCOME",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "40130",
                "id": "019dda00-fa47-73bb-994f-28fe75824bb3",
                "intercompany": false,
                "name": "Usage-Based Revenue",
                "status": "ACTIVE",
                "subtype": "Revenue",
                "type": "INCOME",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "40140",
                "id": "019dda00-fa47-751d-9dd6-455c87e6defe",
                "intercompany": false,
                "name": "License Revenue",
                "status": "ACTIVE",
                "subtype": "Revenue",
                "type": "INCOME",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "50110",
                "id": "019dda00-fa47-7626-91de-0867556ac8a5",
                "intercompany": false,
                "name": "COGS Compensation",
                "status": "ACTIVE",
                "subtype": "Cost of Goods Sold",
                "type": "EXPENSE",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "50120",
                "id": "019dda00-fa47-759a-b957-873d55d12583",
                "intercompany": false,
                "name": "COGS Payroll Taxes",
                "status": "ACTIVE",
                "subtype": "Cost of Goods Sold",
                "type": "EXPENSE",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "50130",
                "id": "019dda00-fa47-7465-9c19-aa92f6d13184",
                "intercompany": false,
                "name": "COGS Benefits",
                "status": "ACTIVE",
                "subtype": "Cost of Goods Sold",
                "type": "EXPENSE",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "50140",
                "id": "019dda00-fa47-77dd-ba4b-78593877bc23",
                "intercompany": false,
                "name": "COGS Contractors",
                "status": "ACTIVE",
                "subtype": "Cost of Goods Sold",
                "type": "EXPENSE",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "50210",
                "id": "019dda00-fa47-71f1-ad72-25cf60fbe14b",
                "intercompany": false,
                "name": "COGS Hosting & Infrastructure",
                "status": "ACTIVE",
                "subtype": "Cost of Goods Sold",
                "type": "EXPENSE",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "50220",
                "id": "019dda00-fa47-71ff-98ac-f5867c01bbba",
                "intercompany": false,
                "name": "COGS Licensed Tech",
                "status": "ACTIVE",
                "subtype": "Cost of Goods Sold",
                "type": "EXPENSE",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "60110",
                "id": "019dda00-fa47-7763-8324-d3209a6887ad",
                "intercompany": false,
                "name": "Compensation",
                "status": "ACTIVE",
                "subtype": "Operating Expense",
                "type": "EXPENSE",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "60120",
                "id": "019dda00-fa47-7750-81d1-c339bd753a4f",
                "intercompany": false,
                "name": "Payroll Taxes",
                "status": "ACTIVE",
                "subtype": "Operating Expense",
                "type": "EXPENSE",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "60130",
                "id": "019dda00-fa47-73a6-acb7-0c8e53140f6f",
                "intercompany": false,
                "name": "Benefits",
                "status": "ACTIVE",
                "subtype": "Operating Expense",
                "type": "EXPENSE",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "60190",
                "id": "019dda00-fa47-7372-818c-494b53d5879a",
                "intercompany": false,
                "name": "Contractors",
                "status": "ACTIVE",
                "subtype": "Operating Expense",
                "type": "EXPENSE",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "60219",
                "id": "019dda00-fa47-70f6-b5dd-0a32fce27fae",
                "intercompany": false,
                "name": "Recruiting",
                "status": "ACTIVE",
                "subtype": "Operating Expense",
                "type": "EXPENSE",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "60211",
                "id": "019dda00-fa47-77cc-9e24-c24e7f02c067",
                "intercompany": false,
                "name": "Rent & Utilities",
                "status": "ACTIVE",
                "subtype": "Operating Expense",
                "type": "EXPENSE",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "60212",
                "id": "019dda00-fa47-722a-a02e-5ee8c15346b4",
                "intercompany": false,
                "name": "Software Licenses",
                "status": "ACTIVE",
                "subtype": "Operating Expense",
                "type": "EXPENSE",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "60214",
                "id": "019dda00-fa47-748b-84ce-3e77fc3ac4e2",
                "intercompany": false,
                "name": "Travel & Entertainment",
                "status": "ACTIVE",
                "subtype": "Operating Expense",
                "type": "EXPENSE",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "60215",
                "id": "019dda00-fa47-76c1-aeed-d12c40b08232",
                "intercompany": false,
                "name": "Office Expenses & Supplies",
                "status": "ACTIVE",
                "subtype": "Operating Expense",
                "type": "EXPENSE",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "60216",
                "id": "019dda00-fa47-7692-9c61-3b88aa1ee239",
                "intercompany": false,
                "name": "Professional Services",
                "status": "ACTIVE",
                "subtype": "Operating Expense",
                "type": "EXPENSE",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "60217",
                "id": "019dda00-fa47-77cf-8e88-14397146f995",
                "intercompany": false,
                "name": "Depreciation & Amortization",
                "status": "ACTIVE",
                "subtype": "Operating Expense",
                "type": "EXPENSE",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "60218",
                "id": "019dda00-fa47-763e-a5ab-0c7cbe47a026",
                "intercompany": false,
                "name": "Marketing Events",
                "status": "ACTIVE",
                "subtype": "Operating Expense",
                "type": "EXPENSE",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "60220",
                "id": "019dda00-fa47-7685-b243-dd1e39cbc0d2",
                "intercompany": false,
                "name": "Insurance",
                "status": "ACTIVE",
                "subtype": "Operating Expense",
                "type": "EXPENSE",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "60221",
                "id": "019dda00-fa47-7009-9b13-3b65c0d21c79",
                "intercompany": false,
                "name": "Bank Charges & Fees",
                "status": "ACTIVE",
                "subtype": "Operating Expense",
                "type": "EXPENSE",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "60222",
                "id": "019dda00-fa47-75c7-9d34-9ca69e92c5f0",
                "intercompany": false,
                "name": "Interest Paid",
                "status": "ACTIVE",
                "subtype": "Operating Expense",
                "type": "EXPENSE",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "60223",
                "id": "019dda00-fa47-764c-8124-fd38141dae0a",
                "intercompany": false,
                "name": "Taxes",
                "status": "ACTIVE",
                "subtype": "Operating Expense",
                "type": "EXPENSE",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "60224",
                "id": "019dda00-fa47-77b9-b9db-0b78ed28fbb0",
                "intercompany": false,
                "name": "R&D Tools & Services",
                "status": "ACTIVE",
                "subtype": "Operating Expense",
                "type": "EXPENSE",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "60225",
                "id": "019dda00-fa47-77ba-b141-e00d0713886a",
                "intercompany": false,
                "name": "Legal Fees",
                "status": "ACTIVE",
                "subtype": "Operating Expense",
                "type": "EXPENSE",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "60213",
                "id": "019dda00-fa47-752d-870d-332c510a56fb",
                "intercompany": false,
                "name": "Sales & Marketing",
                "status": "ACTIVE",
                "subtype": "Operating Expense - Sales & Marketing",
                "type": "EXPENSE",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "70110",
                "id": "019dda00-fa47-72dc-83c9-f81f37d74650",
                "intercompany": false,
                "name": "Gain/Loss on Asset Disposal",
                "status": "ACTIVE",
                "subtype": "Non Operating Expense",
                "type": "EXPENSE",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "70120",
                "id": "019dda00-fa47-772a-93b6-d794d8c9718d",
                "intercompany": false,
                "name": "Sales Proceeds",
                "status": "ACTIVE",
                "subtype": "Non Operating Expense",
                "type": "EXPENSE",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "11111",
                "id": "019dda00-fa47-7008-9105-27ba1af15905",
                "intercompany": false,
                "name": "Mercury Checking US",
                "status": "ACTIVE",
                "subtype": "Bank",
                "type": "ASSET",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "11112",
                "id": "019dda00-fa47-702b-855d-c7c496251544",
                "intercompany": false,
                "name": "Mercury Checking UK",
                "status": "ACTIVE",
                "subtype": "Bank",
                "type": "ASSET",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "11200",
                "id": "019dda00-fa47-7407-b477-49aa5f336615",
                "intercompany": false,
                "name": "Accounts Receivable",
                "status": "ACTIVE",
                "subtype": "Accounts Receivable",
                "type": "ASSET",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "11300",
                "id": "019dda00-fa47-76eb-ba46-24de8b06b9ba",
                "intercompany": false,
                "name": "Unbilled Revenue",
                "status": "ACTIVE",
                "subtype": "Unbilled Revenue",
                "type": "ASSET",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "11310",
                "id": "019dda00-fa47-7624-a9fd-db16c50c524f",
                "intercompany": false,
                "name": "Stripe",
                "status": "ACTIVE",
                "subtype": "Other Current Asset",
                "type": "ASSET",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "11330",
                "id": "019dda00-fa47-7516-bf77-89a88a6f320e",
                "intercompany": false,
                "name": "Security Deposits",
                "status": "ACTIVE",
                "subtype": "Other Current Asset",
                "type": "ASSET",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "11340",
                "id": "019dda00-fa47-760b-826f-99f7e248e58f",
                "intercompany": true,
                "name": "Intercompany Receivable",
                "status": "ACTIVE",
                "subtype": "Other Current Asset",
                "type": "ASSET",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "12110",
                "id": "019dda00-fa47-74f5-a12f-785482e5c6ef",
                "intercompany": false,
                "name": "Computers & Equipment",
                "status": "ACTIVE",
                "subtype": "Fixed Assets",
                "type": "ASSET",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "12111",
                "id": "019dda00-fa47-77ce-a6ed-f7ef43f650ea",
                "intercompany": false,
                "name": "Accumulated Depreciation (Computer)",
                "status": "ACTIVE",
                "subtype": "Accumulated Depreciation",
                "type": "ASSET",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "12210",
                "id": "019dda00-fa47-7460-9102-7c6662ac1679",
                "intercompany": false,
                "name": "Office Equipment",
                "status": "ACTIVE",
                "subtype": "Fixed Assets",
                "type": "ASSET",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "12211",
                "id": "019dda00-fa47-73cc-b3bf-b3acc3de5ed3",
                "intercompany": false,
                "name": "Accumulated Depreciation (Office)",
                "status": "ACTIVE",
                "subtype": "Accumulated Depreciation",
                "type": "ASSET",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "12310",
                "id": "019dda00-fa47-704d-8bcc-bba46171ca9e",
                "intercompany": false,
                "name": "Vehicles",
                "status": "ACTIVE",
                "subtype": "Fixed Assets",
                "type": "ASSET",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "12311",
                "id": "019dda00-fa47-72d9-a9fb-642ad3648222",
                "intercompany": false,
                "name": "Accumulated Depreciation (Vehicles)",
                "status": "ACTIVE",
                "subtype": "Accumulated Depreciation",
                "type": "ASSET",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "12410",
                "id": "019dda00-fa47-730c-a07d-9c2b4b4b77b3",
                "intercompany": false,
                "name": "Leasehold Improvements",
                "status": "ACTIVE",
                "subtype": "Fixed Assets",
                "type": "ASSET",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "12411",
                "id": "019dda00-fa47-73ea-ad7d-b8606ab4f5d3",
                "intercompany": false,
                "name": "Accumulated Depreciation (Leasehold)",
                "status": "ACTIVE",
                "subtype": "Accumulated Depreciation",
                "type": "ASSET",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "21110",
                "id": "019dda00-fa47-7473-9b1e-e1e3e6a10a23",
                "intercompany": false,
                "name": "Brex Credit Card US",
                "status": "ACTIVE",
                "subtype": "Credit Card",
                "type": "LIABILITY",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "21120",
                "id": "019dda00-fa47-7321-ab44-66da9640cccd",
                "intercompany": false,
                "name": "Brex Credit Card UK",
                "status": "ACTIVE",
                "subtype": "Credit Card",
                "type": "LIABILITY",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "21200",
                "id": "019dda00-fa47-706b-b2f7-87e3fd28f241",
                "intercompany": false,
                "name": "Accounts Payable",
                "status": "ACTIVE",
                "subtype": "Accounts Payable",
                "type": "LIABILITY",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "21310",
                "id": "019dda00-fa47-715f-a2f0-cccea2aa3d43",
                "intercompany": false,
                "name": "Accrued Expenses",
                "status": "ACTIVE",
                "subtype": "Accrued Expense",
                "type": "LIABILITY",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "21340",
                "id": "019dda00-fa47-763b-8f8e-a18469b6f567",
                "intercompany": false,
                "name": "Employee Reimbursements Payable",
                "status": "ACTIVE",
                "subtype": "Other Current Liability",
                "type": "LIABILITY",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "21350",
                "id": "019dda00-fa47-716f-a4c2-94299670647f",
                "intercompany": true,
                "name": "Intercompany Payable",
                "status": "ACTIVE",
                "subtype": "Other Current Liability",
                "type": "LIABILITY",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "21320",
                "id": "019dda00-fa47-712d-8634-c2a11da30537",
                "intercompany": false,
                "name": "Sales Tax Payable",
                "status": "ACTIVE",
                "subtype": "Sales Tax Liability",
                "type": "LIABILITY",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "21330",
                "id": "019dda00-fa47-7189-9572-24c00006e227",
                "intercompany": false,
                "name": "Deferred Revenue",
                "status": "ACTIVE",
                "subtype": "Deferred Revenue",
                "type": "LIABILITY",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "22100",
                "id": "019dda00-fa47-7125-b69d-36297f0fbeef",
                "intercompany": false,
                "name": "Shareholder Loan",
                "status": "ACTIVE",
                "subtype": "Other Long Term Liability",
                "type": "LIABILITY",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "22200",
                "id": "019dda00-fa47-73f3-a6d1-5189e55cc132",
                "intercompany": false,
                "name": "Other Long-term Liabilities",
                "status": "ACTIVE",
                "subtype": "Other Long Term Liability",
                "type": "LIABILITY",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "31110",
                "id": "019dda00-fa47-7669-89d2-ba4dab54deaf",
                "intercompany": false,
                "name": "Series Seed - Par",
                "status": "ACTIVE",
                "subtype": "Equity",
                "type": "EQUITY",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "31120",
                "id": "019dda00-fa47-77b1-bad5-fc647714ee71",
                "intercompany": false,
                "name": "Series Seed - APIC",
                "status": "ACTIVE",
                "subtype": "Equity",
                "type": "EQUITY",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "31210",
                "id": "019dda00-fa47-73a8-a6b6-17e3c2892423",
                "intercompany": false,
                "name": "Series A-1 - Par",
                "status": "ACTIVE",
                "subtype": "Equity",
                "type": "EQUITY",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "31220",
                "id": "019dda00-fa47-763e-8ca6-628d799a4a88",
                "intercompany": false,
                "name": "Series A-1 - APIC",
                "status": "ACTIVE",
                "subtype": "Equity",
                "type": "EQUITY",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "32100",
                "id": "019dda00-fa47-726d-9f09-98743bcceb31",
                "intercompany": false,
                "name": "Common Stock - Par",
                "status": "ACTIVE",
                "subtype": "Equity",
                "type": "EQUITY",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "32200",
                "id": "019dda00-fa47-7089-b45b-4819cbc09469",
                "intercompany": false,
                "name": "Common Stock - APIC",
                "status": "ACTIVE",
                "subtype": "Equity",
                "type": "EQUITY",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "33100",
                "id": "019dda00-fa47-7462-8482-ace4aaf7a58a",
                "intercompany": false,
                "name": "Stock Compensation - Par",
                "status": "ACTIVE",
                "subtype": "Equity, Compensation",
                "type": "EQUITY",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "33200",
                "id": "019dda00-fa47-7136-b18d-0ce998861f4f",
                "intercompany": false,
                "name": "Stock Compensation - APIC",
                "status": "ACTIVE",
                "subtype": "Equity, Compensation",
                "type": "EQUITY",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "34000",
                "id": "019dda00-fa47-731a-8ead-c8f7a0c3d86f",
                "intercompany": false,
                "name": "Retained Earnings",
                "status": "ACTIVE",
                "subtype": "Retained Earnings",
                "type": "EQUITY",
                "updatedAt": "2026-04-29T16:09:50.428582Z"
            },
            {
                "code": "8101",
                "id": "019dda01-0404-7576-aa6c-974180a678be",
                "intercompany": false,
                "name": "Realized FX Gain/Loss",
                "status": "ACTIVE",
                "subtype": "Non Operating Expense",
                "type": "EXPENSE",
                "updatedAt": "2026-04-29T16:09:52.931322Z"
            },
            {
                "code": "8102",
                "id": "019dda01-040c-71b3-85c0-e4d1ccccac15",
                "intercompany": false,
                "name": "Unrealized FX Gain/Loss",
                "status": "ACTIVE",
                "subtype": "Non Operating Expense",
                "type": "EXPENSE",
                "updatedAt": "2026-04-29T16:09:52.931322Z"
            },
            {
                "code": "1215",
                "id": "019dda01-0413-740c-bffe-bf814c449bda",
                "intercompany": false,
                "name": "AR - Revaluation",
                "status": "ACTIVE",
                "subtype": "Other Current Asset",
                "type": "ASSET",
                "updatedAt": "2026-04-29T16:09:52.931322Z"
            },
            {
                "code": "2115",
                "id": "019dda01-041b-7303-b726-4eb076c515f3",
                "intercompany": false,
                "name": "AP - Revaluation",
                "status": "ACTIVE",
                "subtype": "Other Current Liability",
                "type": "LIABILITY",
                "updatedAt": "2026-04-29T16:09:52.931322Z"
            },
            {
                "code": "3990",
                "id": "019dda01-0421-7244-b03d-074660daae31",
                "intercompany": false,
                "name": "Cumulative Translation Adjustment",
                "status": "ACTIVE",
                "subtype": "Equity",
                "type": "EQUITY",
                "updatedAt": "2026-04-29T16:09:52.931322Z"
            }
        ],
        "bankAccounts": [
            {
                "accountCode": "11111",
                "bankName": "Mercury",
                "currency": "USD",
                "id": "019dda01-061b-72f4-b53d-3db81525dccc",
                "mask": "3927",
                "name": "Mercury Checking US",
                "status": "ACTIVE",
                "subsidiaryID": "019dda00-f893-735c-963d-d3e194077708",
                "transactionsStartDate": "2025-04-29"
            },
            {
                "accountCode": "21110",
                "bankName": "Brex",
                "currency": "USD",
                "id": "019dda01-061b-775c-9f6d-6f5371b44197",
                "mask": "7140",
                "name": "Brex Credit Card US",
                "status": "ACTIVE",
                "subsidiaryID": "019dda00-f893-735c-963d-d3e194077708",
                "transactionsStartDate": "2025-04-29"
            }
        ],
        "fields": [
            {
                "id": "019dda01-0370-76ef-9807-566afe6fd658",
                "name": "Department",
                "settings": {
                    "EXPENSES": {
                        "display": "STANDALONE",
                        "mandatory": false
                    },
                    "REVENUE": {
                        "display": "STANDALONE",
                        "mandatory": false
                    }
                },
                "updatedAt": "2026-04-29T16:09:52.76206Z",
                "values": [
                    {
                        "deactivated": false,
                        "id": "019dda01-0370-7139-8778-0b8c3dd373ab",
                        "name": "Engineering"
                    },
                    {
                        "deactivated": false,
                        "id": "019dda01-0370-739d-a8a6-0730eb034d56",
                        "name": "Product"
                    },
                    {
                        "deactivated": false,
                        "id": "019dda01-0370-72e2-9005-f1a5194fd926",
                        "name": "Sales"
                    },
                    {
                        "deactivated": false,
                        "id": "019dda01-0370-77e7-8c20-46d92414be3a",
                        "name": "Marketing"
                    },
                    {
                        "deactivated": false,
                        "id": "019dda01-0370-739b-ab24-c2ae50129adc",
                        "name": "Finance"
                    },
                    {
                        "deactivated": false,
                        "id": "019dda01-0370-71fc-b112-d27fbf6b1f38",
                        "name": "Legal"
                    },
                    {
                        "deactivated": false,
                        "id": "019dda01-0370-77f8-9fca-86e5ea1778bf",
                        "name": "People"
                    },
                    {
                        "deactivated": false,
                        "id": "019dda01-0370-7408-a968-52db515e0394",
                        "name": "Customer Success"
                    }
                ]
            },
            {
                "id": "019dda01-03c2-74c9-b01d-3ed8fc8c1f75",
                "name": "Event",
                "settings": {
                    "EXPENSES": {
                        "display": "STANDALONE",
                        "mandatory": false
                    },
                    "REVENUE": {
                        "display": "STANDALONE",
                        "mandatory": false
                    }
                },
                "updatedAt": "2026-04-29T16:09:52.840652Z",
                "values": [
                    {
                        "deactivated": false,
                        "id": "019dda01-03c2-70ab-95c0-3e5851b47f07",
                        "name": "Annual Summit"
                    },
                    {
                        "deactivated": false,
                        "id": "019dda01-03c2-7226-9b94-47a75a21381f",
                        "name": "Quarterly Review"
                    },
                    {
                        "deactivated": false,
                        "id": "019dda01-03c2-7523-892d-820edfe564e2",
                        "name": "Product Launch"
                    },
                    {
                        "deactivated": false,
                        "id": "019dda01-03c2-7197-a491-9dfa73523c8d",
                        "name": "Team Offsite"
                    },
                    {
                        "deactivated": false,
                        "id": "019dda01-03c2-75d1-9f75-dd22e56c1b8d",
                        "name": "Customer Onboarding"
                    }
                ]
            }
        ],
        "settlementBankTransactionIDs": [],
        "settlementSyncStartEntryID": 0,
        "subsidiaries": [
            {
                "currency": "USD",
                "id": "019dda00-f893-735c-963d-d3e194077708",
                "timezone": "Etc/UTC",
                "tradeName": "Expensify Sandbox",
                "type": "LEGAL_ENTITY"
            }
        ],
        "taxRates": [
            {
                "code": "AT_STANDARD",
                "country": "AT",
                "description": "Standard",
                "id": "3c338ef3-c65e-495b-bafd-3ef32aceaac6",
                "percentage": "20.0000"
            },
            {
                "code": "AT_REDUCED1",
                "country": "AT",
                "description": "Reduced",
                "id": "88b707b1-4def-40a8-a129-8e2a022292a7",
                "percentage": "13.0000"
            },
            {
                "code": "AT_REDUCED2",
                "country": "AT",
                "description": "Reduced",
                "id": "c16360f2-aa8a-486b-a366-e3cd52bb7c59",
                "percentage": "10.0000"
            },
            {
                "code": "AT_ZERO",
                "country": "AT",
                "description": "Zero Rated",
                "id": "dd717710-bc0c-4253-814e-115a3785d467",
                "percentage": "0.0000"
            },
            {
                "code": "AT_REVERSE_CHARGE",
                "country": "AT",
                "description": "Reverse Charge",
                "id": "70f2b3b1-73c8-47b1-9e3e-824d7c3364c7",
                "percentage": "0.0000"
            },
            {
                "code": "AT_ZERO_NON_EU",
                "country": "AT",
                "description": "Zero Rated (Non-EU)",
                "id": "72cd2860-3940-45e0-b9f7-8925bf4e232e",
                "percentage": "0.0000"
            },
            {
                "code": "AT_EXEMPT",
                "country": "AT",
                "description": "Exempt",
                "id": "f180da57-2408-49de-8075-677a816fd4bb",
                "percentage": "0.0000"
            },
            {
                "code": "AT_NO_VAT",
                "country": "AT",
                "description": "No VAT",
                "id": "b71ff4e2-8014-4fab-ba25-b8e62785ac3e",
                "percentage": "0.0000"
            },
            {
                "code": "AU_GST",
                "country": "AU",
                "description": "GST",
                "id": "150354a7-167a-4ac5-b750-e235aba28438",
                "percentage": "10.0000"
            },
            {
                "code": "AU_GST_FREE",
                "country": "AU",
                "description": "GST Free",
                "id": "8385fba3-be8a-43ef-90dd-b8711cc06eed",
                "percentage": "0.0000"
            },
            {
                "code": "AU_GST_BAS_EXCLUDED",
                "country": "AU",
                "description": "GST BAS Excluded",
                "id": "736f2a26-4d26-43a4-9a10-806af4397188",
                "percentage": "0.0000"
            },
            {
                "code": "AU_GST_INPUT_TAXED",
                "country": "AU",
                "description": "GST Input Taxed",
                "id": "55bb8810-fef6-408f-a320-ce1a4dbe1739",
                "percentage": "0.0000"
            },
            {
                "code": "AU_GST_ON_CAPITAL",
                "country": "AU",
                "description": "GST on Capital",
                "id": "839888b1-6c29-4d8d-97f9-9534a9ca5f0f",
                "percentage": "10.0000"
            },
            {
                "code": "AU_GST_EXEMPT",
                "country": "AU",
                "description": "GST Exempt",
                "id": "58dd3ad1-e272-41da-b4f2-d7cd616a5dba",
                "percentage": "0.0000"
            },
            {
                "code": "AU_NO_GST",
                "country": "AU",
                "description": "No GST",
                "id": "3c532161-1eda-4223-9bb8-5b5aa9198006",
                "percentage": "0.0000"
            },
            {
                "code": "CA_EXEMPT",
                "country": "CA",
                "description": "Exempt",
                "id": "c93b3547-80d3-4a34-b60d-68c89448389a",
                "percentage": "0.0000"
            },
            {
                "code": "CA_ZERO",
                "country": "CA",
                "description": "Zero Rated",
                "id": "97f7cff6-698f-471a-98cf-08e91544b69e",
                "percentage": "0.0000"
            },
            {
                "code": "CA_GST_PST",
                "country": "CA",
                "description": "GST/PST",
                "id": "4c3cec4d-ecbd-4c95-9442-41d74675ee52",
                "percentage": "12.0000"
            },
            {
                "code": "CA_PST",
                "country": "CA",
                "description": "PST",
                "id": "8c1dfb6b-36b0-4914-9dc2-9d9b173a9f28",
                "percentage": "7.0000"
            },
            {
                "code": "CA_BC_PST",
                "country": "CA",
                "description": "BC PST",
                "id": "2dc8cf70-813e-4bdc-aad5-31dcdd3f757e",
                "percentage": "7.0000"
            },
            {
                "code": "CA_HST_NS",
                "country": "CA",
                "description": "HST NS",
                "id": "80133d50-2014-47a4-8d22-8b85680e4ac8",
                "percentage": "14.0000"
            },
            {
                "code": "CA_NO_GST_HST",
                "country": "CA",
                "description": "No GST/HST",
                "id": "1be1094c-6acc-43b9-a266-9ae0fbd62645",
                "percentage": "0.0000"
            },
            {
                "code": "CA_BC_GST_PST",
                "country": "CA",
                "description": "BC GST/PST",
                "id": "3de706d3-b65b-4211-82a0-e95b15662a9c",
                "percentage": "12.0000"
            },
            {
                "code": "CA_MB_PST",
                "country": "CA",
                "description": "MB PST",
                "id": "ce451f64-4e3d-46b6-9814-339d52beb1d5",
                "percentage": "7.0000"
            },
            {
                "code": "CA_MB_GST_PST",
                "country": "CA",
                "description": "MB GST/PST",
                "id": "cfa3060f-9d07-441e-9e54-0928ead5b5b0",
                "percentage": "12.0000"
            },
            {
                "code": "CA_SK_PST",
                "country": "CA",
                "description": "SK PST",
                "id": "fea51d4f-dce0-4914-8fd9-65607f9e3e92",
                "percentage": "6.0000"
            },
            {
                "code": "CA_SK_GST_PST",
                "country": "CA",
                "description": "SK GST/PST",
                "id": "346ddfae-37a3-497d-8b65-c047e35bcb64",
                "percentage": "11.0000"
            },
            {
                "code": "CA_QC_QST",
                "country": "CA",
                "description": "QC QST",
                "id": "02800654-b6a4-4b33-8636-3d726ba371f5",
                "percentage": "9.9750"
            },
            {
                "code": "CA_NB_HST",
                "country": "CA",
                "description": "NB HST",
                "id": "25a5b3eb-ff43-407a-b75e-f477811cd892",
                "percentage": "15.0000"
            },
            {
                "code": "CA_NL_HST",
                "country": "CA",
                "description": "NL HST",
                "id": "51343425-bc3a-49c1-998c-e536d14da065",
                "percentage": "15.0000"
            },
            {
                "code": "CA_PE_HST",
                "country": "CA",
                "description": "PE HST",
                "id": "e6fbf585-55bf-4d4a-b8b1-230c5046f4a4",
                "percentage": "15.0000"
            },
            {
                "code": "CA_GST",
                "country": "CA",
                "description": "GST",
                "id": "e640294e-9296-4ea7-9d6e-fb8cf033258b",
                "percentage": "5.0000"
            },
            {
                "code": "CA_GST_QST",
                "country": "CA",
                "description": "GST/QST",
                "id": "a6b1a654-6497-4a37-adc8-300cbb7b97a0",
                "percentage": "14.9750"
            },
            {
                "code": "CA_HST_ON",
                "country": "CA",
                "description": "HST ON",
                "id": "f5241ff9-809f-4cc6-bc2b-b09575e0ad68",
                "percentage": "13.0000"
            },
            {
                "code": "CA_HST",
                "country": "CA",
                "description": "HST",
                "id": "4be7e7e5-8f62-4374-802e-4386f3d10f78",
                "percentage": "15.0000"
            },
            {
                "code": "CH_ZERO",
                "country": "CH",
                "description": "Zero Rated",
                "id": "75f2a4ab-1e16-4533-be25-7eeeb78052db",
                "percentage": "0.0000"
            },
            {
                "code": "CH_REDUCED1",
                "country": "CH",
                "description": "Reduced",
                "id": "0fecc0fe-05a0-4b84-bfb5-ac0e298c7382",
                "percentage": "2.6000"
            },
            {
                "code": "CH_REDUCED2",
                "country": "CH",
                "description": "Reduced",
                "id": "fc9b0e16-1d02-4ace-a8cc-75bfac565cfd",
                "percentage": "3.8000"
            },
            {
                "code": "CH_STANDARD",
                "country": "CH",
                "description": "Standard",
                "id": "06330a73-5f3a-45da-bcf5-11f0f3b1d74b",
                "percentage": "8.1000"
            },
            {
                "code": "CH_EXEMPT",
                "country": "CH",
                "description": "Exempt",
                "id": "a2c677a2-bf67-4255-b036-39b5b3344e45",
                "percentage": "0.0000"
            },
            {
                "code": "CH_NO_VAT",
                "country": "CH",
                "description": "No VAT",
                "id": "afa6b841-d546-4706-9329-c527a272c47f",
                "percentage": "0.0000"
            },
            {
                "code": "DE_VAT_EXEMPT",
                "country": "DE",
                "description": "VAT Exempt",
                "id": "16e09164-906c-48be-bb07-1823b8dc4f7b",
                "percentage": "0.0000"
            },
            {
                "code": "DE_NO_VAT",
                "country": "DE",
                "description": "No VAT",
                "id": "4d8afbda-c86b-4ea5-9205-b97b24e16b77",
                "percentage": "0.0000"
            },
            {
                "code": "DE_EU_REVERSE",
                "country": "DE",
                "description": "EU Reverse Charge",
                "id": "86a89f5a-e227-41df-b11d-2d0808249c24",
                "percentage": "0.0000"
            },
            {
                "code": "DE_NON_EU_REVERSE",
                "country": "DE",
                "description": "Non-EU Reverse Charge",
                "id": "0acc6875-77ad-4939-9990-50f669a557ab",
                "percentage": "0.0000"
            },
            {
                "code": "DE_IMPORT_VAT",
                "country": "DE",
                "description": "Import VAT",
                "id": "198e4bf6-70d6-47ee-9352-81e5097ef3fb",
                "percentage": "0.0000"
            },
            {
                "code": "DE_VAT_STANDARD",
                "country": "DE",
                "description": "VAT Standard",
                "id": "2ecd2cc4-a23d-43f4-8990-840aa3cf20bf",
                "percentage": "19.0000"
            },
            {
                "code": "DE_VAT_REDUCED",
                "country": "DE",
                "description": "VAT Reduced",
                "id": "0e0162d6-53ed-4144-bc8f-bb582abf9244",
                "percentage": "7.0000"
            },
            {
                "code": "DE_VAT_ZERO",
                "country": "DE",
                "description": "VAT Zero Rated",
                "id": "9931ce87-9d98-4d80-8de7-70ff5cb2dbd0",
                "percentage": "0.0000"
            },
            {
                "code": "FR_SUPER_REDUCED_RATE",
                "country": "FR",
                "description": "Super-Reduced Rate",
                "id": "a5bb24fd-cd9c-4084-a724-411cca1e7e3d",
                "percentage": "2.1000"
            },
            {
                "code": "FR_REDUCED_RATE",
                "country": "FR",
                "description": "Reduced Rate 10%",
                "id": "c0e53664-823c-4e3c-b4cf-0eb7755149ce",
                "percentage": "10.0000"
            },
            {
                "code": "FR_STANDARD_RATE",
                "country": "FR",
                "description": "Standard Rate",
                "id": "4fc7153d-9cac-497f-b278-cf074557b2b3",
                "percentage": "20.0000"
            },
            {
                "code": "FR_EXEMPT",
                "country": "FR",
                "description": "Exempt",
                "id": "24e94d85-db3c-4694-b6bb-ae88a7f8b079",
                "percentage": "0.0000"
            },
            {
                "code": "FR_REDUCED_RATE_5_5",
                "country": "FR",
                "description": "Reduced Rate 5.5%",
                "id": "27739f89-0b48-497f-873e-4702ff03b414",
                "percentage": "5.5000"
            },
            {
                "code": "GB_NON_VATABLE",
                "country": "GB",
                "description": "Non VATable",
                "id": "24439e3a-d348-4a23-ae06-8e8dcd396bc2",
                "percentage": "0.0000"
            },
            {
                "code": "GB_VAT_EXEMPT",
                "country": "GB",
                "description": "VAT Exempt",
                "id": "8124e871-2cb9-494e-b461-ad8168c4e29d",
                "percentage": "0.0000"
            },
            {
                "code": "GB_NO_VAT",
                "country": "GB",
                "description": "No VAT",
                "id": "2fd26951-5430-48ae-8481-d4a89daba262",
                "percentage": "0.0000"
            },
            {
                "code": "GB_VAT_STANDARD",
                "country": "GB",
                "description": "VAT Standard",
                "id": "48be0119-146b-42c4-82aa-ae20c42ed8c0",
                "percentage": "20.0000"
            },
            {
                "code": "GB_VAT_REDUCED",
                "country": "GB",
                "description": "VAT Reduced",
                "id": "0be872c6-dbee-4086-a342-48a4fb390afd",
                "percentage": "5.0000"
            },
            {
                "code": "GB_VAT_ZERO",
                "country": "GB",
                "description": "VAT Zero Rated",
                "id": "7e83763c-20db-4b22-8366-0fad5db8bc2b",
                "percentage": "0.0000"
            },
            {
                "code": "GB_VAT_REVERSE_CHARGE",
                "country": "GB",
                "description": "VAT Reverse Charge",
                "id": "01a28b1d-6cb0-4e23-9f25-46a86786a72c",
                "percentage": "0.0000"
            },
            {
                "code": "IE_STANDARD",
                "country": "IE",
                "description": "Standard",
                "id": "c8bef7a5-c308-4885-ab07-16f2acd9ac97",
                "percentage": "23.0000"
            },
            {
                "code": "IE_REDUCED1",
                "country": "IE",
                "description": "Reduced",
                "id": "dc4dc44d-5123-44a2-b914-67cbb7dfa56a",
                "percentage": "13.5000"
            },
            {
                "code": "IE_REDUCED2",
                "country": "IE",
                "description": "Reduced",
                "id": "cbdbb868-f2d0-4188-bd6b-795b2d3c7da3",
                "percentage": "9.0000"
            },
            {
                "code": "IE_REDUCED3",
                "country": "IE",
                "description": "Reduced",
                "id": "9195ffe5-46a7-41da-8676-46130f05e567",
                "percentage": "4.8000"
            },
            {
                "code": "IE_ZERO",
                "country": "IE",
                "description": "Zero Rated",
                "id": "282ce19e-c5c0-4d56-b878-c95dfd766156",
                "percentage": "0.0000"
            },
            {
                "code": "IE_EXEMPT",
                "country": "IE",
                "description": "Exempt",
                "id": "312823cb-f68e-48e5-8ad7-e617d68f0b83",
                "percentage": "0.0000"
            },
            {
                "code": "IE_NO_VAT",
                "country": "IE",
                "description": "No VAT",
                "id": "dc4c4af5-1c53-446b-b566-8115043cff0b",
                "percentage": "0.0000"
            },
            {
                "code": "IE_TAX_PURCHASES_NON_EU",
                "country": "IE",
                "description": "Tax on purchases non-EU",
                "id": "b40d27ad-5ecf-43fc-ae6e-f667e4166799",
                "percentage": "0.0000"
            },
            {
                "code": "IE_TAX_PURCHASES_EU",
                "country": "IE",
                "description": "Tax on purchases EU",
                "id": "b9e7a965-495f-4ebb-b163-3bdc0f0705b1",
                "percentage": "0.0000"
            },
            {
                "code": "IN_REDUCED_ZERO",
                "country": "IN",
                "description": "Reduced",
                "id": "2906f4b5-f5ac-4104-b2a6-05895a786315",
                "percentage": "0.0000"
            },
            {
                "code": "IN_REDUCED",
                "country": "IN",
                "description": "Reduced",
                "id": "d0fbc7b4-f34b-4dc0-93c6-4a3fda0a0e3b",
                "percentage": "5.0000"
            },
            {
                "code": "IN_STANDARD1",
                "country": "IN",
                "description": "Standard",
                "id": "b71b929e-077a-450d-9272-78769d41b4ca",
                "percentage": "12.0000"
            },
            {
                "code": "IN_STANDARD2",
                "country": "IN",
                "description": "Standard",
                "id": "1daa0e8f-0cf9-4df5-b78c-2259b4c5d475",
                "percentage": "18.0000"
            },
            {
                "code": "IN_HIGHER",
                "country": "IN",
                "description": "Higher",
                "id": "b47d285e-1d44-452c-b316-e6d50e0d54cd",
                "percentage": "28.0000"
            },
            {
                "code": "IN_EXEMPT",
                "country": "IN",
                "description": "Exempt",
                "id": "4b20b0e1-a1ff-4dd9-bfc8-c3ec0a394fa6",
                "percentage": "0.0000"
            },
            {
                "code": "IN_NO_GST",
                "country": "IN",
                "description": "No GST",
                "id": "5079aa80-413e-4de6-a512-7b18fa0b83fc",
                "percentage": "0.0000"
            },
            {
                "code": "JP_STANDARD_CONSUMPTION",
                "country": "JP",
                "description": "Standard Consumption Tax",
                "id": "53774c3b-60b2-4cd0-adcc-6e154f93a812",
                "percentage": "10.0000"
            },
            {
                "code": "JP_REDUCED_CONSUMPTION",
                "country": "JP",
                "description": "Reduced Consumption Tax",
                "id": "29a3b21c-dceb-4e6d-a0e7-4c7809f43bfc",
                "percentage": "8.0000"
            },
            {
                "code": "JP_EXEMPT",
                "country": "JP",
                "description": "Exempt",
                "id": "57e86c73-886d-43a0-b76f-450fbab04a7d",
                "percentage": "0.0000"
            },
            {
                "code": "LT_PVM1_STANDARD",
                "country": "LT",
                "description": "PVM1 Standard",
                "id": "309f5489-a652-41c4-97a6-b3099a4c50fe",
                "percentage": "21.0000"
            },
            {
                "code": "LT_PVM2_REDUCED",
                "country": "LT",
                "description": "PVM2 Reduced",
                "id": "44f115b1-e2a3-43c3-82a4-5e00523aebd0",
                "percentage": "9.0000"
            },
            {
                "code": "LT_PVM3_REDUCED",
                "country": "LT",
                "description": "PVM3 Reduced",
                "id": "e4471226-58a3-494b-a660-0417308421cb",
                "percentage": "5.0000"
            },
            {
                "code": "LT_PVM5_EXEMPT",
                "country": "LT",
                "description": "PVM5 Exempt",
                "id": "b567e3aa-d3b6-4cd7-856f-47b41bbbc817",
                "percentage": "0.0000"
            },
            {
                "code": "LT_PVM6",
                "country": "LT",
                "description": "PVM6",
                "id": "3bb510c1-3a0a-4928-9e11-5348864a49b5",
                "percentage": "21.0000"
            },
            {
                "code": "LT_PVM7",
                "country": "LT",
                "description": "PVM7",
                "id": "ff804e1a-fdad-45f0-9cc3-7f07fae62bf1",
                "percentage": "9.0000"
            },
            {
                "code": "LT_PVM8",
                "country": "LT",
                "description": "PVM8",
                "id": "9ff2b9e7-7722-4ade-a695-98d5f9403c0a",
                "percentage": "5.0000"
            },
            {
                "code": "LT_PVM9",
                "country": "LT",
                "description": "PVM9",
                "id": "c6371d73-5b7b-466a-93bd-a82dc389eaaa",
                "percentage": "21.0000"
            },
            {
                "code": "LT_PVM36_EXEMPT",
                "country": "LT",
                "description": "PVM36 Exempt",
                "id": "4ee7a118-a5a9-486b-9a4d-0763445e5aae",
                "percentage": "0.0000"
            },
            {
                "code": "LT_PVM37",
                "country": "LT",
                "description": "PVM37",
                "id": "d5ca069a-7166-4339-b4c6-ed1afb89e13d",
                "percentage": "5.0000"
            },
            {
                "code": "LT_PVM38",
                "country": "LT",
                "description": "PVM38",
                "id": "c07cc5d5-5f8a-45bd-b016-ee919eadaac2",
                "percentage": "0.0000"
            },
            {
                "code": "LT_PVM39_EXEMPT",
                "country": "LT",
                "description": "PVM39 Exempt",
                "id": "34fdff41-72a2-4a65-94b9-275e71b74868",
                "percentage": "0.0000"
            },
            {
                "code": "LT_PVM40",
                "country": "LT",
                "description": "PVM40",
                "id": "741a74af-0439-4527-8567-a65cf78bafb2",
                "percentage": "5.0000"
            },
            {
                "code": "LT_PVM41",
                "country": "LT",
                "description": "PVM41",
                "id": "c63a51f8-31fc-4764-850c-46ccc4c65b77",
                "percentage": "0.0000"
            },
            {
                "code": "LT_PVM42_EXEMPT",
                "country": "LT",
                "description": "PVM42 Exempt",
                "id": "8671966f-20d1-4f74-85c0-55479748a8bd",
                "percentage": "0.0000"
            },
            {
                "code": "LT_PVM43",
                "country": "LT",
                "description": "PVM43",
                "id": "6c6e86e4-e978-4218-81e3-a38791a35653",
                "percentage": "21.0000"
            },
            {
                "code": "LT_PVM44",
                "country": "LT",
                "description": "PVM44",
                "id": "e740daee-0c8b-47c8-8cb2-ce07c0f913b0",
                "percentage": "9.0000"
            },
            {
                "code": "LT_PVM45",
                "country": "LT",
                "description": "PVM45",
                "id": "9c70e0c1-666a-408c-ae1b-8882eb050231",
                "percentage": "5.0000"
            },
            {
                "code": "LT_PVM46",
                "country": "LT",
                "description": "PVM46",
                "id": "f6e4a463-955d-40cd-9989-0642d90503f0",
                "percentage": "0.0000"
            },
            {
                "code": "LT_PVM47_EXEMPT",
                "country": "LT",
                "description": "PVM47 Exempt",
                "id": "c7e08753-63ab-4883-9749-cb1775e92d7e",
                "percentage": "0.0000"
            },
            {
                "code": "LT_PVM48_EXEMPT",
                "country": "LT",
                "description": "PVM48 Exempt",
                "id": "4a7eb7a5-fbaa-4ada-9330-07bf0fb2137d",
                "percentage": "0.0000"
            },
            {
                "code": "LT_PVM49",
                "country": "LT",
                "description": "PVM49",
                "id": "144bbc5d-919b-4ed1-bd0d-d92553af2039",
                "percentage": "6.0000"
            },
            {
                "code": "LT_PVM50",
                "country": "LT",
                "description": "PVM50",
                "id": "a54bcddc-6344-432c-95b6-2f252ecf6e3b",
                "percentage": "0.0000"
            },
            {
                "code": "LT_PVM51",
                "country": "LT",
                "description": "PVM51",
                "id": "d355a744-b6bf-42c6-9a9c-48953e5a0122",
                "percentage": "0.0000"
            },
            {
                "code": "LT_PVM52",
                "country": "LT",
                "description": "PVM52",
                "id": "25515b63-19b0-43a4-a1ed-b55e88df2d9a",
                "percentage": "9.0000"
            },
            {
                "code": "LT_PVM53",
                "country": "LT",
                "description": "PVM53",
                "id": "fb8ac81a-3bb9-4e83-b238-f9157bbe7ca8",
                "percentage": "5.0000"
            },
            {
                "code": "LT_PVM54",
                "country": "LT",
                "description": "PVM54",
                "id": "f6ffc161-558d-4abc-9793-6ac2766a3f37",
                "percentage": "9.0000"
            },
            {
                "code": "LT_PVM55",
                "country": "LT",
                "description": "PVM55",
                "id": "a01d1835-9be2-4681-a884-b20df56e97b0",
                "percentage": "0.0000"
            },
            {
                "code": "LT_PVM56",
                "country": "LT",
                "description": "PVM56",
                "id": "9df7d05a-897f-4992-bd2c-6f609deef0ee",
                "percentage": "0.0000"
            },
            {
                "code": "LT_PVM57",
                "country": "LT",
                "description": "PVM57",
                "id": "549cf1d8-0c15-4d68-9f78-9ee468d73844",
                "percentage": "9.0000"
            },
            {
                "code": "LT_PVM100",
                "country": "LT",
                "description": "PVM100",
                "id": "f618cdb2-da38-4a07-8198-e5f5b0d8005b",
                "percentage": "0.0000"
            },
            {
                "code": "LT_NO_VAT",
                "country": "LT",
                "description": "No VAT",
                "id": "9b38d962-a220-4778-a22e-3c200adcc866",
                "percentage": "0.0000"
            },
            {
                "code": "LT_PVM12",
                "country": "LT",
                "description": "PVM12",
                "id": "0c4a4786-40d2-45e7-8cc2-99e5b8a97781",
                "percentage": "0.0000"
            },
            {
                "code": "LT_PVM13",
                "country": "LT",
                "description": "PVM13",
                "id": "3ea78a34-3298-4369-b804-fc199fdd0460",
                "percentage": "0.0000"
            },
            {
                "code": "LT_PVM14",
                "country": "LT",
                "description": "PVM14",
                "id": "3db743df-7c16-4d44-824c-66477232094d",
                "percentage": "0.0000"
            },
            {
                "code": "LT_PVM15_EXEMPT",
                "country": "LT",
                "description": "PVM15 Exempt",
                "id": "f87f68dc-954f-40f0-9744-fa48f4fef475",
                "percentage": "0.0000"
            },
            {
                "code": "LT_PVM16_REVERSE",
                "country": "LT",
                "description": "PVM16 Reverse",
                "id": "607619cc-24a2-48f2-a6a5-3eca9354efda",
                "percentage": "0.0000"
            },
            {
                "code": "LT_PVM17_REVERSE",
                "country": "LT",
                "description": "PVM17 Reverse",
                "id": "710385d1-e7bb-4e16-9199-79c716ab18b6",
                "percentage": "9.0000"
            },
            {
                "code": "LT_PVM18_REVERSE",
                "country": "LT",
                "description": "PVM18 Reverse",
                "id": "bc10070f-a1d6-4c2a-8d81-62b9353f19ed",
                "percentage": "5.0000"
            },
            {
                "code": "LT_PVM19_EXEMPT",
                "country": "LT",
                "description": "PVM19 Exempt",
                "id": "48348dff-e4dc-429d-b408-bb549c77efe2",
                "percentage": "0.0000"
            },
            {
                "code": "LT_PVM20_REVERSE",
                "country": "LT",
                "description": "PVM20 Reverse",
                "id": "0c4fae9a-9d3a-4fed-b1ea-27017bb694e9",
                "percentage": "0.0000"
            },
            {
                "code": "LT_PVM21_REVERSE",
                "country": "LT",
                "description": "PVM21 Reverse",
                "id": "76181897-e49b-478d-97e8-dfb7fcd9e8e8",
                "percentage": "0.0000"
            },
            {
                "code": "LT_PVM25",
                "country": "LT",
                "description": "PVM25",
                "id": "2cb677a1-c4b4-42eb-8417-d01965b9e13b",
                "percentage": "21.0000"
            },
            {
                "code": "LT_PVM26",
                "country": "LT",
                "description": "PVM26",
                "id": "902e2a5d-2023-41fb-b708-a2ad0d8dedf0",
                "percentage": "9.0000"
            },
            {
                "code": "LT_PVM27",
                "country": "LT",
                "description": "PVM27",
                "id": "3bd46b59-21d1-47b1-a18f-20afcbaca4b5",
                "percentage": "5.0000"
            },
            {
                "code": "LT_PVM28",
                "country": "LT",
                "description": "PVM28",
                "id": "bdae2b61-3dea-4bc4-b764-c334c49469cc",
                "percentage": "0.0000"
            },
            {
                "code": "LT_PVM29_EXEMPT",
                "country": "LT",
                "description": "PVM29 Exempt",
                "id": "4b9d1914-2847-41a3-a37b-c88177b7deb3",
                "percentage": "0.0000"
            },
            {
                "code": "LT_PVM30",
                "country": "LT",
                "description": "PVM30",
                "id": "797bdad6-d5e2-4af6-a8e9-a3c33f584f32",
                "percentage": "9.0000"
            },
            {
                "code": "LT_PVM31",
                "country": "LT",
                "description": "PVM31",
                "id": "ee8cb32c-085c-4129-8eaf-7adf65891b79",
                "percentage": "5.0000"
            },
            {
                "code": "LT_PVM32",
                "country": "LT",
                "description": "PVM32",
                "id": "844ac988-6bb7-4202-8557-3d1eedff4072",
                "percentage": "21.0000"
            },
            {
                "code": "LT_PVM33",
                "country": "LT",
                "description": "PVM33",
                "id": "0edeaa66-0d78-4a10-8ebd-320b72f76518",
                "percentage": "0.0000"
            },
            {
                "code": "LT_PVM34_EXEMPT",
                "country": "LT",
                "description": "PVM34 Exempt",
                "id": "2a4ae9d5-43ac-4e48-b785-c94b8b183981",
                "percentage": "0.0000"
            },
            {
                "code": "LT_PVM35",
                "country": "LT",
                "description": "PVM35",
                "id": "05b1d881-72d0-4acb-a118-e318c17ed03f",
                "percentage": "0.0000"
            },
            {
                "code": "NL_TAX_ON_PURCHASES",
                "country": "NL",
                "description": "Tax on Purchases",
                "id": "668b5a5b-1c6d-4565-9e9b-bdf8ea18f890",
                "percentage": "21.0000"
            },
            {
                "code": "NL_VAT_ZERO_RATED",
                "country": "NL",
                "description": "VAT zero-rated",
                "id": "70f05558-434a-419b-a1f1-c16586ffae38",
                "percentage": "0.0000"
            },
            {
                "code": "NL_REVERSE_CHARGE_EXPENSES",
                "country": "NL",
                "description": "Reverse Charge Expenses",
                "id": "c0abce99-8369-4c9c-aa1c-10ee49d6eb81",
                "percentage": "0.0000"
            },
            {
                "code": "NL_NO_VAT",
                "country": "NL",
                "description": "No VAT",
                "id": "7413315f-5938-4df5-9f87-e6fe489595fd",
                "percentage": "0.0000"
            },
            {
                "code": "NL_VAT_EXEMPT",
                "country": "NL",
                "description": "VAT Exempt",
                "id": "d4d53946-efde-4fa5-9770-a5cbabb09aaa",
                "percentage": "0.0000"
            },
            {
                "code": "NL_VAT_REDUCED_RATE",
                "country": "NL",
                "description": "Vat Reduced Rate",
                "id": "6e58655f-ec48-49bc-a368-338a11b5200c",
                "percentage": "9.0000"
            },
            {
                "code": "NZ_STANDARD",
                "country": "NZ",
                "description": "Standard",
                "id": "ca3a24df-9900-472a-bab6-f43aa1d7f776",
                "percentage": "15.0000"
            },
            {
                "code": "NZ_ZERO",
                "country": "NZ",
                "description": "Zero Rated",
                "id": "046104ba-9bad-47f4-82d3-db8551796012",
                "percentage": "0.0000"
            },
            {
                "code": "NZ_GST_EXEMPT",
                "country": "NZ",
                "description": "GST Exempt",
                "id": "dac36f7b-3906-4d03-ba82-b2af19edb862",
                "percentage": "0.0000"
            },
            {
                "code": "NZ_NO_GST",
                "country": "NZ",
                "description": "No GST",
                "id": "f527640e-61fa-44a7-8509-3ec98359bcd0",
                "percentage": "0.0000"
            },
            {
                "code": "PL_STANDARD",
                "country": "PL",
                "description": "Standard",
                "id": "26f32762-84da-4799-a5d1-49e85d9ecb15",
                "percentage": "23.0000"
            },
            {
                "code": "PL_ZERO",
                "country": "PL",
                "description": "Zero Rated",
                "id": "62325a12-7c04-4754-8744-9b80a373712d",
                "percentage": "0.0000"
            },
            {
                "code": "PL_VAT_EXEMPT",
                "country": "PL",
                "description": "VAT Exempt",
                "id": "f75e9005-4c2e-4eb9-b524-a4e57cb9222d",
                "percentage": "0.0000"
            },
            {
                "code": "PL_NO_VAT",
                "country": "PL",
                "description": "No VAT",
                "id": "17c09b20-9853-401c-b7ae-36d528abb4c2",
                "percentage": "0.0000"
            },
            {
                "code": "PL_REDUCED1",
                "country": "PL",
                "description": "Reduced",
                "id": "d9fcd2ba-8806-499c-9dea-d2dd8d965897",
                "percentage": "8.0000"
            },
            {
                "code": "PL_REDUCED2",
                "country": "PL",
                "description": "Reduced",
                "id": "4ae1e637-8163-4b8e-9281-e9184b8c9912",
                "percentage": "5.0000"
            },
            {
                "code": "RS_STANDARD",
                "country": "RS",
                "description": "Standard Rate",
                "id": "3c9a95f9-8f05-44e7-9504-9ada30fd21db",
                "percentage": "20.0000"
            },
            {
                "code": "RS_REDUCED",
                "country": "RS",
                "description": "Reduced Rate",
                "id": "a123d3ab-7876-4f44-a019-727c81e38e47",
                "percentage": "10.0000"
            },
            {
                "code": "RS_ZERO_RATED",
                "country": "RS",
                "description": "Zero Rated",
                "id": "9dfa1ca7-b402-40b4-9178-69f6b0ad5720",
                "percentage": "0.0000"
            },
            {
                "code": "RS_REVERSE_CHARGE",
                "country": "RS",
                "description": "Reverse Charge",
                "id": "7a96405f-28c9-4fcf-ab52-93df06fd2b3c",
                "percentage": "0.0000"
            },
            {
                "code": "SE_STANDARD",
                "country": "SE",
                "description": "Standard",
                "id": "dfd38a56-c0a5-4c6c-a21c-25e42dd9e4e2",
                "percentage": "25.0000"
            },
            {
                "code": "SE_ZERO",
                "country": "SE",
                "description": "Zero Rated",
                "id": "828c0ca3-f9fe-42f1-a85a-367162b7d0a7",
                "percentage": "0.0000"
            },
            {
                "code": "SE_VAT_EXEMPT",
                "country": "SE",
                "description": "VAT Exempt",
                "id": "21adc3bb-c4ea-46d7-8a72-85c4ba58bcdd",
                "percentage": "0.0000"
            },
            {
                "code": "SE_NO_VAT",
                "country": "SE",
                "description": "No VAT",
                "id": "ef0e6b98-d3f2-432d-8966-33f595dcf037",
                "percentage": "0.0000"
            },
            {
                "code": "SE_REDUCED1",
                "country": "SE",
                "description": "Reduced",
                "id": "ee0bb654-9b50-4c58-bb20-805a83a082fd",
                "percentage": "12.0000"
            },
            {
                "code": "SE_REDUCED2",
                "country": "SE",
                "description": "Reduced",
                "id": "33bef130-ae52-457a-9cda-6cbadffefca1",
                "percentage": "6.0000"
            },
            {
                "code": "SG_STANDARD",
                "country": "SG",
                "description": "Standard",
                "id": "cd161279-1761-47e4-9705-c17e8e2aef84",
                "percentage": "9.0000"
            },
            {
                "code": "SG_ZERO",
                "country": "SG",
                "description": "Zero Rated",
                "id": "d1a77787-a068-4142-a455-207395682330",
                "percentage": "0.0000"
            },
            {
                "code": "SG_EXEMPT",
                "country": "SG",
                "description": "Exempt",
                "id": "f458165e-09d0-43cc-a494-f0c96b805659",
                "percentage": "0.0000"
            },
            {
                "code": "SG_NO_GST",
                "country": "SG",
                "description": "No GST",
                "id": "5ccbeb8b-865d-4a60-a93d-054a125527ad",
                "percentage": "0.0000"
            },
            {
                "code": "XK_STANDARD",
                "country": "XK",
                "description": "Standard",
                "id": "b2fb583a-ba06-42af-8108-ef635464820d",
                "percentage": "18.0000"
            },
            {
                "code": "XK_REDUCED",
                "country": "XK",
                "description": "Reduced",
                "id": "3fd62641-b205-4ece-826e-3ec667eafea4",
                "percentage": "8.0000"
            },
            {
                "code": "XK_ZERO",
                "country": "XK",
                "description": "Zero Rated",
                "id": "2d6c38c1-5e18-42a7-8b77-d778270fed22",
                "percentage": "0.0000"
            },
            {
                "code": "XK_EXEMPT",
                "country": "XK",
                "description": "Exempt",
                "id": "2c7ed338-fe9b-437f-9ebe-75c26514638d",
                "percentage": "0.0000"
            },
            {
                "code": "XK_NO_VAT",
                "country": "XK",
                "description": "No VAT",
                "id": "ddc75f65-5c75-4fae-b311-76529d07895c",
                "percentage": "0.0000"
            },
            {
                "code": "ZA_ZERO",
                "country": "ZA",
                "description": "Zero Rated",
                "id": "00efb267-da80-4923-b766-9dc9f8216cd1",
                "percentage": "0.0000"
            },
            {
                "code": "ZA_STANDARD",
                "country": "ZA",
                "description": "Standard",
                "id": "f9435274-8d5c-461f-b8d7-f81c85d845db",
                "percentage": "15.0000"
            },
            {
                "code": "ZA_EXEMPT",
                "country": "ZA",
                "description": "Exempt",
                "id": "47167c36-e610-4744-a469-9ee3f941a657",
                "percentage": "0.0000"
            },
            {
                "code": "ZA_NO_VAT",
                "country": "ZA",
                "description": "No VAT",
                "id": "391d8f28-e743-47be-ba49-9431b2965c73",
                "percentage": "0.0000"
            }
        ],
        "travelSettlementBankTransactionIDs": [],
        "travelSettlementSyncStartEntryID": 0,
        "vendors": [
            {
                "email": "truphd01+accounting1@gmail.com",
                "id": "019f424f-47b0-73e3-97eb-83299a72fcc9",
                "name": "truphd01+accounting1@gmail.com",
                "updatedAt": "2026-07-08T15:18:39.795244Z"
            },
            {
                "email": "truphd01+reject3@gmail.com",
                "id": "019f408d-bed1-7516-a89c-4700a837747a",
                "name": "Truph01",
                "updatedAt": "2026-07-08T07:07:39.092242Z"
            },
            {
                "email": "admin+sage@abdelhafidh.com",
                "id": "019f3907-4a98-70b1-b5b0-ed9c4a36aff3",
                "name": "Abdelhafidh",
                "updatedAt": "2026-07-06T20:06:36.80585Z"
            },
            {
                "email": "www@perdiem.com",
                "id": "019f36c8-a812-7163-98e9-e009bff7fbc6",
                "name": "WWW Perdiem",
                "updatedAt": "2026-07-06T09:35:47.732677Z"
            },
            {
                "email": "",
                "id": "019dda01-d365-7429-94a4-1b4f73ad1ea6",
                "name": "Lisa Thompson",
                "updatedAt": "2026-04-29T16:10:45.996461Z"
            },
            {
                "email": "",
                "id": "019dda01-d33a-7562-aa43-cd0762161b9b",
                "name": "David Kim",
                "updatedAt": "2026-04-29T16:10:45.953486Z"
            },
            {
                "email": "",
                "id": "019dda01-d310-707b-b015-f0a35ced1f70",
                "name": "Emily Rodriguez",
                "updatedAt": "2026-04-29T16:10:45.911433Z"
            },
            {
                "email": "",
                "id": "019dda01-d2e4-7223-b2e2-6c78916cffbc",
                "name": "Mike Johnson",
                "updatedAt": "2026-04-29T16:10:45.868508Z"
            },
            {
                "email": "",
                "id": "019dda01-d2b6-713a-8d76-46298dbb4253",
                "name": "Sarah Chen",
                "updatedAt": "2026-04-29T16:10:45.821471Z"
            },
            {
                "email": "",
                "id": "019dda01-0e60-77b8-8b5d-0a2513f050da",
                "name": "Rollerup",
                "updatedAt": "2026-04-29T16:09:55.559344Z"
            },
            {
                "email": "",
                "id": "019dda01-0e38-70bc-b418-adb4287e3e0f",
                "name": "HubSpot",
                "updatedAt": "2026-04-29T16:09:55.519369Z"
            },
            {
                "email": "",
                "id": "019dda01-0e0c-74f9-ad9b-fca0dc00fc2b",
                "name": "Salesforce",
                "updatedAt": "2026-04-29T16:09:55.476739Z"
            },
            {
                "email": "",
                "id": "019dda01-0de2-7504-af1c-75b80d7fbf69",
                "name": "AWS Fee",
                "updatedAt": "2026-04-29T16:09:55.432806Z"
            },
            {
                "email": "",
                "id": "019dda01-0db6-7789-99e0-9d81d99aa4f1",
                "name": "CircleCI",
                "updatedAt": "2026-04-29T16:09:55.388224Z"
            },
            {
                "email": "",
                "id": "019dda01-0d8d-7744-8909-4a53da44859c",
                "name": "Freeman Company",
                "updatedAt": "2026-04-29T16:09:55.348387Z"
            },
            {
                "email": "",
                "id": "019dda01-0d65-7078-9f2b-5c06cbef5b83",
                "name": "Google Ads",
                "updatedAt": "2026-04-29T16:09:55.308522Z"
            },
            {
                "email": "",
                "id": "019dda01-0d3e-7362-90ce-ec3c4f2e950b",
                "name": "LinkedIn Ads",
                "updatedAt": "2026-04-29T16:09:55.268756Z"
            },
            {
                "email": "",
                "id": "019dda01-0d17-72cd-8bdc-31f91bd4891c",
                "name": "Stripe",
                "updatedAt": "2026-04-29T16:09:55.230483Z"
            },
            {
                "email": "",
                "id": "019dda01-0ced-7157-9a7c-23a1c336f9a6",
                "name": "Mercury",
                "updatedAt": "2026-04-29T16:09:55.187158Z"
            },
            {
                "email": "",
                "id": "019dda01-0cc5-7129-90bb-b61c30e7348b",
                "name": "Embroker",
                "updatedAt": "2026-04-29T16:09:55.148459Z"
            },
            {
                "email": "",
                "id": "019dda01-0c9c-719f-a440-10a1847b9fc4",
                "name": "Marriott International",
                "updatedAt": "2026-04-29T16:09:55.107683Z"
            },
            {
                "email": "",
                "id": "019dda01-0c57-7307-ac66-d104c1be6eae",
                "name": "United Airlines",
                "updatedAt": "2026-04-29T16:09:55.038446Z"
            },
            {
                "email": "",
                "id": "019dda01-0c2d-704c-a63a-dd3b3bbe9c97",
                "name": "Wilson Sonsini",
                "updatedAt": "2026-04-29T16:09:54.996281Z"
            },
            {
                "email": "",
                "id": "019dda01-0c03-703d-81cb-105eedb22e3d",
                "name": "Deloitte",
                "updatedAt": "2026-04-29T16:09:54.954738Z"
            },
            {
                "email": "",
                "id": "019dda01-0bda-765f-85db-c2dc05f535f8",
                "name": "KPMG",
                "updatedAt": "2026-04-29T16:09:54.912983Z"
            },
            {
                "email": "",
                "id": "019dda01-0b9d-7476-8974-8a477d8ffe97",
                "name": "Apple",
                "updatedAt": "2026-04-29T16:09:54.851839Z"
            },
            {
                "email": "",
                "id": "019dda01-0b72-70b1-ad0f-9584eb8811b1",
                "name": "Dell Technologies",
                "updatedAt": "2026-04-29T16:09:54.808779Z"
            },
            {
                "email": "",
                "id": "019dda01-0b48-7078-af10-637da24b7867",
                "name": "Amazon Business",
                "updatedAt": "2026-04-29T16:09:54.76794Z"
            },
            {
                "email": "",
                "id": "019dda01-0b1e-7640-a46f-fd913c867b45",
                "name": "ConEdison",
                "updatedAt": "2026-04-29T16:09:54.725179Z"
            },
            {
                "email": "",
                "id": "019dda01-0af5-70d8-ae58-ab39dca78fd2",
                "name": "Verizon Business",
                "updatedAt": "2026-04-29T16:09:54.684258Z"
            },
            {
                "email": "",
                "id": "019dda01-0ac9-74e9-ad58-d86156b1e420",
                "name": "WeWork",
                "updatedAt": "2026-04-29T16:09:54.640713Z"
            },
            {
                "email": "",
                "id": "019dda01-0aa2-7613-9b4c-c0a815bf0c5d",
                "name": "Upwork",
                "updatedAt": "2026-04-29T16:09:54.602034Z"
            },
            {
                "email": "",
                "id": "019dda01-0a78-76c5-8e3c-51b45d7496a4",
                "name": "Toptal",
                "updatedAt": "2026-04-29T16:09:54.559783Z"
            },
            {
                "email": "",
                "id": "019dda01-0a50-7498-b051-8b32618bb372",
                "name": "Gusto",
                "updatedAt": "2026-04-29T16:09:54.520996Z"
            },
            {
                "email": "",
                "id": "019dda01-0a25-72f7-929b-dae2d2c43871",
                "name": "1Password",
                "updatedAt": "2026-04-29T16:09:54.476255Z"
            },
            {
                "email": "",
                "id": "019dda01-09fe-74c9-bc7a-fae40517afbc",
                "name": "Notion",
                "updatedAt": "2026-04-29T16:09:54.43718Z"
            },
            {
                "email": "",
                "id": "019dda01-09d6-7712-be7e-0ad36c3a57e8",
                "name": "Google Workspace",
                "updatedAt": "2026-04-29T16:09:54.397386Z"
            },
            {
                "email": "",
                "id": "019dda01-09ac-70ed-98d4-8c096ec98315",
                "name": "Figma",
                "updatedAt": "2026-04-29T16:09:54.355934Z"
            },
            {
                "email": "",
                "id": "019dda01-0981-7347-9cff-9181b84e1e96",
                "name": "JetBrains",
                "updatedAt": "2026-04-29T16:09:54.313025Z"
            },
            {
                "email": "",
                "id": "019dda01-091b-7639-a5f2-8ead4406fecf",
                "name": "Slack Technologies",
                "updatedAt": "2026-04-29T16:09:54.210538Z"
            },
            {
                "email": "",
                "id": "019dda01-08f2-7660-ad5b-1cd8ac237a3b",
                "name": "Datadog",
                "updatedAt": "2026-04-29T16:09:54.169426Z"
            },
            {
                "email": "",
                "id": "019dda01-08c6-73d5-8bcd-37d471fdd772",
                "name": "Snowflake",
                "updatedAt": "2026-04-29T16:09:54.126175Z"
            },
            {
                "email": "",
                "id": "019dda01-089c-7410-8d8c-5c299502a11a",
                "name": "Cloudflare",
                "updatedAt": "2026-04-29T16:09:54.083079Z"
            },
            {
                "email": "",
                "id": "019dda01-086b-700f-b3dd-d9956a91edb4",
                "name": "Google Cloud Platform",
                "updatedAt": "2026-04-29T16:09:54.03557Z"
            },
            {
                "email": "",
                "id": "019dda01-083b-745a-b265-9c87d8e84168",
                "name": "Amazon Web Services",
                "updatedAt": "2026-04-29T16:09:53.986631Z"
            }
        ]
    },
    "lastSync": {
        "errorDate": "",
        "errorMessage": "",
        "isAuthenticationError": false,
        "isConnected": true,
        "isSuccessful": true,
        "source": "NEWEXPENSIFY",
        "successfulDate": "2026-07-08T15:19:04+0000",
        "syncStatus": "",
        "syncType": ""
    }
}

@truph01

truph01 commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: dd41978878

ℹ️ 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".

Comment thread src/languages/en.ts
@s77rt

s77rt commented Jul 9, 2026

Copy link
Copy Markdown
Member Author

Bug 1: There is a different between design and the PR

Looks we have two copies in the design that reflect same label. i have updated to use the other one so we are consistent with other integrations.

@s77rt

s77rt commented Jul 9, 2026

Copy link
Copy Markdown
Member Author

Bug 2: The RBR is shown next to the "advance" option without any explanation:

How did you end up in that state? The RBR for that one is behind the "isExpensifyCardsEnabled" guard, same as the toggle for that option

@s77rt

s77rt commented Jul 9, 2026

Copy link
Copy Markdown
Member Author

@lakchote Please trigger translate workflow #95116 (comment)

@truph01

truph01 commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Bug 2: The RBR is shown next to the "advance" option without any explanation:

How did you end up in that state? The RBR for that one is behind the "isExpensifyCardsEnabled" guard, same as the toggle for that option

@s77rt Actually, I don't know the consistent steps to reach out that state.

@s77rt

s77rt commented Jul 9, 2026

Copy link
Copy Markdown
Member Author

That would make it not a blocker then, please continue with the review

@lakchote

lakchote commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

@lakchote Please trigger translate workflow #95116 (comment)

Done

@OSBotify

OSBotify commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

🦜 Polyglot Parrot! 🦜

Squawk! Looks like you added some shiny new English strings. Allow me to parrot them back to you in other tongues:

View the translation diff
diff --git a/src/languages/de.ts b/src/languages/de.ts
index e56b69f2448..c35343e7e15 100644
--- a/src/languages/de.ts
+++ b/src/languages/de.ts
@@ -5571,6 +5571,28 @@ _Für ausführlichere Anweisungen [besuchen Sie unsere Hilfeseite](${CONST.NETSU
                 description: 'Wählen Sie einen standardmäßigen Rillet-Anbieter für Ausgaben, die nicht automatisch zugeordnet werden.',
             },
             companyCardAccount: {label: 'Firmenkartenkonto', description: 'Wählen Sie aus, wohin die Firmenkartentransaktionen exportiert werden sollen.'},
+            noBankAccountsFound: 'Keine Bankkonten gefunden',
+            noBankAccountsFoundDescription: 'Bitte fügen Sie Bankkonten in Rillet hinzu und synchronisieren Sie die Verbindung erneut',
+            autoSyncDescription: 'Synchronisieren Sie Rillet und Expensify automatisch – jeden Tag. Berichte werden in Echtzeit synchronisiert.',
+            accountingMethods: {
+                label: 'Exportmethode',
+                description: 'Wählen Sie, wann Ausgaben exportiert werden sollen.',
+                values: {
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.ACCRUAL]: 'Periodenabgrenzung',
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.CASH]: 'Barzahlung',
+                },
+                alternateText: {
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.ACCRUAL]: 'Auslagen aus eigener Tasche werden nach endgültiger Genehmigung exportiert',
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.CASH]: 'Auslagen werden beim Bezahlen exportiert',
+                },
+            },
+            syncReimbursedReports: 'Erstattete Berichte synchronisieren',
+            syncReimbursedReportsDescription: 'Wenn ein Bericht per ACH bezahlt wird, wird in diesem Konto eine Rechnungszahlung erzeugt.',
+            billPaymentAccount: {label: 'Rechnungskonto', description: 'Wählen Sie aus, von wo Sie Rechnungen bezahlen möchten, und wir erstellen die Zahlung in Rillet.'},
+            syncExpensifyCardSettlements: 'Expensify Kartenabrechnungen synchronisieren',
+            settlementAccount: {label: 'Verrechnungskonto für Expensify Karte', description: 'Wählen Sie Ihr Abrechnungskonto, und wir erstellen die Zahlung in Rillet.'},
+            syncTravelInvoicingSettlements: 'Abrechnungen für Reiseabrechnungen synchronisieren',
+            travelInvoicingSettlementAccount: {label: 'Abrechnungskonto für Reiseabrechnungen', description: 'Wählen Sie Ihr Abrechnungskonto, und wir erstellen die Zahlung in Rillet.'},
         },
         type: {
             free: 'Kostenlos',
diff --git a/src/languages/es.ts b/src/languages/es.ts
index 7bedc025fdf..5e4a8e11b99 100644
--- a/src/languages/es.ts
+++ b/src/languages/es.ts
@@ -5405,6 +5405,28 @@ ${amount} para ${merchant} - ${date}`,
                 description: 'Elige un proveedor Rillet predeterminado para los gastos que no se asignen automáticamente.',
             },
             companyCardAccount: {label: 'Cuenta de tarjeta de empresa', description: 'Elige dónde exportar las transacciones de las tarjetas de la empresa.'},
+            noBankAccountsFound: 'No se encontraron cuentas bancarias',
+            noBankAccountsFoundDescription: 'Por favor, añade cuentas bancarias en Rillet y sincroniza la conexión de nuevo',
+            autoSyncDescription: 'Sincroniza Rillet y Expensify automáticamente, todos los días. Los informes se sincronizan en tiempo real.',
+            accountingMethods: {
+                label: 'Método de exportación',
+                description: 'Elige cuándo exportar los gastos.',
+                values: {
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.ACCRUAL]: 'Devengo',
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.CASH]: 'Efectivo',
+                },
+                alternateText: {
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.ACCRUAL]: 'Los gastos por cuenta propia se exportarán cuando se aprueben de forma definitiva',
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.CASH]: 'Los gastos por cuenta propia se exportarán cuando se paguen',
+                },
+            },
+            syncReimbursedReports: 'Sincronizar informes reembolsados',
+            syncReimbursedReportsDescription: 'Cuando se pague un informe mediante ACH, se generará un pago de factura en esta cuenta.',
+            billPaymentAccount: {label: 'Cuenta de pago de facturas', description: 'Elige desde dónde pagar las facturas y crearemos el pago en Rillet.'},
+            syncExpensifyCardSettlements: 'Sincronizar liquidaciones de la Tarjeta Expensify',
+            settlementAccount: {label: 'Cuenta de liquidación de la Tarjeta Expensify', description: 'Elige tu cuenta de liquidación y crearemos el pago en Rillet.'},
+            syncTravelInvoicingSettlements: 'Sincronizar liquidaciones de facturación de viajes',
+            travelInvoicingSettlementAccount: {label: 'Cuenta de liquidación de facturación de viajes', description: 'Elige tu cuenta de liquidación y crearemos el pago en Rillet.'},
         },
         type: {
             free: 'Gratis',
diff --git a/src/languages/fr.ts b/src/languages/fr.ts
index db68d4cce65..177d8c0a6bd 100644
--- a/src/languages/fr.ts
+++ b/src/languages/fr.ts
@@ -5582,6 +5582,31 @@ _Pour des instructions plus détaillées, [visitez notre site d’aide](${CONST.
                 description: 'Choisissez un fournisseur Rillet par défaut pour les dépenses qui ne correspondent pas automatiquement.',
             },
             companyCardAccount: {label: 'Compte de carte d’entreprise', description: 'Choisissez où exporter les transactions de carte d’entreprise.'},
+            noBankAccountsFound: 'Aucun compte bancaire trouvé',
+            noBankAccountsFoundDescription: 'Veuillez ajouter des comptes bancaires dans Rillet et synchroniser à nouveau la connexion',
+            autoSyncDescription: 'Synchronisez Rillet et Expensify automatiquement, chaque jour. Les notes de frais se synchronisent en temps réel.',
+            accountingMethods: {
+                label: 'Méthode d’exportation',
+                description: 'Choisissez quand exporter les dépenses.',
+                values: {
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.ACCRUAL]: 'Comptabilité d’exercice',
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.CASH]: 'Espèces',
+                },
+                alternateText: {
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.ACCRUAL]: 'Les dépenses hors poche seront exportées une fois définitivement approuvées',
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.CASH]: 'Les dépenses payées de votre poche seront exportées une fois réglées',
+                },
+            },
+            syncReimbursedReports: 'Synchroniser les notes de frais remboursées',
+            syncReimbursedReportsDescription: 'Lorsqu’une note de frais est payée par virement ACH, un règlement de facture est généré sur ce compte.',
+            billPaymentAccount: {label: 'Compte de paiement des factures', description: 'Choisissez d’où payer les factures et nous créerons le paiement dans Rillet.'},
+            syncExpensifyCardSettlements: 'Synchroniser les règlements de Carte Expensify',
+            settlementAccount: {label: 'Compte de règlement de la Carte Expensify', description: 'Choisissez votre compte de règlement et nous créerons le paiement dans Rillet.'},
+            syncTravelInvoicingSettlements: 'Synchroniser les règlements de facturation de voyage',
+            travelInvoicingSettlementAccount: {
+                label: 'Compte de règlement de facturation de voyage',
+                description: 'Choisissez votre compte de règlement et nous créerons le paiement dans Rillet.',
+            },
         },
         type: {
             free: 'Gratuit',
diff --git a/src/languages/it.ts b/src/languages/it.ts
index cc400bdbda4..9a09e028c28 100644
--- a/src/languages/it.ts
+++ b/src/languages/it.ts
@@ -5554,6 +5554,28 @@ _Per istruzioni più dettagliate, [visita il nostro sito di assistenza](${CONST.
                 description: 'Scegli un fornitore Rillet predefinito per le spese che non vengono abbinate automaticamente.',
             },
             companyCardAccount: {label: 'Conto carta aziendale', description: 'Scegli dove esportare le transazioni delle carte aziendali.'},
+            noBankAccountsFound: 'Nessun conto bancario trovato',
+            noBankAccountsFoundDescription: 'Aggiungi i conti bancari in Rillet e sincronizza di nuovo la connessione',
+            autoSyncDescription: 'Sincronizza automaticamente Rillet ed Expensify ogni giorno. I report si sincronizzano in tempo reale.',
+            accountingMethods: {
+                label: 'Metodo di esportazione',
+                description: 'Scegli quando esportare le spese.',
+                values: {
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.ACCRUAL]: 'Competenza',
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.CASH]: 'Contanti',
+                },
+                alternateText: {
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.ACCRUAL]: 'Le spese anticipate verranno esportate dopo l’approvazione finale',
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.CASH]: 'Le spese anticipate verranno esportate quando saranno rimborsate',
+                },
+            },
+            syncReimbursedReports: 'Sincronizza i report rimborsati',
+            syncReimbursedReportsDescription: 'Quando un report viene pagato tramite ACH, verrà generato un pagamento fattura in questo conto.',
+            billPaymentAccount: {label: 'Conto per il pagamento delle bollette', description: 'Scegli da dove pagare le fatture e creeremo il pagamento in Rillet.'},
+            syncExpensifyCardSettlements: 'Sincronizza le liquidazioni della Carta Expensify',
+            settlementAccount: {label: 'Conto di regolamento Carta Expensify', description: 'Scegli il tuo conto di regolamento e creeremo il pagamento in Rillet.'},
+            syncTravelInvoicingSettlements: 'Sincronizza le liquidazioni di fatturazione viaggi',
+            travelInvoicingSettlementAccount: {label: 'Conto di regolamento fatturazione viaggi', description: 'Scegli il tuo conto di regolamento e creeremo il pagamento in Rillet.'},
         },
         type: {
             free: 'Gratis',
diff --git a/src/languages/ja.ts b/src/languages/ja.ts
index 149db1e82d2..f4ba4f36555 100644
--- a/src/languages/ja.ts
+++ b/src/languages/ja.ts
@@ -5494,6 +5494,28 @@ _詳しい手順については、[ヘルプサイトをご覧ください](${CO
             exportCompanyCard: {label: '会社カード経費のエクスポート形式', values: {[CONST.RILLET_EXPORT_COMPANY_CARD.CREDIT_CARD]: {label: 'クレジットカード'}}},
             defaultCompanyCardVendor: {label: 'デフォルトの会社カードベンダー', description: '自動的に一致しない経費に使用する既定の Rillet ベンダーを選択してください。'},
             companyCardAccount: {label: '会社カード口座', description: '会社カード取引のエクスポート先を選択してください。'},
+            noBankAccountsFound: '銀行口座が見つかりません',
+            noBankAccountsFoundDescription: 'Rillet に銀行口座を追加して、もう一度接続を同期してください',
+            autoSyncDescription: 'Rillet と Expensify を毎日自動で同期します。レポートはリアルタイムで同期されます。',
+            accountingMethods: {
+                label: 'エクスポート方法',
+                description: '経費をいつエクスポートするかを選択します。',
+                values: {
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.ACCRUAL]: '発生主義',
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.CASH]: '現金',
+                },
+                alternateText: {
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.ACCRUAL]: '立替経費は最終承認後にエクスポートされます',
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.CASH]: '立替経費は支払われるとエクスポートされます',
+                },
+            },
+            syncReimbursedReports: '精算済みレポートを同期',
+            syncReimbursedReportsDescription: 'レポートがACHで支払われると、この勘定科目に買掛金支払が生成されます。',
+            billPaymentAccount: {label: '請求支払用口座', description: '請求書の支払い元を選択すると、Rillet 内に支払いを作成します。'},
+            syncExpensifyCardSettlements: 'Expensify カードの清算を同期する',
+            settlementAccount: {label: 'Expensify カードの決済口座', description: '精算用の口座を選択すると、Rillet で支払いを作成します。'},
+            syncTravelInvoicingSettlements: '出張請求の精算を同期',
+            travelInvoicingSettlementAccount: {label: '出張請求の精算口座', description: '精算用の口座を選択すると、Rillet で支払いを作成します。'},
         },
         type: {
             free: '無料',
diff --git a/src/languages/nl.ts b/src/languages/nl.ts
index b6efd89929b..5241dec5601 100644
--- a/src/languages/nl.ts
+++ b/src/languages/nl.ts
@@ -5541,6 +5541,31 @@ _Voor meer gedetailleerde instructies, [bezoek onze help-site](${CONST.NETSUITE_
             exportCompanyCard: {label: 'Bedrijfspaskosten exporteren als', values: {[CONST.RILLET_EXPORT_COMPANY_CARD.CREDIT_CARD]: {label: 'Creditcards'}}},
             defaultCompanyCardVendor: {label: 'Standaard leverancier bedrijfspas', description: 'Kies een standaard Rillet-leverancier voor uitgaven die niet automatisch worden gekoppeld.'},
             companyCardAccount: {label: 'Bedrijfskaartrekening', description: 'Kies waar je transacties van bedrijfskaarten naartoe wilt exporteren.'},
+            noBankAccountsFound: 'Geen bankrekeningen gevonden',
+            noBankAccountsFoundDescription: 'Voeg bankrekeningen toe in Rillet en synchroniseer de verbinding opnieuw',
+            autoSyncDescription: 'Synchroniseer Rillet en Expensify automatisch, elke dag. Rapporten worden in realtime gesynchroniseerd.',
+            accountingMethods: {
+                label: 'Exportmethode',
+                description: 'Kies wanneer je onkosten wilt exporteren.',
+                values: {
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.ACCRUAL]: 'Toerekening',
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.CASH]: 'Contant',
+                },
+                alternateText: {
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.ACCRUAL]: 'Contante uitgaven worden geëxporteerd zodra ze definitief zijn goedgekeurd',
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.CASH]: 'Uitgaven uit eigen zak worden geëxporteerd zodra ze zijn betaald',
+                },
+            },
+            syncReimbursedReports: 'Vergoede rapporten synchroniseren',
+            syncReimbursedReportsDescription: 'Wanneer een rapport via ACH wordt betaald, wordt er een rekeningbetaling in deze rekening aangemaakt.',
+            billPaymentAccount: {label: 'Rekening voor het betalen van rekeningen', description: 'Kies van waar je rekeningen wilt betalen en we maken de betaling aan in Rillet.'},
+            syncExpensifyCardSettlements: 'Expensify Kaartafrekeningen synchroniseren',
+            settlementAccount: {label: 'Rekening voor verrekening van Expensify Kaart', description: 'Kies je vereffeningsrekening en we maken de betaling voor je aan in Rillet.'},
+            syncTravelInvoicingSettlements: 'Reisfacturatie-afrekeningen synchroniseren',
+            travelInvoicingSettlementAccount: {
+                label: 'Rekening voor verrekening van reiskostenfacturen',
+                description: 'Kies je vereffeningsrekening en we maken de betaling voor je aan in Rillet.',
+            },
         },
         type: {
             free: 'Gratis',
diff --git a/src/languages/pl.ts b/src/languages/pl.ts
index c0ea100866d..6299e6fe9ff 100644
--- a/src/languages/pl.ts
+++ b/src/languages/pl.ts
@@ -5527,6 +5527,28 @@ _Aby uzyskać bardziej szczegółowe instrukcje, [odwiedź naszą stronę pomocy
             exportCompanyCard: {label: 'Eksportuj wydatki z firmowej karty jako', values: {[CONST.RILLET_EXPORT_COMPANY_CARD.CREDIT_CARD]: {label: 'Karty kredytowe'}}},
             defaultCompanyCardVendor: {label: 'Domyślny dostawca karty firmowej', description: 'Wybierz domyślnego dostawcę Rillet dla wydatków, które nie dopasują się automatycznie.'},
             companyCardAccount: {label: 'Konto karty firmowej', description: 'Wybierz miejsce eksportu transakcji z kart firmowych.'},
+            noBankAccountsFound: 'Nie znaleziono żadnych kont bankowych',
+            noBankAccountsFoundDescription: 'Dodaj proszę konta bankowe w Rillet i zsynchronizuj połączenie ponownie',
+            autoSyncDescription: 'Synchronizuj Rillet i Expensify automatycznie, każdego dnia. Raporty synchronizują się w czasie rzeczywistym.',
+            accountingMethods: {
+                label: 'Metoda eksportu',
+                description: 'Wybierz, kiedy eksportować wydatki.',
+                values: {
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.ACCRUAL]: 'Memoriał',
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.CASH]: 'Gotówka',
+                },
+                alternateText: {
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.ACCRUAL]: 'Wydatki z własnej kieszeni zostaną wyeksportowane po ostatecznym zatwierdzeniu',
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.CASH]: 'Wydatki z własnej kieszeni zostaną wyeksportowane po ich opłaceniu',
+                },
+            },
+            syncReimbursedReports: 'Synchronizuj rozliczone raporty',
+            syncReimbursedReportsDescription: 'Gdy raport zostanie opłacony przez ACH, na tym koncie zostanie wygenerowana płatność rachunku.',
+            billPaymentAccount: {label: 'Konto do opłacania rachunków', description: 'Wybierz, z którego konta chcesz opłacać rachunki, a my utworzymy płatność w Rillet.'},
+            syncExpensifyCardSettlements: 'Synchronizuj rozliczenia Karty Expensify',
+            settlementAccount: {label: 'Rachunek rozliczeniowy Karty Expensify', description: 'Wybierz swoje konto rozliczeniowe, a my utworzymy płatność w Rillet.'},
+            syncTravelInvoicingSettlements: 'Synchronizuj rozliczenia fakturowania podróży',
+            travelInvoicingSettlementAccount: {label: 'Konto rozliczeniowe fakturowania podróży', description: 'Wybierz swoje konto rozliczeniowe, a my utworzymy płatność w Rillet.'},
         },
         type: {
             free: 'Darmowy',
diff --git a/src/languages/pt-BR.ts b/src/languages/pt-BR.ts
index 75e1664254f..7591f62084b 100644
--- a/src/languages/pt-BR.ts
+++ b/src/languages/pt-BR.ts
@@ -5535,6 +5535,28 @@ _Para instruções mais detalhadas, [visite nossa central de ajuda](${CONST.NETS
                 description: 'Escolha um fornecedor Rillet padrão para despesas que não forem correspondidas automaticamente.',
             },
             companyCardAccount: {label: 'Conta de cartão corporativo', description: 'Escolha para onde exportar as transações do cartão corporativo.'},
+            noBankAccountsFound: 'Nenhuma conta bancária encontrada',
+            noBankAccountsFoundDescription: 'Adicione contas bancárias no Rillet e sincronize a conexão novamente',
+            autoSyncDescription: 'Sincronize Rillet e Expensify automaticamente, todos os dias. Relatórios são sincronizados em tempo real.',
+            accountingMethods: {
+                label: 'Método de exportação',
+                description: 'Escolha quando exportar as despesas.',
+                values: {
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.ACCRUAL]: 'Regime de competência',
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.CASH]: 'Dinheiro',
+                },
+                alternateText: {
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.ACCRUAL]: 'Despesas reembolsáveis serão exportadas após a aprovação final',
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.CASH]: 'Despesas reembolsáveis serão exportadas quando forem pagas',
+                },
+            },
+            syncReimbursedReports: 'Sincronizar relatórios reembolsados',
+            syncReimbursedReportsDescription: 'Quando um relatório for pago via ACH, um pagamento de conta será gerado nesta conta.',
+            billPaymentAccount: {label: 'Conta de pagamento de contas', description: 'Escolha de onde pagar as contas e nós vamos criar o pagamento no Rillet.'},
+            syncExpensifyCardSettlements: 'Sincronizar liquidações do Cartão Expensify',
+            settlementAccount: {label: 'Conta de liquidação do Cartão Expensify', description: 'Escolha sua conta de liquidação e nós criaremos o pagamento no Rillet.'},
+            syncTravelInvoicingSettlements: 'Sincronizar liquidações de faturamento de viagens',
+            travelInvoicingSettlementAccount: {label: 'Conta de liquidação de faturamento de viagem', description: 'Escolha sua conta de liquidação e nós criaremos o pagamento no Rillet.'},
         },
         type: {
             free: 'Grátis',
diff --git a/src/languages/zh-hans.ts b/src/languages/zh-hans.ts
index 7fb4affaad4..de449274ed1 100644
--- a/src/languages/zh-hans.ts
+++ b/src/languages/zh-hans.ts
@@ -5384,6 +5384,28 @@ _如需更详细的说明,请[访问我们的帮助网站](${CONST.NETSUITE_IM
             exportCompanyCard: {label: '导出公司卡费用为', values: {[CONST.RILLET_EXPORT_COMPANY_CARD.CREDIT_CARD]: {label: '信用卡'}}},
             defaultCompanyCardVendor: {label: '默认公司卡供应商', description: '为未自动匹配的报销选择一个默认的 Rillet 供应商。'},
             companyCardAccount: {label: '公司卡账户', description: '选择公司卡交易的导出位置。'},
+            noBankAccountsFound: '未找到银行账户',
+            noBankAccountsFoundDescription: '请在 Rillet 中添加银行账户,然后再次同步连接',
+            autoSyncDescription: '每天自动同步 Rillet 和 Expensify。报表实时同步。',
+            accountingMethods: {
+                label: '导出方式',
+                description: '选择导出报销的时间。',
+                values: {
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.ACCRUAL]: '应计',
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.CASH]: '现金',
+                },
+                alternateText: {
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.ACCRUAL]: '自付费用将在最终批准后导出',
+                    [COMMON_CONST.INTEGRATIONS.ACCOUNTING_METHOD.CASH]: '自付报销在支付后会导出',
+                },
+            },
+            syncReimbursedReports: '同步已报销报表',
+            syncReimbursedReportsDescription: '当报销单通过 ACH 支付时,将在此账户中生成一笔账单付款。',
+            billPaymentAccount: {label: '账单支付账户', description: '选择从哪里支付账单,我们会在 Rillet 中创建付款。'},
+            syncExpensifyCardSettlements: '同步 Expensify 卡结算',
+            settlementAccount: {label: 'Expensify 卡结算账户', description: '选择您的结算账户,我们会在 Rillet 中创建这笔付款。'},
+            syncTravelInvoicingSettlements: '同步差旅发票结算',
+            travelInvoicingSettlementAccount: {label: '差旅开票结算账户', description: '选择您的结算账户,我们会在 Rillet 中创建这笔付款。'},
         },
         type: {
             free: '免费',

Note

You can apply these changes to your branch by copying the patch to your clipboard, then running pbpaste | git apply 😉

View workflow run

@codecov

codecov Bot commented Jul 9, 2026

Copy link
Copy Markdown

Codecov Report

❌ Looks like you've decreased code coverage for some files. Please write tests to increase, or at least maintain, the existing level of code coverage. See our documentation here for how to interpret this table.

Files with missing lines Coverage Δ
src/SCREENS.ts 100.00% <ø> (ø)
src/libs/API/types.ts 100.00% <ø> (ø)
...gation/linkingConfig/RELATIONS/WORKSPACE_TO_RHP.ts 100.00% <ø> (ø)
src/libs/Navigation/linkingConfig/config.ts 76.92% <ø> (ø)
src/pages/workspace/accounting/utils.tsx 0.00% <0.00%> (ø)
src/ROUTES.ts 20.60% <0.00%> (-0.17%) ⬇️
...gation/AppNavigator/ModalStackNavigators/index.tsx 6.55% <0.00%> (-0.05%) ⬇️
...ounting/rillet/advanced/RilletExportMethodPage.tsx 0.00% <0.00%> (ø)
...anced/RilletExpensifyCardSettlementAccountPage.tsx 0.00% <0.00%> (ø)
...ced/RilletTravelInvoicingSettlementAccountPage.tsx 0.00% <0.00%> (ø)
... and 3 more
... and 133 files with indirect coverage changes

@truph01

truph01 commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Reviewer Checklist

  • I have verified the author checklist is complete (all boxes are checked off).
  • I verified the correct issue is linked in the ### Fixed Issues section above
  • I verified testing steps are clear and they cover the changes made in this PR
    • I verified the steps for local testing are in the Tests section
    • I verified the steps for Staging and/or Production testing are in the QA steps section
    • I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
    • I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
  • I checked that screenshots or videos are included for tests on all platforms
  • I included screenshots or videos for tests on all platforms
  • I verified that the composer does not automatically focus or open the keyboard on mobile unless explicitly intended. This includes checking that returning the app from the background does not unexpectedly open the keyboard.
  • I verified tests pass on all platforms & I tested again on:
    • Android: HybridApp
    • Android: mWeb Chrome
    • iOS: HybridApp
    • iOS: mWeb Safari
    • MacOS: Chrome / Safari
  • If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
  • I verified proper code patterns were followed (see Reviewing the code)
    • I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
    • I verified that comments were added to code that is not self explanatory
    • I verified that any new or modified comments were clear, correct English, and explained """"why"""" the code was doing something instead of only explaining """"what"""" the code was doing.
    • I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
  • If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
  • I verified that this PR follows the guidelines as stated in the Review Guidelines
  • I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
  • If a new component is created I verified that:
    • A similar component doesn't exist in the codebase
    • All props are defined accurately and each prop has a /** comment above it */
    • The file is named correctly
    • The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
    • The only data being stored in the state is data necessary for rendering and nothing else
    • For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
    • Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
    • All JSX used for rendering exists in the render method
    • The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions
  • If any new file was added I verified that:
    • The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory
  • If a new CSS style is added I verified that:
    • A similar style doesn't already exist
    • The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG)
  • If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
  • If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
  • If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
  • If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
  • If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:
    • I verified that all the inputs inside a form are aligned with each other.
    • I added Design label and/or tagged @Expensify/design so the design team can review the changes.
  • For any bug fix or new feature in this PR, I verified that sufficient unit tests are included to prevent regressions in this flow.
  • If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
  • I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Android: HybridApp
Android: mWeb Chrome
Screen.Recording.2026-07-10.at.05.00.00.mov
iOS: HybridApp
iOS: mWeb Safari
Screen.Recording.2026-07-10.at.05.00.34.mov
MacOS: Chrome / Safari
Screen.Recording.2026-07-10.at.04.04.01.mov

@lakchote lakchote left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@lakchote lakchote merged commit d3a09a4 into Expensify:main Jul 10, 2026
36 checks passed
@github-actions

Copy link
Copy Markdown
Contributor

🚧 lakchote has triggered a test Expensify/App build. You can view the workflow run here.

@OSBotify

Copy link
Copy Markdown
Contributor

🚀 Deployed to staging by https://github.com/lakchote in version: 9.4.33-0 🚀

platform result
🕸 web 🕸 success ✅
🤖 android 🤖 success ✅
🍎 iOS 🍎 cancelled 🔪

@jponikarchuk

Copy link
Copy Markdown

Deploy Blocker #95891 was identified to be related to this PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants