Policy Engine
Overview
Early access A policy defines the rules your employees must follow when spending company money -—including what’s allowed, what needs approval, and what documentation is required.
Brex’s Policy Engine is our powerful yet easy-to-use policy solution for creating, managing, and automatically enforcing policies across your company. Admins have the flexibility to create dynamic rules based on factors such as amount, expense type, role, merchant, and more. These rules are intelligently enforced right at the point of spending, ensuring control and compliance in real time. Account, card admins, bookkeepers, and any other users with the specific product capability can manage all of the following under Cards and limits > Manage policy in your Brex dashboard.
Note: This feature is currently in early access. You may still have access to legacy policies. For more information or assistance, please see this article.
How policies are structured
Policies are organized into sections that allow you to apply groups of rules to different types of spend, such as spend limits. This makes them easy to understand, easy to manage, and scalable as your company grows.
Default
There will always be one policy section configured as the Default section. The default policy applies to any spend that is not associated with a spend limit (bills, reimbursements that do not require a spend limit) and any spend that is associated with a spend limit pointing to the Default section.
You will have the option to update any policy to “default” by clicking into the Policy and toggling on Set as default.
Custom sections
These are optional, targeted rule groups you create for specific use cases - like stipends or benefits. Each section is a distinct set of rules. If you point a spend limit to a policy section, all expenses associated with that spend limit will use the associated rules in that section.
Example: In your Stipend policy section, you can require no receipts, no memos, and no approvals to apply to all Stipend related spend limits, even though the Default policy only requires manager approval.
If you choose, you can add custom rule groups to apply rules for specific cases.
Create or edit a policy
When you're ready to set up your policy, you have two starting points:
Option 1: Use a preconfigured policy
For new customers who haven’t set up policies yet, you can get started with a pre-configured policy that includes common rules for receipts, memos, approvals, and spending amounts. This is Ideal if you are looking for a quick setup with basic guardrails.
Option 2: Build a custom policy with the Universal Policy builder
The Universal Policy builder gives you complete control to customize how spend should be handled across your organization. You can create rules in Default and add custom sections like "Travel" or "Benefits" - all in one streamlined interface. You can:
- Write rules once, apply them across all relevant spend types.
- Update rules in one place, and they automatically update everywhere.
- Avoid duplicating policies as your org structure evolves.
You can manage and publish your policy under Cards and limits > Manage policy in your Brex dashboard.
Set up policy rules
You can use our Policy Engine to create flexible rules that follow if-this-then-that logic. Each rule is made up of two key parts:
1. Expense condition (the “if”)
This is the “if” part of your rule - the criteria that an expense must meet. You can set simple or complex conditions using attributes like amount, expense category, vendor, employee role, or custom fields from your HRIS.
Examples:
- If an expense is over $50 (Note: You can define the currency directly within the field on a per rule basis)
- If an expense is a Meal
- If an expense is a Meal over $50 made by an Executive
- If a Vendor is AWS and the expense type is Bill Pay
- If a Workday field = Intern and the category is Client Entertainment
2. Action (the “then”)
This is the “then” part of your rule - what happens when the condition is met. These are automatic enforcement steps that Brex will apply in real time.
Examples:
- Require approval from a specific reviewer
- Require employees to add attendees
- Require a receipt or memo
- Block transaction entirely
- Require accounting field that is Location
- Note: Once created in your Field Library, the visibility for the accounting field must be set to All users.
You can create multiple rules within any policy section. Rules are highly customizable and can be adapted to different spend types, employee roles, or business scenarios. Example: You want to create a rule where all AWS bills need to be reviewed by the Head of Engineering, while all other vendors should follow the standard Bill Pay workflow. You can structure that rule: Expense Condition:
- If vendor = AWS
- And expense type = Bill
Action:
- Require memo
- Require approval from Jane Brown
Now, every AWS bill will require a memo, and be automatically routed directly to Jane Brown for review. Example: You want to enforce stricter documentation and routing for client meals over $100, while keeping team meals more lightweight. Here’s how you could set that up in your policy: Expense Condition:
- If expense category = Client Meal
- And amount > $500
- And employee level = Manager or above
Action:
- Require listing of all attendees
- Require an itemized receipt
- Require approval from John Smith
How rules are evaluated
Every time an employee spends using our platform - whether it’s a card swipe, reimbursement, or bill pay - the Policy checks which rules apply and automatically enforces them in real time.
Here’s how it works:
- Brex evaluates two rule sources:
- Default rules: These rules apply to all spend if no spend limit is associated
- Section-specific rules: These rules apply based on the spend limit associated. Spend limits can point to any rule section, including the Default rule section.
- Brex then enforces the appropriate actions:
- Who needs to approve it
- What documentation is needed (like receipts or memos)
- Whether to flag or block
- If multiple rules match in the same Section:
- The last rule wins (overrides earlier ones)
- Rules that depend on a custom field (for example, Project code) only apply when that field is set to Required in your policy. You’ll see the warning, This will only apply when <field name> is required.
- If your accounting integration auto-populates the field, you must still add a rule that requires this field so the policy is properly evaluated.
Example: Why rule order matters
In your Default Section, you have the following rules: rule → Require a receipt for any expense over $75.
Rule 1: Require a receipt for any expense over $75.
Rule 2: If expense is over $100 → require Manager approval
Rule 3: If expense is over $500 → require Manager + VP approval
Now, an employee books a $600 flight.
If Rule 2 is listed after Rule 3, Brex applies the first match it sees and only sends the expense to the Manager.
If Rule 3 is listed last, Brex applies the more specific logic and routes it to both the Manager and VP.
In this case, the expense would require a receipt (since it’s over $75) and be sent to both reviewers (since it’s over $500).
Always place more specific rules lower in the list so they’re evaluated correctly.
When rules are re-evaluated:
We’ll automatically re-check and apply updated rules if:
- The policy changes before the expense is approved.
- The employee updates the documentation (adds a missing memo or receipt).
- Any field that affects the rule (like amount, role, or expense type) is edited.
Applying a policy
You can select a new policy section when you create/edit a spend limit or request type.