---
search:
  tags:
    - Commerce and CPQ
    - PUT
seo:
  description: >-
    Carries the revision the policy was read at; a stale one is refused.
    Reference for the PUT /api/v1/settings/commercial endpoint in the Taylorz
    CRM API.
sidebar:
  label: Save the commercial policy
  badge: PUT
title: Save the commercial policy
type: openapi-operation
---
Carries the revision the policy was read at; a stale one is refused.

`PUT /api/v1/settings/commercial`

**Request body** (`application/json`, required)

- `policy` (object, required)
- `revision` (integer, required)

Request body example:

```json
{
  "policy": {
    "accountingMappings": {},
    "baseCurrency": "JPY",
    "calculationOrder": "discount_before_tax",
    "currencies": {},
    "currencyScale": 0,
    "fiscalYearStartMonth": 4,
    "pricesIncludeTax": false,
    "rounding": "half_up",
    "taxCalculation": "per_line",
    "taxRounding": "half_up",
    "timezone": "Asia/Tokyo"
  },
  "revision": 1
}
```

**Responses**

- `200` — The policy as it now stands
- `400` — The request body, query or parameters were refused
- `401` — The access token is missing, invalid or revoked
- `403` — The tenant's module is off, or the token's scope or the member's role does not permit the action
- `404` — No such record, or none the caller may read
- `409` — The operation conflicts with the current state
- `413` — The request exceeds the route's body limit
- `500` — An unexpected failure

Response example, 200:

```json
{
  "id": "string",
  "policy": {
    "accountingMappings": {},
    "baseCurrency": "JPY",
    "calculationOrder": "discount_before_tax",
    "currencies": {},
    "currencyScale": 0,
    "fiscalYearStartMonth": 4,
    "pricesIncludeTax": false,
    "rounding": "half_up",
    "taxCalculation": "per_line",
    "taxRounding": "half_up",
    "timezone": "Asia/Tokyo"
  },
  "revision": 1
}
```
