---
title: "Update the editable fields of an existing company"
method: POST
path: "/public/company/v1/update-company"
tags: ["Company"]
---

# Update the editable fields of an existing company

`POST /public/company/v1/update-company`

Updates the editable fields of a company. This is a partial update: only the fields present in the request
are changed; omitted fields are left untouched.

Identity fields (chamber of commerce number, VAT number and statutory name) are sourced from the chamber of
commerce and cannot be updated through this endpoint.

Updated provisions take effect from the moment of the update onwards: they are applied to new orders and
placements created after this call. Existing orders and placements keep the provisions that were in effect
when they were created and are not updated retroactively.

## Request body

- CompanyUpdateRequestV1 — A partial update of a company. Only the fields present are updated; omitted fields are left unchanged.
  - `companyId` string, uuid, required
  - `tradeName` string — The trade name (handelsnaam / display name) of the company. Not the statutory name.
  - `iban` string — The IBAN of the company.
  - `collectiveLabourAgreementNumber` integer — The unique number of the collective labour agreement, as returned from the /get-collective-labour-agreements endpoint. Note: the CLA can only be changed while the company is not yet active and has no orders on its current CLA.
  - `provisions` ProvisionV1 — Either fixedCostPriceFactor OR both percentage and minimumAmount must be provided. The fixedCostPriceFactor determines the cost price (hourly wage * fixedCostPriceFactor = cost price). The percentage and minimumAmount are applied on top of the cost price, where the highest of the two is invoiced. If the cost price is 20€, percentage is 5% and minimum amount is 0.50€, then the client will be invoiced for 21€ (5% of 20€ = 1€ > 0.50€) If the cost price is 20€, percentage is 5% and minimum amount is 2.50€, then the client will be invoiced for 22.50€ (2.50€ > 5% of 20€ = 1€) If only one of them is applicable, the other one can be set to 0.0
    - `fixedCostPriceFactor` number
    - `percentage` number
    - `minimumAmount` number

## Response `200`

Successfully updated the company. Returns the full, current company data.

- CompanyGetResponseV1 — The current Maqqie-stored data of a company.
  - `companyId` string, uuid, required
  - `chamberOfCommerceNumber` string, required — Read-only. Sourced from the chamber of commerce and cannot be updated.
  - `vatNumber` string — Read-only. Sourced from the chamber of commerce and cannot be updated.
  - `statutoryName` string — Read-only. The statutory (legal) name, sourced from the chamber of commerce and cannot be updated.
  - `tradeName` string, required — The trade name (handelsnaam / display name) of the company.
  - `collectiveLabourAgreementNumber` integer — The unique number of the collective labour agreement currently applied to the company.
  - `iban` string
  - `provisions` ProvisionV1 — Either fixedCostPriceFactor OR both percentage and minimumAmount must be provided. The fixedCostPriceFactor determines the cost price (hourly wage * fixedCostPriceFactor = cost price). The percentage and minimumAmount are applied on top of the cost price, where the highest of the two is invoiced. If the cost price is 20€, percentage is 5% and minimum amount is 0.50€, then the client will be invoiced for 21€ (5% of 20€ = 1€ > 0.50€) If the cost price is 20€, percentage is 5% and minimum amount is 2.50€, then the client will be invoiced for 22.50€ (2.50€ > 5% of 20€ = 1€) If only one of them is applicable, the other one can be set to 0.0
    - `fixedCostPriceFactor` number
    - `percentage` number
    - `minimumAmount` number
  - `releaseStatus` CompanyReleaseStatusV1, required — The release (subscription approval) status of the company.
    - `released` boolean, required — Whether the company has been released (subscription approved).
    - `comment` string — A comment left on the last release decision, if any.
  - `claCheck` CompanyClaCheckV1, required — The status of the collective labour agreement (CLA) release check.
    - `status` 'TBD' | 'ERROR' | 'APPROVED' | 'REJECTED', required — The status of the CLA release check: * TBD - the check has not been executed yet. * ERROR - the check could not be completed automatically and requires manual handling. * APPROVED - the check passed. * REJECTED - the check failed.
    - `reason` string — The comment left on the CLA check, if any.

## Other responses

- `400` — The request could not be processed. This could be due to a number of reasons: * The request does not have all required data. * Data in the request is invalid. * Data in the request is inconsistent. * The operation is not allowed given the current state of the data.
- `401` — The request did not contain credentials identifying the caller, or the provided credentials were invalid.
- `403` — The data that the request referred to is inaccessible to the caller.

---

[API](https://skmtc.net/maqqie/apis/maqqie-public-api.md) · [All operations](https://skmtc.net/maqqie/apis/maqqie-public-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/maqqie/maqqie-public-api/revisions/41e5cd97d4d7/schema)
