VTEX Order Placement API

The Order Placement API from VTEX — 3 operation(s) for order placement.

Operations 3

POST /api/checkout/pub/orderForm/{orderFormId}/transaction VTex Place order from an existing cart #
PUT /api/checkout/pub/orders VTex Place order #
POST /api/checkout/pub/gatewayCallback/{orderGroup} VTex Process order #

Documentation

📖
Documentation
https://developers.vtex.com/docs/guides/how-the-integration-protocol-between-vtex-and-antifraud-companies-works
📖
Documentation
https://developers.vtex.com/docs/guides/bulk-import-buyer-organizations-spreadsheet
📖
Documentation
https://developers.vtex.com/docs/guides/catalog-api-seller-portal-overview
📖
Documentation
https://developers.vtex.com/docs/guides/catalog-overview
📖
Documentation
https://developers.vtex.com/docs/guides/checkout-overview
📖
Documentation
https://help.vtex.com/en/tutorial/customer-credit-overview--1uIqTjWxIIIEW0COMg4uE0
📖
Documentation
https://help.vtex.com/en/tutorial/data-subject-rights--6imchxTx09icupKMbzHVIM
📖
Documentation
https://developers.vtex.com/docs/api-reference/do-api
📖
Documentation
https://developers.vtex.com/docs/guides/managing-vtex-gift-cards
📖
Documentation
https://developers.vtex.com/docs/guides/gift-card-integration-guide
📖
Documentation
https://developers.vtex.com/docs/guides/faststore/headless-cms-overview
📖
Documentation
https://developers.vtex.com/docs/api-reference/vtex-id-api
📖
Documentation
https://help.vtex.com/en/tracks/vtex-intelligent-search--19wrbB7nEQcmwzDPl1l4Cb/3qgT47zY08biLP3d5os3DG
📖
Documentation
https://developers.vtex.com/docs/apps/vtex.search@1.0.8
📖
Documentation
https://help.vtex.com/en/tracks/cms--2YcpgIljVaLVQYMzxQbc3z/1oN446gRGcR2s70RvBCAmj
📖
Documentation
https://developers.vtex.com/docs/guides/search-overview
📖
Documentation
https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3
📖
Documentation
https://developers.vtex.com/docs/guides/fulfillment
📖
Documentation
https://developers.vtex.com/docs/guides/marketplace-overview
📖
Documentation
https://developers.vtex.com/updates/release-notes/marketplace-protocol-documentation-update
📖
Documentation
https://developers.vtex.com/docs/guides/external-marketplace-integration-guide
📖
Documentation
https://developers.vtex.com/docs/guides/external-seller-integration-connector
📖
Documentation
https://developers.vtex.com/docs/guides/external-seller-integration-guide
📖
Documentation
https://help.vtex.com/en/tutorial/master-data--4otjBnR27u4WUIciQsmkAw
📖
Documentation
https://help.vtex.com/en/tutorial/understanding-the-message-center--tutorials_84
📖
Documentation
https://developers.vtex.com/docs/guides/orders-overview
📖
Documentation
https://developers.vtex.com/docs/guides/changes-in-vtex-features-behavior-to-handle-pii-data
📖
Documentation
https://help.vtex.com/en/tutorial/payment-provider-protocol--RdsT2spdq80MMwwOeEq0m
📖
Documentation
https://developers.vtex.com/docs/guides/payments-integration-guide
📖
Documentation
https://help.vtex.com/en/tutorial/vtex-pick-and-pack-last-mile--HN7WKV0xoq2ssVjsJlfzr
📖
Documentation
https://developers.vtex.com/docs/guides/vtex-io-documentation-policies
📖
Documentation
https://developers.vtex.com/docs/guides/pricing-hub
📖
Documentation
https://developers.vtex.com/docs/guides/pricing-overview
📖
Documentation
https://developers.vtex.com/docs/guides/profile-system
📖
Documentation
https://developers.vtex.com/docs/guides/promotions-overview
📖
Documentation
https://developers.vtex.com/docs/apps/vtex.reviews-and-ratings
📖
Documentation
https://developers.vtex.com/docs/guides/sent-offers-integration-guide-connectors
📖
Documentation
https://developers.vtex.com/docs/guides/sessions-system-overview
📖
Documentation
https://developers.vtex.com/docs/guides/vtex-shipping-network
📖
Documentation
https://help.vtex.com/en/tutorial/sku-bindings--1SmrVgNwjJX17hdqwLa0TX
📖
Documentation
https://developers.vtex.com/docs/guides/subscriptions
📖
Documentation
https://developers.vtex.com/docs/apps/vtex.search/suggestions
📖
Documentation
https://developers.vtex.com/docs/guides/vtex-tracking

