v60

latestOpenAPI 3.0.0raw.githubusercontent.com2026-08-01361201.5 MB
Orders

Register modifications on order

This request allows modifying an order by:

  • Adding items to an order.

  • Removing items from an order.

  • Applying discounts to the total value of the order.

  • Incrementing the total value of the order.

❗ This endpoint is being deprecated in March 1st, 2026. We stopped providing support for this API since December 31st, 2025. If you wish to modify an order, you can use the Create order modifications endpoint for an improved order modification experience.

Timeout settings: This is a synchronous API, which means the application requests data and waits until a value is returned. This behavior can cause timeout errors. To avoid them, we recommend setting the timeout in 20 seconds.

In order modifications scenarios, it is possible to insert a Partial invoice. The total value of the order will be updated after the insertion of the invoice, even when there is a partial invoice scenario. The updated value is settled by the VTEX Payment Gateway, and the customer reimbursement is automatic.

This action can only be done for orders in the following status:

  • handling

  • waiting-for-fulfillment

  • ready for invoicing

Permissions

Any user or API key must have at least one of the appropriate License Manager resources to be able to successfully run this request. Otherwise they will receive a status code 403 error. These are the applicable resources for this endpoint:

ProductCategoryResource
CheckoutCheckoutResourcesOrders Full Access
OMSOMS accessCancel order
OMSOMS accessChange order

You can create a custom role with that resource or use one of the following predefined roles:

RoleResource
Checkout AdminOrders Full Access
OMS - Full access<p>Cancel order</p><p>Change order</p>
IntegrationProfile - Fulfillment Oms<p>Cancel order</p><p>Change order</p>
IntegrationProfile - Fulfillment GatewayCancel order
IntegrationProfile - Fulfillment Gateway Oms<p>Cancel order</p><p>Change order</p>
inStore Sales Person<p>Cancel order</p><p>Change order</p>

❗ Assigning a predefined role to users or application keys usually grants permission to multiple License Manager resources. If some of these permissions are not necessary, consider creating a custom role instead. For more information regarding security, see Best practices for using application keys.

To learn more about machine authentication at VTEX, see Authentication overview.

post/api/oms/pvt/orders/{orderId}/changes

Path parameters

orderIdstring required
Example:1172452900788-01

ID that identifies the order in the seller.

Headers

Content-Typestring required

Type of the content being sent.

Acceptstring required

HTTP Client Negotiation Accept Header. Indicates the types of responses the client can understand.

Request body

requestIdstring required

Request identification of the modification. Only the first modification made with each requestId will be effective on a given order. Use different IDs for different modifications to the same order.

reasonstring required

Reason for order modification. This may be shown to the shopper in the UI or transactional emails.

discountValueinteger required

This field can be used to apply a discount to the total value of the order. Value in cents.

incrementValueinteger required

This field can be used to increment the total value of the order. Value in cents.

Response

OK

datestring

Date of order modification.

orderIdstring

ID of the order.

receiptstring

Receipt identification.