Skip to content

Commit a7084b3

Browse files
committed
Merge branch 'main' of github.com:Expensify/App into jnowakow/fix-59927
2 parents 9d8ebdc + ca7e756 commit a7084b3

File tree

299 files changed

+2501
-1897
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

299 files changed

+2501
-1897
lines changed

.github/workflows/cherryPick.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ on:
44
workflow_dispatch:
55
inputs:
66
PULL_REQUEST_URL:
7-
description: The full URL of the Expensify/App pull request to cherry-pick
7+
description: The full URL of the E/App or E/Mobile-Expensify pull request to cherry-pick
88
required: true
99

1010
jobs:
@@ -45,7 +45,7 @@ jobs:
4545
fetch-depth: 0
4646

4747
- name: Checkout staging branch without full history if cherry picking App
48-
if: ${{ steps.getPRInfo.outputs.REPO_FULL_NAME == 'Expensify/App' }}
48+
if: ${{ steps.getPRInfo.outputs.REPO_FULL_NAME == github.repository }}
4949
# v4
5050
uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608
5151
with:
@@ -77,7 +77,7 @@ jobs:
7777
SEMVER_LEVEL: "PATCH"
7878

7979
- name: Fetch history of relevant refs if cherry picking an App change
80-
if: ${{ steps.getPRInfo.outputs.REPO_FULL_NAME == 'Expensify/App' }}
80+
if: ${{ steps.getPRInfo.outputs.REPO_FULL_NAME == github.repository }}
8181
run: |
8282
git fetch origin main staging --no-recurse-submodules --no-tags --shallow-exclude ${{ steps.getPreviousVersion.outputs.PREVIOUS_VERSION }}
8383
cd Mobile-Expensify

.github/workflows/publishReactNativeAndroidArtifacts.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -69,14 +69,14 @@ jobs:
6969
- name: Check if patches changed
7070
id: didPatchesChange
7171
run: |
72-
if git diff --exit-code --name-only ${{ steps.getOldAppHash.outputs.HASH }}..${{ steps.getNewAppHash.outputs.HASH }} -- patches/react-native+*.patch patches/@react-native+*.patch; then
72+
if ! git diff --exit-code --name-only ${{ steps.getOldAppHash.outputs.HASH }}..${{ steps.getNewAppHash.outputs.HASH }} -- patches/react-native+*.patch patches/@react-native+*.patch; then
7373
echo "::notice::Detected changes in patches"
7474
echo "DID_PATCHES_CHANGE=true" >> "$GITHUB_OUTPUT"
7575
exit 0
7676
fi
7777
7878
if [[ '${{ matrix.is_hybrid }}' == 'true' ]]; then
79-
if git -C Mobile-Expensify diff --exit-code --name-only ${{ steps.getOldMobileExpensifyHash.outputs.HASH }}..${{ steps.getNewMobileExpensifyHash.outputs.HASH }} -- patches/react-native+*.patch patches/@react-native+*.patch; then
79+
if ! git -C Mobile-Expensify diff --exit-code --name-only ${{ steps.getOldMobileExpensifyHash.outputs.HASH }}..${{ steps.getNewMobileExpensifyHash.outputs.HASH }} -- patches/react-native+*.patch patches/@react-native+*.patch; then
8080
echo "::notice::Detected changes in patches"
8181
echo "DID_PATCHES_CHANGE=true" >> "$GITHUB_OUTPUT"
8282
exit 0

Mobile-Expensify

