openapi: 3.0.0 info: title: VTex Anti-fraud Provider Account Order Placement 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: 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.\n\r\n\rAfter the creation of an order with this request, you have five minutes to send payment information and then request payment processing.\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 | **Read Shopping Cart** |\r\n\r\nThere 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).\r\n\r\n>❗ 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 description: True if the shopper opted to receive the newsletter. example: false nullable: true 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.\r\n\r\n>⚠️ 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).\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 | **Orders Full Access** |\r\n\r\nThere 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).\r\n\r\n>❗ 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 of the order without separating cents. For example, $24.99 is represented `2499`. example: 2499 bundleItems: type: array description: 'Information on services sold along with the SKU. Example: a gift package.' items: type: object properties: type: type: string description: Service type. example: type-example id: type: string description: Service identifier. example: id-example name: type: string description: Service name. example: name-example price: type: integer description: Service price. The last two digits are the cents. example: 199 itemAttachment: type: object description: Item attachment. properties: name: type: string description: Attachment name. example: name-example content: type: string description: Content referring to the customization requested by the customer. example: content-example attachments: type: array description: Array containing information on attachments. items: type: string priceTags: type: array description: Array of price tags, each of which, modifies the price in some way, like discounts or rates that apply to the item in the context of the order. items: type: object properties: identifier: type: string description: Price tag identifier. example: 1234abc-5678b-1234c isPercentual: type: boolean description: '`true` if price tag value is applied through a percentage.' example: false name: type: string description: Price tag name. example: discount@name-1234abc-5678b-1234c rawValue: type: integer description: Price tag raw value. example: -12 value: type: integer description: Price tag value. example: -1200 measurementUnit: type: string description: SKU measurement unit. example: g unitMultiplier: type: integer description: SKU unit multiplier. example: 1 isGift: type: boolean description: Indicates whether the order is a gift. example: false example: id: '123456789' quantity: 1 seller: '1' clientProfileData: type: object description: "Customer's profile information. The `email` functions as a customer's ID.\n\r\n\rFor customers already in your database, sending only the email address is enough to register the order to the shopper’s existing account.\n\r\n\r> If the shopper exists in you database but is not logged in, sending other profile information along with the email will cause the platform to fail placing the order. This happens because this action is interpreted as an attempt to edit profile data, which is not possible unless the customer is logged in to the store." required: - email nullable: true properties: email: type: string description: Customer's email address. example: customer@examplemail.com nullable: true firstName: type: string description: Customer's first name. example: first-name nullable: true lastName: type: string description: Customer's last name. example: last-name documentType: type: string description: Type of the document informed by the customer. example: cpf document: type: string description: Document number informed by the customer. example: '123456789' phone: type: string description: Customer's phone number. example: '+55110988887777' corporateName: type: string description: Company name, if the customer is a legal entity. example: company-name tradeName: type: string description: Trade name, if the customer is a legal entity. example: trade-name corporateDocument: type: string description: Corporate document, if the customer is a legal entity. example: '12345678000100' stateInscription: type: string description: State inscription, if the customer is a legal entity. example: '12345678' corporatePhone: type: string description: Corporate phone number, if the customer is a legal entity. example: '+551100988887777' isCorporate: type: boolean description: '`true` if the customer is a legal entity.' example: false shippingData: type: object description: Shipping information. nullable: true properties: address: type: object description: "Shipping address.\n\r\n\rFor customers already in your data base, it is enough to send this object only with an `addressId`, which you may obtain from a [Cart simulation request](https://developers.vtex.com/vtex-rest-api/reference/shopping-cart#cartsimulation), for example." nullable: true properties: addressType: type: string description: Type of address. For example, `Residential` or `Pickup`, among others. example: residential receiverName: type: string description: Name of the person who is going to receive the order. example: receiver-name addressId: type: string description: Address ID. example: Home nullable: true postalCode: type: string description: Postal Code. example: 12345-000 city: type: string description: City of the shipping address. example: Rio de Janeiro state: type: string description: State of the shipping address. example: Rio de Janeiro country: type: string description: Three letter ISO code of the country of the shipping address. example: BRA street: type: string description: Street of the shipping address. example: Praia de Botafogo number: type: string description: Number of the building, house or apartment in the shipping address. example: '300' neighborhood: type: string description: Neighborhood of the shipping address. example: Botafogo complement: type: string description: Complement to the shipping address in case it applies. example: 3rd floor reference: type: string description: Complement that might help locate the shipping address more precisely in case of delivery. example: Grey building geoCoordinates: type: array description: Array containing two floats with geocoordinates, first longitude, then latitude. example: - -47.924747467041016 - -15.832582473754883 items: type: number example: -47.924747467041016 description: Geocoordinates numbers. logisticsInfo: type: array description: Array of objects containing logistics information of each item. items: type: object required: - itemIndex - selectedSla - price properties: itemIndex: type: integer description: Index of the item in the `items` array, starting from 0. example: 0 selectedSla: type: string description: Selected shipping option. example: Express nullable: true selectedDeliveryChannel: type: string description: "String with the selected delivery channel. This field supports the following values: \n\n- `delivery`, \n\n- `pickup-in-point`." example: delivery nullable: true lockTTL: type: string description: Logistics reservation waiting time. example: 8d nullable: true shippingEstimate: type: string description: Estimated time until delivery for the item. example: 7d price: type: integer description: Shipping price for the item. Does not account for the whole order's shipping price. example: 1099 deliveryWindow: type: object description: In case of scheduled delivery, this object will contain information on the delivery window selected by the shopper. properties: startDateUtc: type: string description: Delivery window starting day and time in UTC. example: '2021-07-13T00:00:00+00:00' endDateUtc: type: string description: Delivery window ending day and time in UTC. example: '2021-07-13T23:59:59+00:00' price: type: integer description: Delivery window price. example: 0 lisPrice: type: integer description: Delivery window list price. example: 0 tax: type: integer description: Delivery window tax. example: 0 updateStatus: type: string description: Indicate whether this object's information is up to date according to the order's items. An order can not be placed if `"outdated"` example: updated paymentData: type: object required: - payments description: Payment infomation. properties: giftCards: type: array description: Gift card information, if it applies to the order. items: type: object required: - redemptionCode - value properties: redemptionCode: type: string description: Gift card redemption code. example: HYUO-TEZZ-QFFT-HTFR value: type: integer description: Gift card value. example: 500 balance: type: integer description: Gift card balance. example: 500 name: type: string description: Gift card name. example: name-example id: type: string description: Gift card ID. example: 1390324156495k195pmab4rall3di inUse: type: boolean description: Indicates whether gift card is in use. example: true isSpecialCard: type: boolean description: Indicates whether gift card is special. example: false giftCardMessages: type: array description: Array of gift card messages. items: example: message-example description: Gift card message. paymentSystems: type: array description: Information on payment systems. items: type: object description: Payment system. properties: id: type: integer description: Payment system ID. example: 2 name: type: string description: Payment system name. example: Visa groupName: type: string description: Payment group name. example: creditCardPaymentGroup validator: type: object description: Payment system validator. properties: regex: type: string description: Payment system validator. example: ^4 mask: type: string description: Validator mask. example: 9999 9999 9999 9999 cardCodeRegex: type: string description: Card code regular expression. example: '[^0-9]' cardCodeMask: type: string description: Card code mask. example: '999' weights: type: array description: Weights. items: type: integer example: - 2 - 1 - 2 - 1 - 2 - 1 - 2 - 1 - 2 - 1 - 2 - 1 - 2 - 1 - 2 - 1 - 2 - 1 - 2 stringId: type: string description: String ID. example: 12345abc template: type: string description: Template. example: creditCardPaymentGroup-template requiresDocument: type: boolean description: Indicates whether a document is required. example: false selected: type: boolean description: Indicates whether this payment system has been selected. example: false isCustom: type: boolean description: Indicates whether it is custom. example: false description: type: string description: Description. example: description-example payments: type: array description: Payment information. items: type: object required: - paymentSystem - referenceValue - value - installments description: Payment information. properties: accountId: type: string description: Account ID. example: accountID-example bin: type: string description: Payment bin. example: '2' nullable: true installments: type: integer description: Number of installments. example: 2 paymentSystem: type: integer description: Payment system. example: 12 referenceValue: type: integer description: Reference value for calculating interest rates, in case it applies. example: 16175 value: type: integer description: Value including interest, in case it applies. example: 16175 updateStatus: type: string description: Indicates whether this object's information is up to date according to the order's items. An order can not be placed if `"outdated"`. example: updated marketingData: type: object description: Coupon information. nullable: true properties: coupon: type: string description: Sending an existing coupon code in this field will return the corresponding discount in the purchase. Use the [cart simulation](https://developers.vtex.com/vtex-rest-api/reference/orderform#orderformsimulation) request to check which coupons might apply before placing the order. example: free-shipping utmSource: type: string description: UTM source. example: Facebook utmMedium: type: string description: UTM medium. example: CPC utmCampaign: type: string description: UTM campaign example: Black friday utmiPage: type: string description: utmi_page (internal utm) example: utmi_page-example utmiPart: type: string description: utmi_part (internal utm) example: utmi_part-exmaple utmiCampaign: type: string description: utmi_campaign (internal utm) example: utmi_campaign-exmaple openTextField: type: string description: Optional field meant to hold additional information about the order. We recommend using this field for text, not data formats such as `JSON` even if escaped. For that purpose, see [Creating customizable fields](https://developers.vtex.com/vtex-rest-api/docs/creating-customizable-fields-in-the-cart-with-checkout-api-1) example: open-text-example salesAssociateData: type: object description: Sales Associate information. properties: salesAssociateId: type: string description: Sales Associate (Seller) identification code. All information should be registered by the merchant. Maximum of 100 characters. example: seller123 responses: '200': description: OK content: application/json: schema: type: object properties: orderForm: type: string description: This is `null` since this request does not depend on any previously existing orderForm information in the platform. nullable: true transactionData: type: object description: Information on each transaction pertinent to the order placed. properties: merchantTransactions: type: array description: Information on each merchant transaction. items: type: object properties: id: type: string description: ID of the seller. transactionId: type: string description: ID of the transaction in the platform. merchantName: type: string description: Name of the merchant responsible for the sale. payments: type: array description: Information on each payment pertinent to the transaction. items: type: object properties: paymentSystem: type: integer description: Payment system. bin: type: string description: Payment bin. nullable: true accountId: type: string description: Account ID. nullable: true tokenId: type: string description: Token ID. nullable: true value: type: integer description: Total value to be paid in this payment. referenceValue: type: integer description: Reference value over which interests may be applied. giftCardRedemptionCode: type: string description: Gift card redemption code. nullable: true giftCardProvider: type: string description: Gift card provider. nullable: true giftCardId: type: string description: Gift card ID. nullable: true receiverUri: type: string description: Receiver URI. gatewayCallbackTemplatePath: type: string description: Template of the gateway callback path, which may later be used to send information about the transaction. orders: type: array description: Information on each of the orders created. items: type: object properties: orderId: type: string description: ID of the order in the Order Management System (OMS). orderGroup: type: string description: Order group. Orders that involve different sellers are split into different orders of a same order group. state: type: string description: State. nullable: true isCheckedIn: type: boolean description: Indicates whether order is checked in. example: false sellerOrderId: type: string description: ID of the order in the seller. nullable: true storeId: type: string description: Store ID. nullable: true checkedInPickupPointId: type: string description: Checked in pickup point. nullable: true value: type: integer description: Value of the order. items: type: array description: Information on each item in the order. items: type: object properties: uniqueId: type: string description: Unique ID. id: type: string description: ID of the item. productId: type: string description: Product ID. productRefId: type: string description: Product Ref ID. refId: type: string description: Ref ID. ean: type: string description: European Article Number. nullable: true name: type: string description: Product name. skuName: type: string description: SKU name. modalType: type: string description: Modal type. nullable: true parentItemIndex: type: integer description: Parent item index. nullable: true parentAssemblyBinding: type: string description: Parent assembly binding. nullable: true priceValidUntil: type: string description: Price expiration date and time. tax: type: integer description: Tax value in cents. price: type: integer description: Price in cents. listPrice: type: integer description: List price in cents. manualPrice: type: integer description: Manual price in cents. nullable: true manualPriceAppliedBy: type: string description: User that applied the manual price, if that is the case. nullable: true sellingPrice: type: integer description: Selling price in cents. Note that this field may be subject to rounding discrepancies. We recommend retrieving data from the `priceDefinition` data structure instead. rewardValue: type: integer description: Reward value in cents. isGift: type: boolean description: Indicates whether item is a gift. additionalInfo: type: object description: Additional information. properties: dimension: type: string description: Dimension. nullable: true brandName: type: string description: Brand name. brandId: type: string description: Brand ID. offeringInfo: type: string description: Offering information. nullable: true offeringType: type: string description: Offering type. nullable: true offeringTypeId: type: string description: Offering type ID. nullable: true preSaleDate: type: string description: Presale date. nullable: true productCategoryIds: type: string description: Product category IDs. productCategories: type: object description: Object, where each field is an ID from `productCategoryIds`. properties: '{ID}': type: string description: Product category corresponding to the ID in the field key. quantity: type: integer description: Quantity. seller: type: string description: Seller. sellerChain: type: array description: Sellers involved in the chain. The list should contain only one seller, unless it is a [Multilevel Omnichannel Inventory](https://help.vtex.com/pt/tutorial/multilevel-omnichannel-inventory--7M1xyCZWUyCB7PcjNtOyw4) order. items: type: string description: Seller. imageUrl: type: string description: Image URL. detailUrl: type: string description: Detail URL. bundleItems: type: array description: 'Information on services sold along with the SKU. Example: a gift package.' items: type: object properties: type: type: string description: Service type. id: type: integer description: Service identifier. name: type: string description: Service name. price: type: integer description: Service price in cents. attachments: type: array description: Array containing information on attachments. items: type: string priceTags: type: array description: Array of price tags, each of which, modifies the price in some way, like discounts or rates that apply to the item in the context of the order. items: type: object properties: identifier: type: string description: Price tag identifier. nullable: true isPercentual: type: boolean description: Indicates whether price tag value is applied through a percentage. name: type: string description: Price tag name. rawValue: type: integer description: Price tag raw value. value: type: integer description: Price tag value. availability: type: string description: Availability measurementUnit: type: string description: Measurement unit unitMultiplier: type: integer description: Unit multiplier manufacturerCode: type: string description: Manufacturer code. nullable: true priceDefinition: type: object description: Price information for all units of a specific item. properties: calculatedSellingPrice: type: integer description: Item's calculated unitary selling price in cents. total: type: integer description: Total value for all units of the item in cents. sellingPrices: type: array description: Array of objects, each containing value (in cents) and quantity for the different rounding instances that can be combined to form the correctly rounded total. items: type: object properties: value: type: integer description: Value in cents for that specific rounding. quantity: type: integer description: Rounding quantity, meaning how many items are rounded to this value. sellers: type: array description: Information on each seller. items: type: object properties: id: type: string description: Seller ID. name: type: string description: Seller name. logo: type: string description: Seller logo. nullable: true totals: type: array description: Information on order totals. items: type: object properties: id: type: string description: Total ID. name: type: string description: Total name. value: type: integer description: Total value. clientProfileData: type: object description: Customer's profile information. nullable: true properties: email: type: string description: Email address. nullable: true firstName: type: string description: First name. nullable: true lastName: type: string description: Last name. documentType: type: string description: Type of the document informed by the customer. document: type: string description: Document informed by the customer. phone: type: string description: Phone number. corporateName: type: string description: Company name, if the customer is a legal entity. nullable: true tradeName: type: string description: Trade name, if the customer is a legal entity. nullable: true corporateDocument: type: string description: Corporate document, if the customer is a legal entity. nullable: true stateInscription: type: string description: State inscription, if the customer is a legal entity. nullable: true corporatePhone: type: string description: Corporate phone number, if the customer is a legal entity. nullable: true isCorporate: type: boolean description: Indicates whether the customer is a legal entity. profileCompleteOnLoading: type: boolean description: Indicates whether profile is complete on loading. profileErrorOnLoading: type: boolean description: Indicates whether profile presents error on loading. nullable: true customerClass: type: string description: Customer class. nullable: true ratesAndBenefitsData: type: object description: Information on rates and benefits that apply to the order. properties: rateAndBenefitsIdentifiers: type: array description: List with rates and benefits identifiers. items: type: string teaser: type: array description: List with rates and benefits teasers. items: type: string shippingData: type: object description: Shipping information pertinent to the order. properties: address: type: object description: Address information. nullable: true properties: addressType: type: string description: Type of address. For example, `Residential` or `Pickup`. receiverName: type: string description: Name of the person who is going to receive the order. addressId: type: string description: Address ID. nullable: true isDisposable: type: boolean description: Indicates whether address is disposable. postalCode: type: string description: Postal code. city: type: string description: City of the shipping address. state: type: string description: State of the shipping address. country: type: string description: Three letter ISO code of the country of the shipping address. street: type: string description: Street of the shipping address. number: type: string description: Number of the building, house or apartment in the shipping address. neighborhood: type: string description: Neighborhood of the shipping address. complement: type: string description: Complement to the shipping address, in case it applies. nullable: true reference: type: string description: Complement that might help locate the shipping address more precisely in case of delivery. nullable: true geoCoordinates: type: array description: Array containing two floats with geocoordinates, first longitude, then latitude. items: type: number description: Geocoordinates numbers. logisticsInfo: type: array description: Array with logistics information. Each object in this array corresponds to an object in the `items` array, based on the respective `itemIndex`. items: type: object properties: itemIndex: type: integer description: Index corresponding to the position of the object in the `items` array. selectedSla: type: string description: SLA selected by the customer. nullable: true selectedDeliveryChannel: type: string description: Delivery channel selected by the customer. For example, `"delivery"` or `"pickup-in-point"`. nullable: true addressId: type: string description: Address ID. nullable: true slas: type: array description: Information on available SLAs. items: type: object properties: id: type: string description: SLA ID. deliveryChannel: type: string description: Delivery channel. name: type: string description: SLA name. deliveryIds: type: array description: Information on each delivery ID. items: type: object properties: courierId: type: string description: Courier ID. warehouseId: type: string description: Warehouse ID. dockId: type: string description: Warehouse ID. courierName: type: string description: Courier name. quantity: type: integer description: Quantity. shippingEstimate: type: string description: Shipping estimate. For instance, Three business days will be represented `3bd`. shippingEstimateDate: type: string description: Shipping estimate date. nullable: true lockTTL: type: string description: Estimate date of delivery. nullable: true price: type: integer description: Price in cents. listPrice: type: integer description: List price in cents. tax: type: integer description: Tax in cents. pickupStoreInfo: type: object description: Information on the pickup store. properties: isPickupStore: type: boolean description: Indicates whether it is the pickup store. friendlyName: type: string description: Friendly name. nullable: true address: type: object description: Address information. nullable: true properties: addressType: type: string description: Type of address. For example, `Residential` or `Pickup`. postalCode: type: string description: Postal code. city: type: string description: City of the shipping address. state: type: string description: State of the shipping address. country: type: string description: Three letter ISO code of the country of the shipping address. street: type: string description: Street of the shipping address. number: type: string description: Number of the building, house or apartment in the shipping address. neighborhood: type: string description: Neighborhood of the shipping address. complement: type: string description: Complement to the shipping address, in case it applies. nullable: true reference: type: string description: Complement that might help locate the shipping address more precisely in case of delivery. nullable: true geoCoordinates: type: array description: Array containing two floats with geocoordinates, first longitude, then latitude. items: type: number description: Geocoordinates numbers. additionalInfo: type: string description: Additional information. nullable: true dockId: type: string description: Corresponding dock ID. nullable: true pickupPointId: type: string description: Pickup point ID. nullable: true pickupDistance: type: integer description: Pickup point distance. polygonName: type: string description: Polygon name. nullable: true transitTime: type: string description: Transit time. For instance, "three business days" is represented `3bd`. shipsTo: type: array description: List of countries that the item may be shipped to. items: type: string description: Three letter country code. itemId: type: string description: Item ID. deliveryChannels: type: array description: List of available delivery channels. items: type: object properties: id: type: string description: Delivery channel ID. selectedAddresses: type: array description: Array with information on the selected addresses for the order. items: type: object properties: addressType: type: string description: Type of address. For example, `Residential` or `Pickup`. receiverName: type: string description: Name of the person who is going to receive the order. addressId: type: string description: Address ID. nullable: true isDisposable: type: boolean description: Indicates whether address is disposable. postalCode: type: string description: Postal code. city: type: string description: City of the shipping address. state: type: string description: State of the shipping address. country: type: string description: Three letter ISO code of the country of the shipping address. street: type: string description: Street of the shipping address. number: type: string description: Number of the building, house or apartment in the shipping address. neighborhood: type: string description: Neighborhood of the shipping address. complement: type: string description: Complement to the shipping address, in case it applies. reference: type: string description: Complement that might help locate the shipping address more precisely in case of delivery. nullable: true geoCoordinates: type: array description: Array containing two floats with geocoordinates, first longitude, then latitude. items: type: number description: Geocoordinates numbers. availableAddresses: type: array description: Array with information on the available addresses for the order. items: type: object properties: addressType: type: string description: Type of address. For example, `Residential` or `Pickup`. receiverName: type: string description: Name of the person who is going to receive the order. addressId: type: string description: Address ID. nullable: true isDisposable: type: boolean description: Indicates whether address is disposable. postalCode: type: string description: Postal code. city: type: string description: City of the shipping address. state: type: string description: State of the shipping address. country: type: string description: Three letter ISO code of the country of the shipping address. street: type: string description: Street of the shipping address. number: type: string description: Number of the building, house or apartment in the shipping address. neighborhood: type: string description: Neighborhood of the shipping address. complement: type: string description: Complement to the shipping address, in case it applies. reference: type: string description: Complement that might help locate the shipping address more precisely in case of delivery. nullable: true geoCoordinates: type: array description: Array containing two floats with geocoordinates, first longitude, then latitude. items: type: number description: Geocoordinates numbers. paymentData: type: object description: Information on the order's payment. properties: giftCards: type: array description: Gift card information, if it applies to the order. items: type: object properties: redemptionCode: type: string description: Gift card redemption code. value: type: integer description: Gift card value in cents. balance: type: integer description: Gift card balance in cents. name: type: string description: Gift card name. id: type: string description: Gift card ID. inUse: type: boolean description: Indicates whether gift card is in use. isSpecialCard: type: boolean description: Indicates whether gift card is special. transactions: type: array description: Information on each transaction pertinent to the order. items: type: object properties: isActive: type: boolean description: Indicates whether transaction is active. transactionId: type: string description: Transaction ID. merchantName: type: string description: Merchant name. payments: type: array description: Information on each payment. items: type: object properties: accountId: type: string description: Account ID. bin: type: string description: Bin. nullable: true installments: type: integer description: Number of installments. paymentSystem: type: integer description: Payment system. referenceValue: type: integer description: Reference value for calculating interest rates, in case it applies. Displayed in cents. value: type: integer description: Value including interest, in case it applies. Displayed in cents. sharedTransaction: type: boolean description: Indicates whather transaction is shared. itemMetadata: type: object description: Item metadata. properties: items: type: array description: List of objects containing metadata on each item in the order. items: type: object description: Item metadata. properties: id: type: string description: Item ID. seller: type: string description: Seller. name: type: string description: Product name. skuName: type: string description: SKU name. productId: type: string description: Product ID. refId: type: string description: Ref ID. ean: type: string description: European Article Number. nullable: true imageUrl: type: string description: Image URL. detailUrl: type: string description: Detail URL. salesChannel: type: string description: Sales channel. followUpEmail: type: string description: Follow up email address. creationDate: type: string description: Creation date. lastChange: type: string description: Last change. timeZoneCreationDate: type: string description: Time zone creation date. timeZoneLastChange: type: string description: Time zone last change. isCompleted: type: boolean description: Indicates whether order is completed. hostName: type: string description: Host name. merchantName: type: string description: Merchant name. nullable: true userType: type: string description: User type. roundingError: type: integer description: Rounding error. allowEdition: type: boolean description: Indicates whether edition is allowed. allowCancelation: type: boolean description: Indicates whether cancelation is allowed. allowChangeSeller: type: boolean description: Indicates whether seller changing is allowed. isUserDataVisible: type: boolean description: Indicates whether user data is visible. orderFormCreationDate: type: string description: '`orderForm` creation date.' salesAssociateId: type: string description: Sales Associate (Seller) identification code. example: orderForm: null transactionData: merchantTransactions: - id: MYSTORE transactionId: 296D6D245C17437E823EB77E403FC88D merchantName: MYSTORE payments: - paymentSystem: 6 bin: null accountId: '12' tokenId: null value: 34390 referenceValue: 34390 giftCardRedemptionCode: null giftCardProvider: null giftCardId: null receiverUri: https://mystore.vtexpayments.com.br/split/1146512005522/payments gatewayCallbackTemplatePath: /checkout/gatewayCallback/1146512005522/{messageCode} orders: - orderId: 1146512005522-01 orderGroup: '1146512005522' state: null isCheckedIn: false sellerOrderId: 00-1146512005522-01 storeId: '1' checkedInPickupPointId: '21' value: 34390 items: - uniqueId: 9D6E447B3FF64CEDA33B17C01379C119 id: '2' productId: '2' productRefId: '1' refId: CBC30L ean: null name: Chopp Brahma Claro 30L skuName: Chopp Brahma Claro 30L modalType: null parentItemIndex: null parentAssemblyBinding: null assemblies: [] priceValidUntil: '2022-07-13T18:30:46Z' tax: 0 price: 32890 listPrice: 49900 manualPrice: null manualPriceAppliedBy: null sellingPrice: 32890 rewardValue: 0 isGift: false additionalInfo: dimension: null brandName: Brahma brandId: '2000000' offeringInfo: null offeringType: null offeringTypeId: null preSaleDate: null productCategoryIds: /1/ productCategories: '1': Bebidas quantity: 1 seller: '1' sellerChain: - '1' imageUrl: http://mystore.vteximg.com.br/arquivos/ids/155400-55-55/30l_v2.png?v=637303412106100000 detailUrl: /chopp-brahma-claro-30l/p components: [] bundleItems: [] attachments: [] attachmentOfferings: [] offerings: [] priceTags: [] availability: available measurementUnit: un unitMultiplier: 1 manufacturerCode: null priceDefinition: calculatedSellingPrice: 32890 total: 32890 sellingPrices: - value: 32890 quantity: 1 sellers: - id: '1' name: Tracking QA logo: Logo totals: - id: Items name: Total dos Itens value: 32890 - id: Discounts name: Total dos Descontos value: 0 - id: Shipping name: Total do Frete value: 1500 - id: Tax name: Total da Taxa value: 0 clientProfileData: email: clark.kent@example.com firstName: Clark lastName: Kent document: '12345678900' documentType: cpf phone: '+5521998765432' corporateName: company-name tradeName: trade-name corporateDocument: '12345678000100' stateInscription: '12345678' corporatePhone: '551100988887777' isCorporate: false profileCompleteOnLoading: false profileErrorOnLoading: false customerClass: null ratesAndBenefitsData: rateAndBenefitsIdentifiers: [] teaser: [] shippingData: address: addressType: residential receiverName: Clark Kent addressId: teste isDisposable: true postalCode: '70386000' city: Brasília state: DF country: BRA street: Rua da minha casa number: '123' neighborhood: Copacabana complement: 15º andar reference: null geoCoordinates: - -47.924747467041016 - -15.832582473754883 logisticsInfo: - itemIndex: 0 selectedSla: Normal selectedDeliveryChannel: delivery addressId: teste slas: - id: Normal deliveryChannel: delivery name: Normal deliveryIds: - courierId: '1' warehouseId: '1_1' dockId: '1' courierName: Transportadora quantity: 1 kitItemDetails: [] shippingEstimate: 3bd shippingEstimateDate: null lockTTL: 10d availableDeliveryWindows: [] deliveryWindow: null price: 1500 listPrice: 1500 tax: 0 pickupStoreInfo: isPickupStore: false friendlyName: null address: null additionalInfo: null dockId: null pickupPointId: null pickupDistance: 0 polygonName: null transitTime: 3bd shipsTo: - BRA - COL - USA itemId: '2' deliveryChannels: - id: delivery - id: pickup-in-point selectedAddresses: - addressType: residential receiverName: Clark Kent addressId: teste isDisposable: true postalCode: '12345000' city: Rio de Janeiro state: RJ country: BRA street: Rua da minha casa number: '123' neighborhood: Copacabana complement: 15º andar reference: null geoCoordinates: - -47.924747467041016 - -15.832582473754883 availableAddresses: - addressType: residential receiverName: Clark Kent addressId: teste isDisposable: true postalCode: '12345000' city: Rio de Janeiro state: RJ country: BRA street: Rua da minha casa number: '123' neighborhood: Copacabana complement: 15º andar reference: null geoCoordinates: - -47.924747467041016 - -15.832582473754883 pickupPoints: [] paymentData: giftCards: [] transactions: - isActive: true transactionId: 296D6D245C17437E823EB77E403FC88D merchantName: MYSTORE payments: - paymentSystem: 6 bin: null accountId: '12' tokenId: null value: 34390 referenceValue: 34390 giftCardRedemptionCode: null giftCardProvider: null giftCardId: null sharedTransaction: false clientPreferencesData: null commercialConditionData: null giftRegistryData: null marketingData: null storePreferencesData: countryCode: BRA saveUserData: false timeZone: E. South America Standard Time currencyCode: BRL currencyLocale: 1046 currencySymbol: R$ currencyFormatInfo: currencyDecimalDigits: 2 currencyDecimalSeparator: ',' currencyGroupSeparator: . currencyGroupSize: 3 startsWithCurrencySymbol: true openTextField: value: null invoiceData: null itemMetadata: items: - id: '2' seller: '1' name: Chopp Brahma Claro 30L skuName: Chopp Brahma Claro 30L productId: '2' refId: CBC30L ean: null imageUrl: http://mystore.vteximg.com.br/arquivos/ids/155400-55-55/30l_v2.png?v=637303412106100000 detailUrl: /chopp-brahma-claro-30l/p assemblyOptions: [] taxData: null customData: null hooksData: null changeData: null subscriptionData: null salesChannel: '1' followUpEmail: 6c10d76b5170456d89823b38b7c8f6ac@ct.vtex.com.br creationDate: '2021-07-13T18:33:25.3029443Z' lastChange: '2021-07-13T18:33:27.736557Z' timeZoneCreationDate: '2021-07-13T15:33:25.3029443' timeZoneLastChange: '2021-07-13T15:33:27.736557' isCompleted: false hostName: mystore merchantName: null userType: User type roundingError: 0 allowEdition: false allowCancellation: false isUserDataVisible: true allowChangeSeller: false orderFormCreationDate: '2021-07-13T18:33:25.1313373Z' salesAssociateData: salesAssociateId: seller123 deprecated: false /api/checkout/pub/gatewayCallback/{orderGroup}: post: tags: - Order Placement summary: VTex Process order description: "Order processing callback request, which is made after an order's payment is approved.\n\r\n\r> This request has to be made within five minutes after the [Place order](https://developers.vtex.com/docs/api-reference/checkout-api#put-/api/checkout/pub/orders) or [Place order from existing cart](https://developers.vtex.com/docs/api-reference/checkout-api#post-/api/checkout/pub/orderForm/-orderFormId-/transaction) request has been made, or else, the order will not be processed.\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 | **Save Order Configuration** |\r\n\r\nThere 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).\r\n\r\n>❗ 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: ProcessOrder security: [] parameters: - name: orderGroup in: path description: Order group. It is the part of the `orderId` that comes before the `-`. For example, the `orderGroup` of the order `123456789-01` is `123456789`. required: true style: simple schema: type: string example: '123456789' - $ref: '#/components/parameters/Content-Type' - $ref: '#/components/parameters/Accept' - name: Cookie in: header description: VTEX Chekout cookie associated with a specific order. Use the `Vtex_CHKO_Auth` and the `CheckoutDataAccess` cookies returned by the [Place order](https://developers.vtex.com/vtex-rest-api/reference/order-placement-1#placeorder) or [Place order from existing cart](https://developers.vtex.com/vtex-rest-api/reference/order-placement-1#placeorderfromexistingorderform) API requests, like a browser would. required: true style: simple schema: type: string example: Vtex_CHKO_Auth=0e/RpYIEZu19BuwXB4tZ7eIGu9HT8vdUAHWQDHDpxMc=; CheckoutDataAccess=0e/PoiTEZu19BuwXB4tZ7eIGu9HT8vdUAHWQDHDpxMc= responses: '200': description: OK '428': description: This code is used to indicate that a payment redirection flow is required to complete the order, such as using an [external payment application](https://developers.vtex.com/docs/guides/payments-integration-payment-app). content: application/json: schema: type: object properties: RedirectResponseCollection: type: array description: Redirect Payment information. items: type: object properties: redirectUrl: type: string description: Redirect URL information. paymentAuthorizationAppCollection: type: array description: Payment authorization information. items: type: object properties: appName: type: string description: Indicates which VTEX IO app that will handle the payment flow at Checkout. appPayload: type: object description: App payload information. properties: code: type: string description: URL source of external payment flow. expiresAt: type: string description: Payment flow expiration date in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format (`YYYY-MM-DDThh:mm:ss.fff`). paymentId: type: string description: Payment identifier at VTEX. transactionId: type: string description: Transaction ID. example: RedirectResponseCollection: - redirectUrl: https://bacen.pix/pix/… paymentAuthorizationAppCollection: - appName: vtex.pix-payment appPayload: code: https://bacen.pix/pix/… expiresAt: '2023-07-12 14:18:11Z' paymentId: 7AA33BDE370746839F2F8C5F13FE1D84 transactionId: 7CEA6AD624D54F07825D37EDEAA746ED '500': description: Internal Server Error content: application/json: schema: type: object properties: operationId: type: string description: Operation ID. error: type: object description: Information on the error. properties: code: type: string description: Error code. message: type: string description: Error message. exception: type: string description: Error exception. nullable: true example: operationId: a231ed11-255b-4ea0-96c3-1790e1b27f7e error: code: '001' message: 'Seu pagamento não foi autorizado. Falha ao enviar os dados de pagamento. Favor entrar em contato com o SAC ou utilizar outra forma de pagamento. *** ' exception: null deprecated: false components: schemas: orderForm: type: object properties: orderFormId: type: string description: ID of the orderForm corresponding to a specific cart. salesChannel: type: string description: Attribute created by the seller, in their VTEX store configuration. loggedIn: type: boolean description: Indicates whether the user is logged into the store. isCheckedIn: type: boolean description: Indicates whether order is checked in. storeId: type: string description: ID of the store. nullable: true allowManualPrice: type: boolean description: Permission to modify item price manually. canEditData: type: boolean description: Data can be edited. userProfileId: type: string description: Unique ID associated with the customer profile. profileProvider: type: string description: Profile provider. availableAccounts: type: array description: Available accounts. items: type: string description: Account. availableAddresses: type: array description: Information on each available address. items: type: object properties: addressType: type: string description: Address type. receiverName: type: string description: Name of the receiver. addressId: type: string description: Address ID. nullable: true isDisposable: type: boolean description: Indicates whether address is disposable. city: type: string description: City of the address. state: type: string description: State of the address. country: type: string description: Country of the address. ISO three-letter code. street: type: string description: Street of the address. number: type: string description: Number of the address. neighborhood: type: string description: Neighborhood of the address. complement: type: string description: Complement to the address. nullable: true reference: type: string description: Reference that may help in the location of the address. nullable: true geoCoordinates: type: array description: 'Array with two strings that represent geocoordinates: first latitude, then longitude.' items: type: number description: Geocoordinates. userType: type: string description: User type. nullable: true ignoreProfileData: type: boolean description: Ignore customer profile data. value: type: integer description: Total value of the order without separating cents. For example, $24.99 is represented as `2499`. messages: type: array description: Array containing an object for each message generated by our servers while processing the request. items: type: string description: Message. items: type: array description: Information on each item in the order. items: type: object properties: uniqueId: type: string description: Unique ID. id: type: string description: ID of the item. productId: type: string description: Product ID. productRefId: type: string description: Product Ref ID. refId: type: string description: Ref ID. ean: type: string description: European Article Number. nullable: true name: type: string description: Product name. skuName: type: string description: SKU name. modalType: type: string description: Modal type. nullable: true parentItemIndex: type: integer description: Parent item index. nullable: true parentAssemblyBinding: type: string description: Parent assembly binding. nullable: true priceValidUntil: type: string description: Price expiration date and time. tax: type: integer description: Tax value in cents. taxCode: type: string description: A unique identifier code assigned to a tax within the VTEX Admin. price: type: integer description: Price in cents. listPrice: type: integer description: List price in cents. manualPrice: type: integer description: Manual price in cents. nullable: true manualPriceAppliedBy: type: string description: User that applied the manual price, if that is the case. nullable: true sellingPrice: type: integer description: Selling price in cents. Note that this field may be subject to rounding discrepancies. We recommend retrieving data from the `priceDefinition` data structure instead. rewardValue: type: integer description: Reward value in cents. isGift: type: boolean description: Indicates whether item is a gift. additionalInfo: type: object description: Additional information. properties: dimension: type: string description: Dimension. nullable: true brandName: type: string description: Brand name. brandId: type: string description: Brand ID. offeringInfo: type: string description: Offering information. nullable: true offeringType: type: string description: Offering type. nullable: true offeringTypeId: type: string description: Offering type ID. nullable: true preSaleDate: type: string description: Presale date. nullable: true productCategoryIds: type: string description: Product category IDs. productCategories: type: object description: Object, where each field is an ID from `productCategoryIds`. properties: '{ID}': type: string description: Product category corresponding to the ID in the field key. quantity: type: integer description: Quantity. seller: type: string description: Seller. sellerChain: type: array description: Sellers involved in the chain. The list should contain only one seller, unless it is a [Multilevel Omnichannel Inventory](https://help.vtex.com/en/tutorial/multilevel-omnichannel-inventory--7M1xyCZWUyCB7PcjNtOyw4) order. items: type: string description: Seller. imageUrl: type: string description: Image URL. detailUrl: type: string description: Detail URL. bundleItems: type: array description: 'Information on services sold along with the SKU. Example: a gift package.' items: type: object properties: type: type: string description: Service type. id: type: integer description: Service identifier. name: type: string description: Service name. price: type: integer description: Service price in cents. attachments: type: array description: Array containing information on attachments. items: type: string priceTags: type: array description: Array of price tags, each of which, modifies the price in some way, like discounts or rates that apply to the item in the context of the order. items: type: object properties: identifier: type: string description: Price tag identifier. nullable: true isPercentual: type: boolean description: Indicates whether price tag value is applied through a percentage. name: type: string description: Price tag name. rawValue: type: integer description: Price tag raw value. value: type: integer description: Price tag value. availability: type: string description: Availability. measurementUnit: type: string description: Measurement unit. unitMultiplier: type: integer description: Unit multiplier. manufacturerCode: type: string description: Manufacturer code. nullable: true priceDefinition: type: object description: Price information for all units of a specific item. properties: calculatedSellingPrice: type: integer description: Item's calculated unitary selling price in cents. total: type: integer description: Total value for all units of the item in cents. sellingPrices: type: array description: Array of objects, each containing value (in cents) and quantity for the different rounding instances that can be combined to form the correctly rounded total. items: type: object properties: value: type: integer description: Value in cents for that specific rounding. quantity: type: integer description: Rounding quantity, meaning how many items are rounded to this value. selectableGifts: type: array description: Array containing the data of the item selected as a gift. items: type: string description: Gift. totalizers: type: array description: Array containing an object for each totalizer for the purchase. Totalizers contain the sum of values for a specific part of the order (e.g. Total item value, Total shipping value). items: type: object description: Totalizer of purchases. shippingData: type: object description: Shipping information pertinent to the order. nullable: true properties: address: type: object description: Address information. nullable: true properties: addressType: type: string description: Type of address. For example, `Residential` or `Pickup`. receiverName: type: string description: Name of the person who is going to receive the order. addressId: type: string description: Address ID. nullable: true isDisposable: type: boolean description: Indicates whether address is disposable. postalCode: type: string description: Postal code. city: type: string description: City of the shipping address. state: type: string description: State of the shipping address. country: type: string description: Three letter ISO code of the country of the shipping address. street: type: string description: Street of the shipping address. number: type: string description: Number of the building, house or apartment in the shipping address. neighborhood: type: string description: Neighborhood of the shipping address. complement: type: string description: Complement to the shipping address, in case it applies. nullable: true reference: type: string description: Complement that might help locate the shipping address more precisely in case of delivery. nullable: true geoCoordinates: type: array description: 'Array with two strings that represent geocoordinates: first latitude, then longitude.' items: type: number description: Geocoordinates. logisticsInfo: type: array description: Array with logistics information. Each object in this array corresponds to an object in the `items` array, based on the respective `itemIndex`. items: type: object properties: itemIndex: type: integer description: Index corresponding to the position of the object in the `items` array. selectedSla: type: string description: SLA selected by the customer. nullable: true selectedDeliveryChannel: type: string description: Delivery channel selected by the customer. nullable: true addressId: type: string description: Address ID. nullable: true slas: type: array description: Information on available SLAs. items: type: object properties: id: type: string description: SLA ID. deliveryChannel: type: string description: Delivery channel. name: type: string description: SLA name. deliveryIds: type: array description: Information on each delivery ID. items: type: object properties: courierId: type: string description: Courier ID. warehouseId: type: string description: Warehouse ID. dockId: type: string description: Warehouse ID. courierName: type: string description: Courier name. quantity: type: integer description: Quantity. shippingEstimate: type: string description: Shipping estimate. For instance, "three business days" will be represented as `3bd`. shippingEstimateDate: type: string description: Shipping estimate date. nullable: true lockTTL: type: string description: Estimate date of delivery. nullable: true price: type: integer description: Price in cents. listPrice: type: integer description: List price in cents. tax: type: integer description: Tax in cents. pickupStoreInfo: type: object description: Information on the pickup store. properties: isPickupStore: type: boolean description: Indicates whether it is the pickup store. friendlyName: type: string description: Friendly name. nullable: true address: type: object description: Address information. nullable: true properties: addressType: type: string description: Type of address. For example, `Residential` or `Pickup`. postalCode: type: string description: Postal code. city: type: string description: City of the shipping address. state: type: string description: State of the shipping address. country: type: string description: Three letter ISO code of the country of the shipping address. street: type: string description: Street of the shipping address. number: type: string description: Number of the building, house or apartment in the shipping address. neighborhood: type: string description: Neighborhood of the shipping address. complement: type: string description: Complement to the shipping address, in case it applies. nullable: true reference: type: string description: Complement that might help locate the shipping address more precisely in case of delivery. nullable: true geoCoordinates: type: array description: 'Array with two strings that repesent geocoordinates: first latitude, then longitude.' items: type: number description: Geocoordinates. additionalInfo: type: string description: Additional information. nullable: true dockId: type: string description: Corresponding dock ID. nullable: true pickupPointId: type: string description: Pickup point ID. nullable: true pickupDistance: type: integer description: Pickup point distance. polygonName: type: string description: Polygon name. nullable: true transitTime: type: string description: Transit time. For instance, "three business days" is represented as `3bd`. shipsTo: type: array description: List of countries that the item may be shipped to. items: type: string description: Three letter country code. itemId: type: string description: Item ID. deliveryChannels: type: array description: List of available delivery channels. items: type: object properties: id: type: string description: Delivery channel ID. selectedAddresses: type: array description: Array with information on the selected addresses for the order. items: type: object properties: addressType: type: string description: Type of address. For example, `Residential` or `Pickup`. receiverName: type: string description: Name of the person who is going to receive the order. addressId: type: string description: Address ID. nullable: true isDisposable: type: boolean description: Indicates whether address is disposable. postalCode: type: string description: Postal code. city: type: string description: City of the shipping address. state: type: string description: State of the shipping address. country: type: string description: Three letter ISO code of the country of the shipping address. street: type: string description: Street of the shipping address. number: type: string description: Number of the building, house or apartment in the shipping address. neighborhood: type: string description: Neighborhood of the shipping address. complement: type: string description: Complement to the shipping address, in case it applies. reference: type: string description: Complement that might help locate the shipping address more precisely in case of delivery. nullable: true geoCoordinates: type: array description: 'Array with two strings that represent geocoordinates: first latitude, then longitude.' items: type: number description: Geocoordinates. availableAddresses: type: array description: Array with information on the available addresses for the order. items: type: object properties: addressType: type: string description: Type of address. For example, `Residential` or `Pickup`. receiverName: type: string description: Name of the person who is going to receive the order. addressId: type: string description: Address ID. nullable: true isDisposable: type: boolean description: Indicates whether address is disposable. postalCode: type: string description: Postal code. city: type: string description: City of the shipping address. state: type: string description: State of the shipping address. country: type: string description: Three letter ISO code of the country of the shipping address. street: type: string description: Street of the shipping address. number: type: string description: Number of the building, house or apartment in the shipping address. neighborhood: type: string description: Neighborhood of the shipping address. complement: type: string description: Complement to the shipping address, in case it applies. reference: type: string description: Complement that might help locate the shipping address more precisely in case of delivery. nullable: true geoCoordinates: type: array description: 'Array with two strings that represent geocoordinates: first latitude, then longitude.' items: type: number description: Geocoordinates. clientProfileData: type: object description: Customer's profile information. nullable: true properties: email: type: string description: Email address. nullable: true firstName: type: string description: First name. nullable: true lastName: type: string description: Last name. documentType: type: string description: Type of the document informed by the customer. document: type: string description: Document informed by the customer. phone: type: string description: Phone number. corporateName: type: string description: Company name, if the customer is a legal entity. nullable: true tradeName: type: string description: Trade name, if the customer is a legal entity. nullable: true corporateDocument: type: string description: Corporate document, if the customer is a legal entity. nullable: true stateInscription: type: string description: State inscription, if the customer is a legal entity. nullable: true corporatePhone: type: string description: Corporate phone number, if the customer is a legal entity. nullable: true isCorporate: type: boolean description: Indicates whether the customer is a legal entity. profileCompleteOnLoading: type: boolean description: Indicates whether profile is complete on loading. profileErrorOnLoading: type: boolean description: Indicates whether profile presents error on loading. nullable: true customerClass: type: string description: Customer class. nullable: true paymentData: type: object description: Information on the order's payment. properties: giftCards: type: array description: Gift card information, if it applies to the order. items: type: object properties: redemptionCode: type: string description: Gift card redemption code. value: type: integer description: Gift card value in cents. balance: type: integer description: Gift card balance in cents. name: type: string description: Gift card name. id: type: string description: Gift card ID. inUse: type: boolean description: Indicates whether gift card is in use. isSpecialCard: type: boolean description: Indicates whether gift card is special. transactions: type: array description: Information on each transaction pertinent to the order. items: type: object properties: isActive: type: boolean description: Indicates whether transaction is active. transactionId: type: string description: Transaction ID. merchantName: type: string description: Merchant name. payments: type: array description: Information on each payment. items: type: object properties: accountId: type: string description: Account ID. bin: type: string description: Bin. nullable: true installments: type: integer description: Number of installments. paymentSystem: type: string description: Payment system. referenceValue: type: integer description: Reference value for calculating interest rates, in case it applies. Displayed in cents. value: type: integer description: Value including interest, in case it applies. Displayed in cents. sharedTransaction: type: boolean description: Indicates whather transaction is shared. marketingData: type: object nullable: true description: Object containing promotion data such as coupon tracking information and internal or external UTMs. properties: coupon: type: string description: Sending an existing coupon code in this field will return the corresponding discount in the purchase. Use the [cart simulation](https://developers.vtex.com/vtex-rest-api/reference/orderform#orderformsimulation) request to check which coupons might apply before placing the order. example: free-shipping utmSource: type: string description: UTM source. example: Facebook utmMedium: type: string description: UTM medium. example: CPC utmCampaign: type: string description: UTM campaign example: Black friday utmiPage: type: string description: utmi_page (internal utm). example: utmi_page-example nullable: true utmiPart: type: string description: utmi_part (internal utm). example: utmi_part-example nullable: true utmiCampaign: type: string description: utmi_campaign (internal utm). example: utmi_campaign-example nullable: true sellers: type: array description: Information on each seller. items: type: object properties: id: type: string description: Seller ID. name: type: string description: Seller name. logo: type: string description: Seller logo. nullable: true clientPreferencesData: type: object description: Object containing preferences from the client who placed the order. properties: locale: type: string description: 'Client''s locale. Examples: `pt-BR` and `en-US`.' optinNewsLetter: type: boolean description: '`true` if the client opted to receive newsletter from the store.' example: false nullable: true commercialConditionData: type: object description: Object containing commercial condition information. nullable: true storePreferencesData: type: object description: Object containing data from the store's configuration (stored in VTEX's License Manager). giftRegistryData: type: object description: Gift registry list information. nullable: true openTextField: type: string description: Optional field meant to hold additional information about the order. We recommend using this field for text, not data formats such as `JSON` even if escaped. For that purpose, see [Creating customizable fields](https://developers.vtex.com/vtex-rest-api/docs/creating-customizable-fields-in-the-cart-with-checkout-api-1). example: open-text-example nullable: true invoiceData: type: object description: Object containing information pertinent to the order's invoice. nullable: true customData: type: object description: Customer additional information. nullable: true itemMetadata: type: object description: Item metadata. properties: items: type: array description: List of objects containing metadata on each item in the order. items: type: object properties: id: type: string description: Item ID. seller: type: string description: Seller. name: type: string description: Product name. skuName: type: string description: SKU name. productId: type: string description: Product ID. refId: type: string description: Ref ID. ean: type: string description: European Article Number. nullable: true imageUrl: type: string description: Image URL. detailUrl: type: string description: Detail URL. hooksData: type: object description: Hooks information. nullable: true ratesAndBenefitsData: type: object description: Information on rates and benefits that apply to the order. properties: rateAndBenefitsIdentifiers: type: array description: List with rates and benefits identifiers. items: type: string description: Benefit identifier. teaser: type: array description: List with rates and benefits teasers. items: type: string description: Benefit teaser. subscriptionData: type: object description: Subscription information. nullable: true itemsOrdination: type: object description: Object containing information about the ordering of items within the `orderForm`. properties: criteria: type: string description: Criteria adopted to order the items in the list. ascending: type: boolean description: Indicates whether the ordering is ascending. parameters: Accept: name: Accept in: header description: HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand. required: true style: simple schema: type: string default: application/json Content-Type: name: Content-Type in: header description: Type of the content being sent. required: true style: simple schema: type: string default: application/json securitySchemes: VtexIdclientAutCookie: type: apiKey in: header name: VtexIdclientAutCookie description: '[User token](https://developers.vtex.com/docs/guides/api-authentication-using-user-tokens), valid for 24 hours.'