-
Notifications
You must be signed in to change notification settings - Fork 3k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'main' of https://github.com/rezkiy37/Expensify into fea…
…ture/28593-viewing-category-split-bill
- Loading branch information
Showing
77 changed files
with
1,396 additions
and
745 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
56 changes: 53 additions & 3 deletions
56
docs/articles/expensify-classic/integrations/HR-integrations/Gusto.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,55 @@ | ||
--- | ||
title: Coming Soon | ||
description: Coming Soon | ||
title: Gusto Integration | ||
description: Automatically sync employees between Gusto and Expensify | ||
--- | ||
## Resource Coming Soon! | ||
|
||
# Overview | ||
|
||
Expensify's direct integration with Gusto will automatically: | ||
|
||
- **Create new Expensify accounts** for full-time, active employees when they're hired | ||
- **Update the approval workflow in Expensify** based on any changes in Gusto | ||
- **Deprovision an employee's Expensify account** upon Gusto termination date | ||
|
||
# How to connect the Gusto integration | ||
## Before connecting Expensify with Gusto, please review the prerequisites: | ||
|
||
- You must be an admin in both Gusto and in Expensify to establish the integration | ||
- You must have a paid group workspace in Expensify (i.e. a Control or Collect workspace) | ||
- Every employee record in Gusto must have an email address, since that’s how each employee will sign into Expensify. We recommend that each employee's Gusto record use their work email address. | ||
- Gusto will add all employees to one Expensify workspace, so if you have more than one workspace, you'll need to choose one to connect to Gusto | ||
|
||
## To connect your Expensify workspace to Gusto: | ||
|
||
1. Navigate to **Settings > Workspaces > _[Workspace Name]_ > Connections** | ||
2. Scroll down to HR Integrations, click the **Connect with Gusto** radio button, then click the **Connect with Gusto** button | ||
3. Login to your Gusto account using your Gusto admin credentials and authorize Expensify to access your Gusto account | ||
|
||
## To configure the connection: | ||
|
||
1. Select the Approval Workflow that works best for your team | ||
a. **Basic Approval** - Each employee will submit expense reports to one final approver. By default, the final approver is the workspace's Billing Owner in Expensify. | ||
b. **Manager Approval** - Expense reports will first be submitted to each employee's direct manager as listed in Gusto, and then forwarded to one final approver (the Expensify workspace's Billing Owner by default). This option is only available on the Control workspace plan. | ||
c. **Configure Manually** - Use the Members table to manually configure how employees submit reports. In this case, you're choosing to not import employee managers, and you will need to manually set and update the approval workflow for each employee. This option is only available on the Control workspace plan. | ||
2. Click **Save** in the bottom right corner to sync employees into Expensify | ||
3. If the connection is successful, you'll see a summary of how many employees were synced. If any employees were skipped, we'll tell you why. | ||
|
||
# FAQ | ||
## Can I import different sets of employees into different Expensify workspaces? | ||
|
||
No - Gusto will add all employees to one Expensify workspace, so if you have more than one workspace, you'll need to choose when connecting. | ||
|
||
## Can I change the Approval Workflow mode after connecting? | ||
|
||
Yes! You can change the Approval Workflow mode in two ways: | ||
|
||
1. Go to **Settings > Workspaces > _[Workspace Name]_ > Members**, then scroll down to Approval Mode below the list of workspace members | ||
2. Go to **Settings > Workspaces > _[Workspace Name]_ > Connections**, click Configure under Gusto, then select the desired Approval Mode and **Save** | ||
|
||
|
||
## Why do my employees have duplicate Expensify accounts after I set up the Gusto integration? | ||
|
||
If your employees are set up in Expensify with their company emails, but with their personal emails in Gusto, then they will end up with duplicate Expensify accounts after you connect the two systems. The Gusto integration imports users from Gusto using the emails entered in Gusto - if it's a different email from an existing account in Expensify, then a new, separate account will be created. | ||
|
||
To resolve this, you can ask each affected employee to merge their existing Expensify account with the new Expensify account by navigating to **Settings > Account > Account Details** and scrolling down to **Merge Accounts**. | ||
|
105 changes: 102 additions & 3 deletions
105
docs/articles/expensify-classic/integrations/HR-integrations/Workday.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,104 @@ | ||
--- | ||
title: Coming Soon | ||
description: Coming Soon | ||
title: Workday Integration | ||
description: Automatically sync employees between Workday and Expensify | ||
--- | ||
## Resource Coming Soon! | ||
|
||
# Overview | ||
By leveraging Expensify's [Employee Updater API](https://integrations.expensify.com/Integration-Server/doc/employeeUpdater/), you can set up a fully customizable integration between Workday and Expensify. This integration can: | ||
|
||
- **Provision new employees in Expensify:** Employees are automatically invited to the correct Expensify workspace on their start date based on data in Workday. | ||
- **Update employees and approval workflows:** Any changes to employee email and manager are automatically updated in Expensify. | ||
- **Deprovision employees:** Employees can optionally be removed from their primary Expensify workspace on their termination date. | ||
Please note that while your Account Manager can help advise on setting up the Workday integration, the Expensify API is a self-serve tool. | ||
|
||
# How to set up an Advanced Custom Report in Workday | ||
The first step to integrating Workday with Expensify is to create an advanced custom report in Workday. This report can: | ||
- Map Workday column data to an Expensify Workspace for import. | ||
- Import employee names, email addresses and manager emails into the Expensify Workspace. | ||
- Set the employee’s **Submits To** column in the Expensify Members table. | ||
- Set the employee's Expensify **Custom Field 1 & 2**, typically used for Employee ID, Cost Center and/or Legal Entity. | ||
- Add employees to different Expensify Domain Groups. | ||
- Auto-assign Expensify Cards. | ||
|
||
In order to complete the steps below, you'll need a Workday System Administrator to create an **Integration System User** and **Integration System Security Group**. | ||
|
||
## Create an Integration System User | ||
1. Search "create user" and click **Create Integration System User**. | ||
2. Add a password, leave **Require New Password at Next Sign In** unchecked, set **Session Timeout Minutes** to 0, and check **Do Not Allow UI Sessions**. | ||
3. Click **OK**. | ||
|
||
## Create a Security Group | ||
1. Search "create security group", then click **Create Security Group**. | ||
2. Create a **Constrained** security group and specify the **Organizations** you'd like to sync data from. | ||
3. Add the **Integration System User** you created to your **Security Group**. | ||
4. Search and select "security group membership and access". | ||
5. Search for the security group you just created. | ||
6. Click the ellipsis, then **Security Group > Maintain Domain Permissions for Security Group**. | ||
7. Under **Integration Permissions**, add "External Account Provisioning" to **Domain Security Workspaces permitting Put access** and "Worker Data: Workers" to **Domain Security Workspaces permitting Get access**. | ||
8. Click **OK** and **Done**. | ||
9. Search **Activate Pending Security Workspace Changes** and complete the task for activating the security workspace change, adding a comment if required and checking the **Confirmed** check-box. | ||
|
||
## Create the Advanced Custom Report | ||
Before completing the steps below, you will need Workday Report Writer access to create an Advanced Custom Report in Workday and enable it as a RAAS (Report as a Service). | ||
|
||
1. Search “Create Custom Report” and click **Create Custom Report**. | ||
2. Enter the report details: | ||
- Give the report a **Name**. | ||
- Set the **Report Type** to **Advanced**. | ||
- Check **Enable As Web Service**. | ||
- Uncheck **Optimized for Performance**. | ||
- For **Data Source**, search and select **All Active and Terminated Employees**. | ||
- Click **OK**. | ||
3. Select the **Column Data** you’d like to sync with Expensify. Typical fields synced with Expensify from Workday are as follows (Required fields are marked with \*): | ||
- First Name | ||
- Last Name | ||
- Primary Work Email\* | ||
- Employee ID\* | ||
- Expensify Workspace ID\* | ||
- Worker’s Manager [Primary Work Email]\* | ||
- Domain Group ID (If you want to specify a Domain Group in Expensify, please work with your Account Manager to get your Domain Group IDs) | ||
- Cost Center | ||
- Entity ID (sometimes called Legal Entity) | ||
- Active/Inactive | ||
- Termination Date | ||
- Note: _if there is field data you want to import that is not listed above, or you have any special requests, let your Expensify Account Manager know and we will work with you to accommodate the request._ | ||
4. Rename the columns so they match Expensify's API key names (The full list of names are found here): | ||
- employeeID | ||
- firstName | ||
- lastName | ||
- employeeEmail | ||
- managerEmail | ||
- workspaceID | ||
- domainGroupID | ||
- approvesTo | ||
Switch to the **Share** tab, and share the report with your **Integration System User** and **Security Group**. | ||
|
||
## Enable your report as a Report as a Service (RAAS) | ||
|
||
1. In your Workday tenant, search “view custom report” and select it. On the **View Custom Report** screen, click **My Reports**. | ||
2. Select the report you have created and click **OK**. | ||
3. Click **Actions > Web Service > View URLs** and click **OK**. | ||
4. Scroll to the **JSON** section, right-click **JSON**, then select **Copy URL**. | ||
|
||
## Activate the Workday Integration | ||
|
||
If you would like to enable and run the API job that performs a recurring sync, you can do so by following Expensify’s API reference documentation [here](https://integrations.expensify.com/Integration-Server/doc/employeeUpdater/#api-principles). | ||
|
||
If you would like Expensify to perform the sync on your behalf, please follow the steps below. | ||
|
||
1. To generate your **Expensify API Credentials**, log into Expensify with an account that has both Workspace Admin and Domain Admin access, then head to https://www.expensify.com/tools/integrations/ where you will find your partnerUserID and partnerUserSecret. | ||
2. Go to **Settings > Workspaces > Group > _[Workspace Name]_ > Connections > HR Integrations** and click **Connect to Workday**. | ||
3. In the form, supply the following details: | ||
- partnerUserID | ||
- partnerUserSecret | ||
- Workday ISU Username (e.g. ISU_Expensify) | ||
- Workday password | ||
- Workday REST Web Services URL | ||
- Preferred go live date (e.g. YYYY/MM/DD, or leave blank) | ||
- Expensify Card Auto-Assignment? (Y/N) | ||
- Note: If using Expensify Cards, card auto-assignment occurs when a Smart Limit for a Group is enabled. | ||
- Deprovision Users? (Y/N) | ||
|
||
After you submit the form, the request is sent to your Expensify Account Manager. Your Account Manager will create a recurring sync that will retrieve the data columns from your Workday Web Services URL and apply the rule mappings you have specified above. | ||
|
||
If we have any questions, we will reach out to you via direct message. |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.