Specifications

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/vtex-order-placement-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

vtex-order-placement-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: VTex Checkout Order Placement API
  description: '>ℹ️ Check the new [Checkout onboarding guide](https://developers.vtex.com/vtex-rest-api/docs/checkout-overview). We created this guide to improve the onboarding experience for developers at VTEX. It assembles all documentation on our Developer Portal about the Checkout and is organized by focusing on the developer''s journey.


    The Checkout API allows you to obtain and configure information about the shopping cart and its attachments, personalization of custom fields, orderForm structure, fulfillment data, order management, and identification of the sellers delivery region.


    >ℹ️ Data modification operations (`POST`, `PATCH`, `PUT` or `DELETE` endpoints) shall not be performed in parallel in the Checkout APIs. They need to be enqueued by the client/requester. Otherwise, old values ​​can be overwritten incorrectly or competition errors may occur.


    >⚠️ All endpoints that consult or edit the orderForm can change the authentication depending on the customer context. If you are handling information from a customer with a complete profile on the store, authentication will be required. You can only access or modify the customer data for these profiles with an authenticated request.


    ## Shopping cart


    Allows merchants to simulate, configure and customize shopping cart information.


    - [POST - Cart Simulation](https://developers.vtex.com/docs/api-reference/checkout-api#post-/api/checkout/pub/orderForms/simulation): simulate a cart in VTEX Checkout.

    - [GET - Get current or create a new cart](https://developers.vtex.com/docs/api-reference/checkout-api#get-/api/checkout/pub/orderForm): get your current shopping cart information or to create a new cart.

    - [GET - Get cart information by ID](https://developers.vtex.com/docs/api-reference/checkout-api#get-/api/checkout/pub/orderForm/-orderFormId-): get all information associated to a given shopping cart.

    - [POST - Add cart items](https://developers.vtex.com/docs/api-reference/checkout-api#post-/api/checkout/pub/orderForm/-orderFormId-/items): add a new item to the shopping cart.

    - [POST - Update cart items](https://developers.vtex.com/docs/api-reference/checkout-api#post-/api/checkout/pub/orderForm/-orderFormId-/items/update): change the quantity of one or more items in a specific cart or remove an item from the cart.

    - [PATCH - Handle cart items](https://developers.vtex.com/docs/api-reference/checkout-api#patch-/api/checkout/pub/orderForm/-orderFormId-/items): change the quantity or price of one or more items to the shopping cart or add a new item to the shopping cart.

    - [POST - Remove all items](https://developers.vtex.com/docs/api-reference/checkout-api#post-/api/checkout/pub/orderForm/-orderFormId-/items/removeAll): removes all items from a given cart, leaving it empty.

    - [PUT - Change price](https://developers.vtex.com/docs/api-reference/checkout-api#put-/api/checkout/pub/orderForm/-orderFormId-/items/-itemIndex-/price): changes the price of an SKU in a cart.

    - [GET - Cart installments](https://developers.vtex.com/docs/api-reference/checkout-api#get-/api/checkout/pub/orderForm/-orderFormId-/installments): retrieves possible amount of installments and respective values for a given cart with a given payment method.


    ## Cart attachments


    Allows merchants to obtain client profiles and add information to a given shopping cart.


    - [GET - Get client profile by email](https://developers.vtex.com/docs/api-reference/checkout-api#get-/api/checkout/pub/profiles): retrieve a client''s profile information by providing an email address.

    - [POST - Add client profile](https://developers.vtex.com/docs/api-reference/checkout-api#post-/api/checkout/pub/orderForm/-orderFormId-/attachments/clientProfileData): include client profile information to a given shopping cart.

    - [Patch - Ignore profile data](https://developers.vtex.com/docs/api-reference/checkout-api#patch-/api/checkout/pub/orderForm/-orderFormId-/profile): disable the automatic inclusion of profile information in a shopping cart when a shopper provides an email address at checkout.

    - [GET - Remove all personal data](https://developers.vtex.com/docs/api-reference/checkout-api#get-/checkout/changeToAnonymousUser/-orderFormId-): removes all user information, making a cart anonymous while leaving the items.

    - [POST - Add client preferences](https://developers.vtex.com/docs/api-reference/checkout-api#patch-/api/checkout/pub/orderForm/-orderFormId-/items): include client preferences information to a given shopping cart.

    - [POST - Add shipping address and select delivery option](https://developers.vtex.com/docs/api-reference/checkout-api#post-/api/checkout/pub/orderForm/-orderFormId-/attachments/shippingData): include shipping information and/or selected delivery option to a given shopping cart.

    - [POST - Add marketing data](https://developers.vtex.com/docs/api-reference/checkout-api#post-/api/checkout/pub/orderForm/-orderFormId-/attachments/marketingData): include marketing information to a given shopping cart.

    - [POST - Add payment data](https://developers.vtex.com/docs/api-reference/checkout-api#post-/api/checkout/pub/orderForm/-orderFormId-/attachments/paymentData): include payment information to a given shopping cart.

    - [POST - Add merchant context data](https://developers.vtex.com/docs/api-reference/checkout-api#post-/api/checkout/pub/orderForm/-orderFormId-/attachments/merchantContextData): add to the cart any relevant information that is related to the context of a specific order.

    - [POST - Add coupons to the cart](https://developers.vtex.com/docs/api-reference/checkout-api#post-/api/checkout/pub/orderForm/-orderFormId-/coupons): add coupons to a given shopping cart.


    ## Custom data


    Allows merchants to manage custom fields that were created by an app in their account.


    - [PUT - Set multiple custom field values](https://developers.vtex.com/docs/api-reference/checkout-api#post-/api/checkout/pub/orderForm/-orderFormId-/coupons): allows you to update the values of custom fields created in your account''s apps.

    - [PUT - Set single custom field value](https://developers.vtex.com/docs/api-reference/checkout-api#put-/api/checkout/pub/orderForm/-orderFormId-/customData/-appId-/-appFieldName-): allows you to update the value of a specific custom field created in your account''s apps.

    - [DELETE - Remove single custom field value](https://developers.vtex.com/docs/api-reference/checkout-api#delete-/api/checkout/pub/orderForm/-orderFormId-/customData/-appId-/-appFieldName-): allows you to remove the value of a specific custom field created in your account''s apps.


    ## Configuration


    Allows merchants to configure orderForm in the account and seller exchange on a given order.


    - [GET - Get orderForm configuration](https://developers.vtex.com/docs/api-reference/checkout-api#get-/api/checkout/pvt/configuration/orderForm): retrieves the settings that are currently applied to every [`orderForm`](https://developers.vtex.com/docs/guides/orderform-fields) in the account.

    - [POST - Update orderForm configuration](https://developers.vtex.com/docs/api-reference/checkout-api#post-/api/checkout/pvt/configuration/orderForm): determines settings that will apply to every [`orderForm`](https://developers.vtex.com/docs/guides/orderform-fields) in the account.

    - [GET - Get window to change seller](https://developers.vtex.com/docs/api-reference/checkout-api#get-/api/checkout/pvt/configuration/window-to-change-seller): retrieves a marketplace’s window to change seller.

    - [POST - Update window to change seller](https://developers.vtex.com/docs/api-reference/checkout-api#post-/api/checkout/pvt/configuration/window-to-change-seller): updates a marketplace’s window to change seller.

    - [POST - Clear orderForm messages](https://developers.vtex.com/docs/api-reference/checkout-api#post-/api/checkout/pub/orderForm/-orderFormId-/messages/clear): removes all messages from the `messages` field of the [`orderForm`](https://developers.vtex.com/docs/guides/orderform-fields).


    ## Fulfillment


    Allows merchants to obtain pickup points and address information.


    - [GET - List pickup points by location](https://developers.vtex.com/docs/api-reference/checkout-api#get-/api/checkout/pub/pickup-points): retrieves information on pickup points close to a given location determined by geocoordinates or postal code.

    - [GET - Get address by postal code](https://developers.vtex.com/docs/api-reference/checkout-api#get-/api/checkout/pub/postal-code/-countryCode-/-postalCode-): retrieves address information for a given postal code and country.


    ## Order placement


    Allows merchants to place and process orders by creating a new cart or using an existing cart.


    - [POST - Place order from an existing cart](https://developers.vtex.com/docs/api-reference/checkout-api#post-/api/checkout/pub/orderForm/-orderFormId-/transaction): places an order from an existing [`orderForm`](https://developers.vtex.com/docs/guides/orderform-fields) object, meaning an existing cart.

    - [PUT - Place order](https://developers.vtex.com/docs/api-reference/checkout-api#put-/api/checkout/pub/orders): places order without having any prior cart information.

    - [POST - Process order](https://developers.vtex.com/docs/api-reference/checkout-api#post-/api/checkout/pub/gatewayCallback/-orderGroup-): order processing callback request, which is made after an order''s payment is approved.


    ## Region


    Allows merchants to obtain a list of sellers serving a specific delivery region.


    - [GET - Get sellers by region or address](https://developers.vtex.com/docs/api-reference/checkout-api#get-/api/checkout/pub/regions/-regionId-)": retrieves a list of sellers that cater to a specific region or address.


    ## Common parameters in the documentation


    | Parameter name            | Description                                                                             |

    |---------------------------|-----------------------------------------------------------------------------------------|

    | `{{accountName}}`         | Store account name                                                                      |

    | `{{environment}}`         | The environment that will be called. Change for vtexcommercestable or vtexcommmercebeta |

    | `{{X-VTEX-API-AppKey}}`   | Located in the headers of the requests, user authentication key                         |

    | `{{X-VTEX-API-AppToken}}` | Located in the headers of the requests, authentication password                         |

    '
  contact: {}
  version: '1.0'
servers:
- url: https://{accountName}.{environment}.com.br
  description: VTEX server URL.
  variables:
    accountName:
      description: Name of the VTEX account. Used as part of the URL
      default: apiexamples
    environment:
      description: Environment to use. Used as part of the URL.
      enum:
      - vtexcommercestable
      default: vtexcommercestable
security:
- appKey: []
  appToken: []
- VtexIdclientAutCookie: []
tags:
- name: Order Placement
paths:
  /api/checkout/pub/orderForm/{orderFormId}/transaction:
    post:
      tags:
      - Order Placement
      summary: VTex Place order from an existing cart
      description: 'This endpoint places an order from an existing `orderForm` object, meaning an existing cart.


        After the creation of an order with this request, you have five minutes to send payment information and then request payment processing.


        ## Permissions


        Any user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) 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:


        | **Product** | **Category** | **Resource** |

        | --------------- | ----------------- | ----------------- |

        | Checkout | CheckoutResources | **Read Shopping Cart** |


        There are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).


        >❗ To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.'
      operationId: PlaceOrderFromExistingOrderForm
      security: []
      parameters:
      - name: orderFormId
        in: path
        description: ID of the `orderForm` corresponding to the cart from which to place the order.
        required: true
        style: simple
        schema:
          type: string
          example: ede846222cd44046ba6c638442c3505a
      - $ref: '#/components/parameters/Content-Type'
      - $ref: '#/components/parameters/Accept'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
              - referenceId
              - value
              - referenceValue
              - interestValue
              properties:
                referenceId:
                  title: referenceId
                  type: string
                  description: ID of the `orderForm` corresponding to the cart from which to place the order. This is the same as the `orderFormId` parameter.
                  example: 41a22925298a4ddca95318131a25b000
                savePersonalData:
                  title: savePersonalData
                  type: boolean
                  description: '`true` if the shopper''s data provided during checkout should be saved for future reference.'
                  example: false
                optinNewsLetter:
                  title: optinNewsLetter
                  type:
                  - boolean
                  - 'null'
                  description: True if the shopper opted to receive the newsletter.
                  example: false
                value:
                  type: integer
                  description: Total value of the order without separating cents. For example, $24.99 is represented `2499`.
                  example: 6800
                referenceValue:
                  type: integer
                  description: Reference value of the order for calculating interest if that is the case. Can be equal to the total value and does not separate cents. For example, $24.99 is represented `2499`.
                  example: 6800
                interestValue:
                  type: integer
                  description: Interest rate to be used in case it applies.
                  example: 0
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/orderForm'
              example:
                orderForm: null
                transactionData:
                  merchantTransactions:
                  - id: STORE
                    transactionId: 62FEDE228E2144649CF67812C4E5ER79
                    merchantName: STORE
                    payments:
                    - paymentSystem: 6
                      bin: null
                      accountId: '12'
                      value: 15650
                      referenceValue: 15650
                      giftCardRedemptionCode: null
                      giftCardProvider: null
                      giftCardId: null
                  receiverUri: https://store.vtexpayments.com.br/split/v976778amgh/payments
                  gatewayCallbackTemplatePath: /checkout/gatewayCallback/v976778amgh/{messageCode}
                orders:
                - orderId: v976778amgh-01
                  orderGroup: v976778amgh
                  state: order-created
                  isCheckedIn: false
                  sellerOrderId: 00-v976778amgh-01
                  storeId: '1'
                  value: 15650
                  items:
                  - uniqueId: 0F93E9C4926A4CD97FDD4C2599BDF9DB
                    id: '2000016'
                    productId: '2000002'
                    refId: 35-Preto
                    ean: null
                    name: Produto Seleção SKU - Lista 35 - Preto
                    skuName: 35 - Preto
                    modalType: null
                    priceValidUntil: '2018-02-16T23:42:44.5467295Z'
                    tax: 0
                    price: 15000
                    listPrice: 15000
                    manualPrice: null
                    sellingPrice: 15000
                    rewardValue: 1
                    isGift: false
                    additionalInfo:
                      brandName: Marca Um
                      brandId: '1'
                      offeringInfo: null
                      offeringType: null
                      offeringTypeId: null
                    preSaleDate: null
                    productCategoryIds: /12/28/
                    productCategories:
                      '12': Departamento 5
                      '28': Categoria 5-3
                    defaultPicker: null
                    handlerSequence: 0
                    handling: false
                    quantity: 1
                    seller: '1'
                    imageUrl: http://store.vteximg.com.br/arquivos/ids/168463-55-55/imagem-modo-lista.png
                    detailUrl: /produto-selecao-sku-lista/p
                    components: []
                    bundleItems: []
                    attachments: []
                    itemAttachment:
                      name: null
                      content: {}
                    attachmentOfferings: []
                    offerings: []
                    priceTags: []
                    availability: available
                    measurementUnit: un
                    unitMultiplier: 1
                  sellers:
                  - id: '1'
                    name: Store
                    logo: Logo
                  totals:
                  - id: Items
                    name: Total dos Itens
                    value: 15000
                  - id: Discounts
                    name: Total dos Descontos
                    value: 0
                  - id: Shipping
                    name: Total do Frete
                    value: 650
                  - id: Tax
                    name: Total da Taxa
                    value: 0
                  clientProfileData:
                    email: clark.kent@examplemail.com
                    firstName: Clark
                    lastName: Kent
                    document: '12345678900'
                    documentType: cpf
                    phone: '+5500123456789'
                    corporateName: company-name
                    tradeName: trade-name
                    corporateDocument: '12345678000100'
                    stateInscription: '12345678'
                    corporatePhone: '551100988887777'
                    isCorporate: false
                    profileCompleteOnLoading: false
                    profileErrorOnLoading: false
                    customerClass: null
                  ratesAndBenefitsData:
                    attachmentId: ratesAndBenefitsData
                    rateAndBenefitsIdentifiers: []
                    teaser: []
                  shippingData:
                    attachmentId: shippingData
                    address:
                      addressType: residential
                      receiverName: Marcelo
                      addressId: 49ad09e5fba8434a8ff1e0faa4b60ceb
                      postalCode: '28050987'
                      city: Rio de Janeiro
                      state: RJ
                      country: BRA
                      street: Rua da minha casa
                      number: '123'
                      neighborhood: Copacabana
                      complement: 15º andar
                      reference: null
                      geoCoordinates: []
                    logisticsInfo:
                    - itemIndex: 0
                      selectedSla: Normal
                      slas:
                      - id: n2_2
                        name: n2_2
                        deliveryIds:
                        - courierId: 1de4790
                          warehouseId: '1_1'
                          dockId: N2
                          courierName: N2_2
                          quantity: 1
                        shippingEstimate: 6bd
                        shippingEstimateDate: null
                        lockTTL: 7d
                        availableDeliveryWindows:
                        - startDateUtc: '2017-03-27T00:00:00+00:00'
                          endDateUtc: '2017-03-27T00:00:00+00:00'
                          price: 0
                          lisPrice: 0
                          tax: 0
                        - startDateUtc: '2017-03-28T00:00:00+00:00'
                          endDateUtc: '2017-03-28T00:00:00+00:00'
                          price: 0
                          lisPrice: 0
                          tax: 0
                        deliveryWindow: null
                        price: 650
                        listPrice: 650
                        tax: 0
                        pickupStoreInfo:
                          isPickupStore: false
                          friendlyName: null
                          address: null
                          additionalInfo: null
                          dockId: null
                      - id: Normal
                        name: Normal
                        deliveryIds:
                        - courierId: 2p1t
                          warehouseId: '1_1'
                          dockId: N2
                          courierName: Post_Test_2
                          quantity: 1
                        shippingEstimate: 6bd
                        shippingEstimateDate: null
                        lockTTL: 7d
                        availableDeliveryWindows: []
                        deliveryWindow: null
                        price: 650
                        listPrice: 650
                        tax: 0
                        pickupStoreInfo:
                          isPickupStore: false
                          friendlyName: null
                          address: null
                          additionalInfo: null
                          dockId: null
                      - id: P_T
                        name: P_T
                        deliveryIds:
                        - courierId: 1p1t
                          warehouseId: '1_1'
                          dockId: N2
                          courierName: Post_Teste
                          quantity: 1
                        shippingEstimate: 6bd
                        shippingEstimateDate: null
                        lockTTL: 7d
                        availableDeliveryWindows: []
                        deliveryWindow: null
                        price: 1462
                        listPrice: 1462
                        tax: 0
                        pickupStoreInfo:
                          isPickupStore: false
                          friendlyName: null
                          address: null
                          additionalInfo: null
                          dockId: null
                      - id: Econômica
                        name: Econômica
                        deliveryIds:
                        - courierId: 2B9C2C7D-7A76-485D-94EF-701D041E448C
                          warehouseId: '1_1'
                          dockId: '1_1_1'
                          courierName: 'Leve 30kg (De: 10000-000 Até: 25999-999) '
                          quantity: 1
                        shippingEstimate: 20bd
                        shippingEstimateDate: null
                        lockTTL: 7d
                        availableDeliveryWindows: []
                        deliveryWindow: null
                        price: 2265
                        listPrice: 2265
                        tax: 0
                        pickupStoreInfo:
                          isPickupStore: false
                          friendlyName: null
                          address: null
                          additionalInfo: null
                          dockId: null
                      shipsTo:
                      - BRA
                      itemId: '2000016'
                    availableAddresses:
                    - addressType: residential
                      receiverName: Marcelo
                      addressId: 49ad09e5fba8434a8ff1e0faa4b60ceb
                      postalCode: '28050642'
                      city: Rio de Janeiro
                      state: RJ
                      country: BRA
                      street: Rua da minha casa
                      number: '123'
                      neighborhood: Copacabana
                      complement: 15º andar
                      reference: null
                      geoCoordinates: []
                  paymentData:
                    attachmentId: paymentData
                    transactionId: 62FEDE228E2144649CF67812C4E5DD87
                    payments:
                    - paymentSystem: 6
                      bin: null
                      accountId: '12'
                      tokenId: null
                      value: 34390
                      referenceValue: 34390
                      giftCardRedemptionCode: null
                      giftCardProvider: null
                      giftCardId: null
                    giftCards: []
                    transactions:
                    - isActive: true
                      transactionId: 62FEDE228E2144649CF67812C4E5DD87
                      merchantName: STORE
                      payments:
                      - paymentSystem: 6
                        bin: null
                        accountId: '12'
                        tokenId: null
                        value: 34390
                        referenceValue: 34390
                        giftCardRedemptionCode: null
                        giftCardProvider: null
                        giftCardId: null
                    merchantName: STORE
                  clientPreferencesData:
                    attachmentId: clientPreferencesData
                    locale: pt-BR
                    optinNewsLetter: true
                  giftRegistryData: null
                  marketingData: null
                  storePreferencesData:
                    countryCode: BRA
                    checkToSavePersonDataByDefault: false
                    templateOptions:
                      toggleCorporate: false
                    timeZone: E. South America Standard Time
                    currencyCode: BRL
                    currencyLocale: 1046
                    currencySymbol: R$
                    currencyFormatInfo:
                      currencyDecimalDigits: 2
                      currencyDecimalSeparator: ','
                      currencyGroupSeparator: .
                      currencyGroupSize: 3
                      startsWithCurrencySymbol: true
                  openTextField:
                    attachmentId: openTextField
                    value: null
                  changeData: null
                  salesChannel: '1'
                  followUpEmail: f1e7309d88dd4633825ce183d52a50a6@ct.vtex.com.br
                  creationDate: '2017-02-16T23:42:43.9605088Z'
                  lastChange: '2017-02-16T23:42:47.62285Z'
                  timeZoneCreationDate: '2017-02-16T21:42:43.9605088'
                  timeZoneLastChange: '2017-02-16T21:42:47.62285'
                  isCompleted: false
                  hostName: ambienteqa
                  merchantName: null
                  userType: User type
                  roundingError: 0
      deprecated: false
  /api/checkout/pub/orders:
    put:
      tags:
      - Order Placement
      summary: VTex Place order
      description: 'Places order without having any prior cart information. This means all information on items, client, payment and shipping must be sent in the body.


        >⚠️ The authentication of this endpoint is required if you are creating an order with an item that has an attachment that creates a Subscription. For more information, access [Subscriptions API](https://developers.vtex.com/docs/api-reference/subscriptions-api-v3).


        ## Permissions


        Any user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) 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:


        | **Product** | **Category** | **Resource** |

        | --------------- | ----------------- | ----------------- |

        | Checkout | CheckoutResources | **Orders Full Access** |


        There are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).


        >❗ To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.'
      operationId: PlaceOrder
      parameters:
      - $ref: '#/components/parameters/Content-Type'
      - $ref: '#/components/parameters/Accept'
      - name: sc
        in: query
        description: Trade Policy (Sales Channel) identification. This query can be used to create an order for a specific sales channel.
        required: false
        style: form
        schema:
          type: integer
          example: 1
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
              - items
              - clientProfileData
              - shippingData
              - paymentData
              properties:
                items:
                  type: array
                  description: Array of objects containing information on each of the order's items.
                  items:
                    type: object
                    required:
                    - id
                    - quantity
                    - seller
                    properties:
                      id:
                        type: string
                        description: The SKU ID.
                        example: '123'
                      quantity:
                        type: integer
                        format: int32
                        description: The quantity of items of this specific SKU in the cart to be simulated.
                        example: 1
                      seller:
                        type: string
                        description: The ID of the seller responsible for this SKU. This ID can be found in your VTEX Admin.
                        example: '1'
                      commission:
                        type: integer
                        description: Comission.
                        example: 10
                      freightCommission:
                        type: integer
                        description: Freight comission
                        example: 10
                      price:
                        type: integer
                        description: Item price within the context 

# --- truncated at 32 KB (168 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/vtex/refs/heads/main/openapi/vtex-order-placement-api-openapi.yml