# Fields library

Get answers to all of your questions regarding Brex

**URL Source:** https://www.brex.com/support/accounting-fields

---

## Overview

Use the Fields library to create, configure, and manage the fields your employees use to code expenses across card expenses, reimbursements, and bills. Brex supports two field types—accounting fields and user fields—which can sync from your ERP/HRIS or be created as custom fields in Brex. Go to Accounting > Manage fields to get started.

The Fields library also offers configuration options for controlling field and value visibility for users.

- Field visibility determines which fields are visible to users and for which types of transactions
- Value visibility rules restricts available values based on conditions such as budget, policy, or department
- Dependencies guide employees to make valid selections in a specific order (e.g., Project > Phase > Task).

## Manage fields

### Accounting fields

Accounting fields can be a user-defined custom field or an integration field imported from your ERP system. These fields will show up in the _Fields Library_ page. Below you can see an example using the NetSuite ERP.

![Fields 1](https://brand.brex.com/m/53e43ef2bee01053/webimage-Fields-1.jpg)

### Accounting integration fields

Accounting integration fields will appear here once the integration with your ERP is complete. For more details, check out our article on ERPs [here](https://www.brex.com/brex-erp-integrations).  
  
**Note: **Fields synced from your ERP are managed within your ERP system and are not directly editable within the Brex platform. Changes made there will then sync to Brex.  
  
You cannot directly add, delete, or modify values for these ERP-synced fields within Brex.  
  
If you don’t see some of your Accounting fields in Brex, please reach out to Support.

#### Custom accounting fields

Custom accounting fields let you manage your expense codification needs in Brex. While custom fields do not directly sync to your ERP, we include them on CSV exports of your transactions. For example, custom fields could be used for capturing an expense’s project codes.

**Step 1:** In the _Fields Library_, click on the + sign > _Create a field_.

![Fields 2](https://brand.brex.com/m/3fc31ba8fd639b19/webimage-Fields-2.jpg)

**Step 2:** In the _Fields_ detail screen, choose _Expense data_.



**Step 3: **Select the name for your field.



**Step 4:** Choose which type of input you want to use for this field.

- List: Allows users to select a value from a dropdown list you provide.
   - Value IDs:** **When creating a list-type custom accounting field, you will have the option to include Value IDs for each of your field values. Value IDs are meant to be unique identifiers for your field values. If the field values are sourced from a third-party system, we recommend matching the value IDs with the unique identifier from that source system. Value IDs are also required if you want to bulk update field values in the future.
- Checkbox: Allows users to provide simple yes or no answers. Example: “Sale closed.”
- Freeform: Allows users to enter up to 1,000 characters.



**Step 5: **Click _Create field_.



**Step 6:** Customize your field visibility options. Configure field visibility lets you limit what field values employees can see when they submit expenses.



**Step 7:** Click _Update_.



Your new field will now be available to categorize expenses across Brex.

These fields will be grouped in the Fields library under _Accounting fields_. To edit them, click on them and choose _Configure field_.



### User fields

User fields are used to group and categorize users in Brex. Cost center, Department, Location, and Title are standard Brex fields and will appear here by default. If you opt to connect an HRIS system, you will be given the option to import custom user fields. They’ll be grouped under the User fields section:

![Accounting custom fields - 5](https://brand.brex.com/m/1f9512b7f473ad87/webimage-Accounting-custom-fields-5.jpg)

#### Custom user fields

Custom user fields will appear here once the integration with your HRIS is complete and your custom field mappings have been set. For more details, check out our article on HRIS [here](https://www.brex.com/hris-integration).

If a custom user field is disabled, your data will be kept but no longer visible on the Team page. All associated value, automation, and policy rules will be paused until the field is re-enabled, and the disabled field will no longer be available for selection in these workflows.

You can also create new custom user fields using the same steps as creating a custom accounting field above. To create a custom user field, select the “User data” option instead of “Expense data”.

### Changing the display value of fields

<!-- plans: New - Early Access -->

If your ERP has field values with the same display name, such as multiple projects or departments with identical names, you can enable value IDs to help employees select the correct one when coding expenses.

When enabled for a field, each value displays as its ID followed by its name (for example, "001 - Admin " and "002 - Admin "). This setting is configured per field, so you can enable it for specific fields without affecting others.

**Who can do this: **Account admins, card admins, bookkeepers, and users with the accounting management capability.

To enable value ID display for a field:

**Step 1:** Go to _Accounting > Fields Library_.

**Step 2:** Select the field you want to update, and click _Configure field_.

**Step 3:** Toggle on Include IDs with value names.

Employees will now see the value name and ID when coding expenses for that field. To turn it off, follow the same steps and toggle the setting off.

**Note: **This setting affects how values display across all Brex surfaces where the field appears, including expense coding and accounting rules. If you use this field in existing mappings or rules, review them after making changes.

### Bulk import & management via CSV

You can now manage field values in bulk by uploading a CSV file - either manually through the UI or automatically via SFTP. This feature helps you save time and reduce manual work when creating, updating, or deactivating large numbers of field values (like project codes or customer names).

#### Supported methods

- Manual upload: Upload a CSV directly from the Fields Library to create, edit, or delete field values.
- SFTP upload: Automate the upload process by sending files via SFTP on a recurring basis. You’ll need to set up[ the Accounting file transfer via SFTP](https://www.brex.com/accounting-file-transfer). **Note:** The SFTP upload feature is available only for Premium, Enterprise, and P-card plans.

#### CSV template

The Brex CSV import template will be used to manage your field values. Each row should include:

- **Value**: The value you want to add or update (e.g., "Project X").
- **Value ID** _(optional)_: A unique ID, such as the NetSuite internal ID.
- **Status** _(optional)_: One of enabled, disabled, or deleted. The default is enabled.

Example:

| Value | Value ID | Status |
| --- | --- | --- |
| Project X | proj_1 | Enabled |
| Project MoneyMaker | proj_2 | Disabled |

#### 

### Adding field values

To add a new field value, enter each new value on a separate row.

### Updating field values

You can update existing field value names in bulk, provided that "Value IDs" are available.

To update a field value:



**Step 1:** Ensure the "Value ID" in the row matches the value you wish to modify.



**Step 2:** Type the new name into the "Value" column of that row.

### Deleting or disabling field values

To change the status of a field value (delete, disable, or enable):



**Step 1:** Include the field value you want to modify in your input.



**Step 2:** Update the "Status" column with your desired state:

- To **delete** a value, set its status to "Deleted".
- To **disable** a value, set its status to "Disabled".

To **enable** a value that was previously disabled, set its status to "Enabled".

### Upload values in the Brex dashboard

**Step 1:** Go to the **Fields Library** in your Brex dashboard.



**Step 2**: Select the field you want to update values for.



**Step 3:** Click **Upload values.**



**Step 4: **Upload your completed CSV file.



**Step 5:** Review the changes in the preview screen.



**Step 6: **Confirm the upload to apply the updates.

### Set up an automatic import via SFTP

**Step 1: **Set up SFTP using the instructions [here](https://www.brex.com/accounting-file-transfer).



**Step 2: **Download and fill out the SFTP CSV import template [here](https://filestore.brexapps.com/link/ed0b06bd40d0064b015cf777cbb4cf808a7c4a4bb54ebad1be4f1eb06d678a99.csv).

**Note:** Compared to the CSV template for manual upload, the SFTP CSV import template can update field values for multiple fields at a time. So there is an additional required column called Field name.



**Step 3:** Drop your completed CSV into the configured SFTP folder directory at _/Field Imports/CSV/IN/._



**Step 4:** Brex will automatically import updates and notify your admins via email about the import status. Processed CSV templates will be automatically relocated to the SFTP folder directory at _/Field Imports/CSV/OUT/_.



If you have any issues uploading your file or setting up SFTP, please contact Brex Support for assistance.

## Configure field visibility

You can configure field visibility on a per-field basis to support different workflows (card, reimbursements, and bills).  
  
**Step 1: **In the _Fields library_ page**, **select the field that you want to configure and click on _Configure field_.

![HC - Custom Fields 18](https://brand.brex.com/m/64ccf897a211421/webimage-HC-Custom-Fields-18.jpg)

**Step 2: **Click the pencil icon next to _Field visibility_.

![Accounting custom fields - 4](https://brand.brex.com/m/2f754b8424c757ad/webimage-Accounting-custom-fields-4.jpg)

**Step 3: **Select which types of transactions your field will show.

![Fields 3](https://brand.brex.com/m/3b9b572055e58458/webimage-Fields-3.jpg)

**Step 4: **Select whether this field will be visible to accounting users only or available to all employees. 

![Fields 4](https://brand.brex.com/m/7af8b1e3e6eaaccd/webimage-Fields-4.jpg)

#### How field visibility interacts with policies

Field visibility and spend policies both influence what employees see when submitting expenses, but they serve different purposes:

- **Field visibility** controls whether a field is generally available to employees or restricted to Accounting users.
- **Policies** determine whether a field is _required_ for expense submission

When these settings conflict, policy requirements take precedence.

**What this means in practice:**

- If a field is required by policy, employees will see it during expense submission, even if it is set to _be visible only to Accounting users_.
- Updating field visibility does not remove existing policy requirements.

Before changing a field’s visibility to _Accounting users only_, review your spend policies and remove any requirements tied to that field.

## Create value visibility rules

<!-- plans: Premium, Enterprise, Smart card -->

You can use value rules to control what field values your employees can see based on another field value. For example, you may want to limit employees from the _Sales_ department to only have access to GL Accounts _6001 - Client meals_ and _6005 - Client gifts _when coding their expenses.  
  
**Step 1: **In _Fields library_**, **click the field that you want to configure and click _Configure field_.

![HC - Fields 07](https://brand.brex.com/m/760c87a5d3ad7d73/webimage-HC-Fields-07.jpg)

**Step 2: **Click _Configure rules_ next to _Value visibility_.

![HC - Custom Fields 19](https://brand.brex.com/m/1eeea16ac3e1bbcd/webimage-HC-Custom-Fields-19.jpg)

**Step 3: **Set the specific conditions for which certain values will be visible to employees. Click _Save changes_ when you’re done.

![HC - Custom Fields 16](https://brand.brex.com/m/4bc81b8532b02fc7/webimage-HC-Custom-Fields-16.jpg)

After creating a rule, you can return to the value rules section to delete, duplicate, or edit the existing rules.

![HC - Custom Fields 17](https://brand.brex.com/m/3a0058feb1a10b46/webimage-HC-Custom-Fields-17.jpg)

**Note:** Multiple rules may interact with each other. The rules will be evaluated from top to bottom where only the first matching rule will be applied.

## Set up dependencies

<!-- plans: Premium, Enterprise, Smart card, Early access -->

You can use dependencies to control field values by the value selected in another field and determine which values are shown in another field.  
  
**Note:** Since dependencies aren’t supported for _User Fields_, you can’t control or filter values based on _User Field_ selections.  
  
For example, if you want to track spend at the project-level, and you have the following fields and values that you need employees to select from during codification.

| Fields | Project | Phase | Task |
| --- | --- | --- | --- |
| Field values | Project 1 | Phase A | Task 1 |
| Field values | Project 2 | Phase B | Task 2 |
| Field values | Project 3 | Phase C | Task 3 |
| Field values |  |  | Task 4 |
| Field values |  |  | Task 5 |

**Note: **A dependent list can have a maximum of 10 levels. In the example above, the _Project_ dependent list (Project > Phase > Task) has three levels. Attempting to create or import a dependent list with more than 10 levels will result in an error.

Without dependencies, each phase and task would be available for selection for each project and employees could select a task that may not be applicable to a given project. However, you can set up a dependency between the three fields so that phase and Task only show valid options based on the selected project.

| Project | Phase | Task |
| --- | --- | --- |
| Project 1 | Phase B | Task 1 |
| Project 1 | Phase B | Task 2 |
| Project 1 | Phase C | Task 3 |
| Project 1 | Phase C | Task 5 |
| Project 2 | Phase A | Task 3 |
| Project 2 | Phase A | Task 4 |
| Project 3 | Phase B | Task 1 |
| Project 3 | Phase B | Task 2 |
| Project 3 | Phase A | Task 4 |
| Project 3 | Phase C | Task 5 |

With this setup, the available field values an employee would see for _Phase_ and _Task_ depends on their selection first on _Project_, so when coding an expense, only these fields show up in sequence.  
  
**Note: **Please reach out to Brex Support to enable this feature for your account.  
  
**Step 1: **In the _Fields library_ page**, **select the field that you want to configure and click _Configure field_.

![HC - Fields 11](https://brand.brex.com/m/546da611259dfbc6/webimage-HC-Fields-11.jpg)

**Step 2**: Under _Dependencies_, click _Create dependency_.

![HC - Fields 12](https://brand.brex.com/m/79d67fea977a30df/webimage-HC-Fields-12.jpg)

**Step 3**: Download and complete the CSV template. When you are ready, upload the completed template and click _Review_. Follow the steps to set up your dependencies.

![HC - Fields 13](https://brand.brex.com/m/3b98e28bd4c7284/webimage-HC-Fields-13.jpg)

### Creating or updating dependencies from the dashboard via CSV upload

<!-- plans: Early access -->

**Step 1: **In the _Fields library_ page**, **select the field that you want to configure and click _Configure field_.

![Manage Fields 1](https://brand.brex.com/m/47e3dd00b106272b/webimage-Manage-Fields-1.jpg)

**Step 2**: Under _Dependencies_, click _Create dependency_.

![Fields Library 1](https://brand.brex.com/m/461f852132986ea8/webimage-Fields-Library-1.jpg)

**Step 3**: Download and complete the CSV template. When you are ready, upload the completed template and click _Review_. Follow the steps to set up your dependencies.

![Fields Library 2](https://brand.brex.com/m/6b3fc3f47a1cfd91/webimage-Fields-Library-2.jpg)

### Completing the CSV template

The CSV template is split into four sections:

- **Instructions**: Explains how to fill out the template.
- **Recipient Email**: Emails included in this section will receive an email notification regarding the status of the dependencies import.
- **Field ID Mapping**: Provides a mapping of your field names on Brex to their corresponding field IDs. When defining dependencies in the “Dependent lists” section, we require you use the Field ID instead of the Field name to ensure accuracy.
- **Dependent Lists**: Include all desired permutations of dependencies you want to create or delete. The first row of this section should include the relevant Field IDs for the set of dependent lists you intend to manage on Brex. In addition, the right-most column will be a “Delete (Y)” column that can be used to delete an existing dependent list permutation.

Here is an example of what a completed template may look like:

![HC - Fields 14](https://brand.brex.com/m/4c583d28943473c6/webimage-HC-Fields-14.jpg)

### Adding new dependent lists

You can add new lists by entering new rows in the CSV template.

### Deleting dependent lists

Mark the _Delete (Y)_ column to remove a dependent list combination.

### Updating dependent lists

To update, delete the old list and add the new one in the same template.

### Automating dependencies via SFTP

**Step 1:** Set up SFTP following the step [here](https://www.brex.com/accounting-file-transfer).

****

**Step 2:** Save your completed Dependent lists CSV to "/Dependent Lists/IN/".

****

**Step 3:** After processing, the file moves to "/Dependent Lists/OUT/" and the filename is timestamped. You’ll receive an email with the import status, and Brex monitors the SFTP folder and processes new templates throughout the day.

****

**Step 4:** If errors occur, correct the CSV and re‑upload; if unresolved, contact Brex Support with the error details and filename.

### Monitoring imports and validating results

**Step 1:** Watch for the status email (sent to the addresses in the template’s **Recipient Email** section).



**Step 2:** Check SFTP folders: inputs in "/Dependent Lists/IN/"; processed files with timestamps in "/Dependent Lists/OUT/".



**Step 3:** Test expense coding to confirm that each field displays the expected filtered options. (Only valid combinations should appear in sequence.)

## Automatic ERP field syncing

_Automatic ERP Field Syncing_ refreshes daily to update your ERP fields automatically, minimizing the need for manual updates.  
  
By default, this feature is disabled, but an admin can activate it by following the steps below:  
  
**Step 1:** In your _Accounting_ dashboard, click _ERP settings_.  
  
**Step 2:** Under _Integration management_, toggle on _Auto-refresh_. You can toggle this off later if you want to disable auto-refresh.  
  
Once enabled, a progress bar will track data export or import progress for you. You’ll also receive notifications on success or failure.  
  
**Note: **If an error occurs during auto-refresh, the system will halt further refresh attempts until the issue is resolved.