Businesses
Overview
The Businesses resource group provides endpoints for searching and managing Business entities within the WEX Health and Benefits platform.A Business represents an organizational entity – such as an employer, administrator, or plan sponsor – identified by a unique GUID and associated with attributes including a legal name, alias, Employer Identification Number (EIN), and exchange integration identifier.
This resource group contains two endpoints:
Endpoint | Description |
| Search for Business entities by name, EIN, or alias |
| Update mutable fields of a specific Business record |
Attribute | Description |
| A globally unique identifier (GUID) for the Business. Used as the path parameter for update operations. |
| The legal or display name of the business. |
| A short alternate name or code used to identify the business in certain contexts (for example, employer code in enrollment systems). |
| The Employer Identification Number assigned by the IRS. Used for tax and compliance identification. |
| An integer identifier linking the Business to an external exchange or integration system. |
| A classification of the business (for example, employer, TPA). Read-only; returned in responses but not writable via these endpoints. |
| The GUID of the administrator associated with this business, if applicable. |
| The GUID of a parent Business, if this entity is a subsidiary or child organization. |
Endpoint Summary
Method | Endpoint | Description |
|
| Search for businesses by name (partial match), EIN (exact), or alias (exact). Returns a paginated, relevance-sorted list with HATEOAS navigation links. |
|
| Update one or more mutable fields ( |
Key Concepts
Search vs. Direct Lookup
The Businesses resource does not include a direct GET-by-ID endpoint. To retrieve a specific Business record, use GET /businesses/search with a known name, EIN, or alias to locate the record and obtain its id GUID. Once the GUID is known, it can be used with PUT /businesses/{id}.
Partial Name Matching
GET /businesses/search supports partial name matching. Supplying a fragment of a business name (for example, “Acme”) will return all businesses whose name contains that string. Results are sorted by relevance. EIN and alias filters use exact matching.
Update Semantics (PUT with Partial-Update Behavior)
Despite using the PUT HTTP method, PUT /businesses/{id} behaves as a partial update: only fields included in the request body are changed; omitted fields retain their current values. This differs from standard PUT semantics (which would clear omitted fields) and is more consistent with PATCH behavior.
Practically, this means you do not need to read the full record before updating a single field – only supply the fields you want to change.
HATEOAS Navigation
GET /businesses/search returns HATEOAS links alongside paginated results to support navigation between pages without manually constructing URLs.
EIN Sensitivity
The ein field is a tax identifier (Employer Identification Number). Treat it as sensitive business data. Avoid logging EIN values and handle in accordance with your organization’s data handling policies.
Common Workflows
1. Find a Business by Name, Then Update It
Search by name to locate the business and retrieve its GUID:
GET /businesses/search?name=Acme+Corp
2. Use the GUID from the search result to update the business:
PUT /businesses/{id}
{ "alias": "ACME-001" }
### Find a Business by EIN
Use the `ein` query parameter for a deterministic lookup when the EIN is known:
GET /businesses/search?ein=12-3456789
### Update `exchange_id` After Integration Setup
When a business is connected to a new exchange platform, update its `exchange_id`:
PUT /businesses/{id}
{ "exchange_id": 4419 }
Authentication and Authorization
Both endpoints require a valid Bearer token in the Authorization header. Token permissions determine which Business records are accessible and updatable. Attempting to access or modify a Business outside your authorized scope returns 403 Forbidden.
Authorization: Bearer {your_token}Error Handling
Both endpoints return RFC 7807 Problem Details on error. The standard error shape is:
{
"type": "https://developer.wex.com/errors/...",
"title": "Short summary.",
"status": 400,
"detail": "Specific explanation of this error.",
"instance": "/businesses/search",
"invalid_params": [ ... ]
}
Common status codes across both endpoints:
Code | Meaning | Notes |
| Bad Request | Invalid query parameters or request body.Check |
| Unauthorized | Missing or invalid Bearer token. |
| Forbidden | Insufficient permissions for this operation or resource. |
| Not Found | (Update only) No Business found for the supplied GUID. |
| Server Error | Internal fault.Retry with exponential backoff. |
Pagination (Search)
GET /businesses/search uses offset-based pagination via page and page_size query parameters. Results include HATEOAS links for page navigation.
Parameter | Default | Range | Description |
| 0 | >= 0 | Zero-based page index. |
| 20 | 1 - 100 | Maximum results per page. |
Response includes has_next to indicate whether additional pages exist. The pagination field is present for legacy compatibility.
Related Resource Groups
Businesses sit within the broader Users & Identity section of the WEX API. Related resource groups that may be used in conjunction with Businesses:
Resource Group | Description |
Person | Manages individual consumers, employees, and employee groups associated with an employer Business. |
Notification Preference | Manages notification preferences at the user or employer level. |
Plans & Enrollments | Plan years, plans, and enrollment records are scoped to employer Business entities. |
Endpoint Quick Reference
Action | Method | Path | Auth | Key Details / Parameters | Returns |
Search Businesses |
|
| Bearer token required | Filters: | Paginated list with HATEOAS links; |
Update Businesses |
|
| Bearer token required | Body: | Full updated Business record on |