# Update Customer Order Options

## Overview

This endpoint can be used to update the order options of an existing customer.

In order to consume the endpoint you must:

- Be authenticated user  
For information on how you can authenticate, see: [Authentication](https://developer.sellercloud.com/dev-article/authentication/)

As soon as you do authentication and receive a valid token, it needs to be passed to the call.

## Endpoint

Example for such endpoint for TT server is `https://tt.api.sellercloud.com/rest/api/Customers/{id}/OrderOptions`

For your server endpoint will be:

`https://{your_server_id}.api.sellercloud.com/rest/api/Customers/{id}/OrderOptions`

## Request

- Method Type: **HttpPut**  
- Authorization: Use **Bearer Token** + token received from token authentication  
- Header info: Content-Type: **application/json**

| **Parameter**                                     | **Data Type** | **Description**                                                                                                                                                | **Is Required** |  
|--------------------------------------------------|----------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------|  
| TaxExempt                                        | Boolean        | Customer tax exempt<br>Optional. Provide null or omit in the request if no update of this field is needed.                                                   | No              |  
| TaxID                                            | String         | Customer tax id<br>Can only be set when TaxExempt is enabled.<br>Optional. Provide null or omit in the request if no update of this field is needed.      | No              |  
| TaxExemptType                                   | Enum           | Customer tax exempt type<br>Possible values (key – value):<br>- “”— None<br>- “wholesale” – wholesale<br>- “government” – government<br>- “other” – other<br>- “non_exempt” – non exempt<br>Optional. Provide null or omit in the request if no update of this field is needed. | No              |  
| OrderHandlingFee                                 | Decimal        | Customer order handling fee<br>Optional. Provide null or omit in the request if no update of this field is needed.                                            | No              |  
| ApplyShippingChargesToOrderTotal                 | Boolean        | Customer apply shipping charges to order total<br>Can only be set when the customer is wholesale.<br>Optional. Provide null or omit in the request if no update of this field is needed.  | No              |  
| AllowShippingUnpaidOrders                        | Boolean        | Customer allow shipping unpaid orders<br>Can only be set when the customer company is configured to allow shipping unpaid orders.<br>Optional. Provide null or omit in the request if no update of this field is needed.      | No              |  
| DisableShipNotifications                          | Boolean        | Customer disable ship notifications<br>Optional. Provide null or omit in the request if no update of this field is needed.                                   | No              |  
| InvoiceNotes                                     | String         | Customer invoice notes<br>Optional. Provide null or omit in the request if no update of this field is needed.                                                | No              |  
| OrderPdfInvoicePlugin                            | Enum           | Customer order pdf invoice plugin id<br>Optional. Provide null or omit in the request if no update of this field is needed.                                 | No              |  
| SendInvoiceWithShipppingNotificationEmail        | Boolean        | Customer send invoice with shipping notification email<br>Optional. Provide null or omit in the request if no update of this field is needed.             | No              |  
| WholesalePriceBasedDiscount                      | Decimal        | Customer wholesale price-based discount<br>Optional. Provide null or omit in the request if no update of this field is needed.                               | No              |  
| SitePriceBasedDiscountEnabled                    | Boolean        | Customer site price – based discount enabled<br>Can only be set when client setting ‘Enable Site Price Based Wholesale Discount’ is enabled.<br>Optional. Provide null or omit in the request if no update of this field is needed. | No              |  
| SitePriceBasedDiscount                            | Decimal        | Customer site price -base discount value<br>Can only be set when SitePriceBasedDiscountEnabled is true.<br>Optional. Provide null or omit in the request if no update of this field is needed.             | No              |  
| CostBasedPricingEnabled                           | Boolean        | Customer cost – based pricing enabled<br>Can only be set when client setting ‘Enable Cost Plus Based Wholesale Prices’ is enabled.<br>Optional. Provide null or omit in the request if no update of this field is needed.           | No              |  
| CostBasedPricingCostType                         | Enum           | Customer cost – based pricing cost type.<br>Possible values:<br>- SiteCost = 0<br>- LastCost = 1<br>- AverageCost = 2<br>Can only be set when CostBasedPricingEnabled is true.<br>Optional. Provide null or omit in the request if no update of this field is needed.                             | No              |  
| CostBasedPricingPercentToAdd                     | Decimal        | Customer cost – based pricing percent to add<br>Can only be set when CostBasedPricingEnabled is true.<br>Optional. Provide null or omit in the request if no update of this field is needed.   | No              |

## Response

- If user is authenticated and the request is successful, then response will be **Status Code 200 => OK**
- If user is not authenticated, then response will be **Status Code 401 => Not Valid Token**
- In case of error, response will be **Status Code 500 => Internal Server Error**
- In case of incorrect request, response will be with **status code 400 Bad Request**
