openapi: 3.0.0 info: title: VTex Anti-fraud Provider Account Cart Attachments 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: Cart Attachments paths: /api/checkout/pub/profiles: get: tags: - Cart Attachments summary: VTex Get client profile by email description: "Retrieves a client's profile information by providing an email address.\n\r\n\rIf the response body fields are empty, the following situations may have occurred:\n\r\n\r1. There is no client registered with the email address provided in your store, or;\n\r2. Client profile is invalid or incomplete. However, you can use the query parameter `ensureComplete=false` to get incomplete profiles. For more information, see [SmartCheckout - Customer information automatic fill-in](https://help.vtex.com/en/tutorial/smartcheckout-customer-information-automatic-fill-in--2Nuu3xAFzdhIzJIldAdtan).\r\n\r\n>⚠️ The authentication of this endpoint can change depending on the customer context. If you are consulting information from a customer with a complete profile on the store, the response will return the customer's data masked. You can only access the customer data with an authenticated request.\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 | **Shopping Cart Full Access** |\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| Checkout Admin | Shopping Cart Full Access |\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: GetClientProfileByEmail security: [] parameters: - $ref: '#/components/parameters/Content-Type' - $ref: '#/components/parameters/Accept' - name: email in: query description: Client's email address to be searched. required: true style: form schema: type: string example: clark.kent@examplemail.com - name: ensureComplete in: query description: Indicates whether the returned profiles must be complete or not. required: false style: form schema: type: boolean example: false responses: '200': description: OK content: application/json: schema: type: object properties: 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 name. availableAddresses: type: array description: Information on each available address. items: type: object description: Address information. 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 containing two floats with geocoordinates, first longitude, then latitude. items: type: number description: Geocoordinates numbers. userProfile: type: object description: Customer profile information. properties: email: type: string description: Email address. nullable: true firstName: type: string description: First name. nullable: true lastName: type: string description: Last name. document: type: string description: Document. documentType: type: string description: Document type. phone: type: string description: Telephone number. corporateName: type: string description: Name of the company. Used for corporate clients. nullable: true tradeName: type: string description: Trade name. Used for corporate clients. nullable: true corporateDocument: type: string description: Document. Used for corporate clients. nullable: true stateInscription: type: string description: State inscription. Used for corporate clients. nullable: true corporatePhone: type: string description: Telephone number. Used for corporate clients. nullable: true isCorporate: type: boolean description: Indicates whether client is corporate. example: false profileCompleteOnLoading: type: boolean description: Profile complete when loading. nullable: true profileErrorOnLoading: type: string description: Profile error when loading. nullable: true customerClass: type: string description: Customer class. nullable: true isComplete: type: boolean description: Indicates whether customer profile is complete. example: userProfileId: fb542e51-5488-4c34-8d17-ed8fcf597a94 profileProvider: VTEX availableAccounts: [] availableAddresses: - addressType: residential receiverName: Clark Kent addressId: 666c2e830bd9474ab6f6cc53fb6dd2d2 isDisposable: false postalCode: 12345-000 city: Metropolis state: NY country: USA street: My street number: '123' neighborhood: My neighborhood complement: Complement reference: Reference geoCoordinates: - -47.924747467041016 - -15.832582473754883 userProfile: email: clark.kent@example.com firstName: Clark lastName: Kent document: '12345678900' documentType: cpf phone: '+556199999999' corporateName: company-name tradeName: trade-name corporateDocument: '12345678000100' stateInscription: '12345678' corporatePhone: '551100988887777' isCorporate: false profileCompleteOnLoading: false profileErrorOnLoading: false customerClass: null isComplete: true deprecated: false /api/checkout/pub/orderForm/{orderFormId}/attachments/clientProfileData: post: tags: - Cart Attachments summary: VTex Add client profile description: "Use this request to include client profile information to a given shopping cart.\r\n\r\nThe [orderForm](https://developers.vtex.com/docs/guides/orderform-fields) is the data structure which represents a shopping cart and contains all information pertaining to it. Hence, the `orderFormId` is the identification code of a given cart.\n\r\n\r> This request has a time out of 12 seconds.\r\n\r\n>⚠️ The authentication of this endpoint can change depending on the customer context. If you are modifying information from a customer with a complete profile on the store, the response will return the customer's data masked. You can only access the customer data with an authenticated request.\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: AddClientProfile security: [] parameters: - $ref: '#/components/parameters/Content-Type' - $ref: '#/components/parameters/Accept' - name: orderFormId in: path description: ID of the orderForm that will receive client profile information. required: true style: simple schema: type: string example: ede846222cd44046ba6c638442c3505a requestBody: content: application/json: schema: type: object description: Customer's profile information. required: - email - firstName - lastName - documentType - document 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: Set `true` if the customer is a legal entity. example: false required: true responses: '200': description: OK content: application/json: example: orderFormId: 9ceee0fde6db489fbc809a0e2ab13a86 salesChannel: '1' loggedIn: false isCheckedIn: false storeId: '1' checkedInPickupPointId: '21' allowManualPrice: false canEditData: true userProfileId: fb542e51-5488-4c34-8d17-ed8fcf597a94 userType: User type ignoreProfileData: false value: 0 messages: [] items: [] selectableGifts: [] totalizers: [] shippingData: null clientProfileData: email: clark.kent@examplemail.com firstName: Clark lastName: Kent document: '44444444444' documentType: cpf phone: '+5511123456789' corporateName: company-name tradeName: trade-name corporateDocument: '12345678000100' stateInscription: '12345678' corporatePhone: '551100988887777' isCorporate: false profileCompleteOnLoading: false profileErrorOnLoading: false customerClass: null paymentData: updateStatus: updated installmentOptions: [] paymentSystems: [] payments: - paymentSystem: 6 bin: null accountId: '12' tokenId: null value: 34390 referenceValue: 34390 giftCardRedemptionCode: null giftCardProvider: null giftCardId: null giftCards: [] giftCardMessages: [] availableAccounts: [] availableTokens: [] marketingData: null sellers: [] clientPreferencesData: locale: pt-BR optinNewsLetter: null commercialConditionData: null storePreferencesData: countryCode: BRA saveUserData: true timeZone: E. South America Standard Time currencyCode: BRL currencyLocale: 1046 currencySymbol: R$ currencyFormatInfo: currencyDecimalDigits: 2 currencyDecimalSeparator: ',' currencyGroupSeparator: . currencyGroupSize: 3 startsWithCurrencySymbol: true giftRegistryData: null openTextField: null invoiceData: null customData: null itemMetadata: items: - id: '1' seller: '1' name: Ração Royal Canin Feline Urinary 500g skuName: Ração Royal Canin Feline Urinary 500g productId: '1' refId: '0001' ean: '123456789' imageUrl: http://lojadobreno.vteximg.com.br/arquivos/ids/155450-55-55/Racao-Royal-Canin-Feline-Urinary-SO.jpg?v=637139444438700000 detailUrl: /racao-royal-canin-feline-urinary/p assemblyOptions: [] hooksData: null ratesAndBenefitsData: rateAndBenefitsIdentifiers: [] teaser: [] subscriptionData: null itemsOrdination: criteria: NAME ascending: true schema: $ref: '#/components/schemas/orderForm' deprecated: false /api/checkout/pub/orderForm/{orderFormId}/attachments/shippingData: post: tags: - Cart Attachments summary: VTex Add shipping address and select delivery option description: "Use this request to include shipping information and/or selected delivery option to a given shopping cart.\r\n\r\nTo add shipping addresses send the `selectedAddresses` array. For delivery option use the `logisticsInfo` array.\r\n\r\nThe [orderForm](https://developers.vtex.com/docs/guides/orderform-fields) is the data structure which represents a shopping cart and contains all information pertaining to it. Hence, the `orderFormId` is the identification code of a given cart.\n\r\n\r> This request has a time out of 12 seconds.\r\n\r\n>⚠️ The authentication of this endpoint can change depending on the customer context. If you are modifying information from a customer with a complete profile on the store, the response will return the customer's data masked. You can only access the customer data with an authenticated request.\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: AddShippingAddress security: [] parameters: - $ref: '#/components/parameters/Content-Type' - $ref: '#/components/parameters/Accept' - name: orderFormId in: path description: ID of the orderForm that will receive client profile information. required: true style: simple schema: type: string example: ede846222cd44046ba6c638442c3505a requestBody: content: application/json: schema: type: object properties: clearAddressIfPostalCodeNotFound: type: boolean description: This field should be sent as `false` to prevent the address information from being filled in automatically based on the `postalCode` information. example: false selectedAddresses: type: array description: List of objects with addresses information. items: type: object description: Address information. 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: c3701fc4c61b4d1b91f67e81415db44d 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: RJ 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. logisticsInfo: type: array description: Array with logistics information on each item of the `items` array in the `orderForm`. items: type: object description: Logistic information. properties: itemIndex: type: integer description: Index of item in items array. example: 0 selectedDeliveryChannel: type: string description: Delivery channel selected by the customer. For example, `"delivery"` or `"pickup-in-point"`. example: delivery nullable: true selectedSla: type: string description: Selected SLA. For example, `"normal"` or `"express"`. example: normal nullable: true required: true responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/orderForm' example: orderFormId: 2f586e50342a4f87b7e0654c56299e88 salesChannel: '1' loggedIn: false isCheckedIn: false storeId: '1' checkedInPickupPointId: '21' allowManualPrice: false canEditData: true userProfileId: fb542e51-5488-4c34-8d17-ed8fcf597a94 userType: User type ignoreProfileData: false value: 0 messages: [] items: [] selectableGifts: [] totalizers: [] shippingData: address: addressType: residential receiverName: Clark Kent addressId: c3701fc4c61b4d1b91f67e81415db44d isDisposable: true postalCode: '12345000' city: Rio de Janeiro state: ST country: BRA street: My street number: '1091' neighborhood: My neighborhood complement: null reference: null geoCoordinates: [] logisticsInfo: - itemIndex: 0 selectedSla: Normal selectedDeliveryChannel: delivery addressId: f239ad30f8c948a382543ab2c739b967 slas: - id: Retirada (VTEXSP) deliveryChannel: pickup-in-point name: Retirada (VTEXSP) deliveryIds: - courierId: 1ee17c2 warehouseId: '1_1' dockId: '1' courierName: Retira em Loja quantity: 2 kitItemDetails: [] shippingEstimate: 3bd shippingEstimateDate: null lockTTL: null availableDeliveryWindows: startDateUtc: '2017-03-27T00:00:00+00:00' endDateUtc: '2017-03-27T00:00:00+00:00' price: 0 lisPrice: 0 tax: 0 deliveryWindow: startDateUtc: '2014-04-21T09:00:00+00:00' endDateUtc: '2014-04-21T12:00:00+00:00' price: 0 listprice: 1000 tax: 0 price: 250 listPrice: 250 tax: 0 pickupStoreInfo: isPickupStore: true friendlyName: VTEX SP address: addressType: pickup receiverName: Clark Kent addressId: VTEXSP isDisposable: true postalCode: 04538-132 city: São Paulo state: SP country: BRA street: Avenida Brigadeiro Faria Lima number: '4440' neighborhood: Itaim Bibi complement: Apto 101 reference: null geoCoordinates: - -47.924747467041016 - -15.832582473754883 additionalInfo: Additional info dockId: '1' pickupPointId: 1_VTEXSP pickupDistance: 15 polygonName: null transitTime: 3bd shipsTo: - BRA - COL - USA itemId: '2' deliveryChannels: - id: pickup-in-point - id: delivery selectedAddresses: - addressType: residential receiverName: Clark Kent addressId: c3701fc4c61b4d1b91f67e81415db44d isDisposable: true postalCode: '12345000' city: Rio de Janeiro state: ST country: BRA street: My street number: '1091' neighborhood: My neighborhood complement: null reference: null geoCoordinates: [] availableAddresses: - addressType: residential receiverName: Clark Kent addressId: ae3173b32bf64663a81fc42b057be211 isDisposable: true postalCode: '70386060' city: Brasília state: DF country: BRA street: Quadra SQS 116 Bloco F number: '101' neighborhood: Asa Sul complement: null reference: null geoCoordinates: - -47.92592239379883 - -15.832707405090332 - addressType: residential receiverName: Clark Kent addressId: 449dcbe11c5844098fb4545a49cf6e07 isDisposable: true postalCode: '00076555' city: Brasília state: DF country: BRA street: My street number: '101' neighborhood: Asa sul complement: null reference: null geoCoordinates: [] - addressType: residential receiverName: Clark Kent addressId: c3701fc4c61b4d1b91f67e81415db44d isDisposable: true postalCode: '12345000' city: Rio de Janeiro state: ST country: BRA street: My street number: '1091' neighborhood: My neighborhood complement: null reference: null geoCoordinates: [] pickupPoints: [] 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 paymentData: updateStatus: updated installmentOptions: [] paymentSystems: [] payments: - paymentSystem: 6 bin: null accountId: '12' tokenId: null value: 34390 referenceValue: 34390 giftCardRedemptionCode: null giftCardProvider: null giftCardId: null giftCards: [] giftCardMessages: [] availableAccounts: [] availableTokens: [] marketingData: null sellers: [] clientPreferencesData: locale: pt-BR optinNewsLetter: false commercialConditionData: null storePreferencesData: countryCode: BRA saveUserData: true timeZone: E. South America Standard Time currencyCode: BRL currencyLocale: 1046 currencySymbol: R$ currencyFormatInfo: currencyDecimalDigits: 2 currencyDecimalSeparator: ',' currencyGroupSeparator: . currencyGroupSize: 3 startsWithCurrencySymbol: true giftRegistryData: null openTextField: null invoiceData: null customData: null itemMetadata: items: - id: '1' seller: '1' name: Ração Royal Canin Feline Urinary 500g skuName: Ração Royal Canin Feline Urinary 500g productId: '1' refId: '0001' ean: '123456789' imageUrl: http://lojadobreno.vteximg.com.br/arquivos/ids/155450-55-55/Racao-Royal-Canin-Feline-Urinary-SO.jpg?v=637139444438700000 detailUrl: /racao-royal-canin-feline-urinary/p assemblyOptions: [] hooksData: null ratesAndBenefitsData: rateAndBenefitsIdentifiers: [] teaser: [] subscriptionData: null itemsOrdination: criteria: NAME ascending: true deprecated: false /api/checkout/pub/orderForm/{orderFormId}/attachments/clientPreferencesData: post: tags: - Cart Attachments summary: VTex Add client preferences description: "Use this request to include client preferences information to a given shopping cart.\r\n\r\nThe [orderForm](https://developers.vtex.com/docs/guides/orderform-fields) is the data structure which represents a shopping cart and contains all information pertaining to it. Hence, the `orderFormId` is the identification code of a given cart.\n\r\n\r> This request has a time out of 12 seconds.\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: AddClientPreferences security: [] parameters: - $ref: '#/components/parameters/Content-Type' - $ref: '#/components/parameters/Accept' - name: orderFormId in: path description: ID of the orderForm that will receive client profile information. required: true style: simple schema: type: string example: ede846222cd44046ba6c638442c3505a requestBody: content: application/json: schema: type: object properties: locale: type: string description: Locale chosen by the shopper. Determines website language. example: EN optinNewsLetter: type: boolean description: Indicates whether the shopper opted in to receive the store's news letter. example: false nullable: true required: true responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/orderForm' example: orderFormId: a7e4702410864239959f9bdcf77e3fba salesChannel: '1' loggedIn: false isCheckedIn: false storeId: '1' checkedInPickupPointId: '21' allowManualPrice: false canEditData: true userProfileId: fb542e51-5488-4c34-8d17-ed8fcf597a94 userType: User type ignoreProfileData: false value: 0 messages: [] items: [] selectableGifts: [] totalizers: [] shippingData: null clientProfileData: null paymentData: updateStatus: updated installmentOptions: [] paymentSystems: [] payments: - paymentSystem: 6 bin: null accountId: '12' tokenId: null value: 34390 referenceValue: 34390 giftCardRedemptionCode: null giftCardProvider: null giftCardId: null giftCards: [] giftCardMessages: [] availableAccounts: [] availableTokens: [] marketingData: null sellers: [] clientPreferencesData: locale: PT optinNewsLetter: false commercialConditionData: null storePreferencesData: countryCode: BRA saveUserData: true timeZone: E. South America Standard Time currencyCode: BRL currencyLocale: 1046 currencySymbol: R$ currencyFormatInfo: currencyDecimalDigits: 2 currencyDecimalSeparator: ',' currencyGroupSeparator: . currencyGroupSize: 3 startsWithCurrencySymbol: true giftRegistryData: null openTextField: null invoiceData: null customData: null itemMetadata: items: - id: '1' seller: '1' name: Ração Royal Canin Feline Urinary 500g skuName: Ração Royal Canin Feline Urinary 500g productId: '1' refId: '0001' ean: '123456789' imageUrl: http://lojadobreno.vteximg.com.br/arquivos/ids/155450-55-55/Racao-Royal-Canin-Feline-Urinary-SO.jpg?v=637139444438700000 detailUrl: /racao-royal-canin-feline-urinary/p assemblyOptions: [] hooksData: null ratesAndBenefitsData: rateAndBenefitsIdentifiers: [] teaser: [] subscriptionData: null itemsOrdination: criteria: NAME ascending: true deprecated: false /api/checkout/pub/orderForm/{orderFormId}/attachments/marketingData: post: tags: - Cart Attachments summary: VTex Add marketing data description: "Use this request to include marketing information to a given shopping cart.\r\n\r\nThe [orderForm](https://developers.vtex.com/docs/guides/orderform-fields) is the data structure which represents a shopping cart and contains all information pertaining to it. Hence, the `orderFormId` is the identification code of a given cart.\n\r\n\r> This request has a time out of 12 seconds.\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: AddMarketingData security: [] parameters: - $ref: '#/components/parameters/Content-Type' - $ref: '#/components/parameters/Accept' - name: orderFormId in: path description: ID of the orderForm that will receive client profile information. required: true style: simple schema: type: string example: ede846222cd44046ba6c638442c3505a requestBody: content: application/json: schema: type: object 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.\n\r\n\rTo send more than one coupon code to the same cart, use commas. E.g.`\"sales25, blackfriday30\"`." example: free-shipping marketingTags: type: array description: Marketing tags. Limited to a maximum of 50 items. items: type: string description: Marketing tag. example: tag1 example: - tag1 - tag2 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 required: true responses: '200': description: OK content: application/json: example: orderFormId: 7c5b47971fad41b89102c7ab7bb8b08b salesChannel: '1' loggedIn: false isCheckedIn: false storeId: '1' checkedInPickupPointId: '21' allowManualPrice: false canEditData: true userProfileId: fb542e51-5488-4c34-8d17-ed8fcf597a94 userType: User type ignoreProfileData: false value: 0 messages: [] items: [] selectableGifts: [] totalizers: [] shippingData: null clientProfileData: null paymentData: updateStatus: updated installmentOptions: [] paymentSystems: [] payments: - paymentSystem: 6 bin: null accountId: '12' tokenId: null value: 34390 referenceValue: 34390 giftCardRedemptionCode: null giftCardProvider: null giftCardId: null giftCards: [] giftCardMessages: [] availableAccounts: [] availableTokens: [] marketingData: utmSource: app utmMedium: CPC utmCampaign: Black friday utmipage: null utmiPart: null utmiCampaign: null coupon: free-shipping marketingTags: - tag1 - tag2 sellers: [] clientPreferencesData: locale: pt-BR optinNewsLetter: null commercialConditionData: null storePreferencesData: countryCode: BRA saveUserData: true timeZone: E. South America Standard Time currencyCode: BRL currencyLocale: 1046 currencySymbol: R$ currencyFormatInfo: currencyDecimalDigits: 2 currencyDecimalSeparator: ',' currencyGroupSeparator: . currencyGroupSize: 3 startsWithCurrencySymbol: true giftRegistryData: null openTextField: null invoiceData: null customData: null itemMetadata: items: - id: '1' seller: '1' name: Ração Royal Canin Feline Urinary 500g skuName: Ração Royal Canin Feline Urinary 500g productId: '1' refId: '0001' ean: '123456789' imageUrl: http://lojadobreno.vteximg.com.br/arquivos/ids/155450-55-55/Racao-Royal-Canin-Feline-Urinary-SO.jpg?v=637139444438700000 detailUrl: /racao-royal-canin-feline-urinary/p assemblyOptions: [] hooksData: null ratesAndBenefitsData: rateAndBenefitsIdentifiers: [] teaser: [] subscriptionData: null itemsOrdination: criteria: NAME ascending: true schema: $ref: '#/components/schemas/orderForm' deprecated: false /api/checkout/pub/orderForm/{orderFormId}/attachments/paymentData: post: tags: - Cart Attachments summary: VTex Add payment data description: "Use this request to include payment information to a given shopping cart. The payment information attachment in the shopping cart does not determine the final order payment method in itself. However, it allows tha platform to update any relevant information that may be impacted by the payment method.\r\n\r\nThe [orderForm](https://developers.vtex.com/docs/guides/orderform-fields) is the data structure which represents a shopping cart and contains all information pertaining to it. Hence, the `orderFormId` is the identification code of a given cart.\n\r\n\r> This request has a time out of 12 seconds.\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: AddPaymentData security: [] parameters: - $ref: '#/components/parameters/Content-Type' - $ref: '#/components/parameters/Accept' - name: orderFormId in: path description: ID of the orderForm that will receive client profile information. required: true style: simple schema: type: string example: ede846222cd44046ba6c638442c3505a requestBody: content: application/json: schema: type: object properties: payments: type: array description: Array with information on each payment chosen by the shopper. items: type: object description: Payment information. properties: paymentSystem: type: integer description: Payment system ID. example: 1 paymentSystemName: type: string description: Payment system name. example: Boleto Bancário group: type: string description: Payment system group. example: bankInvoicePaymentGroup installments: type: integer description: Selected number of installments. example: 1 installmentsInterestRate: type: number description: Installments' interest rate. example: 0 installmentsValue: type: integer description: Value of the installments. example: 1 value: type: integer description: Total value assigned to this payment. example: 100 referenceValue: type: integer description: Reference value used to calculate total order value with interest. example: 100 hasDefaultBillingAddress: type: boolean description: Indicates whether billing address for this payment is the default address. example: false required: true responses: '200': description: OK content: application/json: example: orderFormId: 29154e27383145cc8ce1f7a1df0d99c4 salesChannel: '1' loggedIn: false isCheckedIn: false storeId: '1' checkedInPickupPointId: '21' allowManualPrice: false canEditData: true userProfileId: fb542e51-5488-4c34-8d17-ed8fcf597a94 userType: User type ignoreProfileData: false value: 65780 messages: [] items: - uniqueId: 3CBFA140CE8F4E208062FC15CE9ED8D3 id: '2' productId: '2' productRefId: '1' refId: CBC30L ean: null name: Chopp Claro 30L skuName: Chopp Claro 30L modalType: null parentItemIndex: null parentAssemblyBinding: null assemblies: [] priceValidUntil: '2022-07-28T22:25:25Z' tax: 0 price: 32890 listPrice: 49900 manualPrice: null manualPriceAppliedBy: null sellingPrice: 32890 rewardValue: 0 isGift: false additionalInfo: dimension: null brandName: Beershow brandId: '2000000' offeringInfo: null offeringType: null offeringTypeId: null preSaleDate: null productCategoryIds: /1/ productCategories: '1': Bebidas quantity: 2 seller: '1' sellerChain: - '1' imageUrl: http://myshop.vteximg.com.br/arquivos/ids/155400-55-55/30l_v2.png?v=637303412106100000 detailUrl: /chopp-claro-30l/p components: [] bundleItems: [] attachments: [] attachmentOfferings: [] offerings: [] priceTags: [] availability: available measurementUnit: un unitMultiplier: 1 manufacturerCode: null priceDefinition: calculatedSellingPrice: 32890 total: 65780 sellingPrices: - value: 32890 quantity: 2 selectableGifts: [] totalizers: - id: Items name: Total dos Itens value: 65780 shippingData: address: null logisticsInfo: - itemIndex: 0 selectedSla: Normal selectedDeliveryChannel: delivery addressId: 666c2e830bd9474ab6f6cc53fb6dd2d2 slas: [] shipsTo: - BRA - COL - USA itemId: '2' deliveryChannels: - id: delivery - id: pickup-in-point selectedAddresses: [] availableAddresses: [] pickupPoints: [] clientProfileData: null paymentData: updateStatus: updated installmentOptions: - paymentSystem: 2 bin: null paymentName: null paymentGroupName: null value: 65780 installments: - count: 1 hasInterestRate: false interestRate: 0 value: 65780 total: 65780 sellerMerchantInstallments: - id: MYSHOP count: 1 hasInterestRate: false interestRate: 0 value: 65780 total: 65780 - paymentSystem: 4 bin: null paymentName: null paymentGroupName: null value: 65780 installments: - count: 1 hasInterestRate: false interestRate: 0 value: 65780 total: 65780 sellerMerchantInstallments: - id: MYSHOP count: 1 hasInterestRate: false interestRate: 0 value: 65780 total: 65780 - paymentSystem: 6 bin: null paymentName: null paymentGroupName: null value: 65780 installments: - count: 1 hasInterestRate: false interestRate: 0 value: 65780 total: 65780 sellerMerchantInstallments: - id: MYSHOP count: 1 hasInterestRate: false interestRate: 0 value: 65780 total: 65780 paymentSystems: - id: 2 name: Visa groupName: creditCardPaymentGroup validator: regex: ^4[0-9]{15}$ mask: 9999 9999 9999 9999 cardCodeRegex: ^[0-9]{3}$ cardCodeMask: '999' weights: - 2 - 1 - 2 - 1 - 2 - 1 - 2 - 1 - 2 - 1 - 2 - 1 - 2 - 1 - 2 - 1 - 2 - 1 - 2 useCvv: true useExpirationDate: true useCardHolderName: true useBillingAddress: true stringId: '2' template: creditCardPaymentGroup-template requiresDocument: false isCustom: false description: Payment description requiresAuthentication: false dueDate: '2021-08-04T22:19:04.9948627Z' availablePayments: null - id: 4 name: Mastercard groupName: creditCardPaymentGroup validator: regex: ^((5(([1-2]|[4-5])[0-9]{8}|0((1|6)([0-9]{7}))|3(0(4((0|[2-9])[0-9]{5})|([0-3]|[5-9])[0-9]{6})|[1-9][0-9]{7})))|((508116)\d{4,10})|((502121)\d{4,10})|((589916)\d{4,10})|(2[0-9]{15})|(67[0-9]{14})|(506387)\d{4,10}) mask: 9999 9999 9999 9999 cardCodeRegex: ^[0-9]{3}$ cardCodeMask: '999' weights: - 2 - 1 - 2 - 1 - 2 - 1 - 2 - 1 - 2 - 1 - 2 - 1 - 2 - 1 - 2 - 1 - 2 - 1 - 2 useCvv: true useExpirationDate: true useCardHolderName: true useBillingAddress: true stringId: '4' template: creditCardPaymentGroup-template requiresDocument: false isCustom: false description: Payment description requiresAuthentication: false dueDate: '2021-08-04T22:19:04.9948627Z' availablePayments: null - id: 6 name: Boleto Bancário groupName: bankInvoicePaymentGroup validator: regex: ^((5(([1-2]|[4-5])[0-9]{8}|0((1|6)([0-9]{7}))|3(0(4((0|[2-9])[0-9]{5})|([0-3]|[5-9])[0-9]{6})|[1-9][0-9]{7})))|((508116)\d{4,10})|((502121)\d{4,10})|((589916)\d{4,10})|(2[0-9]{15})|(67[0-9]{14})|(506387)\d{4,10}) mask: 9999 9999 9999 9999 cardCodeRegex: ^[0-9]{3}$ cardCodeMask: '999' weights: - 2 - 1 - 2 - 1 - 2 - 1 - 2 - 1 - 2 - 1 - 2 - 1 - 2 - 1 - 2 - 1 - 2 - 1 - 2 useCvv: true useExpirationDate: true useCardHolderName: true useBillingAddress: true stringId: '6' template: bankInvoicePaymentGroup-template requiresDocument: false isCustom: false description: Payment description requiresAuthentication: false dueDate: '2021-08-04T22:19:04.9948627Z' availablePayments: null payments: - paymentSystem: 6 bin: null accountId: '12' tokenId: null installments: 1 referenceValue: 65780 value: 65780 merchantSellerPayments: - id: MYSHOP installments: 1 referenceValue: 65780 value: 65780 interestRate: 0 installmentValue: 65780 giftCards: [] giftCardMessages: [] availableAccounts: [] availableTokens: [] marketingData: null sellers: - id: '1' name: My Seller logo: Logo clientPreferencesData: locale: pt-BR optinNewsLetter: null commercialConditionData: null storePreferencesData: countryCode: BRA saveUserData: true timeZone: E. South America Standard Time currencyCode: BRL currencyLocale: 1046 currencySymbol: R$ currencyFormatInfo: currencyDecimalDigits: 2 currencyDecimalSeparator: ',' currencyGroupSeparator: . currencyGroupSize: 3 startsWithCurrencySymbol: true giftRegistryData: null openTextField: null invoiceData: null customData: null itemMetadata: items: - id: '2' seller: '1' name: Chopp Claro 30L skuName: Chopp Claro 30L productId: '2' refId: CBC30L ean: null imageUrl: http://myshop.vteximg.com.br/arquivos/ids/155400-55-55/30l_v2.png?v=637303412106100000 detailUrl: /chopp-claro-30l/p assemblyOptions: [] hooksData: null ratesAndBenefitsData: rateAndBenefitsIdentifiers: [] teaser: [] subscriptionData: null itemsOrdination: criteria: NAME ascending: true schema: $ref: '#/components/schemas/orderForm' deprecated: false /api/checkout/pub/orderForm/{orderFormId}/attachments/merchantContextData: post: tags: - Cart Attachments summary: VTex Add merchant context data description: "This endpoint is used for the merchant to add to the cart any relevant information that is related to the context of a specific order.\r\n\r\nThe [orderForm](https://developers.vtex.com/docs/guides/orderform-fields) is the data structure which represents a shopping cart and contains all information pertaining to it. Hence, the `orderFormId` is the identification code of a given cart.\n\r\n\r> This request has a time out of 12 seconds.\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: AddMerchantContextData security: [] parameters: - $ref: '#/components/parameters/Content-Type' - $ref: '#/components/parameters/Accept' - name: orderFormId in: path description: ID of the orderForm that will receive the relevant information added by the merchant. required: true style: simple schema: type: string example: 29154e27383145cc8ce1f7a1df0d99c4 requestBody: content: application/json: schema: type: object required: - salesAssociateData properties: 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 required: true responses: '200': description: OK content: application/json: schema: type: object properties: salesAssociateId: type: string description: Sales Associate (Seller) identification code. example: salesAssociateData: salesAssociateId: seller123 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.'