Create order extra field

Create a new extra field and save it to order in an Ecwid store. This can be useful for storefronts with a custom checkout process or manually creating extra fields for orders made earlier.

You can create only one extra field per API request. To create several extra fields, send several separate requests for the order.


Access scopes required: read_orders and update_orders


AuthorizationstringoAuth token with mandatory Bearer before it. Example: Bearer e***s0, where e***s0 should be replaced with your oAuth token.


A JSON object of type 'orderExtraFields' with the following fields:


idstringExtra field's key
valuestringExtra field's value
customerInputTypestringSupported values: TEXT, TEXTAREA, SELECT, CHECKBOX, TOGGLE_BUTTON_GROUP, RADIO_BUTTONS, DATETIME, LABEL. If not specified, default vale is TEXT. More on this in [Types of fields] (add-new-fields-to-checkout#types-of-fields) section
titlestringTitle of an extra field that prompts the user to enter the value
orderDetailsDisplaySectionstringDefines the order section the extra field values is shown to customer and merchant. Supported values: shipping_info, billing_info, customer_info, order_comments. More on this in Show extra fields in an order section. Empty if not specified.
orderBystringExtra field position at an order section in Ecwid Control Panel. Use it to sort fields within the same orderDetailsDisplaySection. The smaller the number, the higher the position is.
showInNotificationsbooleanIf not specified the default value is false. Set true to show extra field in order emails. orderDetailsDisplaySection sets the part where the extra field will appear.
showInInvoicebooleantrue/false if the extra field should be displayed in order invoice or not. Default value: false


A JSON object of type 'CreateStatus' with the following fields:


createCountnumberThe number of created extra fields (1 or 0 depending on whether the creation was successful)


Error response example:

HTTP/1.1 404 Order Not Found
Content-Type application/json; charset=utf-8

In case of error, Ecwid responds with an error HTTP status code and, optionally, JSON-formatted body containing error description

HTTP codes

HTTP StatusDescription
400Request parameters are malformed
403Access token doesn't have update_orders scope
404Order is not found
405Method not allowed. Can occur when using POST instead of PUT HTTP request method
415Unsupported content-type: expected application/json or text/json
500Cannot retrieve extra fields info because of an error on the server

Error response body (optional)

errorMessagestringError message