Legal name and trade name of a company
name is the name a company is known by and business_name its legal name when it differs. Responses now follow that contract for every company, partial updates resolve against the current names and both fields accept up to 100 characters.
2 November 2026 — A company has a legal name (razón social) and, optionally, a trade name. The companies API exposes them as two fields and now gives them the same meaning for every company, whichever way it was created. The shape of the JSON does not change and no operation is retired.
| Field | Meaning |
|---|---|
name | The name the company is known by: its trade name or, when business_name is null, its legal name. |
business_name | Its legal name when it differs from name. null when name is the legal name. |
Operations in this release
| Operation | operationId | MCP tool | What changes |
|---|---|---|---|
POST /v1/accounts/{account}/companies | public-api.v1.companies.create | create_company | name is the name the company is known by and business_name its legal name when it differs. Both accept up to 100 characters. |
PATCH /v1/accounts/{account}/companies/{company} | public-api.v1.companies.update | update_company | Resolves against the current names, see partial updates. name accepts up to 100 characters. |
GET /v1/accounts/{account}/companies/{company} | public-api.v1.companies.show | get_company | Returns the two names with that meaning for every company. |
GET /v1/accounts/{account}/companies | public-api.v1.companies.list | list_companies | Same, for each tax ID in the list. |
POST /v1/accounts/{account}/companies/{company}/activate | public-api.v1.companies.activate | activate_company | Same, in the returned company. |
POST /v1/accounts/{account}/companies/activate | public-api.v1.companies.activate_batch | activate_companies | Same, in each returned company. |
POST /v1/accounts/{account}/companies/{company}/deactivate | public-api.v1.companies.deactivate | deactivate_company | Same, in the returned company. |
POST /v1/accounts | public-api.v1.managed_accounts.create | provision_managed_account | display_name is the trade name of the new tax ID and accepts up to 100 characters, like legal_name. |
Partial updates
PATCH resolves against the current names:
- Changing only
namerenames the trade name when the company has a distinct legal name, and the legal name otherwise. - Changing only
business_namechanges the legal name and keepsname. "business_name": ""makesnamethe legal name.
What else changes
- Companies created in the web app. A company created in the web app with a trade name used to return the two names the other way round. It now returns them like any other.
- Length. A longer
name,business_nameordisplay_namereturns422with the field error before anything is written. It could not be stored before either. - Tax filings. What identifies the company to the tax agency (models 303, 130 and 347, Facturae and UBL) always uses the legal name.