android/app/build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -114,8 +114,8 @@ android {
114114
minSdkVersion rootProject.ext.minSdkVersion
115115
targetSdkVersion rootProject.ext.targetSdkVersion
116116
multiDexEnabled rootProject.ext.multiDexEnabled
117-
versionCode 1009013207
118-
versionName "9.1.32-7"
117+
versionCode 1009013303
118+
versionName "9.1.33-3"
119119
// Supported language variants must be declared here to avoid from being removed during the compilation.
120120
// This also helps us to not include unnecessary language variants in the APK.
121121
resConfigs "en", "es"

contributingGuides/REVIEWER_CHECKLIST.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@
1111
- [ ] I included screenshots or videos for tests on [all platforms](https://github.com/Expensify/App/blob/main/contributingGuides/CONTRIBUTING.md#make-sure-you-can-test-on-all-platforms)
1212
- [ ] 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.
1313
- [ ] I verified tests pass on **all platforms** & I tested again on:
14-
- [ ] Android: Native
14+
- [ ] Android: HybridApp
1515
- [ ] Android: mWeb Chrome
16-
- [ ] iOS: Native
16+
- [ ] iOS: HybridApp
1717
- [ ] iOS: mWeb Safari
1818
- [ ] MacOS: Chrome / Safari
1919
- [ ] MacOS: Desktop
@@ -62,7 +62,7 @@
6262

6363
### Screenshots/Videos
6464
<details>
65-
<summary>Android: Native</summary>
65+
<summary>Android: HybridApp</summary>
6666

6767
<!-- add screenshots or videos here -->
6868

@@ -76,7 +76,7 @@
7676
</details>
7777

7878
<details>
79-
<summary>iOS: Native</summary>
79+
<summary>iOS: HybridApp</summary>
8080

8181
<!-- add screenshots or videos here -->
8282

docs/articles/expensify-classic/bank-accounts-and-payments/bank-accounts/Connect-US-Business-Bank-Account.md

Lines changed: 22 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -39,37 +39,36 @@ You’ll now receive payments for invoices directly into this bank account.
3939
- US-issued ID
4040
- The company address must be in the US
4141
- The controlling officer (the member initiating the connection to the bank account)'s address must be in the US
42-
- The controlling officer must have a US-issued social security number
43-
- **Important:** The person adding the bank account doesn’t need to be an account signer but they must enter their own personal information when connecting the bank account. If another person enters their details, the account will be flagged for review, delaying verification.
42+
- The controlling officer must have a U.S.-issued Social Security number
43+
44+
**Important:** The person adding the bank account doesn’t need to be an account signer but they must enter their own personal information when connecting the bank account. If another person enters their details, the account will be flagged for review, delaying verification.
4445

4546
## Step 1: Connect the Bank Account
4647

47-
1. Hover over **Settings**, then click **Account**.
48-
3. Click the **Wallet** and scroll to **Bank Accounts**.
49-
4. Choose **Add verified bank account** > **Connect to your bank**.
50-
6. Click **Continue**.
51-
7. Enter your phone number and click **Continue**.
52-
8. Select your bank and login.
48+
1. Head to **Settings > Account > Wallet > Bank Accounts**.
49+
2. Choose **Add verified bank account** > **Connect to your bank**.
50+
3. Click **Continue**.
51+
4. Enter your phone number and click **Continue**.
52+
5. Select your bank and login.
5353
- If your bank isn’t listed, click the **X**, select **Connect manually**, enter details, check the box, and click **Save & continue**.
54-
9. Click **Allow**.
55-
10. Ensure the correct account is selected and click **Save & continue**.
56-
11. Enter company details:
54+
6. Click **Allow**.
55+
7. Ensure the correct account is selected and click **Save & continue**.
56+
8. Enter company details:
5757
- **Legal business name**
5858
- **Physical company address** (U.S. address only, no P.O. boxes)
5959
- **Company phone number**
6060
- **Company website** (required for Expensify Card/payments, e.g., `https://www.expensify.com`)
6161
- **Tax Identification Number (TIN)**
6262
- **Company incorporation type, date, and state**
6363
- **Industry Classification Code** ([Find yours here](https://www.sec.gov/corpfin/division-of-corporation-finance-standard-industrial-classification-sic-code-list))
64-
12. Enter your personal information, including a U.S. address and SSN, and click **Save & continue**.
65-
13. Verify your identity by uploading:
64+
9. Enter your personal information, including a U.S. address and SSN, and click **Save & continue**.
65+
10. Verify your identity by uploading:
6666
- A **photo ID** (passport or identity card, must be valid and U.S.-issued)
6767
- A **short video** of yourself
68-
14. If applicable, check **Additional Information**:
68+
11. If applicable, check **Additional Information**:
6969
- If an individual owns 25% or more of the business, their personal details must be provided.
7070
- If the business is a **non-profit**, leave the boxes unchecked.
71-
15. Agree to the terms by selecting the checkboxes.
72-
16. Click **Save & continue**.
71+
12. Agree to the terms by selecting the checkboxes and clicking **Save & continue**.
7372

7473
## Step 2: Verify the Bank Account
7574

@@ -81,10 +80,9 @@ Expensify will send **three test transactions** within **1-2 business days**. To
8180
8281
## Step 3: Add the Bank Account to the Workspace
8382

84-
1. Hover over **Settings**, then click **Workspaces**.
85-
2. Click the desired workspace.
86-
3. Click the **Reimbursement** tab.
87-
4. Click **Direct**, then **Add business bank account** and select the account.
83+
1. Head to **Settings > Workspace > [Workspace Name] > Workflows > Make or track payments**.
84+
2. Click **Direct**.
85+
3. Choose **Add business bank account**, and select the account.
8886

8987
---
9088

@@ -132,7 +130,7 @@ If automatic verification fails, manual verification may require documents like:
132130
- **Business address verification**
133131
- **Bank letter confirming account ownership**
134132

135-
For details, contact Concierge.
133+
For details, contact Concierge Support.
136134

137135
## What if I don’t see all three test transactions?
138136

@@ -168,9 +166,9 @@ Yes, Expensify **cannot process direct payments** for businesses in:
168166
- Casinos & Gambling/Betting Services
169167
- Non-FI, Money Orders
170168
- Wires, Money Orders
171-
- Government Owned Lotteries
172-
- Government Licensed Online Casinos (Online Gambling)
173-
- Government Licensed Horse/Dog Racing
169+
- Government-Owned Lotteries
170+
- Government-Licensed Online Casinos (Online Gambling)
171+
- Government-Licensed Horse/Dog Racing
174172
- Crypto-currency businesses
175173
- Internet gambling
176174
- Marijuana-related businesses

docs/articles/expensify-classic/bank-accounts-and-payments/bank-accounts/Enable-Australian-Reimbursements.md

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -15,14 +15,13 @@ If you'd like an option for direct international payments, consider setting up [
1515

1616
# Setting Up ABA Payments
1717

18-
1. Go to **Settings > Workspaces**.
19-
2. Select the workspace you want to configure.
20-
3. Click the **Reports** tab.
21-
4. In the **Report Currency** dropdown, select **AUD A$**.
22-
5. Click the **Reimbursement** tab.
23-
6. Set **Reimbursement Type** to **Indirect**.
24-
7. Enable the toggle.
18+
1. Go to **Settings > Workspaces [Workspace Name] > Overview**.
19+
2. In the **Report Currency** dropdown, select **AUD A$**.
20+
3. Navigate to **Settings > Workspaces [Workspace Name] > Workflows**.
21+
4. Scroll to **Make or track payments**
22+
5. Set **Reimbursement Type** to **Indirect**.
23+
6. Toggle **Collect bank account details** on.
2524

26-
Once enabled, employees can submit expenses in AUD, and you can process reimbursements via ABA files.
25+
Once the setup is complete, employees can submit expenses in AUD, and you can process reimbursements via ABA files.
2726

2827
</div>

docs/articles/expensify-classic/bank-accounts-and-payments/bank-accounts/Share-Verified-Business-Bank-Account.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: Share-Verified-Business-Bank-Account.md
2+
title: Share Verified Business Bank Account
33
description: Learn how to share access to a verified business bank account in Expensify to reimburse employees or pay vendor bills.
44
keywords: [Expensify Classic, share bank account, reimburse, vendor payments, Workspace Admin]
55
---

docs/articles/expensify-classic/bank-accounts-and-payments/payments/Global-Reimbursement-Australia.md

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -25,13 +25,14 @@ If your company’s business bank account is located in Australia, you can enabl
2525
---
2626

2727
# Step 1: Connect Your Australian Bank Account
28-
1. Go to **Settings > Workspaces > [Workspace Name] > Reports**.
29-
2. Ensure the workspace currency is set to **AUD**.
30-
3. Click the **Reimbursements** tab.
31-
4. Set the reimbursement method to **Direct**.
32-
5. Click **Add business bank account**.
33-
6. Choose **Australia** as the country and confirm the currency is AUD.
34-
7. Enter bank details and click **Save & Continue**.
28+
1. Go to **Settings > Workspaces [Workspace Name] > Overview**.
29+
2. In the **Report Currency** dropdown, select **AUD A$**.
30+
3. Navigate to **Settings > Workspaces [Workspace Name] > Workflows**.
31+
4. Scroll to **Make or track payments**
32+
5. Set **Reimbursement Type** to **Direct**.
33+
6. Click **Add business bank account**.
34+
7. Choose **Australia** as the country and confirm the currency is listed as AUD.
35+
8. Enter the bank details and click **Save & Continue**.
3536

3637
---
3738

@@ -42,14 +43,14 @@ If your company’s business bank account is located in Australia, you can enabl
4243
- Bank statement or voided check
4344
- Proof of Beneficial Ownership
4445
- Certified ID & address for all signatories
45-
3. Expensify's Compliance Team will send the **PDS FSG paperwork** to your company's directors (the same company directors who are listed as signors on `Page 3` of the Partner Application Form).
46+
3. Expensify's Compliance Team will send the **PDS FSG paperwork** to your company's directors (the same company directors who are listed as signers on `Page 3` of the Partner Application Form).
4647
4. Our Compliance Team will review your form and contact you if additional information is required.
4748

4849
---
4950

5051
# Step 3: Confirm Test Transactions
5152
1. **Expensify will send test deposits to the provided bank account:** Once those are sent, our support team will ask you to verify the deposit amounts.
52-
2. Once the test deposit amounts are confirmed, the bank account is verified to use for global reimbursement.
53+
2. Once the test deposit amounts are confirmed, the bank account is verified for global reimbursement.
5354

5455
---
5556

@@ -58,8 +59,8 @@ If your company’s business bank account is located in Australia, you can enabl
5859
**Timeline:** From the time you submit all requested documentation, you can expect to start using global reimbursement within one to two weeks. Once the verification is complete, the bank account is typically ready to go within two business days
5960

6061
Once the bank account is approved for global reimbursement:
61-
1. Go to **Settings > Workspaces > [Workspace Name] > Reimbursements**.
62-
2. Set the verified AUD account as the default reimbursement method.
62+
1. Go to **Settings > Workspaces > [Workspace Name] > Workflows**.
63+
2. Under **Make or track payments**, set the verified AUD account as the default reimbursement method.
6364
3. Instruct employees to connect their deposit account:
6465
- Navigate to **Settings > Account > Wallet**.
6566
- Click **Add deposit-only bank account** and input their bank details.
@@ -69,7 +70,7 @@ Once the bank account is approved for global reimbursement:
6970
# FAQ
7071

7172
## What is a PDS FSG?
72-
It stands for Product Disclosure Statement & Financial Services Guide, a legal document sent to the company's directors. The **Corpay PDS FSG** paperwork must be sent to company directors for signing before onboarding begins.
73+
It stands for Product Disclosure Statement & Financial Services Guide, a legal document sent to the company's directors. The **Corpay PDS FSG** paperwork must be sent to the company directors for signing before onboarding begins.
7374

7475
## Can other admins send global reimbursements?
7576
Yes. Once verified, the reimbursement account can be shared with other workspace admins.

docs/articles/expensify-classic/bank-accounts-and-payments/payments/Global-Reimbursement-Canada.md

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,14 @@ If your business bank account is based in Canada, you can send global reimbursem
2424
---
2525

2626
# Step 1: Connect Your Canadian Bank Account
27-
1. Go to **Settings > Workspaces > [Workspace Name] > Reports**.
28-
2. Confirm the workspace currency is set to **CAD**.
29-
3. Click the **Reimbursements** tab.
30-
4. Set the reimbursement method to **Direct**.
31-
5. Click **Add business bank account**.
32-
6. Click **Switch country** and set the **currency** to CAD.
33-
7. Enter your Canadian bank account details and click **Save & Continue**.
27+
1. Go to **Settings > Workspaces [Workspace Name] > Overview**.
28+
2. In the **Report Currency** dropdown, select **CAD**.
29+
3. Navigate to **Settings > Workspaces [Workspace Name] > Workflows**.
30+
4. Scroll to **Make or track payments**
31+
5. Set the reimbursement method to **Direct**.
32+
6. Click **Add business bank account**.
33+
7. Click **Switch country** and confirm the currency shows CAD.
34+
8. Enter your Canadian bank account details and click **Save & Continue**.
3435

3536
---
3637

@@ -47,7 +48,7 @@ If your business bank account is based in Canada, you can send global reimbursem
4748

4849
# Step 3: Confirm Test Transactions
4950
1. **Expensify will send test deposits to the provided bank account:** Once those are sent, our support team will ask you to verify the deposit amounts.
50-
2. Once the test deposit amounts are confirmed, the bank account is verified to use for global reimbursement.
51+
2. Once the test deposit amounts are confirmed, the bank account is verified for global reimbursement.
5152

5253
---
5354

@@ -56,9 +57,10 @@ If your business bank account is based in Canada, you can send global reimbursem
5657
**Timeline:** From the time you submit all requested documentation, you can expect to start using global reimbursement within one to two weeks. Once the verification is complete, the bank account is typically ready to go within two business days
5758

5859
After the account is verified:
59-
1. Go to **Settings > Workspaces > [Workspace Name] > Reimbursements**.
60-
2. Select the verified Canadian account as the default reimbursement method.
61-
3. Instruct employees to connect their deposit account:
60+
1. Go to **Settings > Workspaces > [Workspace Name] > Workflows**.
61+
2. Scroll to **Make or track payments**.
62+
3. Select the verified Canadian account as the default reimbursement method.
63+
4. Instruct employees to connect their deposit account:
6264
- Go to **Settings > Account > Wallet**.
6365
- Click **Add deposit-only bank account** and enter their deposit account details.
6466

docs/articles/expensify-classic/bank-accounts-and-payments/payments/Global-Reimbursement-EU.md

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -22,18 +22,19 @@ If your business operates in the European Union, you can send international reim
2222

2323
## Special Requirements:
2424
- 🇮🇹 **Italy:** Requires "Codice Fiscale" (Tax ID).
25-
- 🇪🇸 **Spain:** A driver’s license is not accepted as a valid form ID.
25+
- 🇪🇸 **Spain:** A driver’s license is not accepted as a valid form of ID.
2626

2727
---
2828

2929
# Step 1: Connect Your EU Bank Account
30-
1. Go to **Settings > Workspaces > [Workspace Name] > Reports**.
31-
2. Confirm the workspace currency is **EUR**.
32-
3. Click the **Reimbursements** tab.
33-
4. Set the reimbursement method to **Direct**.
34-
5. Click **Add business bank account**.
35-
6. Select your country and make sure the currency is set to EUR.
36-
7. Enter your account details and click **Save & Continue**.
30+
1. Go to **Settings > Workspaces [Workspace Name] > Overview**.
31+
2. In the **Report Currency** dropdown, select **EUR**.
32+
3. Navigate to **Settings > Workspaces [Workspace Name] > Workflows**.
33+
4. Scroll to **Make or track payments**
34+
5. Set the reimbursement method to **Direct**.
35+
6. Click **Add business bank account**.
36+
7. Select your country and make sure the currency is set to EUR.
37+
8. Enter your account details and click **Save & Continue**.
3738

3839
---
3940

@@ -62,7 +63,7 @@ If your business operates in the European Union, you can send international reim
6263

6364
# Step 4: Confirm Test Payment
6465
1. **Expensify will send a test payment to the bank account:** Once sent, our support team will ask you to verify the payment amount.
65-
2. Once the test payment is confirmed, the bank account is verified to use for global reimbursement.
66+
2. Once the test payment is confirmed, the bank account is verified for global reimbursement.
6667

6768
---
6869

@@ -71,9 +72,10 @@ If your business operates in the European Union, you can send international reim
7172
**Timeline:** After the executed mandate (authorization form) is signed and sent to your bank, it takes 10–12 business days for the bank account to be set up for direct debits.
7273

7374
Once the bank account is approved for global reimbursement:
74-
1. Go to **Settings > Workspaces > [Workspace Name] > Reimbursements**.
75-
2. Choose your verified EU account as the default reimbursement method.
76-
3. Instruct employees to connect their deposit account:
75+
1. Go to **Settings > Workspaces > [Workspace Name] > Workflows**.
76+
2. Scroll to **Make or track payments**.
77+
3. Choose your verified EU account as the default reimbursement method.
78+
4. Instruct employees to connect their deposit account:
7779
- Go to **Settings > Account > Wallet**.
7880
- Click **Add deposit-only bank account** and input their account details.
7981

0 commit comments

Comments
 (0)