VTEX External Seller API

The External Seller API from VTEX — 8 operation(s) for external seller.

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

OpenAPI Specification

vtex-external-seller-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: VTex Anti-fraud Provider Account External Seller API
  description: ">ℹ️ Onboarding guide\r\n>\r\n> Check the new [Payments onboarding guide](https://developers.vtex.com/docs/guides/payments-overview). We created this guide to improve the onboarding experience for developers at VTEX. It assembles all documentation on our Developer Portal about Payments and is organized by focusing on the developer's journey.\r\n\r\nThe Anti-fraud Provider Protocol is a set of definitions to help you integrate your anti-fraud service API into VTEX platform.\r\n\r\nTo achieve this, you need to implement a web API (REST) following the specifications described in this documentation.\r\n\r\n>⚠️ You can also access our [template on GitHub](https://github.com/vtex-apps/antifraud-provider-example) to help you quickly develop your anti-fraud connector using the Anti-fraud Provider Protocol and VTEX IO.\r\n\r\nTo learn more about the Anti-fraud Provider Protocol, check our [developer guide](https://developers.vtex.com/docs/guides/how-the-integration-protocol-between-vtex-and-antifraud-companies-works).\r\n\r\n## Anti-fraud Provider API Index\r\n\r\n### Anti-fraud  Flow\r\n\r\n- `POST` [Send Anti-fraud Pre-Analysis Data (optional)](https://developers.vtex.com/docs/api-reference/antifraud-provider-protocol#post-/pre-analysis)\r\n- `POST` [Send Anti-fraud Data](https://developers.vtex.com/docs/api-reference/antifraud-provider-protocol#post-/transactions)\r\n- `PUT` [Update Anti-fraud Transactions (optional)](https://developers.vtex.com/docs/api-reference/antifraud-provider-protocol#put-/transactions/-transactionId-)\r\n- `GET` [List Anti-fraud Provider Manifest](https://developers.vtex.com/docs/api-reference/antifraud-provider-protocol#get-/manifest)\r\n- `GET` [Get Anti-fraud Status](https://developers.vtex.com/docs/api-reference/antifraud-provider-protocol#get-/transactions/-transactions.id-)\r\n- `DELETE` [Stop Anti-fraud Analysis (optional)](https://developers.vtex.com/docs/api-reference/antifraud-provider-protocol#delete-/transactions/-transactions.Id-)\r\n\r\n### OAuth Flow\r\n\r\n1. `POST` [Retrieve Token](https://developers.vtex.com/docs/api-reference/antifraud-provider-protocol#post-/authorization/token)\r\n2. `GET` [Redirect](https://developers.vtex.com/docs/api-reference/antifraud-provider-protocol#get-/redirect)\r\n3. `GET` [Return to VTEX](https://developers.vtex.com/docs/api-reference/antifraud-provider-protocol#get-/authorizationCode)\r\n4. `GET` [Get Credentials](https://developers.vtex.com/docs/api-reference/antifraud-provider-protocol#get-/authorization/credentials)"
  version: '1.0'
servers:
- url: https://{providerApiEndpoint}
  description: Anti-fraud provider endpoint URL.
  variables:
    providerApiEndpoint:
      description: Anti-fraud provider endpoint URL.
      default: '{providerApiEndpoint}'
tags:
- name: External Seller
paths:
  /pvt/orderForms/simulation:
    post:
      tags:
      - External Seller
      summary: VTex Fulfillment simulation - External Seller
      description: "This endpoint may be called upon by VTEX for fulfillment simulation in the external seller different contexts. See examples below.\n\nWhen a [price](https://developers.vtex.com/docs/api-reference/marketplace-apis#post-/notificator/-sellerId-/changenotification/-skuId-/price) or [inventory](https://developers.vtex.com/docs/api-reference/marketplace-apis#post-/notificator/-sellerId-/changenotification/-skuId-/inventory) notification request returns a response with status `200 OK`, it means that the SKU already exists in the marketplace. Whenever this happens, the marketplace will call the seller to get two updated information about the SKU: Price and Inventory.\n\nThe seller needs to have an endpoint implemented in order to receive this call and send a response containing the requested information to the marketplace. We call it the Fulfillment Simulation endpoint.\n\nIf the seller wishes to include other parameters in this call (like account name, or [sales channel](https://help.vtex.com/en/tutorial/como-funciona-uma-politica-comercial--6Xef8PZiFm40kg2STrMkMV) ID), this should be done within their {fulfillmentEndpoint}. This path is then inserted in the marketplace's VTEX admin when [configuring a seller](https://help.vtex.com/en/tutorial/configurando-seller--tutorials_392). \n\nThe marketplace will send an object containing an array of items. The seller must use this list to get the updated information about the referred SKUs and send them back to the marketplace, following the response format explained in the API Reference. \n\nThis call is also applied in the Storefront simulation scenario, in which case the request from VTEX does not send the parameters `country` and `postalCode`. \nThe call's payload can be adapted into two scenarios: \n\n- **Displaying items in the storefront**: the address information can be nulled in the request since they are not mandatory data for this context.   \n- **Making a shopping cart simulation during checkout**: address information must be sent since this data is needed to calculate freight values. If the address information (including `postalCode` and `country`) is not sent through the call, VTEX interprets the stock balance as zero. Without a valid stock balance, the seller will not be shown as an option during checkout. \n  \n## Request body example - Indexing simulation\n\n```\n{\n    \"items\": [\n      {\n        \"id\": \"7908010136043\",\n        \"quantity\": 1,\n        \"seller\": \"1\",\n      }\n    ],\n    \"isCheckedIn\": false,\n  }\n``` \n## Request body example - Checkout simulation\n\n```\n{\n    \"items\": [\n      {\n        \"id\": \"7908010136043\",\n        \"quantity\": 1,\n        \"seller\": \"1\",\n      }\n    ],\n    \"postalCode\": \"22270-030\",\n    \"country\": \"BRA\",\n  }\n```\r\n\r\n## Permissions\r\n\r\nCheck with your service provider to know what permissions are needed."
      operationId: fulfillment-simulation
      parameters:
      - $ref: '#/components/parameters/fulfillmentEndpoint'
      - $ref: '#/components/parameters/Accept'
      - $ref: '#/components/parameters/Content-Type'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/requestFulfillmentSimulation'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/responseFulfillmentSimulation'
              example:
                country: BRA
                items:
                - id: '2000037'
                  listPrice: 67203
                  measurementUnit: un
                  merchantName: mySeller1
                  offerings:
                  - type: Warranty
                    id: '5'
                    name: 1 year warranty
                    price: 10000
                  price: 67203
                  priceTags: []
                  priceValidUntil: '2014-03-01T22:58:28.143'
                  quantity: 1
                  requestIndex: 0
                  seller: '1'
                  unitMultiplier: 1
                logisticsInfo:
                - itemIndex: 0
                  quantity: 1
                  shipsTo:
                  - BRA
                  slas:
                  - id: Curbside pickup
                    deliveryChannel: pickup-in-point
                    name: Curbside pickup
                    shippingEstimate: 0bd
                    price: 0
                    availableDeliveryWindows:
                    - startDateUtc: '2013-02-04T08:00:00+00:00'
                      endDateUtc: '2013-02-04T13:00:00+00:00'
                      price: 0
                    pickupStoreInfo:
                      isPickupStore: true
                      friendlyName: Santa Felicidade
                      address:
                        addressType: pickup
                        receiverName: Juliana
                        addressId: 548304ed-dd40-4416-b12b-4b32bfa7b1e0
                        postalCode: 82320-040
                        city: Curitiba
                        state: PR
                        country: BRA
                        street: Rua Domingos Strapasson
                        number: '100'
                        neighborhood: Santa Felicidade
                        complement: Loja 10
                        reference: Next to the unicorn statue
                        geoCoordinates:
                        - 49.334934
                        - 25.401705
                      additionalInfo: ''
                  stockBalance: 199
                  deliveryChannels:
                  - id: delivery
                    stockBalance: 179
                  - id: pickup-in-point
                    stockBalance: 20
                postalCode: '80250000'
                allowMultipleDeliveries: true
      deprecated: false
  /pvt/orders:
    post:
      tags:
      - External Seller
      summary: VTex Order placement
      description: "This request is sent by VTEX to the external seller once the customer finishes their checkout, to let the seller know there is a newly placed order. It does that by calling the **Order Placement** endpoint, which needs to be implemented by the seller.\n\nThe marketplace will send information such as the items contained in the cart, the client’s profile data, the shipping data, and the payment data. With all that, the seller will be able to create the order in their store.\r\n\r\n## Permissions\r\n\r\nAny 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:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| VTEX Fulfilment | Fulfilment Resources | **Place Orders** |\r\n\r\nYou can [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) with that resource or use one of the following [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy):\r\n\r\n| **Role** | **Resource** | \r\n| --------------- | ----------------- | \r\n| Create orders | Place Orders |\r\n\r\n>❗ Assigning a [predefined role](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) to users or application keys usually grants permission to multiple [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3). 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](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm).\r\n\r\nTo learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication)."
      operationId: order-placement
      parameters:
      - $ref: '#/components/parameters/fulfillmentEndpoint'
      - $ref: '#/components/parameters/content-length'
      - $ref: '#/components/parameters/authorization'
      - $ref: '#/components/parameters/Accept'
      - $ref: '#/components/parameters/accept-enconding'
      - $ref: '#/components/parameters/vtexOperationID'
      - $ref: '#/components/parameters/forwardedProto'
      - $ref: '#/components/parameters/forwardedFor'
      - $ref: '#/components/parameters/vtexCacheClientBypass'
      - $ref: '#/components/parameters/Content-Type'
      - $ref: '#/components/parameters/traceparent'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/orderPlacement'
            example:
              marketplaceOrderId: 1138342255777-01
              marketplaceServicesEndpoint: https://marketplaceservicesendpoint.myvtex.com/
              marketplacePaymentValue: 2499
              items:
              - id: 123456789abc
                quantity: 1
                seller: seller-example
                commission: 0
                freightCommission: 0
                price: 2499
                bundleItems:
                - id: 12
                  quantity: 2
                - id: 5
                  quantity: 1
                itemsAttachment:
                - id: attachment-1
                  name: Product Manual
                  url: https://example.com/manual.pdf
                attachments:
                - id: attachment-2
                  name: Product Image
                  url: https://example.com/image.jpg
                priceTags:
                - identifier: 1234abc-5678b-1234c
                  isPercentual: false
                  name: discount@name-1234abc-5678b-1234c
                  rawValue: 12
                  value: 1200
                measurementUnit: g
                unitMultiplier: 1
                isGift: false
              paymentData: null
              clientProfileData:
                email: customer@examplemail.com
                firstName: first-name
                lastName: last-name
                documentType: cpf
                document: '123456789'
                phone: '+55110988887777'
                corporateName: null
                tradeName: null
                corporateDocument: null
                stateInscription: null
                corporatePhone: null
                isCorporate: false
              shippingData:
                address:
                  addressType: residential
                  receiverName: receiver-name
                  addressId: Home
                  postalCode: 12345-000
                  city: Rio de Janeiro
                  state: Rio de Janeiro
                  country: BRA
                  street: Praia de Botafogo
                  number: '300'
                  neighborhood: Botafogo
                  complement: 3rd floor
                  reference: Grey building
                  geoCoordinates:
                  - '49.334934'
                  - '25.401705'
                logisticsInfo:
                - itemIndex: 0
                  selectedSla: Express
                  lockTTL: 8d
                  shippingEstimate: 7d
                  price: 1099
                  deliveryWindow:
                    startDateUtc: '2016-04-20T08:00:00+00:00'
                    endDateUtc: '2016-04-20T12:00:00+00:00'
                    listPrice: 10
                updateStatus: updated
              marketingData:
                utmSource: Facebook
                utmMedium: CPC
                utmCampaign: Black friday
                utmiPage: utmi_page-example
                utmiPart: utmi_part-exmaple
                utmiCampaign: utmi_campaign-exmaple
              openTextField: open-text-example
        required: true
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/responseOrderPlacement'
              example:
                marketplaceOrderId: '959311095'
                orderId: '7890'
                followUpEmail: seller@example.com
                items:
                - id: '2002495'
                  quantity: 1
                  seller: '1'
                  commission: 0
                  freightCommission: 0
                  price: 2499
                  bundleItems: []
                  itemAttachment:
                    name: null
                    content: {}
                  attachments: []
                  priceTags: []
                  measurementUnit: g
                  unitMultiplier: 1
                  isGift: false
                clientProfileData:
                  email: customer@examplemail.com.br
                  firstName: John
                  lastName: Smith
                  documentType: taxpayer registration number
                  document: '33333333333'
                  phone: '+55110988887777'
                  corporateName: null
                  tradeName: null
                  corporateDocument: null
                  stateInscription: null
                  corporatePhone: null
                  isCorporate: false
                  userProfileId: null
                shippingData:
                  address:
                    addressType: residencial
                    receiverName: John Smith
                    addressId: Home
                    postalCode: 12345-000
                    city: Rio de Janeiro
                    state: RJ
                    country: BRA
                    street: Praia de Botafogo
                    number: '300'
                    neighborhood: Botafogo
                    complement: 3rd floor
                    reference: Grey building
                    geoCoordinates:
                    - '49.334934'
                    - '25.401705'
                  logisticsInfo:
                  - itemIndex: 0
                    selectedSla: Express
                    lockTTL: 8d
                    shippingEstimate: 7d
                    price: 1099
                    deliveryWindow:
                      startDateUtc: '2016-04-20T08:00:00+00:00'
                      endDateUtc: '2016-04-20T12:00:00+00:00'
                      listPrice: 10
                customData:
                  openTextField: null
                  marketingData:
                    utmSource: buscape
                    utmMedium: ''
                    utmCampaign: freeshipping
                    utmiPage: _
                    utmiPart: BuscaFullText
                    utmiCampaign: artscase for iphone 5
                paymentData: null
                allowMultipleDeliveries: true
  /pvt/orders/{sellerOrderId}/fulfill:
    post:
      tags:
      - External Seller
      summary: VTex Authorize fulfillment
      description: "This request is sent from VTEX to the seller after the payment is approved, to notify them that the fulfillment process can start.\r\n\r\n## Permissions\r\n\r\nCheck with your service provider to know what permissions are needed."
      operationId: authorize-fulfillment
      parameters:
      - $ref: '#/components/parameters/fulfillmentEndpoint'
      - $ref: '#/components/parameters/Accept'
      - $ref: '#/components/parameters/Content-Type'
      - $ref: '#/components/parameters/sellerOrderId'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/requestOrderId'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/repsonseOrderId'
              example:
                date: '2014-10-06 18:52:00'
                marketplaceOrderId: 1138342255777-01
                orderId: '959311095'
                receipt: e39d05f9-0c54-4469-a626-8bb5cff169f8
  /pvt/orders/{orderId}/cancel:
    post:
      tags:
      - External Seller
      summary: VTex Marketplace order cancellation
      description: "This request may be sent from VTEX to the external seller in case of order cancelation. For that, the seller will need to implement the Marketplace order cancellation endpoint. Whenever this request is received by the seller, the order should be canceled and the fulfillment flow should not proceed. \n\nFor the seller to: \n\n- **Evaluate a cancellation request:** it is possible to send an empty body as a response to the cancellation request, meaning that the seller is evaluating whether to proceed with the cancellation or not. \n\n- **Confirm the cancellation request:** it is possible to confirm the order cancellation by the marketplace by responding to the call with a body including only one information: the `marketplaceOrderId`, which identifies the order in the marketplace. The seller should use this ID to trigger the cancellation of the corresponding order. The seller should then respond with the same `marketplaceOrderId` and also with the `orderId`, which identifies the order in the seller, the date and time of the notification receipt, and a protocol code that confirms the receipt of the request (which may have the value `null`). \n\n- **Refuse a cancellation request:** it is possible to to [send the Invoice](https://developers.vtex.com/vtex-rest-api/reference/external-seller#send-invoice), meaning that the cancellation has been denied, and the flow continues to the [Order Invoicing](https://developers.vtex.com/vtex-rest-api/docs/external-seller-integration-connector#order-invoicing) step, and the ones that follow it. \n\n>⚠️ This call should be made twice: once for the *Evaluate cancellation request* scenario, and a second time to *Confirm cancellation* or *Refuse cancellation*.\r\n\r\n## Permissions\r\n\r\nAny 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:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Checkout | CheckoutResources | **Order Cancellation** |\r\n\r\nYou can [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) with that resource or use one of the following [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy):\r\n\r\n| **Role** | **Resource** | \r\n| --------------- | ----------------- | \r\n| Cancela Pedidos | Order Cancellation |\r\n\r\n>❗ Assigning a [predefined role](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) to users or application keys usually grants permission to multiple [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3). 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](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm).\r\n\r\nTo learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication)."
      operationId: mkp-order-cancellation
      parameters:
      - $ref: '#/components/parameters/fulfillmentEndpoint'
      - $ref: '#/components/parameters/Accept'
      - $ref: '#/components/parameters/Content-Type'
      - $ref: '#/components/parameters/orderId'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/requestOrderId'
            example:
              marketplaceOrderId: 1138342255777-01
              marketplaceOrderGroup: group-123
              cancellationRequestId: 85835ab408514b52aa139e4236ce0c33
              cancellationRequestDate: '2024-03-04T15:45:02.1306363+00:00'
              reason: Out of stock
              requestedByUser: true
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/repsonseOrderId'
              example:
                date: '2019-05-09 15:31:23'
                marketplaceOrderId: '959311095'
                orderId: 1138342255777-01
                receipt: e39d05f9-0c54-4469-a626-8bb5cff169f8
  /pvt/orders/{marketplaceOrderId}/invoice:
    post:
      tags:
      - External Seller
      summary: VTex Send invoice
      description: "This request is sent by the external seller to the VTEX marketplace to send invoice information.\n\nThis can be necessary in a regular order or in the case of a return. The `type` field is used to indicate which of these is the case.\r\n\r\n## Permissions\r\n\r\nCheck with your service provider to know what permissions are needed."
      operationId: send-invoice
      parameters:
      - $ref: '#/components/parameters/Accept_2'
      - $ref: '#/components/parameters/Content-Type_2'
      - $ref: '#/components/parameters/marketplaceOrderId'
      - $ref: '#/components/parameters/marketplaceServicesEndpoint'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/requestSendInvoice'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/responseFulfill'
              example:
                date: '2021-06-09T15:22:56.7612218-02:00'
                orderId: 1138342255777-01
                receipt: 527b1ae251264ef1b7a9b597cd8f16b9
      deprecated: false
  /pvt/orders/{marketplaceOrderId}/invoice/{invoiceNumber}:
    post:
      tags:
      - External Seller
      summary: VTex Send tracking information
      description: "This request is sent by the external seller to the VTEX marketplace to add tracking information to a given order's invoice, in case it is necessary to do so after the invoice has been sent.\r\n\r\n## Permissions\r\n\r\nAny 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:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| OMS | OMS access | **Notify invoice** |\r\n\r\nYou can [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) with that resource or use one of the following [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy):\r\n\r\n| **Role** | **Resource** | \r\n| --------------- | ----------------- | \r\n| Allows you to report invoices (NF) and tracking data | Notify invoice |\r\n\r\n>❗ Assigning a [predefined role](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) to users or application keys usually grants permission to multiple [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3). 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](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm).\r\n\r\nTo learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication)."
      operationId: send-tracking-information
      parameters:
      - $ref: '#/components/parameters/marketplaceServicesEndpoint'
      - $ref: '#/components/parameters/marketplaceOrderId'
      - $ref: '#/components/parameters/invoiceNumber'
      - $ref: '#/components/parameters/Accept_2'
      - $ref: '#/components/parameters/Content-Type_2'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/requestSendTracking'
            example:
              courier: courier-example
              trackingNumber: 12345678abc
              trackingUrl: https://courier-example.com/tracking
              dispatchedDate: '2021-06-09'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/responseFulfill'
              example:
                date: '2021-06-09T15:22:56.7612218-02:00'
                orderId: 1138342255777-01
                receipt: 527b1ae251264ef1b7a9b597cd8f16b9
      deprecated: false
  /pvt/orders/{marketplaceOrderId}/invoice/{invoiceNumber}/tracking:
    post:
      tags:
      - External Seller
      summary: VTex Update tracking status
      description: "This request is sent by the external seller to the VTEX marketplace to update a given order's tracking status.\r\n\r\n## Permissions\r\n\r\nAny 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:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| OMS | OMS access | **Notify invoice** |\r\n\r\nYou can [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) with that resource or use one of the following [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy):\r\n\r\n| **Role** | **Resource** | \r\n| --------------- | ----------------- | \r\n| Allows you to report invoices (NF) and tracking data | Notify invoice |\r\n\r\n>❗ Assigning a [predefined role](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) to users or application keys usually grants permission to multiple [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3). 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](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm).\r\n\r\nTo learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication)."
      operationId: update-tracking-status
      parameters:
      - $ref: '#/components/parameters/marketplaceServicesEndpoint'
      - $ref: '#/components/parameters/marketplaceOrderId'
      - $ref: '#/components/parameters/invoiceNumber'
      - $ref: '#/components/parameters/Accept_2'
      - $ref: '#/components/parameters/Content-Type_2'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/requestUpdateTrackingStatus'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/responseFulfill'
              example:
                date: '2021-06-09T15:22:56.7612218-02:00'
                orderId: 1138342255777-01
                receipt: 527b1ae251264ef1b7a9b597cd8f16b9
      deprecated: false
  /pvt/orders/{marketplaceOrderId}/cancel:
    post:
      tags:
      - External Seller
      summary: VTex Cancel order in marketplace
      description: "This request is sent by the external seller to the VTEX marketplace to cancel an order.\r\n\r\n## Permissions\r\n\r\nAny 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:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Checkout | CheckoutResources | **Order Cancellation** |\r\n\r\nYou can [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) with that resource or use one of the following [predefined roles](ht

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