diff --git a/PostmanCollections/VTEX - Antifraud Provider API.json b/PostmanCollections/VTEX - Antifraud Provider API.json index 71fb04d4d..3b78357e4 100644 --- a/PostmanCollections/VTEX - Antifraud Provider API.json +++ b/PostmanCollections/VTEX - Antifraud Provider API.json @@ -1,10 +1,10 @@ { "_": { - "postman_id": "8d657a1f-c174-4213-9d9b-a3ca57682045" + "postman_id": "18cfb68d-7778-420d-bb3b-19e47b8d03d9" }, "item": [ { - "id": "7f867837-c561-4df1-9744-19da57599df2", + "id": "0069de79-3a2c-410d-9d4d-a52d3d6d60c2", "name": "Anti-fraud Flow", "description": { "content": "", @@ -12,7 +12,7 @@ }, "item": [ { - "id": "6c7eb1d9-8234-4e9c-a34d-d329b37e7694", + "id": "50030a5f-f1a7-46b8-870c-beb77b859dbd", "name": "Send anti-fraud pre-analysis data (optional)", "request": { "name": "Send anti-fraud pre-analysis data (optional)", @@ -113,7 +113,7 @@ "_": { "postman_previewlanguage": "json" }, - "id": "a48ab1e7-017b-4799-8025-4436d8be8ee1", + "id": "b50d39f8-0b70-46f9-8008-02f7b5596770", "name": "OK", "originalRequest": { "url": { @@ -208,7 +208,7 @@ { "listen": "test", "script": { - "id": "4557d9c5-c62a-4161-b734-ded33f992023", + "id": "bf7e5b3c-0e11-4943-8aee-84e6d82aad6c", "type": "text/javascript", "exec": [ "// Validate status 2xx \npm.test(\"[POST]::/pre-analysis - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", @@ -224,7 +224,7 @@ } }, { - "id": "a192fea7-c09f-4971-91fb-5846ce6652c0", + "id": "154f9eed-6e03-43d5-a378-f9dfa9395d94", "name": "Send anti-fraud data", "request": { "name": "Send anti-fraud data", @@ -325,7 +325,7 @@ "_": { "postman_previewlanguage": "json" }, - "id": "5c508581-b7c5-4db6-a9ca-fefa2e33e78f", + "id": "fb8ba722-f04e-4211-ba6c-0032408cf133", "name": "OK", "originalRequest": { "url": { @@ -420,7 +420,7 @@ { "listen": "test", "script": { - "id": "46b0abad-6946-48f4-9e08-11546d88095c", + "id": "34fea2c7-9608-4d93-a226-89361e5ae2f8", "type": "text/javascript", "exec": [ "// Validate status 2xx \npm.test(\"[POST]::/transactions - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", @@ -436,7 +436,7 @@ } }, { - "id": "e34a1838-c2cc-4bd9-9c27-a60dda75532b", + "id": "a4667d73-cd7e-4702-8e30-aef901059362", "name": "Update anti-fraud transactions (optional)", "request": { "name": "Update anti-fraud transactions (optional)", @@ -553,7 +553,7 @@ "_": { "postman_previewlanguage": "json" }, - "id": "8c898370-76b2-44c4-b02f-687fb83349cc", + "id": "9d04b05d-04fc-4976-8e96-cc07eec3f335", "name": "OK", "originalRequest": { "url": { @@ -649,7 +649,7 @@ { "listen": "test", "script": { - "id": "6e4184af-e75d-45b5-a2df-e89a5a6c892d", + "id": "a075f361-117a-4388-ab39-2c94c9481f20", "type": "text/javascript", "exec": [ "// Validate status 2xx \npm.test(\"[PUT]::/transactions/:transactionId - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", @@ -665,7 +665,7 @@ } }, { - "id": "5e61c955-875a-48ce-8cfd-ecf07f8ccb87", + "id": "a83177d0-7b15-4079-9995-f7b957adbe5b", "name": "List anti-fraud provider manifest", "request": { "name": "List anti-fraud provider manifest", @@ -715,7 +715,7 @@ "_": { "postman_previewlanguage": "json" }, - "id": "56ee9e61-74e7-49ab-91e1-f76d02116112", + "id": "791e0b72-89c1-46e6-bbed-5966f926c5dd", "name": "OK", "originalRequest": { "url": { @@ -763,7 +763,7 @@ "value": "application/json" } ], - "body": "{\n \"cardholderDocument\": \"required\",\n \"customFields\": [\n {\n \"name\": \"AnalysisMode\",\n \"type\": \"text\"\n },\n {\n \"name\": \"Client secret\",\n \"type\": \"password\"\n },\n {\n \"name\": \"AnalysisLocation\",\n \"type\": \"select\",\n \"options\": [\n {\n \"text\": \"MEX\",\n \"value\": \"Latin America\"\n },\n {\n \"text\": \"USA\",\n \"value\": \"United States\"\n }\n ]\n }\n ]\n}", + "body": "{\n \"cardholderDocument\": \"required\",\n \"allowAntifraudOnGiftCard\": true,\n \"customFields\": [\n {\n \"name\": \"AnalysisMode\",\n \"type\": \"text\"\n },\n {\n \"name\": \"Client secret\",\n \"type\": \"password\"\n },\n {\n \"name\": \"AnalysisLocation\",\n \"type\": \"select\",\n \"options\": [\n {\n \"text\": \"MEX\",\n \"value\": \"Latin America\"\n },\n {\n \"text\": \"USA\",\n \"value\": \"United States\"\n }\n ]\n }\n ]\n}", "cookie": [] } ], @@ -771,13 +771,13 @@ { "listen": "test", "script": { - "id": "f7da537b-59e1-4dd0-91f2-95ebd89012c8", + "id": "a36d0930-29df-46d8-b28f-dbb5728bdcd5", "type": "text/javascript", "exec": [ "// Validate status 2xx \npm.test(\"[GET]::/manifest - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", "// Validate if response header has matching content-type\npm.test(\"[GET]::/manifest - Content-Type is application/json\", function () {\n pm.expect(pm.response.headers.get(\"Content-Type\")).to.include(\"application/json\");\n});\n", "// Validate if response has JSON Body \npm.test(\"[GET]::/manifest - Response has JSON Body\", function () {\n pm.response.to.have.jsonBody();\n});\n", - "// Response Validation\nconst schema = {\"required\":[\"customFields\"],\"type\":\"object\",\"description\":\"Custom fields information.\",\"properties\":{\"cardholderDocument\":{\"type\":\"string\",\"description\":\"Indicates the requirement of cardholder document in card transactions. The field has three possible values: `required`, `optional`, or `unused`.\"},\"customFields\":{\"type\":\"array\",\"description\":\"Describes the customized fields supported by the connector.\",\"items\":{\"type\":\"object\",\"description\":\"Custom fields information.\",\"properties\":{\"name\":{\"type\":\"string\",\"description\":\"Custom field name.\"},\"type\":{\"type\":\"string\",\"description\":\"Custom field type. Sensitive or security data should be defined as `password`\",\"enum\":[\"text\",\"password\",\"select\"]},\"options\":{\"type\":\"array\",\"description\":\"In case of `select` type, the possible params are `text` and `value`.\",\"items\":{\"type\":\"object\",\"description\":\"Custom field information.\",\"properties\":{\"text\":{\"type\":\"string\",\"description\":\"Custom field description.\"},\"value\":{\"type\":\"string\",\"description\":\"Custom field value.\"}}}}}}}}}\n\n// Validate if response matches JSON schema \npm.test(\"[GET]::/manifest - Schema is valid\", function() {\n pm.response.to.have.jsonSchema(schema,{unknownFormats: [\"int32\", \"int64\", \"float\", \"double\"]});\n});\n" + "// Response Validation\nconst schema = {\"required\":[\"customFields\"],\"type\":\"object\",\"description\":\"Custom fields information.\",\"properties\":{\"cardholderDocument\":{\"type\":\"string\",\"description\":\"Indicates the requirement of cardholder document in card transactions. The field has three possible values: `required`, `optional`, or `unused`.\"},\"allowAntifraudOnGiftCard\":{\"type\":\"boolean\",\"description\":\"Indicates whether the anti-fraud provider can process payment transactions made using gift cards.\"},\"customFields\":{\"type\":\"array\",\"description\":\"Describes the customized fields supported by the connector.\",\"items\":{\"type\":\"object\",\"description\":\"Custom fields information.\",\"properties\":{\"name\":{\"type\":\"string\",\"description\":\"Custom field name.\"},\"type\":{\"type\":\"string\",\"description\":\"Custom field type. Sensitive or security data should be defined as `password`.\",\"enum\":[\"text\",\"password\",\"select\"]},\"options\":{\"type\":\"array\",\"description\":\"In case of `select` type, the possible params are `text` and `value`.\",\"items\":{\"type\":\"object\",\"description\":\"Custom field information.\",\"properties\":{\"text\":{\"type\":\"string\",\"description\":\"Custom field description.\"},\"value\":{\"type\":\"string\",\"description\":\"Custom field value.\"}}}}}}}}}\n\n// Validate if response matches JSON schema \npm.test(\"[GET]::/manifest - Schema is valid\", function() {\n pm.response.to.have.jsonSchema(schema,{unknownFormats: [\"int32\", \"int64\", \"float\", \"double\"]});\n});\n" ] } } @@ -787,7 +787,7 @@ } }, { - "id": "572fb6a0-4b04-45ba-8538-7a0f02864746", + "id": "8ed1d9e3-8253-4881-9782-e45ddd26372e", "name": "Get anti-fraud status", "request": { "name": "Get anti-fraud status", @@ -891,7 +891,7 @@ "_": { "postman_previewlanguage": "json" }, - "id": "5b047ceb-785a-4d91-96ff-620de48861d2", + "id": "d25fd4b9-40da-416e-9765-16b690a494e6", "name": "OK", "originalRequest": { "url": { @@ -974,7 +974,7 @@ { "listen": "test", "script": { - "id": "d1d8359c-29a8-4c51-a3a9-770e5eec6b89", + "id": "fbcd603e-d5bb-4b63-9e23-33e9497cbd98", "type": "text/javascript", "exec": [ "// Validate status 2xx \npm.test(\"[GET]::/transactions/:transactions.id - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", @@ -990,7 +990,7 @@ } }, { - "id": "f0f6745c-2742-45b8-a1ba-615987c6ca4e", + "id": "b3e6ed15-1a76-4b73-9762-c8b5810cb110", "name": "Stop anti-fraud analysis (optional)", "request": { "name": "Stop anti-fraud analysis (optional)", @@ -1094,7 +1094,7 @@ "_": { "postman_previewlanguage": "json" }, - "id": "135f7b14-a49b-4088-b5c0-2750e9a03eb8", + "id": "70ffc9c7-7927-4fe3-aad7-d2c886edce14", "name": "OK", "originalRequest": { "url": { @@ -1177,7 +1177,7 @@ { "listen": "test", "script": { - "id": "f4df1946-6ec6-40fe-af9d-9d6e10216384", + "id": "0b36d805-b8c3-4cde-abac-d2a0dc8edc4c", "type": "text/javascript", "exec": [ "// Validate status 2xx \npm.test(\"[DELETE]::/transactions/:transactions.Id - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", @@ -1196,7 +1196,7 @@ "event": [] }, { - "id": "99977d4c-bc42-4082-a1da-e9627e325266", + "id": "4fabcf4b-bef9-46c6-b448-57781a1e8a25", "name": "OAuth Flow", "description": { "content": "", @@ -1204,7 +1204,7 @@ }, "item": [ { - "id": "bb272269-9582-4ed8-ba32-3e4f076e6786", + "id": "6e9a5ad7-3faf-41c6-9e37-60dd0f69a1cb", "name": "1. Retrieve token", "request": { "name": "1. Retrieve token", @@ -1306,7 +1306,7 @@ "_": { "postman_previewlanguage": "json" }, - "id": "83c5db5a-fc36-48c8-bfbd-65e84fdc2c69", + "id": "63b60b62-c6fa-421f-bd0d-26940f4874be", "name": "OK", "originalRequest": { "url": { @@ -1402,7 +1402,7 @@ { "listen": "test", "script": { - "id": "3bc0969a-0d9a-4079-9c49-3178d193093d", + "id": "5836a4f3-33cf-4e7c-93e8-e21f00cad9a9", "type": "text/javascript", "exec": [ "// Validate status 2xx \npm.test(\"[POST]::/authorization/token - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", @@ -1418,7 +1418,7 @@ } }, { - "id": "97aed2a5-e705-4acb-8b3f-407dda4580e3", + "id": "1bec7005-85de-447d-8e4c-84ab66d14104", "name": "2. Redirect", "request": { "name": "2. Redirect", @@ -1521,7 +1521,7 @@ "_": { "postman_previewlanguage": "text" }, - "id": "d9ffcc9b-9080-4589-954a-7ebea2d93371", + "id": "dea0ed0b-f7c7-458f-85c3-e1ba02ec0535", "name": "OK. This endpoint does not return any data in the response body.", "originalRequest": { "url": { @@ -1612,7 +1612,7 @@ { "listen": "test", "script": { - "id": "bee2c9df-7eb4-48ec-8408-ac329e01d920", + "id": "d7a1a395-0df6-49d5-9eec-64aeda2c6886", "type": "text/javascript", "exec": [ "// Validate status 2xx \npm.test(\"[GET]::/redirect - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n" @@ -1625,7 +1625,7 @@ } }, { - "id": "7fe26d2a-ae9b-424d-9a69-14a234c4d6d8", + "id": "72935870-653f-4bc4-8833-4899f42cf8ae", "name": "3. Return to VTEX", "request": { "name": "3. Return to VTEX", @@ -1701,7 +1701,7 @@ "_": { "postman_previewlanguage": "text" }, - "id": "76d89ca4-d4ee-4db9-bc3a-0f1a1f8ac871", + "id": "2b3a1ee5-a9a5-408c-8d2d-d712066082f7", "name": "OK. This endpoint does not return any data in the response body.", "originalRequest": { "url": { @@ -1765,7 +1765,7 @@ { "listen": "test", "script": { - "id": "b50ee99a-460a-43c4-a08e-3e172ea425d3", + "id": "5fe24823-182e-45a0-8e0d-e06587eb144c", "type": "text/javascript", "exec": [ "// Validate status 2xx \npm.test(\"[GET]::/authorizationCode - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n" @@ -1778,7 +1778,7 @@ } }, { - "id": "c1a13842-59f3-48d8-b315-dceb582415ba", + "id": "7bb6adee-d43a-4ab2-8c26-7d2cecca52c9", "name": "4. Get credentials", "request": { "name": "4. Get credentials", @@ -1868,7 +1868,7 @@ "_": { "postman_previewlanguage": "json" }, - "id": "94642488-05f6-4789-8377-ae41e5bb8cd3", + "id": "5f27fcb3-107a-4239-9222-1836c1da7450", "name": "OK", "originalRequest": { "url": { @@ -1952,7 +1952,7 @@ { "listen": "test", "script": { - "id": "bd3a2550-19a8-4562-bce0-054d9f7e7a48", + "id": "5e003f42-9c67-49ae-88c9-e43246c99679", "type": "text/javascript", "exec": [ "// Validate status 2xx \npm.test(\"[GET]::/authorization/credentials - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", @@ -1985,7 +1985,7 @@ } ], "info": { - "_postman_id": "8d657a1f-c174-4213-9d9b-a3ca57682045", + "_postman_id": "18cfb68d-7778-420d-bb3b-19e47b8d03d9", "name": "Anti-fraud Provider API", "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json", "description": { diff --git a/PostmanCollections/VTEX - Marketplace APIs - Suggestions.json b/PostmanCollections/VTEX - Marketplace APIs - Suggestions.json index ea76af7a2..2c5479840 100644 --- a/PostmanCollections/VTEX - Marketplace APIs - Suggestions.json +++ b/PostmanCollections/VTEX - Marketplace APIs - Suggestions.json @@ -1,111 +1,101 @@ { "_": { - "postman_id": "437b69f6-ecd1-4e01-99ff-0d65b27a0aa4" + "postman_id": "2ad7a3e9-aca7-4156-b921-7edf011d0b7b" }, "item": [ { - "id": "c962f1eb-da4e-4b54-ada4-5c0cd0e6cf8b", - "name": "Get Suggestions", + "id": "dc0d8363-93bf-4b5e-a2e4-075ff462e240", + "name": "Get suggestions", "description": { "content": "Search and filter all suggestions using specific criteria.", "type": "text/plain" }, + "item": [], + "event": [] + }, + { + "id": "0dd098b4-4d25-419f-8de7-5799b4117672", + "name": "Manage suggestions", + "description": { + "content": "Send or delete SKU suggestions from the seller to marketplace.", + "type": "text/plain" + }, + "item": [], + "event": [] + }, + { + "id": "e40f481f-ddfb-45e2-878a-4955077b2fad", + "name": "Get versions", + "description": { + "content": "Search and filter all versions of suggestions, using specific criteria.", + "type": "text/plain" + }, + "item": [], + "event": [] + }, + { + "id": "01bbb8a9-d124-46e5-bd71-05d620dbd125", + "name": "SKU approval settings", + "description": { + "content": "", + "type": "text/plain" + }, + "item": [], + "event": [] + }, + { + "id": "c45126c8-e564-4006-adbe-b8d182c33051", + "name": "Match received SKUs", + "description": { + "content": "Match SKU suggestions received in the marketplace.", + "type": "text/plain" + }, + "item": [], + "event": [] + }, + { + "id": "3bcc2153-485c-4602-919b-872522bb9e84", + "name": "SKU Approval Settings", + "description": { + "content": "", + "type": "text/plain" + }, "item": [ { - "id": "3224e6d6-4b51-46cd-bc25-2b70585f8e9b", - "name": "Get all SKU suggestions", + "id": "a384d307-f1f4-468b-b3b4-444384918e48", + "name": "Get autoApprove status in account settings", "request": { - "name": "Get all SKU suggestions", + "name": "Get autoApprove status in account settings", "description": { - "content": "This endpoint retrieves a list of all SKUs sent by the seller for the Marketplace's approval. Marketplace operators should use this endpoint whenever they want to check the full list of received SKUs and their information. \n\nNote that all the information sent by the seller will be in the [content] object. All remaining information in this endpoint's response is given by the Matcher. \n\nMatcher rates received SKUs by correlating the data sent by sellers, to existing fields in the marketplace. The calculation of these scores determines whether the product has been: \n\n`Approved`: score equal to or greater than 80 points. \n\n`Pending`: from 31 to 79 points.\n\n`Denied`: from 0 to 30 points. \n\nNote that if the autoApprove setting is enabled, the SKUs will be approved, regardless of the Score.", + "content": "This endpoint can be used to check whether the autoapprove setting is active or not, for a specific seller. \n\nIf the response is `true`, the autoapprove setting is active. If the response is `false`, it is inactive.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/authentication-overview#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| Channels | UI resources | **Save suggestion rules** |\r\n| Suggestion| Suggestion resources | **Main 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.\r\n\r\nTo learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication-overview#machine-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.", "type": "text/plain" }, "url": { "path": [ - "suggestions" + "suggestions", + "configuration", + "autoapproval", + "toggle" ], "host": [ "{{baseUrl}}" ], "query": [ { - "disabled": true, - "description": { - "content": "This field allows you to customize your search. You can fill in this query param if you want to narrow down your search using the available filters on Received SKU modules.", - "type": "text/plain" - }, - "key": "q", - "value": "" - }, - { - "disabled": true, - "description": { - "content": "This field allows users to filter SKU suggestions, by searching only the new suggestions that were just sent, and suggestions that have already been sent, but were updated. Possible values for this field include `new` and `update`.", - "type": "text/plain" - }, - "key": "type", - "value": "new" - }, - { - "disabled": true, - "description": { - "content": "A string that identifies the seller in the marketplace. This ID must be created by the marketplace and informed to the seller so it can call this endpoint.", - "type": "text/plain" - }, - "key": "seller", - "value": "" - }, - { - "disabled": true, - "description": { - "content": "Narrow down you search, filtering by status. Values allowed on this field include: `accepted`, `pending` and `denied.`", - "type": "text/plain" - }, - "key": "status", - "value": "accepted" - }, - { - "disabled": true, - "description": { - "content": "This field allows you to filter SKUs that have mapping or not. Insert `true` to filter SKUs that have mapping, or `false` to retrieve SKUs that aren't mapped.", - "type": "text/plain" - }, - "key": "hasmapping", - "value": "true" - }, - { - "disabled": true, - "description": { - "content": "Identifies the matching entity. It can be either VTEX's matcher, or an external matcher developed by partners, for example. The `matcherId`'s value can be obtained through the [Get SKU Suggestion by ID](https://developers.vtex.com/vtex-rest-api/reference/getsuggestion) endpoint.", - "type": "text/plain" - }, - "key": "matcherid", - "value": "vtex-matcher" - }, - { - "disabled": true, - "description": { - "content": "Define your pagination range, by adding the pagination starting value. Values should be bigger than 0, with a maximum of 50 records per page.", - "type": "text/plain" - }, - "key": "_from", - "value": "1" - }, - { - "disabled": true, + "disabled": false, "description": { - "content": "Define your pagination range, by adding the pagination ending value. Values should be bigger than 0, with a maximum of 50 records per page.", + "content": "(Required) A string that identifies the seller in the marketplace. This ID must be created by the marketplace.", "type": "text/plain" }, - "key": "_to", - "value": "50" + "key": "sellerId", + "value": "seller123" } ], "variable": [ { "disabled": false, "description": { - "content": "(Required) Name of the VTEX account. Used as part of the URL", + "content": "(Required) Name of the VTEX account that belongs to the marketplace. All data extracted, and changes added will be posted into this account.", "type": "text/plain" }, "type": "any", @@ -127,11 +117,15 @@ { "disabled": false, "description": { - "content": "(Required) Type of the content being sent.", + "content": "(Required) Describes the type of the content being sent.", "type": "text/plain" }, "key": "Content-Type", "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" } ], "method": "GET", @@ -140,90 +134,30 @@ "response": [ { "_": { - "postman_previewlanguage": "text" + "postman_previewlanguage": "json" }, - "id": "67728ac0-dfd4-4e6c-bec5-da4581345e7a", + "id": "f5892de0-30d6-48b6-9c68-c3cf56724deb", "name": "OK", "originalRequest": { "url": { "path": [ - "suggestions" + "suggestions", + "configuration", + "autoapproval", + "toggle" ], "host": [ "{{baseUrl}}" ], "query": [ { - "disabled": true, - "description": { - "content": "This field allows you to customize your search. You can fill in this query param if you want to narrow down your search using the available filters on Received SKU modules.", - "type": "text/plain" - }, - "key": "q", - "value": "" - }, - { - "disabled": true, - "description": { - "content": "This field allows users to filter SKU suggestions, by searching only the new suggestions that were just sent, and suggestions that have already been sent, but were updated. Possible values for this field include `new` and `update`.", - "type": "text/plain" - }, - "key": "type", - "value": "new" - }, - { - "disabled": true, - "description": { - "content": "A string that identifies the seller in the marketplace. This ID must be created by the marketplace and informed to the seller so it can call this endpoint.", - "type": "text/plain" - }, - "key": "seller", - "value": "" - }, - { - "disabled": true, - "description": { - "content": "Narrow down you search, filtering by status. Values allowed on this field include: `accepted`, `pending` and `denied.`", - "type": "text/plain" - }, - "key": "status", - "value": "accepted" - }, - { - "disabled": true, - "description": { - "content": "This field allows you to filter SKUs that have mapping or not. Insert `true` to filter SKUs that have mapping, or `false` to retrieve SKUs that aren't mapped.", - "type": "text/plain" - }, - "key": "hasmapping", - "value": "true" - }, - { - "disabled": true, - "description": { - "content": "Identifies the matching entity. It can be either VTEX's matcher, or an external matcher developed by partners, for example. The `matcherId`'s value can be obtained through the [Get SKU Suggestion by ID](https://developers.vtex.com/vtex-rest-api/reference/getsuggestion) endpoint.", - "type": "text/plain" - }, - "key": "matcherid", - "value": "vtex-matcher" - }, - { - "disabled": true, - "description": { - "content": "Define your pagination range, by adding the pagination starting value. Values should be bigger than 0, with a maximum of 50 records per page.", - "type": "text/plain" - }, - "key": "_from", - "value": "1" - }, - { - "disabled": true, + "disabled": false, "description": { - "content": "Define your pagination range, by adding the pagination ending value. Values should be bigger than 0, with a maximum of 50 records per page.", + "content": "(Required) A string that identifies the seller in the marketplace. This ID must be created by the marketplace.", "type": "text/plain" }, - "key": "_to", - "value": "50" + "key": "sellerId", + "value": "seller123" } ], "variable": [] @@ -241,11 +175,15 @@ { "disabled": false, "description": { - "content": "(Required) Type of the content being sent.", + "content": "(Required) Describes the type of the content being sent.", "type": "text/plain" }, "key": "Content-Type", "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" } ], "method": "GET", @@ -253,7 +191,13 @@ }, "status": "OK", "code": 200, - "header": [], + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"Enabled\": false\n}", "cookie": [] } ], @@ -261,10 +205,13 @@ { "listen": "test", "script": { - "id": "e2fead38-9923-4469-91dc-fb0af3129228", + "id": "21c7df3e-4bc1-4c07-89f5-f6097d6fc989", "type": "text/javascript", "exec": [ - "// Validate status 2xx \npm.test(\"[GET]::/suggestions - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n" + "// Validate status 2xx \npm.test(\"[GET]::/suggestions/configuration/autoapproval/toggle - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", + "// Validate if response header has matching content-type\npm.test(\"[GET]::/suggestions/configuration/autoapproval/toggle - Content-Type is application/json\", function () {\n pm.expect(pm.response.headers.get(\"Content-Type\")).to.include(\"application/json\");\n});\n", + "// Validate if response has JSON Body \npm.test(\"[GET]::/suggestions/configuration/autoapproval/toggle - Response has JSON Body\", function () {\n pm.response.to.have.jsonBody();\n});\n", + "// Response Validation\nconst schema = {\"type\":\"object\",\"properties\":{\"Enabled\":{\"type\":\"boolean\",\"description\":\"If the autoapprove setting is active for a given seller (`true`) or not (`false`).\"}}}\n\n// Validate if response matches JSON schema \npm.test(\"[GET]::/suggestions/configuration/autoapproval/toggle - Schema is valid\", function() {\n pm.response.to.have.jsonSchema(schema,{unknownFormats: [\"int32\", \"int64\", \"float\", \"double\"]});\n});\n" ] } } @@ -274,19 +221,20 @@ } }, { - "id": "04f9efd0-3d39-4daf-b5bc-c8ff5a517561", - "name": "Get SKU Suggestion by ID", + "id": "2dfe1d04-2c62-4ac4-b758-dac5c7671353", + "name": "Activate autoApprove in marketplace's account", "request": { - "name": "Get SKU Suggestion by ID", + "name": "Activate autoApprove in marketplace's account", "description": { - "content": "This endpoint retrieves the data of a specific SKU sent by the seller, to the marketplace. Marketplaces or external matchers can call this endpoint when they want to check the information about a single SKU. \n\nNote that all the information sent by the seller will be in the [content] object. All remaining information in this endpoint's response is given by the Matcher. \n\nMatcher rates received SKUs by correlating the data sent by sellers, to existing fields in the marketplace. The calculation of these scores determines whether the product has been: \n\n`Approved`: score equal to or greater than 80 points. \n\n`Pending`: from 31 to 79 points.\n\n`Denied`: from 0 to 30 points. \n\nNote that if the autoApprove setting is enabled, the SKUs will be approved, regardless of the Score.", + "content": "This endpoint enables the autoapprove rule to a marketplace's whole Received SKUs module. Once enabling the rule, received SKUs will be automatically approved on your store, regardless of the seller. \n\n For the autoapprove rule to work as expected, the approval [Matcher score](https://help.vtex.com/en/tutorial/entendendo-a-pontuacao-do-vtex-matcher--tutorials_424) should be set up as 80 (default value), but you can configure a different number through the field `Score` in [Save Account's Approval Settings](https://developers.vtex.com/vtex-rest-api/reference/saveaccountconfig).\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/authentication-overview#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| Channels | UI resources | **Save suggestion rules** |\r\n| Suggestion| Suggestion resources | **Main 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.\r\n\r\nTo learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication-overview#machine-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.", "type": "text/plain" }, "url": { "path": [ "suggestions", - ":sellerId", - ":sellerSkuId" + "configuration", + "autoapproval", + "toggle" ], "host": [ "{{baseUrl}}" @@ -296,27 +244,7 @@ { "disabled": false, "description": { - "content": "(Required) A string that identifies the seller in the marketplace. This ID must be created by the marketplace and informed to the seller before the integration is built.", - "type": "text/plain" - }, - "type": "any", - "value": "seller123", - "key": "sellerId" - }, - { - "disabled": false, - "description": { - "content": "(Required) A string that identifies the SKU in the marketplace. This is the ID that the marketplace will use for future references to this SKU, such as price and inventory notifications.", - "type": "text/plain" - }, - "type": "any", - "value": "1234", - "key": "sellerSkuId" - }, - { - "disabled": false, - "description": { - "content": "(Required) Name of the VTEX account. Used as part of the URL", + "content": "(Required) Name of the VTEX account that belongs to the marketplace. All data extracted, and changes added will be posted into this account.", "type": "text/plain" }, "type": "any", @@ -343,24 +271,42 @@ }, "key": "Content-Type", "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" } ], - "method": "GET", - "body": {} + "method": "PUT", + "body": { + "mode": "raw", + "raw": "{\n \"Enabled\": true\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } }, "response": [ { "_": { - "postman_previewlanguage": "text" + "postman_previewlanguage": "json" }, - "id": "5bc8b12f-6e2e-4c66-8f20-820abb4329e6", + "id": "188dd87e-07a0-4bad-b196-55e6226741e9", "name": "OK", "originalRequest": { "url": { "path": [ "suggestions", - ":sellerId", - ":sellerSkuId" + "configuration", + "autoapproval", + "toggle" ], "host": [ "{{baseUrl}}" @@ -386,14 +332,37 @@ }, "key": "Content-Type", "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" } ], - "method": "GET", - "body": {} + "method": "PUT", + "body": { + "mode": "raw", + "raw": "{\n \"Enabled\": true\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } }, "status": "OK", "code": 200, - "header": [], + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"Enabled\": false\n}", "cookie": [] } ], @@ -401,10 +370,13 @@ { "listen": "test", "script": { - "id": "15aae690-1cd7-46be-a378-c113bf7f226c", + "id": "d248b38d-a14c-4c14-995e-8b133e3f4078", "type": "text/javascript", "exec": [ - "// Validate status 2xx \npm.test(\"[GET]::/suggestions/:sellerId/:sellerSkuId - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n" + "// Validate status 2xx \npm.test(\"[PUT]::/suggestions/configuration/autoapproval/toggle - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", + "// Validate if response header has matching content-type\npm.test(\"[PUT]::/suggestions/configuration/autoapproval/toggle - Content-Type is application/json\", function () {\n pm.expect(pm.response.headers.get(\"Content-Type\")).to.include(\"application/json\");\n});\n", + "// Validate if response has JSON Body \npm.test(\"[PUT]::/suggestions/configuration/autoapproval/toggle - Response has JSON Body\", function () {\n pm.response.to.have.jsonBody();\n});\n", + "// Response Validation\nconst schema = {\"type\":\"object\",\"properties\":{\"Enabled\":{\"type\":\"boolean\",\"description\":\"If the autoapprove setting is active (`true`) or not (`false`).\"}}}\n\n// Validate if response matches JSON schema \npm.test(\"[PUT]::/suggestions/configuration/autoapproval/toggle - Schema is valid\", function() {\n pm.response.to.have.jsonSchema(schema,{unknownFormats: [\"int32\", \"int64\", \"float\", \"double\"]});\n});\n" ] } } @@ -412,32 +384,20 @@ "protocolProfileBehavior": { "disableBodyPruning": true } - } - ], - "event": [] - }, - { - "id": "7415705d-b826-40f3-87f6-f12786a37cc8", - "name": "Manage Suggestions", - "description": { - "content": "Send or delete SKU suggestions from the seller to marketplace.", - "type": "text/plain" - }, - "item": [ + }, { - "id": "b7fd65e5-a2cd-4f0b-920a-28ec1a6648d5", - "name": "Send SKU Suggestion", + "id": "8fb827dd-33ba-4360-91fb-d460aeefaf41", + "name": "Get account's approval settings", "request": { - "name": "Send SKU Suggestion", + "name": "Get account's approval settings", "description": { - "content": "This request is used by the seller when it wants to suggest that one of their SKUs is sold in the marketplace.\n\nBefore using this request, the seller should always use the [Change Notification](https://developers.vtex.com/vtex-rest-api/reference/catalog-api-get-seller-sku-notification) request in order to check if the SKU already exists in the marketplace. If it doesn't, then this is the next call in the SKU integration flow.\n\nIn the Send Suggestion request, the seller must send information about the SKU, such as the product and SKU name, the seller ID, and the image URL. All parameters are explained below. ", + "content": "This endpoint retrieves the current approval settings of a marketplace's Received SKUs module. Its response includes: \n\n- `Score`: Matcher scores for approving and rejecting SKUs received from sellers. \n\n- `Matchers`: All Matchers configured on the marketplace, and their respective details. \n\n- `SpecificationsMapping`: Mapping of product and SKU specifications, per seller. \n\n- `MatchFlux`: This field determines the type of approval configuration applied to SKUs received from a seller. \n\nThe possible values include: \n\n-`default`, where the Matcher reviews the SKU, and approves it based on its score. \n\n-`manual`, for manual approvals through the Received SKU UI, or Match API. \n\n-`autoApprove`, for every SKU received from a given seller to be approved automatically, regardless of their Matcher Score.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/authentication-overview#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| Channels | UI resources | **Save suggestion rules** |\r\n| Suggestion| Suggestion resources | **Main 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.\r\n\r\nTo learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication-overview#machine-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.", "type": "text/plain" }, "url": { "path": [ "suggestions", - ":sellerId", - ":sellerSkuId" + "configuration" ], "host": [ "{{baseUrl}}" @@ -447,27 +407,7 @@ { "disabled": false, "description": { - "content": "(Required) A string that identifies the seller in the marketplace. This ID must be created by the marketplace and informed to the seller before the integration is built.", - "type": "text/plain" - }, - "type": "any", - "value": "seller123", - "key": "sellerId" - }, - { - "disabled": false, - "description": { - "content": "(Required) A string that identifies the SKU in the seller. This is the ID that the marketplace will use for future references to this SKU, such as price and inventory notifications.", - "type": "text/plain" - }, - "type": "any", - "value": "1234", - "key": "sellerSkuId" - }, - { - "disabled": false, - "description": { - "content": "(Required) Name of the VTEX account to which the seller wants to suggest a new SKU. It is used as part of the request URL.", + "content": "(Required) Name of the VTEX account that belongs to the marketplace. All data extracted, and changes added will be posted into this account.", "type": "text/plain" }, "type": "any", @@ -480,7 +420,7 @@ { "disabled": false, "description": { - "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "content": "(Required) HTTP Client Negotiation Accept Header. Indicates the types of responses the client can understand.", "type": "text/plain" }, "key": "Accept", @@ -496,35 +436,25 @@ "value": "application/json" }, { - "key": "Content-Type", + "key": "Accept", "value": "application/json" } ], - "method": "PUT", - "body": { - "mode": "raw", - "raw": "{\n \"ProductId\": \"321\",\n \"ProductName\": \"Product sample\",\n \"NameComplete\": \"Complete product name\",\n \"ProductDescription\": \"sample\",\n \"BrandName\": \"Brand 1\",\n \"SkuName\": \"Sku sample\",\n \"SellerId\": \"string\",\n \"Height\": 1,\n \"Width\": 1,\n \"Length\": 1,\n \"Weight\": 1,\n \"Updated\": null,\n \"RefId\": \"REFID123\",\n \"SellerStockKeepingUnitId\": 567,\n \"CategoryFullPath\": \"Category 1\",\n \"Images\": [\n {\n \"imageName\": \"Principal\",\n \"imageUrl\": \"https://i.pinimg.com/originals/2d/96/4a/2d964a6bf37d9224d0615dc85fccdd62.jpg\"\n }\n ],\n \"ProductSpecifications\": [\n {\n \"fieldName\": \"Fabric\",\n \"fieldValues\": [\n \"Cotton\",\n \"Velvet\"\n ]\n }\n ],\n \"SkuSpecifications\": [\n {\n \"fieldName\": \"Color\",\n \"fieldValues\": [\n \"Red\",\n \"Blue\"\n ]\n }\n ],\n \"EAN\": \"EAN123\",\n \"MeasurementUnit\": \"un\",\n \"UnitMultiplier\": 1,\n \"AvailableQuantity\": 111,\n \"Pricing\": {\n \"Currency\": \"BRL\",\n \"SalePrice\": 399,\n \"CurrencySymbol\": \"R$\"\n }\n}", - "options": { - "raw": { - "headerFamily": "json", - "language": "json" - } - } - } + "method": "GET", + "body": {} }, "response": [ { "_": { - "postman_previewlanguage": "text" + "postman_previewlanguage": "json" }, - "id": "69d2263b-1f5b-4661-addb-fb6c474d3820", + "id": "2c223c1e-dc3a-4746-ac3a-b09220bcea66", "name": "OK", "originalRequest": { "url": { "path": [ "suggestions", - ":sellerId", - ":sellerSkuId" + "configuration" ], "host": [ "{{baseUrl}}" @@ -536,7 +466,7 @@ { "disabled": false, "description": { - "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "content": "(Required) HTTP Client Negotiation Accept Header. Indicates the types of responses the client can understand.", "type": "text/plain" }, "key": "Accept", @@ -552,25 +482,22 @@ "value": "application/json" }, { - "key": "Content-Type", + "key": "Accept", "value": "application/json" } ], - "method": "PUT", - "body": { - "mode": "raw", - "raw": "{\n \"ProductId\": \"321\",\n \"ProductName\": \"Product sample\",\n \"NameComplete\": \"Complete product name\",\n \"ProductDescription\": \"sample\",\n \"BrandName\": \"Brand 1\",\n \"SkuName\": \"Sku sample\",\n \"SellerId\": \"string\",\n \"Height\": 1,\n \"Width\": 1,\n \"Length\": 1,\n \"Weight\": 1,\n \"Updated\": null,\n \"RefId\": \"REFID123\",\n \"SellerStockKeepingUnitId\": 567,\n \"CategoryFullPath\": \"Category 1\",\n \"Images\": [\n {\n \"imageName\": \"Principal\",\n \"imageUrl\": \"https://i.pinimg.com/originals/2d/96/4a/2d964a6bf37d9224d0615dc85fccdd62.jpg\"\n }\n ],\n \"ProductSpecifications\": [\n {\n \"fieldName\": \"Fabric\",\n \"fieldValues\": [\n \"Cotton\",\n \"Velvet\"\n ]\n }\n ],\n \"SkuSpecifications\": [\n {\n \"fieldName\": \"Color\",\n \"fieldValues\": [\n \"Red\",\n \"Blue\"\n ]\n }\n ],\n \"EAN\": \"EAN123\",\n \"MeasurementUnit\": \"un\",\n \"UnitMultiplier\": 1,\n \"AvailableQuantity\": 111,\n \"Pricing\": {\n \"Currency\": \"BRL\",\n \"SalePrice\": 399,\n \"CurrencySymbol\": \"R$\"\n }\n}", - "options": { - "raw": { - "headerFamily": "json", - "language": "json" - } - } - } + "method": "GET", + "body": {} }, "status": "OK", "code": 200, - "header": [], + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"Score\": {\n \"Approve\": 80,\n \"Reject\": 30\n },\n \"Matchers\": [\n {\n \"MatcherId\": \"vtex-matcher\",\n \"hook-base-address\": \"http://portal.vtexinternal.com/api/ssm/hooks\",\n \"IsActive\": true,\n \"UpdatesNotificationEndpoint\": \"https://example.com/updates/notifications\",\n \"Description\": \"This matcher is configured to handle specific product categories and has been optimized for high accuracy.\"\n }\n ],\n \"Rules\": {\n \"Item\": [],\n \"Product\": []\n },\n \"SpecificationsMapping\": [],\n \"MatchFlux\": \"Default\"\n}", "cookie": [] } ], @@ -578,10 +505,13 @@ { "listen": "test", "script": { - "id": "1aefcc1c-91ea-4599-a419-48e7a4539900", + "id": "236ffef5-9b03-46fa-abf0-e33cace18914", "type": "text/javascript", "exec": [ - "// Validate status 2xx \npm.test(\"[PUT]::/suggestions/:sellerId/:sellerSkuId - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n" + "// Validate status 2xx \npm.test(\"[GET]::/suggestions/configuration - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", + "// Validate if response header has matching content-type\npm.test(\"[GET]::/suggestions/configuration - Content-Type is application/json\", function () {\n pm.expect(pm.response.headers.get(\"Content-Type\")).to.include(\"application/json\");\n});\n", + "// Validate if response has JSON Body \npm.test(\"[GET]::/suggestions/configuration - Response has JSON Body\", function () {\n pm.response.to.have.jsonBody();\n});\n", + "// Response Validation\nconst schema = {\"type\":\"object\",\"properties\":{\"Score\":{\"type\":\"object\",\"description\":\"Matcher scores for approving and rejecting SKUs received from sellers.\"},\"Matchers\":{\"type\":\"array\",\"description\":\"All Matchers configured on the marketplace, and their respective details.\",\"items\":{\"type\":\"object\",\"description\":\"Details of a single matcher configured in the marketplace.\",\"properties\":{\"MatcherId\":{\"type\":\"string\",\"description\":\"Identifies the matching entity, either VTEX's matcher or an external matcher.\"},\"hook-base-address\":{\"type\":\"string\",\"description\":\"The base address for the Matcher's API endpoint.\"},\"IsActive\":{\"type\":\"boolean\",\"description\":\"Indicates whether the matcher is active (`true`) or inactive (`false`).\"},\"UpdatesNotificationEndpoint\":{\"type\":\"string\",\"description\":\"Endpoint for receiving notifications about updates from the matcher.\"},\"Description\":{\"type\":\"string\",\"description\":\"Description or notes about the matcher.\"}}}},\"Rules\":{\"type\":\"object\",\"description\":\"Items and products.\"},\"SpecificationsMapping\":{\"type\":\"array\",\"description\":\"Mapping of product and SKU specifications between the marketplace and the seller.\",\"items\":{\"type\":\"object\",\"description\":\"Mapping details for a single specification.\",\"properties\":{\"fieldName\":{\"type\":\"string\",\"description\":\"Name of the specification field in the seller's catalog.\"},\"marketplaceField\":{\"type\":\"string\",\"description\":\"Corresponding name of the specification field in the marketplace's catalog.\"}}}},\"MatchFlux\":{\"type\":\"string\",\"description\":\"This field determines the type of approval configuration applied to SKUs received from a seller.\"}}}\n\n// Validate if response matches JSON schema \npm.test(\"[GET]::/suggestions/configuration - Schema is valid\", function() {\n pm.response.to.have.jsonSchema(schema,{unknownFormats: [\"int32\", \"int64\", \"float\", \"double\"]});\n});\n" ] } } @@ -591,19 +521,18 @@ } }, { - "id": "f6fbcd21-2d78-45e5-89c4-a59ad9446378", - "name": "Delete SKU Suggestion", + "id": "923cc370-c3d4-4d66-ae16-d6a5ad3bf1ac", + "name": "Save account's approval settings", "request": { - "name": "Delete SKU Suggestion", + "name": "Save account's approval settings", "description": { - "content": "This endpoint deletes a chosen SKU suggestion. Only one SKU should be deleted per request. This request cannot be undone. A workaround to revert its action, is to send the suggestion again, through the Send Suggestion API.", + "content": "Marketplaces use this endpoint to create or update approval settings on their Received SKUs module. \n\nThe request includes all the details necessary to implement the chosen approval settings.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/authentication-overview#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| Channels | UI resources | **Save suggestion rules** |\r\n| Suggestion| Suggestion resources | **Main 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.\r\n\r\nTo learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication-overview#machine-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.", "type": "text/plain" }, "url": { "path": [ "suggestions", - ":sellerId", - ":sellerSkuId" + "configuration" ], "host": [ "{{baseUrl}}" @@ -613,27 +542,7 @@ { "disabled": false, "description": { - "content": "(Required) A string that identifies the seller in the marketplace. This ID must be created by the marketplace and informed to the seller before the integration is built.", - "type": "text/plain" - }, - "type": "any", - "value": "seller123", - "key": "sellerId" - }, - { - "disabled": false, - "description": { - "content": "(Required) A string that identifies the SKU in the marketplace. This is the ID that the marketplace will use for future references to this SKU, such as price and inventory notifications.", - "type": "text/plain" - }, - "type": "any", - "value": "1234", - "key": "sellerSkuId" - }, - { - "disabled": false, - "description": { - "content": "(Required) Name of the VTEX account. Used as part of the URL.", + "content": "(Required) Name of the VTEX account that belongs to the marketplace. All data extracted, and changes added will be posted into this account.", "type": "text/plain" }, "type": "any", @@ -660,24 +569,40 @@ }, "key": "Content-Type", "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" } ], - "method": "DELETE", - "body": {} + "method": "PUT", + "body": { + "mode": "raw", + "raw": "{\n \"Score\": {\n \"Approve\": 80,\n \"Reject\": 30\n },\n \"Matchers\": [\n {\n \"MatcherId\": \"vtex-matcher\",\n \"hook-base-address\": \"http://simple-suggestion-matcher.vtex.com.br\",\n \"IsActive\": true,\n \"UpdatesNotificationEndpoint\": null,\n \"Description\": null\n }\n ],\n \"SpecificationsMapping\": [\n \"color=red\",\n \"size=L\"\n ],\n \"MatchFlux\": \"autoApprove\"\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } }, "response": [ { "_": { - "postman_previewlanguage": "text" + "postman_previewlanguage": "json" }, - "id": "0e9735d6-3b24-4417-bcd3-4b2435dd79f9", + "id": "1e1c6aee-29c6-47f1-8577-ca00114dd943", "name": "OK", "originalRequest": { "url": { "path": [ "suggestions", - ":sellerId", - ":sellerSkuId" + "configuration" ], "host": [ "{{baseUrl}}" @@ -703,14 +628,37 @@ }, "key": "Content-Type", "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" } ], - "method": "DELETE", - "body": {} + "method": "PUT", + "body": { + "mode": "raw", + "raw": "{\n \"Score\": {\n \"Approve\": 80,\n \"Reject\": 30\n },\n \"Matchers\": [\n {\n \"MatcherId\": \"vtex-matcher\",\n \"hook-base-address\": \"http://simple-suggestion-matcher.vtex.com.br\",\n \"IsActive\": true,\n \"UpdatesNotificationEndpoint\": null,\n \"Description\": null\n }\n ],\n \"SpecificationsMapping\": [\n \"color=red\",\n \"size=L\"\n ],\n \"MatchFlux\": \"autoApprove\"\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } }, "status": "OK", "code": 200, - "header": [], + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"Score\": {\n \"Approve\": 80,\n \"Reject\": 30\n },\n \"Matchers\": [\n {\n \"MatcherId\": \"vtex-matcher\",\n \"hook-base-address\": \"http://simple-suggestion-matcher.vtex.com.br\",\n \"IsActive\": true,\n \"UpdatesNotificationEndpoint\": \"notification.endpoint\",\n \"Description\": \"Note\"\n }\n ],\n \"Rules\": {\n \"Item\": [\n 1\n ],\n \"Product\": [\n \"Shirt\"\n ]\n },\n \"SpecificationsMapping\": [\n {\n \"SellerId\": \"Store1\",\n \"Mapping\": {\n \"Yellow\": \"Light yellow\"\n }\n }\n ],\n \"MatchFlux\": \"autoApprove\"\n}", "cookie": [] } ], @@ -718,10 +666,13 @@ { "listen": "test", "script": { - "id": "88fc0ce0-8a7e-4572-9723-b20cb4780be4", + "id": "a4007683-a01c-44b3-a838-9bcee8cfb603", "type": "text/javascript", "exec": [ - "// Validate status 2xx \npm.test(\"[DELETE]::/suggestions/:sellerId/:sellerSkuId - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n" + "// Validate status 2xx \npm.test(\"[PUT]::/suggestions/configuration - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", + "// Validate if response header has matching content-type\npm.test(\"[PUT]::/suggestions/configuration - Content-Type is application/json\", function () {\n pm.expect(pm.response.headers.get(\"Content-Type\")).to.include(\"application/json\");\n});\n", + "// Validate if response has JSON Body \npm.test(\"[PUT]::/suggestions/configuration - Response has JSON Body\", function () {\n pm.response.to.have.jsonBody();\n});\n", + "// Response Validation\nconst schema = {\"type\":\"object\",\"description\":\"Response object for the Save Accounts Approval Settings endpoint.\",\"properties\":{\"Score\":{\"type\":\"object\",\"description\":\"[Matcher's rates](https://help.vtex.com/en/tutorial/understanding-vtex-matcher-scoring) to approve or reject [received SKUs](https://help.vtex.com/en/tutorial/cataloging-received-skus--tutorials_396) sent by sellers.\",\"properties\":{\"Approve\":{\"type\":\"integer\",\"description\":\"Score to approve SKUs sent by sellers.\"},\"Reject\":{\"type\":\"integer\",\"description\":\"Score to reject SKUs sent by sellers.\"}}},\"Matchers\":{\"type\":\"array\",\"description\":\"[Matchers](https://help.vtex.com/en/tutorial/understanding-vtex-matcher-scoring) configurations for approving and rejecting [received SKUs](https://help.vtex.com/en/tutorial/cataloging-received-skus--tutorials_396) sent by sellers.\",\"items\":{\"type\":\"object\",\"description\":\"Details of a matcher used for scoring and managing SKUs approvals and rejections.\",\"properties\":{\"MatcherId\":{\"type\":\"string\",\"description\":\"Identifies the matching entity. It can be either [VTEX's matcher](https://help.vtex.com/en/tutorial/understanding-vtex-matcher-scoring), or an external matcher.\"},\"hook-base-address\":{\"type\":\"string\",\"description\":\"The given matcher's URL.\"},\"IsActive\":{\"type\":\"boolean\",\"description\":\"Whether the matcher is active in the account (`true`), or not (`false`).\"},\"UpdatesNotificationEndpoint\":{\"type\":\"string\",\"description\":\"The [received SKUs](https://help.vtex.com/en/tutorial/cataloging-received-skus--tutorials_396) module calls this endpoint for matcher's suggestions updates.\"},\"Description\":{\"type\":\"string\",\"description\":\"The note inserted on the request body.\"}}}},\"Rules\":{\"type\":\"object\",\"description\":\"Items and products that belong to sellers.\",\"properties\":{\"Item\":{\"type\":\"array\",\"description\":\"SKUs' ID.\",\"items\":{\"type\":\"integer\",\"description\":\"SKU ID.\"}},\"Product\":{\"type\":\"array\",\"description\":\"Product's name.\",\"items\":{\"type\":\"string\",\"description\":\"Product name.\"}}}},\"SpecificationsMapping\":{\"type\":\"array\",\"description\":\"This attribute maps product and SKU's specifications between the marketplace and the seller.\",\"items\":{\"type\":\"object\",\"description\":\"Object representing a single specification mapping between the marketplace and the seller.\",\"properties\":{\"SellerId\":{\"type\":\"string\",\"description\":\"The seller ID.\"},\"Mapping\":{\"type\":\"object\",\"description\":\"The attributes and values mapped between the marketplace and the seller.\"}}}},\"MatchFlux\":{\"type\":\"string\",\"description\":\"Type of approval configuration that apply to received SKUs sent by sellers. The possible values are: \\n\\n`default`: The matcher approves the SKU. \\n\\n`manual`: Manual SKU's approvals. \\n\\n`AutoApprove`: Automatic SKU's approvals.\"}}}\n\n// Validate if response matches JSON schema \npm.test(\"[PUT]::/suggestions/configuration - Schema is valid\", function() {\n pm.response.to.have.jsonSchema(schema,{unknownFormats: [\"int32\", \"int64\", \"float\", \"double\"]});\n});\n" ] } } @@ -729,33 +680,22 @@ "protocolProfileBehavior": { "disableBodyPruning": true } - } - ], - "event": [] - }, - { - "id": "f3e14f4e-b7dd-48f2-b7e1-fcae413426a1", - "name": "Get Versions", - "description": { - "content": "Search and filter all versions of suggestions, using specific criteria.", - "type": "text/plain" - }, - "item": [ + }, { - "id": "aa504c8c-eb95-49c0-a7e1-9f6979e9c3f3", - "name": "Get all Versions", + "id": "c101cfd1-3df2-4297-9b8a-c31dff8d0be0", + "name": "Get account's matcher settings", "request": { - "name": "Get all Versions", + "name": "Get account's matcher settings", "description": { - "content": "Whenever an SKU Suggestion is updated or changed, a new version of the original one is created. All versions are logged, so you can search for previous our current states of SKU suggestions. \n\nThis endpoint retrieves the data of *all* previous and latest versions of a specific SKU suggestion, sent by the seller. Whenever an SKU is updated, it is important to map previous versions, to compare and identify changes. \n\nThe response's object [latestversion] provides the information of the most recent version of that SKU suggestion.", + "content": "This endpoint will be used by the marketplace to query the matcher's current approval settings on their incoming SKUs module. If the account has no matcher configured, the response will be `404 Not Found`. \n\nFor account approval configuration information, with response including specification information, see [Get Account Approval Settings](https://developers.vtex.com/docs/api-reference/marketplace-apis-suggestions#get-/suggestions/configuration) terminal. \n\nThe [VTEX matcher](https://help.vtex.com/pt/tutorial/entendendo-a-punctuacao-do-vtex-matcher--tutorials_424) is a tool used by marketplaces to evaluate SKUs corresponding to information from an advertisement of the seller, with those of items already present in the marketplace catalog.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/authentication-overview#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| Channels | UI resources | **Save suggestion rules** |\r\n| Suggestion| Suggestion resources | **Main 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.\r\n\r\nTo learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication-overview#machine-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.", "type": "text/plain" }, "url": { "path": [ "suggestions", - ":sellerId", - ":sellerskuid", - "versions" + "configuration", + "account", + "config" ], "host": [ "{{baseUrl}}" @@ -765,27 +705,7 @@ { "disabled": false, "description": { - "content": "(Required) A string that identifies the seller in the marketplace. This ID must be created by the marketplace and informed to the seller before the integration is built.", - "type": "text/plain" - }, - "type": "any", - "value": "seller123", - "key": "sellerId" - }, - { - "disabled": false, - "description": { - "content": "(Required) A string that identifies the SKU in the marketplace. This is the ID that the marketplace will use for future references to this SKU, such as price and inventory notifications.", - "type": "text/plain" - }, - "type": "any", - "value": "1234", - "key": "sellerskuid" - }, - { - "disabled": false, - "description": { - "content": "(Required) Name of the VTEX account. Used as part of the URL", + "content": "(Required) Name of the VTEX account that belongs to the marketplace. All data extracted, and changes added will be posted into this account.", "type": "text/plain" }, "type": "any", @@ -798,7 +718,7 @@ { "disabled": false, "description": { - "content": "(Required) HTTP Client Negotiation Accept Header. Indicates the types of responses the client can understand", + "content": "(Required) HTTP Client Negotiation Accept Header. Indicates the types of responses the client can understand.", "type": "text/plain" }, "key": "Accept", @@ -812,6 +732,10 @@ }, "key": "Content-Type", "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" } ], "method": "GET", @@ -820,17 +744,17 @@ "response": [ { "_": { - "postman_previewlanguage": "text" + "postman_previewlanguage": "json" }, - "id": "e335ae1b-473e-4ecf-95f5-d6cb02352418", + "id": "01902efa-b228-4c46-aac2-3e7d6d554589", "name": "OK", "originalRequest": { "url": { "path": [ "suggestions", - ":sellerId", - ":sellerskuid", - "versions" + "configuration", + "account", + "config" ], "host": [ "{{baseUrl}}" @@ -842,7 +766,7 @@ { "disabled": false, "description": { - "content": "(Required) HTTP Client Negotiation Accept Header. Indicates the types of responses the client can understand", + "content": "(Required) HTTP Client Negotiation Accept Header. Indicates the types of responses the client can understand.", "type": "text/plain" }, "key": "Accept", @@ -856,6 +780,10 @@ }, "key": "Content-Type", "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" } ], "method": "GET", @@ -863,7 +791,13 @@ }, "status": "OK", "code": 200, - "header": [], + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"score\": {\n \"approve\": 85,\n \"pending\": 31,\n \"reject\": 30\n },\n \"matchers\": [\n {\n \"matcherId\": \"example-matcher\",\n \"hook-base-address\": \"http://portal.vtexinternal.com.br/api/u90/hooks\",\n \"isActive\": true,\n \"updatesNotificationEndpoint\": null,\n \"description\": null\n }\n ],\n \"rules\": {\n \"item\": [],\n \"product\": []\n },\n \"specificationsMapping\": [],\n \"matchFlux\": \"Default\"\n}", "cookie": [] } ], @@ -871,10 +805,13 @@ { "listen": "test", "script": { - "id": "2809424d-58ad-42a0-a207-de5214a3cec5", + "id": "f15a8194-7a04-4461-8b81-35f6d276fb27", "type": "text/javascript", "exec": [ - "// Validate status 2xx \npm.test(\"[GET]::/suggestions/:sellerId/:sellerskuid/versions - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n" + "// Validate status 2xx \npm.test(\"[GET]::/suggestions/configuration/account/config - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", + "// Validate if response header has matching content-type\npm.test(\"[GET]::/suggestions/configuration/account/config - Content-Type is application/json\", function () {\n pm.expect(pm.response.headers.get(\"Content-Type\")).to.include(\"application/json\");\n});\n", + "// Validate if response has JSON Body \npm.test(\"[GET]::/suggestions/configuration/account/config - Response has JSON Body\", function () {\n pm.response.to.have.jsonBody();\n});\n", + "// Response Validation\nconst schema = {\"description\":\"Response from Get Account's Matcher Settings endpoint with information about current matcher score setting, rules, spec mapping, and matchFlux.\",\"type\":\"object\",\"properties\":{\"score\":{\"description\":\"[Matcher](https://help.vtex.com/pt/tutorial/entendendo-a-pontuacao-do-vtex-matcher--tutorials_424) rates received SKUs by comparing the data sent by sellers to existing fields in the marketplace. The calculation of these scores determines whether the product has been: `Approved`, `Pending` or `Denied`.\",\"type\":\"object\",\"properties\":{\"approve\":{\"type\":\"integer\",\"description\":\"Minimum approval score set by the marketplace.\",\"default\":80},\"pending\":{\"type\":\"integer\",\"description\":\"Minimum value for the ad to be pending.\",\"default\":31},\"reject\":{\"type\":\"integer\",\"description\":\"Bounce score set by marketplace.\",\"default\":30}}},\"matchers\":{\"description\":\"Array of objects that presents a list of matchers configured in the marketplace. If the marketplace has more than one matcher configured in the account, an array will be displayed for each matcher.\\n\\n By default, the VTEX Matcher is set up automatically in VTEX account.\",\"type\":\"array\",\"items\":{\"type\":\"object\",\"description\":\"An object representing a single matcher configuration.\",\"properties\":{\"matcherId\":{\"type\":\"string\",\"description\":\"The Matcher Id.\"},\"hook-base-address\":{\"type\":\"string\",\"description\":\"The base address of the Matcher hook.\"},\"isActive\":{\"type\":\"boolean\",\"description\":\"Indicates if Matcher is active or not. `TRUE` = Matcher is active or `FALSE` = Matcher is inactive.\"}}}},\"rules\":{\"description\":\"Arrays object that contains the rules defined for product approval.\",\"type\":\"object\",\"properties\":{\"item\":{\"type\":\"array\",\"description\":\"A list of rules for items.\",\"items\":{\"type\":\"object\",\"description\":\"A rule for items.\"}},\"product\":{\"type\":\"array\",\"description\":\"A list of rules for products.\",\"items\":{\"type\":\"object\",\"description\":\"A rule for products.\"}}}},\"SpecificationsMapping\":{\"type\":\"array\",\"description\":\"List of product specifications and SKU attributes configured for mapping.\",\"items\":{\"type\":\"object\",\"description\":\"A specification mapping entry.\"}},\"matchFlux\":{\"type\":\"string\",\"description\":\"This field shows what type of approval setting is being applied to SKUs received from a seller. \\n\\nPossible values include: \\n\\n-`default`: where Matcher reviews the SKU and approves it based on its score. \\n\\n-`manual`: for manual approvals via incoming SKU UI or mailing API. \\n\\n-`autoApprove`: so that every SKU received from a given seller is automatically approved, regardless of its Matcher Score.\"}}}\n\n// Validate if response matches JSON schema \npm.test(\"[GET]::/suggestions/configuration/account/config - Schema is valid\", function() {\n pm.response.to.have.jsonSchema(schema,{unknownFormats: [\"int32\", \"int64\", \"float\", \"double\"]});\n});\n" ] } } @@ -884,21 +821,20 @@ } }, { - "id": "102e20b2-7e97-4e14-9897-f4467957a1fb", - "name": "Get Version by ID", + "id": "a92d229c-ebc6-41fe-b672-f85b54a9cb79", + "name": "Get seller's approval settings", "request": { - "name": "Get Version by ID", + "name": "Get seller's approval settings", "description": { - "content": "Whenever an SKU Suggestion is updated or changed, a new version of the original one is created. All versions are logged, so you can search for previous our current states of SKU suggestions. \n\nThis endpoint retrieves a specific *version* of a chosen SKU sent by the seller. Add the Seller's ID, Seller's SKU ID, and version ID in the path to detail your search.", + "content": "This endpoint retrieves the current Received SKUs approval settings applied to a specific seller. Its response includes: \n\n- `sellerId`: A string that identifies the seller in the marketplace. \n\n- `accountId`: Marketplace’s account ID. \n\n- `accountName`: Marketplace’s account name. \n\n- `mapping`: Mapping of SKU and product Specifications. \n\n- `matchFlux`: This field determines the type of approval configuration applied to SKUs received from a seller. \n\nThe possible values include: \n\n-`default`, where the Matcher reviews the SKU, and approves it based on its score. \n\n-`manual`, for manual approvals through the Received SKU UI and Match API. \n\n-`autoApprove`, for every SKU received from a given seller to be approved automatically, regardless of the Matcher Score.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/authentication-overview#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| Channels | UI resources | **Save suggestion rules** |\r\n| Suggestion| Suggestion resources | **Main access** |\r\n|Mapper| Suggestion resources| **Mapper**|\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.\r\n\r\nTo learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication-overview#machine-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.", "type": "text/plain" }, "url": { "path": [ "suggestions", - ":sellerId", - ":sellerskuid", - "versions", - ":version" + "configuration", + "seller", + ":sellerId" ], "host": [ "{{baseUrl}}" @@ -908,37 +844,17 @@ { "disabled": false, "description": { - "content": "(Required) A string that identifies the seller in the marketplace. This ID must be created by the marketplace and informed to the seller before the integration is built.", - "type": "text/plain" - }, - "type": "any", - "value": "seller123", - "key": "sellerId" - }, - { - "disabled": false, - "description": { - "content": "(Required) A string that identifies the SKU in the marketplace. This is the ID that the marketplace will use for future references to this SKU, such as price and inventory notifications.", - "type": "text/plain" - }, - "type": "any", - "value": "1234", - "key": "sellerskuid" - }, - { - "disabled": false, - "description": { - "content": "(Required) Whenever an SKU Suggestion is updated or changed, a new version of the original one is created. All versions are logged, so you can search for previous our current states of SKU suggestions. This field is the `versionId` associated to the version you choose to search for. You can get this field's value through the [Get SKU Suggestion by ID](https://developers.vtex.com/vtex-rest-api/reference/getsuggestion). through the `latestVersionId` field.", + "content": "(Required) A string that identifies the seller in the marketplace. This ID must be created by the marketplace.", "type": "text/plain" }, "type": "any", - "value": "09072021142808277", - "key": "version" + "value": "seller123", + "key": "sellerId" }, { "disabled": false, "description": { - "content": "(Required) Name of the VTEX account. Used as part of the URL", + "content": "(Required) Name of the VTEX account that belongs to the marketplace. All data extracted, and changes added will be posted into this account.", "type": "text/plain" }, "type": "any", @@ -951,7 +867,7 @@ { "disabled": false, "description": { - "content": "(Required) HTTP Client Negotiation Accept Header. Indicates the types of responses the client can understand", + "content": "(Required) HTTP Client Negotiation Accept Header. Indicates the types of responses the client can understand.", "type": "text/plain" }, "key": "Accept", @@ -965,6 +881,10 @@ }, "key": "Content-Type", "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" } ], "method": "GET", @@ -973,18 +893,17 @@ "response": [ { "_": { - "postman_previewlanguage": "text" + "postman_previewlanguage": "json" }, - "id": "2a108e3c-3071-41a0-88d3-3cefb873978f", + "id": "093c951f-b5a3-4818-99b2-119e68806754", "name": "OK", "originalRequest": { "url": { "path": [ "suggestions", - ":sellerId", - ":sellerskuid", - "versions", - ":version" + "configuration", + "seller", + ":sellerId" ], "host": [ "{{baseUrl}}" @@ -996,7 +915,7 @@ { "disabled": false, "description": { - "content": "(Required) HTTP Client Negotiation Accept Header. Indicates the types of responses the client can understand", + "content": "(Required) HTTP Client Negotiation Accept Header. Indicates the types of responses the client can understand.", "type": "text/plain" }, "key": "Accept", @@ -1010,6 +929,10 @@ }, "key": "Content-Type", "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" } ], "method": "GET", @@ -1017,7 +940,13 @@ }, "status": "OK", "code": 200, - "header": [], + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"sellerId\": \"sellerexample\",\n \"accountId\": \"d74dau71f-325a-4463-bd53-ae8b0453186ca\",\n \"accountName\": \"marketplaceexample\",\n \"mapping\": {\n \"defaultColor\": \"white /black\",\n \"searchColor\": \"color1, color2\",\n \"color1\": \"black\",\n \"color2\": \"white\",\n \"color\": \"black\",\n \"size\": \"EUR44\"\n },\n \"matchFlux\": \"autoApprove\"\n}", "cookie": [] } ], @@ -1025,10 +954,13 @@ { "listen": "test", "script": { - "id": "348fb63a-e338-45df-a12d-4db2d1b87e58", + "id": "91796a3a-c7e0-4bfa-a2d8-08dbe4559fa4", "type": "text/javascript", "exec": [ - "// Validate status 2xx \npm.test(\"[GET]::/suggestions/:sellerId/:sellerskuid/versions/:version - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n" + "// Validate status 2xx \npm.test(\"[GET]::/suggestions/configuration/seller/:sellerId - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", + "// Validate if response header has matching content-type\npm.test(\"[GET]::/suggestions/configuration/seller/:sellerId - Content-Type is application/json\", function () {\n pm.expect(pm.response.headers.get(\"Content-Type\")).to.include(\"application/json\");\n});\n", + "// Validate if response has JSON Body \npm.test(\"[GET]::/suggestions/configuration/seller/:sellerId - Response has JSON Body\", function () {\n pm.response.to.have.jsonBody();\n});\n", + "// Response Validation\nconst schema = {\"type\":\"object\",\"description\":\"Represents the approval settings configured for a specific seller within the marketplace. This object includes details about the seller, their account, and how SKUs are mapped and approved.\",\"properties\":{\"sellerId\":{\"type\":\"string\",\"description\":\"A string that identifies the seller in the marketplace.\"},\"accountId\":{\"type\":\"string\",\"description\":\"Marketplace’s account ID.\"},\"accountName\":{\"type\":\"string\",\"description\":\"Marketplace’s account name.\"},\"mapping\":{\"type\":\"object\",\"default\":{},\"description\":\"SKU mapping information and product [specifications](https://developers.vtex.com/docs/guides/catalog-overview#configuring-initial-settings-mandatory).\\n\\n The properties included within `mapping` can change according to the product type, the `color` specification and its variations described in this example are just one of the possibilities. The values received in this call's payload for those properties depend on the seller's catalog architecture, and are not default. \\n\\nSee some examples of specifications: \\n\\n- Voltage \\n\\n- Power \\n\\n- Size \\n\\n- Height \\n\\n- Width.\",\"properties\":{\"defaultColor\":{\"type\":\"string\",\"description\":\"The field will indicate the default color predefined by the seller in cases where specific product colors are not defined. This field is neither mandatory nor default, it will depend on the architecture of the seller's catalog.\"},\"searchColor\":{\"type\":\"string\",\"description\":\"Field that provides the available colors to filter searches. This field is neither mandatory nor default, it will depend on the architecture of the seller's catalog.\"},\"color1\":{\"type\":\"string\",\"description\":\"`color1` available for search filter. This field is neither mandatory nor default, it will depend on the architecture of the seller's catalog.\"},\"color2\":{\"type\":\"string\",\"description\":\"`color2` available for search filter. This field is neither mandatory nor default, it will depend on the architecture of the seller's catalog.\"},\"color\":{\"type\":\"string\",\"description\":\"Indicates the predominant or main color of the product. This field is neither mandatory nor default, it will depend on the architecture of the seller's catalog.\"},\"size\":{\"type\":\"string\",\"description\":\"Indicates the size of the product. This field is neither mandatory nor default, it will depend on the architecture of the seller's catalog.\"}}},\"matchFlux\":{\"type\":\"string\",\"description\":\"This field determines the type of [approval configuration applied to SKUs received from a seller](https://developers.vtex.com/docs/api-reference/marketplace-apis-suggestions#put-/suggestions/configuration/seller/-sellerId-). \\n\\nThe possible values include: \\n\\n-`default`, where the Matcher reviews the SKU, and approves it based on its score. \\n\\n-`manual`, for manual approvals through the Received SKU UI and Match API. \\n\\n-`autoApprove`, for every SKU received from a given seller to be approved automatically, regardless of the Matcher Score.\"}}}\n\n// Validate if response matches JSON schema \npm.test(\"[GET]::/suggestions/configuration/seller/:sellerId - Schema is valid\", function() {\n pm.response.to.have.jsonSchema(schema,{unknownFormats: [\"int32\", \"int64\", \"float\", \"double\"]});\n});\n" ] } } @@ -1036,49 +968,38 @@ "protocolProfileBehavior": { "disableBodyPruning": true } - } - ], - "event": [] - }, - { - "id": "07da8408-2156-4cef-87a1-ea3c2217a6fb", - "name": "SKU Approval Settings", - "description": { - "content": "", - "type": "text/plain" - }, - "item": [ + }, { - "id": "83996a99-05af-4bbf-9b65-9fdc9f7692be", - "name": "Get autoApprove Status in Account Settings", + "id": "d613124e-654e-4e1d-b7f3-2d0ace4a315c", + "name": "Save seller's approval settings", "request": { - "name": "Get autoApprove Status in Account Settings", + "name": "Save seller's approval settings", "description": { - "content": "This endpoint can be used to check whether the autoapprove setting is active or not, for a specific seller. \n\nIf the response is `true`, the autoapprove setting is active. If the response is `false`, it is inactive.", + "content": "Marketplaces use this endpoint to create or update approval settings to a specific seller, on the Received SKUs module. \n\nThe request includes all the details necessary to implement the chosen approval settings.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/authentication-overview#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| Channels | UI resources | **Save suggestion rules** |\r\n| Suggestion| Suggestion resources | **Main 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.\r\n\r\nTo learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication-overview#machine-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.", "type": "text/plain" }, "url": { "path": [ "suggestions", "configuration", - "autoapproval", - "toggle" + "seller", + ":sellerId" ], "host": [ "{{baseUrl}}" ], - "query": [ + "query": [], + "variable": [ { "disabled": false, "description": { "content": "(Required) A string that identifies the seller in the marketplace. This ID must be created by the marketplace.", "type": "text/plain" }, - "key": "sellerId", - "value": "seller123" - } - ], - "variable": [ + "type": "any", + "value": "seller123", + "key": "sellerId" + }, { "disabled": false, "description": { @@ -1111,42 +1032,41 @@ "value": "application/json" }, { - "key": "Accept", + "key": "Content-Type", "value": "application/json" } ], - "method": "GET", - "body": {} + "method": "PUT", + "body": { + "mode": "raw", + "raw": "{\n \"sellerId\": \"1a\",\n \"mapping\": null,\n \"matchFlux\": \"Default\"\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } }, "response": [ { "_": { - "postman_previewlanguage": "json" + "postman_previewlanguage": "text" }, - "id": "32d95e4f-b58f-4561-ab1c-b4666b1035e3", + "id": "ddfda864-7e50-4b8f-a7b3-e2cab0a07351", "name": "OK", "originalRequest": { "url": { "path": [ "suggestions", "configuration", - "autoapproval", - "toggle" + "seller", + ":sellerId" ], "host": [ "{{baseUrl}}" ], - "query": [ - { - "disabled": false, - "description": { - "content": "(Required) A string that identifies the seller in the marketplace. This ID must be created by the marketplace.", - "type": "text/plain" - }, - "key": "sellerId", - "value": "seller123" - } - ], + "query": [], "variable": [] }, "header": [ @@ -1169,22 +1089,25 @@ "value": "application/json" }, { - "key": "Accept", + "key": "Content-Type", "value": "application/json" } ], - "method": "GET", - "body": {} + "method": "PUT", + "body": { + "mode": "raw", + "raw": "{\n \"sellerId\": \"1a\",\n \"mapping\": null,\n \"matchFlux\": \"Default\"\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } }, "status": "OK", "code": 200, - "header": [ - { - "key": "Content-Type", - "value": "application/json" - } - ], - "body": "{\n \"Enabled\": false\n}", + "header": [], "cookie": [] } ], @@ -1192,13 +1115,10 @@ { "listen": "test", "script": { - "id": "6544cd2e-1d0a-4dfe-8707-510e537edf6b", + "id": "b0023ef6-06ca-4798-8f2d-6d001ae8191b", "type": "text/javascript", "exec": [ - "// Validate status 2xx \npm.test(\"[GET]::/suggestions/configuration/autoapproval/toggle - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", - "// Validate if response header has matching content-type\npm.test(\"[GET]::/suggestions/configuration/autoapproval/toggle - Content-Type is application/json\", function () {\n pm.expect(pm.response.headers.get(\"Content-Type\")).to.include(\"application/json\");\n});\n", - "// Validate if response has JSON Body \npm.test(\"[GET]::/suggestions/configuration/autoapproval/toggle - Response has JSON Body\", function () {\n pm.response.to.have.jsonBody();\n});\n", - "// Response Validation\nconst schema = {\"type\":\"object\",\"properties\":{\"Enabled\":{\"type\":\"boolean\",\"description\":\"If the autoapprove setting is active for a given seller (`true`) or not (`false`).\"}}}\n\n// Validate if response matches JSON schema \npm.test(\"[GET]::/suggestions/configuration/autoapproval/toggle - Schema is valid\", function() {\n pm.response.to.have.jsonSchema(schema,{unknownFormats: [\"int32\", \"int64\", \"float\", \"double\"]});\n});\n" + "// Validate status 2xx \npm.test(\"[PUT]::/suggestions/configuration/seller/:sellerId - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n" ] } } @@ -1208,12 +1128,12 @@ } }, { - "id": "0a0edf1e-72a8-4d1e-9f23-1286d55a70dd", - "name": "Activate autoApprove in Marketplace's Account", + "id": "5b407930-5598-405d-9cb9-afb25daebe30", + "name": "Activate autoApprove setting for a seller", "request": { - "name": "Activate autoApprove in Marketplace's Account", + "name": "Activate autoApprove setting for a seller", "description": { - "content": "This endpoint enables the autoapprove rule to a marketplace's whole Received SKUs module. Once enabling the rule, received SKUs will be automatically approved on your store, regardless of the seller. \n\n For the autoapprove rule to work as expected, the approval [Matcher score](https://help.vtex.com/en/tutorial/entendendo-a-pontuacao-do-vtex-matcher--tutorials_424) should be set up as 80 (default value), but you can configure a different number through the field `Score` in [Save Account's Approval Settings](https://developers.vtex.com/vtex-rest-api/reference/saveaccountconfig).", + "content": "This endpoint enables the auto approve setting to received SKUs from a specific seller. Be aware that once enabling the rule through this request, all received SKUs from that seller will be automatically approved on your store, regardless of the Matcher Score.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/authentication-overview#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| Channels | UI resources | **Save suggestion rules** |\r\n| Suggestion| Suggestion resources | **Main 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.\r\n\r\nTo learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication-overview#machine-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.", "type": "text/plain" }, "url": { @@ -1221,13 +1141,25 @@ "suggestions", "configuration", "autoapproval", - "toggle" + "toggle", + "seller", + ":sellerId" ], "host": [ "{{baseUrl}}" ], "query": [], "variable": [ + { + "disabled": false, + "description": { + "content": "(Required) A string that identifies the seller in the marketplace. This ID must be created by the marketplace.", + "type": "text/plain" + }, + "type": "any", + "value": "seller123", + "key": "sellerId" + }, { "disabled": false, "description": { @@ -1262,10 +1194,6 @@ { "key": "Content-Type", "value": "application/json" - }, - { - "key": "Accept", - "value": "application/json" } ], "method": "PUT", @@ -1283,9 +1211,9 @@ "response": [ { "_": { - "postman_previewlanguage": "json" + "postman_previewlanguage": "text" }, - "id": "3456c572-ccca-4e02-8a96-3fc18263d9c5", + "id": "0e9cba71-7b48-49b9-842a-de78c90cc9a5", "name": "OK", "originalRequest": { "url": { @@ -1293,7 +1221,9 @@ "suggestions", "configuration", "autoapproval", - "toggle" + "toggle", + "seller", + ":sellerId" ], "host": [ "{{baseUrl}}" @@ -1323,10 +1253,6 @@ { "key": "Content-Type", "value": "application/json" - }, - { - "key": "Accept", - "value": "application/json" } ], "method": "PUT", @@ -1343,13 +1269,7 @@ }, "status": "OK", "code": 200, - "header": [ - { - "key": "Content-Type", - "value": "application/json" - } - ], - "body": "{\n \"Enabled\": false\n}", + "header": [], "cookie": [] } ], @@ -1357,13 +1277,10 @@ { "listen": "test", "script": { - "id": "9039d5f1-5a18-471e-8e2e-7556e29752c9", + "id": "650a7321-3bb4-4fa3-8350-2821c1e2efda", "type": "text/javascript", "exec": [ - "// Validate status 2xx \npm.test(\"[PUT]::/suggestions/configuration/autoapproval/toggle - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", - "// Validate if response header has matching content-type\npm.test(\"[PUT]::/suggestions/configuration/autoapproval/toggle - Content-Type is application/json\", function () {\n pm.expect(pm.response.headers.get(\"Content-Type\")).to.include(\"application/json\");\n});\n", - "// Validate if response has JSON Body \npm.test(\"[PUT]::/suggestions/configuration/autoapproval/toggle - Response has JSON Body\", function () {\n pm.response.to.have.jsonBody();\n});\n", - "// Response Validation\nconst schema = {\"type\":\"object\",\"properties\":{\"Enabled\":{\"type\":\"boolean\",\"description\":\"If the autoapprove setting is active (`true`) or not (`false`).\"}}}\n\n// Validate if response matches JSON schema \npm.test(\"[PUT]::/suggestions/configuration/autoapproval/toggle - Schema is valid\", function() {\n pm.response.to.have.jsonSchema(schema,{unknownFormats: [\"int32\", \"int64\", \"float\", \"double\"]});\n});\n" + "// Validate status 2xx \npm.test(\"[PUT]::/suggestions/configuration/autoapproval/toggle/seller/:sellerId - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n" ] } } @@ -1371,30 +1288,113 @@ "protocolProfileBehavior": { "disableBodyPruning": true } - }, + } + ], + "event": [] + }, + { + "id": "ae5e1daa-3eaa-4ac0-ba2d-23840f1cd9c9", + "name": "Get Suggestions", + "description": { + "content": "", + "type": "text/plain" + }, + "item": [ { - "id": "5c8d075e-9953-482c-9729-550a6a474d69", - "name": "Get Account's Approval Settings", + "id": "d0a649c6-1328-4de8-b621-e3a0347051b4", + "name": "Get all SKU suggestions", "request": { - "name": "Get Account's Approval Settings", + "name": "Get all SKU suggestions", "description": { - "content": "This endpoint retrieves the current approval settings of a marketplace's Received SKUs module. Its response includes: \n\n- `Score`: Matcher scores for approving and rejecting SKUs received from sellers. \n\n- `Matchers`: All Matchers configured on the marketplace, and their respective details. \n\n- `SpecificationsMapping`: Mapping of product and SKU specifications, per seller. \n\n- `MatchFlux`: This field determines the type of approval configuration applied to SKUs received from a seller. \n\nThe possible values include: \n\n-`default`, where the Matcher reviews the SKU, and approves it based on its score. \n\n-`manual`, for manual approvals through the Received SKU UI, or Match API. \n\n-`autoApprove`, for every SKU received from a given seller to be approved automatically, regardless of their Matcher Score.", + "content": "This endpoint retrieves a list of all SKUs sent by the seller for the marketplace's approval. Marketplace operators should use this endpoint whenever they want to check the full list of received SKUs and their information. \n\nNote that all the information sent by the seller will be in the [content] object. All remaining information in this endpoint's response is given by the Matcher. \n\nMatcher rates received SKUs by correlating the data sent by sellers, to existing fields in the marketplace. The calculation of these scores determines whether the product has been: \n\n`Approved`: Score equal to or greater than 80 points. \n\n`Pending`: From 31 to 79 points.\n\n`Denied`: From 0 to 30 points. \n\nNote that if the autoApprove setting is enabled, the SKUs will be approved, regardless of the Score.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/authentication-overview#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| Channels | UI resources | **Save suggestion rules** |\r\n| Suggestion| Suggestion resources | **Main 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.\r\n\r\nTo learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication-overview#machine-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.", "type": "text/plain" }, "url": { "path": [ - "suggestions", - "configuration" + "suggestions" ], "host": [ "{{baseUrl}}" ], - "query": [], + "query": [ + { + "disabled": true, + "description": { + "content": "This field allows you to customize your search. You can fill in this query param if you want to narrow down your search using the available filters on Received SKU modules.", + "type": "text/plain" + }, + "key": "q", + "value": "" + }, + { + "disabled": true, + "description": { + "content": "This field allows users to filter SKU suggestions, by searching only the new suggestions that were just sent, and suggestions that have already been sent, but were updated. Possible values for this field include `new` and `update`.", + "type": "text/plain" + }, + "key": "type", + "value": "new" + }, + { + "disabled": true, + "description": { + "content": "A string that identifies the seller in the marketplace. This ID must be created by the marketplace and informed to the seller so it can call this endpoint.", + "type": "text/plain" + }, + "key": "seller", + "value": "" + }, + { + "disabled": true, + "description": { + "content": "Narrow down you search, filtering by status. Values allowed on this field include: `accepted`, `pending` and `denied.`", + "type": "text/plain" + }, + "key": "status", + "value": "accepted" + }, + { + "disabled": true, + "description": { + "content": "This field allows you to filter SKUs that have mapping or not. Insert `true` to filter SKUs that have mapping, or `false` to retrieve SKUs that aren't mapped.", + "type": "text/plain" + }, + "key": "hasmapping", + "value": "true" + }, + { + "disabled": true, + "description": { + "content": "Identifies the matching entity. It can be either VTEX's matcher, or an external matcher developed by partners, for example. The `matcherId`'s value can be obtained through the [Get SKU Suggestion by ID](https://developers.vtex.com/vtex-rest-api/reference/getsuggestion) endpoint.", + "type": "text/plain" + }, + "key": "matcherid", + "value": "vtex-matcher" + }, + { + "disabled": true, + "description": { + "content": "Define your pagination range, by adding the pagination starting value. Values should be bigger than 0, with a maximum of 50 records per page.", + "type": "text/plain" + }, + "key": "_from", + "value": "1" + }, + { + "disabled": true, + "description": { + "content": "Define your pagination range, by adding the pagination ending value. Values should be bigger than 0, with a maximum of 50 records per page.", + "type": "text/plain" + }, + "key": "_to", + "value": "50" + } + ], "variable": [ { "disabled": false, "description": { - "content": "(Required) Name of the VTEX account that belongs to the marketplace. All data extracted, and changes added will be posted into this account.", + "content": "(Required) Name of the VTEX account. Used as part of the URL", "type": "text/plain" }, "type": "any", @@ -1416,15 +1416,11 @@ { "disabled": false, "description": { - "content": "(Required) Describes the type of the content being sent.", + "content": "(Required) Type of the content being sent.", "type": "text/plain" }, "key": "Content-Type", "value": "application/json" - }, - { - "key": "Accept", - "value": "application/json" } ], "method": "GET", @@ -1433,20 +1429,92 @@ "response": [ { "_": { - "postman_previewlanguage": "json" + "postman_previewlanguage": "text" }, - "id": "57c38460-0896-4fb1-a491-bb3afbf109e7", + "id": "d712e34f-f839-4926-91c3-2456c83bb307", "name": "OK", "originalRequest": { "url": { "path": [ - "suggestions", - "configuration" + "suggestions" ], "host": [ "{{baseUrl}}" ], - "query": [], + "query": [ + { + "disabled": true, + "description": { + "content": "This field allows you to customize your search. You can fill in this query param if you want to narrow down your search using the available filters on Received SKU modules.", + "type": "text/plain" + }, + "key": "q", + "value": "" + }, + { + "disabled": true, + "description": { + "content": "This field allows users to filter SKU suggestions, by searching only the new suggestions that were just sent, and suggestions that have already been sent, but were updated. Possible values for this field include `new` and `update`.", + "type": "text/plain" + }, + "key": "type", + "value": "new" + }, + { + "disabled": true, + "description": { + "content": "A string that identifies the seller in the marketplace. This ID must be created by the marketplace and informed to the seller so it can call this endpoint.", + "type": "text/plain" + }, + "key": "seller", + "value": "" + }, + { + "disabled": true, + "description": { + "content": "Narrow down you search, filtering by status. Values allowed on this field include: `accepted`, `pending` and `denied.`", + "type": "text/plain" + }, + "key": "status", + "value": "accepted" + }, + { + "disabled": true, + "description": { + "content": "This field allows you to filter SKUs that have mapping or not. Insert `true` to filter SKUs that have mapping, or `false` to retrieve SKUs that aren't mapped.", + "type": "text/plain" + }, + "key": "hasmapping", + "value": "true" + }, + { + "disabled": true, + "description": { + "content": "Identifies the matching entity. It can be either VTEX's matcher, or an external matcher developed by partners, for example. The `matcherId`'s value can be obtained through the [Get SKU Suggestion by ID](https://developers.vtex.com/vtex-rest-api/reference/getsuggestion) endpoint.", + "type": "text/plain" + }, + "key": "matcherid", + "value": "vtex-matcher" + }, + { + "disabled": true, + "description": { + "content": "Define your pagination range, by adding the pagination starting value. Values should be bigger than 0, with a maximum of 50 records per page.", + "type": "text/plain" + }, + "key": "_from", + "value": "1" + }, + { + "disabled": true, + "description": { + "content": "Define your pagination range, by adding the pagination ending value. Values should be bigger than 0, with a maximum of 50 records per page.", + "type": "text/plain" + }, + "key": "_to", + "value": "50" + } + ], "variable": [] }, "header": [ @@ -1462,15 +1530,11 @@ { "disabled": false, "description": { - "content": "(Required) Describes the type of the content being sent.", + "content": "(Required) Type of the content being sent.", "type": "text/plain" }, "key": "Content-Type", "value": "application/json" - }, - { - "key": "Accept", - "value": "application/json" } ], "method": "GET", @@ -1478,13 +1542,7 @@ }, "status": "OK", "code": 200, - "header": [ - { - "key": "Content-Type", - "value": "application/json" - } - ], - "body": "{\n \"Score\": {\n \"Approve\": 80,\n \"Reject\": 30\n },\n \"Matchers\": [\n {\n \"MatcherId\": \"vtex-matcher\",\n \"hook-base-address\": \"http://portal.vtexinternal.com/api/ssm/hooks\",\n \"IsActive\": true,\n \"UpdatesNotificationEndpoint\": null,\n \"Description\": null\n }\n ],\n \"Rules\": {\n \"Item\": [],\n \"Product\": []\n },\n \"SpecificationsMapping\": [],\n \"MatchFlux\": \"Default\"\n}", + "header": [], "cookie": [] } ], @@ -1492,13 +1550,10 @@ { "listen": "test", "script": { - "id": "ec1ee7e1-574e-4c52-a97a-f517020cbe5c", + "id": "a2193251-81da-4702-aaa0-724f26003d75", "type": "text/javascript", "exec": [ - "// Validate status 2xx \npm.test(\"[GET]::/suggestions/configuration - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", - "// Validate if response header has matching content-type\npm.test(\"[GET]::/suggestions/configuration - Content-Type is application/json\", function () {\n pm.expect(pm.response.headers.get(\"Content-Type\")).to.include(\"application/json\");\n});\n", - "// Validate if response has JSON Body \npm.test(\"[GET]::/suggestions/configuration - Response has JSON Body\", function () {\n pm.response.to.have.jsonBody();\n});\n", - "// Response Validation\nconst schema = {\"type\":\"object\",\"properties\":{\"Score\":{\"type\":\"object\",\"description\":\"Matcher scores for approving and rejecting SKUs received from sellers.\"},\"Matchers\":{\"type\":\"array\",\"description\":\"All Matchers configured on the marketplace, and their respective details.\"},\"Rules\":{\"type\":\"object\",\"description\":\"Items and products.\"},\"SpecificationsMapping\":{\"type\":\"array\",\"description\":\"Mapping of product and SKU specifications, per seller.\"},\"MatchFlux\":{\"type\":\"string\",\"description\":\"This field determines the type of approval configuration applied to SKUs received from a seller.\"}}}\n\n// Validate if response matches JSON schema \npm.test(\"[GET]::/suggestions/configuration - Schema is valid\", function() {\n pm.response.to.have.jsonSchema(schema,{unknownFormats: [\"int32\", \"int64\", \"float\", \"double\"]});\n});\n" + "// Validate status 2xx \npm.test(\"[GET]::/suggestions - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n" ] } } @@ -1508,18 +1563,19 @@ } }, { - "id": "4df27ca9-7534-4f17-8a80-3aa28db9c948", - "name": "Save Account's Approval Settings", + "id": "2b69e481-2aea-468c-ab05-59402ab10a14", + "name": "Get SKU suggestion by ID", "request": { - "name": "Save Account's Approval Settings", + "name": "Get SKU suggestion by ID", "description": { - "content": "Marketplaces use this endpoint to create or update approval settings on their Received SKUs module. \n\nThe request includes all the details necessary to implement the chosen approval settings.", + "content": "This endpoint retrieves the data of a specific SKU sent by the seller, to the marketplace. Marketplaces or external matchers can call this endpoint when they want to check the information about a single SKU. \n\nNote that all the information sent by the seller will be in the [content] object. All remaining information in this endpoint's response is given by the Matcher. \n\nMatcher rates received SKUs by correlating the data sent by sellers, to existing fields in the marketplace. The calculation of these scores determines whether the product has been: \n\n`Approved`: score equal to or greater than 80 points. \n\n`Pending`: from 31 to 79 points.\n\n`Denied`: from 0 to 30 points. \n\nNote that if the autoApprove setting is enabled, the SKUs will be approved, regardless of the Score.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/authentication-overview#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| Channels | UI resources | **Send marketplace suggestion** |\r\n| Channels | UI resources | **Save suggestion rules** |\r\n| Suggestion | Suggestion resources | **Main** |\r\n\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.\r\n\r\nTo learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication-overview#machine-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.", "type": "text/plain" }, "url": { "path": [ "suggestions", - "configuration" + ":sellerId", + ":sellerSkuId" ], "host": [ "{{baseUrl}}" @@ -1529,7 +1585,27 @@ { "disabled": false, "description": { - "content": "(Required) Name of the VTEX account that belongs to the marketplace. All data extracted, and changes added will be posted into this account.", + "content": "(Required) A string that identifies the seller in the marketplace. This ID must be created by the marketplace and informed to the seller before the integration is built.", + "type": "text/plain" + }, + "type": "any", + "value": "seller123", + "key": "sellerId" + }, + { + "disabled": false, + "description": { + "content": "(Required) A string that identifies the SKU in the marketplace. This is the ID that the marketplace will use for future references to this SKU, such as price and inventory notifications.", + "type": "text/plain" + }, + "type": "any", + "value": "1234", + "key": "sellerSkuId" + }, + { + "disabled": false, + "description": { + "content": "(Required) Name of the VTEX account. Used as part of the URL", "type": "text/plain" }, "type": "any", @@ -1556,40 +1632,24 @@ }, "key": "Content-Type", "value": "application/json" - }, - { - "key": "Content-Type", - "value": "application/json" - }, - { - "key": "Accept", - "value": "application/json" } ], - "method": "PUT", - "body": { - "mode": "raw", - "raw": "{\n \"Score\": {\n \"Approve\": 80,\n \"Reject\": 30\n },\n \"Matchers\": [\n {\n \"MatcherId\": \"vtex-matcher\",\n \"hook-base-address\": \"http://simple-suggestion-matcher.vtex.com.br\",\n \"IsActive\": true,\n \"UpdatesNotificationEndpoint\": null,\n \"Description\": null\n }\n ],\n \"SpecificationsMapping\": [],\n \"MatchFlux\": \"AutoApprove\"\n}", - "options": { - "raw": { - "headerFamily": "json", - "language": "json" - } - } - } + "method": "GET", + "body": {} }, "response": [ { "_": { - "postman_previewlanguage": "json" + "postman_previewlanguage": "text" }, - "id": "50bae3e2-984e-46f4-aff7-6f947197eeed", + "id": "f308f6d8-74e4-45ad-859a-d7dc6ebd7a45", "name": "OK", "originalRequest": { "url": { "path": [ "suggestions", - "configuration" + ":sellerId", + ":sellerSkuId" ], "host": [ "{{baseUrl}}" @@ -1615,37 +1675,14 @@ }, "key": "Content-Type", "value": "application/json" - }, - { - "key": "Content-Type", - "value": "application/json" - }, - { - "key": "Accept", - "value": "application/json" } ], - "method": "PUT", - "body": { - "mode": "raw", - "raw": "{\n \"Score\": {\n \"Approve\": 80,\n \"Reject\": 30\n },\n \"Matchers\": [\n {\n \"MatcherId\": \"vtex-matcher\",\n \"hook-base-address\": \"http://simple-suggestion-matcher.vtex.com.br\",\n \"IsActive\": true,\n \"UpdatesNotificationEndpoint\": null,\n \"Description\": null\n }\n ],\n \"SpecificationsMapping\": [],\n \"MatchFlux\": \"AutoApprove\"\n}", - "options": { - "raw": { - "headerFamily": "json", - "language": "json" - } - } - } + "method": "GET", + "body": {} }, "status": "OK", "code": 200, - "header": [ - { - "key": "Content-Type", - "value": "application/json" - } - ], - "body": "{\n \"Score\": {\n \"Approve\": 80,\n \"Reject\": 30\n },\n \"Matchers\": [\n {\n \"MatcherId\": \"vtex-matcher\",\n \"hook-base-address\": \"http://simple-suggestion-matcher.vtex.com.br\",\n \"IsActive\": true,\n \"UpdatesNotificationEndpoint\": \"notification.endpoint\",\n \"Description\": \"Note\"\n }\n ],\n \"Rules\": {\n \"Item\": [\n 1\n ],\n \"Product\": [\n \"Shirt\"\n ]\n },\n \"SpecificationsMapping\": [\n {\n \"SellerId\": \"Store1\",\n \"Mapping\": {\n \"Yellow\": \"Light yellow\"\n }\n }\n ],\n \"MatchFlux\": \"AutoApprove\"\n}", + "header": [], "cookie": [] } ], @@ -1653,13 +1690,10 @@ { "listen": "test", "script": { - "id": "7bd7a5e8-f72b-4a3d-9f27-f52855d03ef7", + "id": "847f8081-26ce-4e51-8468-5b9852c5b7c6", "type": "text/javascript", "exec": [ - "// Validate status 2xx \npm.test(\"[PUT]::/suggestions/configuration - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", - "// Validate if response header has matching content-type\npm.test(\"[PUT]::/suggestions/configuration - Content-Type is application/json\", function () {\n pm.expect(pm.response.headers.get(\"Content-Type\")).to.include(\"application/json\");\n});\n", - "// Validate if response has JSON Body \npm.test(\"[PUT]::/suggestions/configuration - Response has JSON Body\", function () {\n pm.response.to.have.jsonBody();\n});\n", - "// Response Validation\nconst schema = {\"type\":\"object\",\"example\":{\"Score\":{\"Approve\":80,\"Reject\":30},\"Matchers\":[{\"MatcherId\":\"vtex-matcher\",\"hook-base-address\":\"http://simple-suggestion-matcher.vtex.com.br\",\"IsActive\":true,\"UpdatesNotificationEndpoint\":\"notification.endpoint\",\"Description\":\"Note\"}],\"Rules\":{\"Item\":[1],\"Product\":[\"Shirt\"]},\"SpecificationsMapping\":[{\"SellerId\":\"Store1\",\"Mapping\":{\"Yellow\":\"Light yellow\"}}],\"MatchFlux\":\"AutoApprove\"},\"properties\":{\"Score\":{\"type\":\"object\",\"description\":\"[Matcher's rates](https://help.vtex.com/en/tutorial/understanding-vtex-matcher-scoring) to approve or reject [received SKUs](https://help.vtex.com/en/tutorial/cataloging-received-skus--tutorials_396) sent by sellers.\",\"properties\":{\"Approve\":{\"type\":\"integer\",\"description\":\"Score to approve SKUs sent by sellers.\"},\"Reject\":{\"type\":\"integer\",\"description\":\"Score to reject SKUs sent by sellers.\"}},\"example\":{\"Approve\":80,\"Reject\":30}},\"Matchers\":{\"type\":\"array\",\"description\":\"[Matchers](https://help.vtex.com/en/tutorial/understanding-vtex-matcher-scoring) configurations for approving and rejecting [received SKUs](https://help.vtex.com/en/tutorial/cataloging-received-skus--tutorials_396) sent by sellers.\",\"properties\":{\"MatcherId\":{\"type\":\"string\",\"description\":\"Identifies the matching entity. It can be either [VTEX's matcher](https://help.vtex.com/en/tutorial/understanding-vtex-matcher-scoring), or an external matcher.\"},\"hook-base-address\":{\"type\":\"string\",\"description\":\"The given Matcher's URL.\"},\"IsActive\":{\"type\":\"boolean\",\"description\":\"Whether the matcher is active in the account (`true`), or not (`false`).\"},\"UpdatesNotificationEndpoint\":{\"type\":\"string\",\"description\":\"The [received SKUs](https://help.vtex.com/en/tutorial/cataloging-received-skus--tutorials_396) module calls this endpoint for matcher's suggestions updates.\"},\"Description\":{\"type\":\"string\",\"description\":\"The note inserted on the request body.\"}}},\"Rules\":{\"type\":\"object\",\"description\":\"Items and products that belong to sellers.\",\"properties\":{\"Item\":{\"type\":\"array\",\"description\":\"SKUs' ID.\",\"items\":{\"type\":\"integer\",\"description\":\"SKU ID.\"}},\"Product\":{\"type\":\"array\",\"description\":\"Product's name.\",\"items\":{\"type\":\"string\",\"description\":\"Product name.\"}}}},\"SpecificationsMapping\":{\"type\":\"array\",\"description\":\"This attribute maps product and SKU's specifications between the marketplace and the seller.\",\"properties\":{\"SellerId\":{\"type\":\"string\",\"description\":\"The Seller ID.\"},\"Mapping\":{\"type\":\"object\",\"description\":\"The attributes and values mapped between the marketplace and the seller.\"}}},\"MatchFlux\":{\"type\":\"string\",\"description\":\"Type of approval configuration that apply to received SKUs sent by sellers. The possible values are: \\n\\n`default`: the matcher approves the SKU. \\n\\n`manual`: manual SKU's approvals. \\n\\n`AutoApprove`: automatic SKU's approvals.\"}}}\n\n// Validate if response matches JSON schema \npm.test(\"[PUT]::/suggestions/configuration - Schema is valid\", function() {\n pm.response.to.have.jsonSchema(schema,{unknownFormats: [\"int32\", \"int64\", \"float\", \"double\"]});\n});\n" + "// Validate status 2xx \npm.test(\"[GET]::/suggestions/:sellerId/:sellerSkuId - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n" ] } } @@ -1667,22 +1701,32 @@ "protocolProfileBehavior": { "disableBodyPruning": true } - }, + } + ], + "event": [] + }, + { + "id": "7a7fcead-65d0-4e56-a419-d944919400f5", + "name": "Manage Suggestions", + "description": { + "content": "", + "type": "text/plain" + }, + "item": [ { - "id": "584e0c6e-0424-41a8-99c5-e02b1c0d7c18", - "name": "Get Account's Matcher Settings", + "id": "a5393323-4d60-407f-b9bd-29b0b55a7dff", + "name": "Send SKU suggestion", "request": { - "name": "Get Account's Matcher Settings", + "name": "Send SKU suggestion", "description": { - "content": "This endpoint will be used by the marketplace to query the matcher's current approval settings on their incoming SKUs module. If the account has no matcher configured, the response will be `404 Not Found`. \n\nFor account approval configuration information, with response including specification information, see [Get Account Approval Settings](https://developers.vtex.com/docs/api-reference/marketplace-apis- suggestions#get-/suggestions /configuration) terminal. \n\nThe [VTEX matcher](https://help.vtex.com/pt/tutorial/entendendo-a-punctuacao-do-vtex-matcher--tutorials_424) is a tool used by marketplaces to evaluate SKUs corresponding to information from an advertisement of the seller, with those of items already present in the marketplace catalog.", + "content": "This request is used by the seller when it wants to suggest that one of their SKUs is sold in the marketplace.\n\nBefore using this request, the seller should always use the [Change Notification](https://developers.vtex.com/vtex-rest-api/reference/catalog-api-get-seller-sku-notification) request in order to check if the SKU already exists in the marketplace. If it doesn't, then this is the next call in the SKU integration flow.\n\nIn the Send Suggestion request, the seller must send information about the SKU, such as the product and SKU name, the seller ID, and the image URL. All parameters are explained below.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/authentication-overview#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| Channels | UI resources | **Send marketplace suggestion** |\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.\r\n\r\nTo learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication-overview#machine-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.", "type": "text/plain" }, "url": { "path": [ "suggestions", - "configuration", - "account", - "config" + ":sellerId", + ":sellerSkuId" ], "host": [ "{{baseUrl}}" @@ -1692,7 +1736,27 @@ { "disabled": false, "description": { - "content": "(Required) Name of the VTEX account that belongs to the marketplace. All data extracted, and changes added will be posted into this account.", + "content": "(Required) A string that identifies the seller in the marketplace. This ID must be created by the marketplace and informed to the seller before the integration is built.", + "type": "text/plain" + }, + "type": "any", + "value": "seller123", + "key": "sellerId" + }, + { + "disabled": false, + "description": { + "content": "(Required) A string that identifies the SKU in the seller. This is the ID that the marketplace will use for future references to this SKU, such as price and inventory notifications.", + "type": "text/plain" + }, + "type": "any", + "value": "1234", + "key": "sellerSkuId" + }, + { + "disabled": false, + "description": { + "content": "(Required) Name of the VTEX account to which the seller wants to suggest a new SKU. It is used as part of the request URL.", "type": "text/plain" }, "type": "any", @@ -1705,7 +1769,7 @@ { "disabled": false, "description": { - "content": "(Required) HTTP Client Negotiation Accept Header. Indicates the types of responses the client can understand.", + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", "type": "text/plain" }, "key": "Accept", @@ -1721,27 +1785,35 @@ "value": "application/json" }, { - "key": "Accept", + "key": "Content-Type", "value": "application/json" } ], - "method": "GET", - "body": {} + "method": "PUT", + "body": { + "mode": "raw", + "raw": "{\n \"ProductId\": \"321\",\n \"ProductName\": \"Product sample\",\n \"NameComplete\": \"Complete product name\",\n \"ProductDescription\": \"sample\",\n \"BrandName\": \"Brand 1\",\n \"SkuName\": \"Sku sample\",\n \"SellerId\": \"string\",\n \"Height\": 1,\n \"Width\": 1,\n \"Length\": 1,\n \"Weight\": 1,\n \"Updated\": null,\n \"RefId\": \"REFID123\",\n \"SellerStockKeepingUnitId\": 567,\n \"CategoryFullPath\": \"Category 1\",\n \"Images\": [\n {\n \"imageName\": \"Principal\",\n \"imageUrl\": \"https://i.pinimg.com/originals/2d/96/4a/2d964a6bf37d9224d0615dc85fccdd62.jpg\"\n }\n ],\n \"ProductSpecifications\": [\n {\n \"fieldName\": \"Fabric\",\n \"fieldValues\": [\n \"Cotton\",\n \"Velvet\"\n ]\n }\n ],\n \"SkuSpecifications\": [\n {\n \"fieldName\": \"Color\",\n \"fieldValues\": [\n \"Red\",\n \"Blue\"\n ]\n }\n ],\n \"EAN\": \"EAN123\",\n \"MeasurementUnit\": \"un\",\n \"UnitMultiplier\": 1,\n \"AvailableQuantity\": 111,\n \"Pricing\": {\n \"Currency\": \"BRL\",\n \"SalePrice\": 399,\n \"CurrencySymbol\": \"R$\"\n }\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } }, "response": [ { "_": { - "postman_previewlanguage": "json" + "postman_previewlanguage": "text" }, - "id": "11cb9a8d-b7b7-414f-952e-1e47c24af774", + "id": "6c28e532-ef29-4b03-93f6-2ae5bda11986", "name": "OK", "originalRequest": { "url": { "path": [ "suggestions", - "configuration", - "account", - "config" + ":sellerId", + ":sellerSkuId" ], "host": [ "{{baseUrl}}" @@ -1753,7 +1825,7 @@ { "disabled": false, "description": { - "content": "(Required) HTTP Client Negotiation Accept Header. Indicates the types of responses the client can understand.", + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", "type": "text/plain" }, "key": "Accept", @@ -1769,22 +1841,25 @@ "value": "application/json" }, { - "key": "Accept", + "key": "Content-Type", "value": "application/json" } ], - "method": "GET", - "body": {} + "method": "PUT", + "body": { + "mode": "raw", + "raw": "{\n \"ProductId\": \"321\",\n \"ProductName\": \"Product sample\",\n \"NameComplete\": \"Complete product name\",\n \"ProductDescription\": \"sample\",\n \"BrandName\": \"Brand 1\",\n \"SkuName\": \"Sku sample\",\n \"SellerId\": \"string\",\n \"Height\": 1,\n \"Width\": 1,\n \"Length\": 1,\n \"Weight\": 1,\n \"Updated\": null,\n \"RefId\": \"REFID123\",\n \"SellerStockKeepingUnitId\": 567,\n \"CategoryFullPath\": \"Category 1\",\n \"Images\": [\n {\n \"imageName\": \"Principal\",\n \"imageUrl\": \"https://i.pinimg.com/originals/2d/96/4a/2d964a6bf37d9224d0615dc85fccdd62.jpg\"\n }\n ],\n \"ProductSpecifications\": [\n {\n \"fieldName\": \"Fabric\",\n \"fieldValues\": [\n \"Cotton\",\n \"Velvet\"\n ]\n }\n ],\n \"SkuSpecifications\": [\n {\n \"fieldName\": \"Color\",\n \"fieldValues\": [\n \"Red\",\n \"Blue\"\n ]\n }\n ],\n \"EAN\": \"EAN123\",\n \"MeasurementUnit\": \"un\",\n \"UnitMultiplier\": 1,\n \"AvailableQuantity\": 111,\n \"Pricing\": {\n \"Currency\": \"BRL\",\n \"SalePrice\": 399,\n \"CurrencySymbol\": \"R$\"\n }\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } }, "status": "OK", "code": 200, - "header": [ - { - "key": "Content-Type", - "value": "application/json" - } - ], - "body": "{\n \"score\": {\n \"approve\": 85,\n \"pending\": 31,\n \"reject\": 30\n },\n \"matchers\": [\n {\n \"matcherId\": \"example-matcher\",\n \"hook-base-address\": \"http://portal.vtexinternal.com.br/api/u90/hooks\",\n \"isActive\": true,\n \"updatesNotificationEndpoint\": null,\n \"description\": null\n }\n ],\n \"rules\": {\n \"item\": [],\n \"product\": []\n },\n \"specificationsMapping\": [],\n \"matchFlux\": \"Default\"\n}", + "header": [], "cookie": [] } ], @@ -1792,13 +1867,10 @@ { "listen": "test", "script": { - "id": "986db8e5-a709-4927-9c0e-d6bfc50c47d7", + "id": "77597860-7f06-4467-a737-f373c67bf3de", "type": "text/javascript", "exec": [ - "// Validate status 2xx \npm.test(\"[GET]::/suggestions/configuration/account/config - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", - "// Validate if response header has matching content-type\npm.test(\"[GET]::/suggestions/configuration/account/config - Content-Type is application/json\", function () {\n pm.expect(pm.response.headers.get(\"Content-Type\")).to.include(\"application/json\");\n});\n", - "// Validate if response has JSON Body \npm.test(\"[GET]::/suggestions/configuration/account/config - Response has JSON Body\", function () {\n pm.response.to.have.jsonBody();\n});\n", - "// Response Validation\nconst schema = {\"description\":\"Response from Get Account's Matcher Settings endpoint with information about current matcher score setting, rules, spec mapping, and matchFlux.\",\"type\":\"object\",\"properties\":{\"score\":{\"description\":\"[Matcher](https://help.vtex.com/pt/tutorial/entendendo-a-pontuacao-do-vtex-matcher--tutorials_424) rates received SKUs by comparing the data sent by sellers to existing fields in the marketplace. The calculation of these scores determines whether the product has been: `Approved`, `Pending` or `Denied`.\",\"type\":\"object\",\"properties\":{\"approve\":{\"type\":\"integer\",\"description\":\"Minimum approval score set by the marketplace.\",\"default\":80},\"pending\":{\"type\":\"integer\",\"description\":\"Minimum value for the ad to be pending.\",\"default\":31},\"reject\":{\"type\":\"integer\",\"description\":\"Bounce score set by marketplace.\",\"default\":30}}},\"matchers\":{\"description\":\"Array of objects that presents a list of matchers configured in the marketplace. If the marketplace has more than one matcher configured in the account, an array will be displayed for each matcher.\\n\\n By default, the VTEX Matcher is set up automatically in VTEX account.\",\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"matcherId\":{\"type\":\"string\",\"description\":\"The Matcher Id.\"},\"hook-base-address\":{\"type\":\"string\",\"description\":\"The base address of the Matcher hook.\"},\"isActive\":{\"type\":\"boolean\",\"description\":\"Indicates if Matcher is active or not. `TRUE` = Matcher is active or `FALSE` = Matcher is inactive.\",\"example\":true}}}},\"rules\":{\"description\":\"Arrays object that contains the rules defined for product approval.\",\"type\":\"object\",\"properties\":{\"item\":{\"type\":\"array\",\"description\":\"A list of rules for items.\"},\"product\":{\"type\":\"array\",\"description\":\"A list of rules for products.\"}}},\"specificationsMapping\":{\"type\":\"array\",\"description\":\"This field will show a list of which product specs and SKU are configured to be mapped.\"},\"matchFlux\":{\"type\":\"string\",\"description\":\"This field shows what type of approval setting is being applied to SKUs received from a seller. \\n\\nPossible values include: \\n\\n-`default`: where Matcher reviews the SKU and approves it based on its score. \\n\\n-`manual`: for manual approvals via incoming SKU UI or mailing API. \\n\\n-`autoApprove`: so that every SKU received from a given seller is automatically approved, regardless of its Matcher Score.\"}}}\n\n// Validate if response matches JSON schema \npm.test(\"[GET]::/suggestions/configuration/account/config - Schema is valid\", function() {\n pm.response.to.have.jsonSchema(schema,{unknownFormats: [\"int32\", \"int64\", \"float\", \"double\"]});\n});\n" + "// Validate status 2xx \npm.test(\"[PUT]::/suggestions/:sellerId/:sellerSkuId - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n" ] } } @@ -1808,20 +1880,19 @@ } }, { - "id": "d3df5f0b-2ef9-4d95-b694-dac3219ca015", - "name": "Get Seller's Approval Settings", + "id": "983ecb8b-7646-4d90-bf33-7cacf6c996d3", + "name": "Delete SKU suggestion", "request": { - "name": "Get Seller's Approval Settings", + "name": "Delete SKU suggestion", "description": { - "content": "This endpoint retrieves the current Received SKUs approval settings applied to a specific seller. Its response includes: \n\n- `sellerId`: A string that identifies the seller in the marketplace. \n\n- `accountId`: Marketplace’s account ID. \n\n- `accountName`: Marketplace’s account name. \n\n- `mapping`: Mapping of SKU and product Specifications. \n\n- `matchFlux`: This field determines the type of approval configuration applied to SKUs received from a seller. \n\nThe possible values include: \n\n-`default`, where the Matcher reviews the SKU, and approves it based on its score. \n\n-`manual`, for manual approvals through the Received SKU UI and Match API. \n\n-`autoApprove`, for every SKU received from a given seller to be approved automatically , regardless of the Matcher Score.", + "content": "This endpoint deletes a chosen SKU suggestion. Only one SKU should be deleted per request. This action cannot be undone. A workaround to revert a deletion is to send the suggestion again, through the Send Suggestion API.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/authentication-overview#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| Channels | UI resources | **Save suggestion rules** |\r\n| Suggestion | Suggestion resources | **Main** |\r\n\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.\r\n\r\nTo learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication-overview#machine-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.", "type": "text/plain" }, "url": { "path": [ "suggestions", - "configuration", - "seller", - ":sellerId" + ":sellerId", + ":sellerSkuId" ], "host": [ "{{baseUrl}}" @@ -1831,7 +1902,7 @@ { "disabled": false, "description": { - "content": "(Required) A string that identifies the seller in the marketplace. This ID must be created by the marketplace.", + "content": "(Required) A string that identifies the seller in the marketplace. This ID must be created by the marketplace and informed to the seller before the integration is built.", "type": "text/plain" }, "type": "any", @@ -1841,7 +1912,17 @@ { "disabled": false, "description": { - "content": "(Required) Name of the VTEX account that belongs to the marketplace. All data extracted, and changes added will be posted into this account.", + "content": "(Required) A string that identifies the SKU in the marketplace. This is the ID that the marketplace will use for future references to this SKU, such as price and inventory notifications.", + "type": "text/plain" + }, + "type": "any", + "value": "1234", + "key": "sellerSkuId" + }, + { + "disabled": false, + "description": { + "content": "(Required) Name of the VTEX account. Used as part of the URL.", "type": "text/plain" }, "type": "any", @@ -1868,29 +1949,24 @@ }, "key": "Content-Type", "value": "application/json" - }, - { - "key": "Accept", - "value": "application/json" } ], - "method": "GET", + "method": "DELETE", "body": {} }, "response": [ { "_": { - "postman_previewlanguage": "json" + "postman_previewlanguage": "text" }, - "id": "1aa7cb3c-7ef2-457d-bc22-de1a58655747", + "id": "48050612-1093-41c3-8477-27e8f3744a52", "name": "OK", "originalRequest": { "url": { "path": [ "suggestions", - "configuration", - "seller", - ":sellerId" + ":sellerId", + ":sellerSkuId" ], "host": [ "{{baseUrl}}" @@ -1916,24 +1992,14 @@ }, "key": "Content-Type", "value": "application/json" - }, - { - "key": "Accept", - "value": "application/json" } ], - "method": "GET", + "method": "DELETE", "body": {} }, "status": "OK", "code": 200, - "header": [ - { - "key": "Content-Type", - "value": "application/json" - } - ], - "body": "{\n \"sellerId\": \"sellerexample\",\n \"accountId\": \"d74dau71f-325a-4463-bd53-ae8b0453186ca\",\n \"accountName\": \"marketplaceexample\",\n \"mapping\": {\n \"defaultColor\": \"white /black\",\n \"searchColor\": \"color1, color2\",\n \"color1\": \"black\",\n \"color2\": \"white\",\n \"color\": \"black\",\n \"size\": \"EUR44\"\n },\n \"matchFlux\": \"default\"\n}", + "header": [], "cookie": [] } ], @@ -1941,13 +2007,10 @@ { "listen": "test", "script": { - "id": "71defea0-41da-4484-b5c2-5f04a0a64518", + "id": "79cc6a3f-faa3-4d80-862d-1ea10630cd3d", "type": "text/javascript", "exec": [ - "// Validate status 2xx \npm.test(\"[GET]::/suggestions/configuration/seller/:sellerId - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", - "// Validate if response header has matching content-type\npm.test(\"[GET]::/suggestions/configuration/seller/:sellerId - Content-Type is application/json\", function () {\n pm.expect(pm.response.headers.get(\"Content-Type\")).to.include(\"application/json\");\n});\n", - "// Validate if response has JSON Body \npm.test(\"[GET]::/suggestions/configuration/seller/:sellerId - Response has JSON Body\", function () {\n pm.response.to.have.jsonBody();\n});\n", - "// Response Validation\nconst schema = {\"type\":\"object\",\"properties\":{\"sellerId\":{\"type\":\"string\",\"description\":\"A string that identifies the seller in the marketplace.\",\"example\":\"sellerexample\"},\"accountId\":{\"type\":\"string\",\"description\":\"Marketplace’s account ID.\",\"example\":\"d74daf1f-355a-4463-bdc7-ae8b045311c\"},\"accountName\":{\"type\":\"string\",\"description\":\"Marketplace’s account name.\",\"example\":\"marketplaceexample\"},\"mapping\":{\"type\":\"object\",\"default\":{},\"description\":\"SKU Mapping Information and Product [Specifications](https://developers.vtex.com/docs/guides/catalog-overview#configuring-initial-settings-mandatory).\\n\\n The properties included within `mapping` can change according to the product type, the `color` specification and its variations described in this example are just one of the possibilities. The values received in this call's payload for those properties depend on the seller's catalog architecture, and are not default. \\n\\nSee some examples of specifications: \\n\\n- Voltage \\n\\n- Power \\n\\n- Size \\n\\n- Height \\n\\n- Width.\",\"properties\":{\"defaultColor\":{\"type\":\"string\",\"description\":\"The field will indicate the default color predefined by the seller in cases where specific product colors are not defined. This field is neither mandatory nor default, it will depend on the architecture of the seller's catalog.\",\"example\":\"white /black\"},\"searchColor\":{\"type\":\"string\",\"description\":\"Field that provides the available colors to filter searches. This field is neither mandatory nor default, it will depend on the architecture of the seller's catalog.\",\"example\":\"color1, color2\"},\"color1\":{\"type\":\"string\",\"description\":\"`color1` available for search filter. This field is neither mandatory nor default, it will depend on the architecture of the seller's catalog.\",\"example\":\"black\"},\"color2\":{\"type\":\"string\",\"description\":\"`color2` available for search filter. This field is neither mandatory nor default, it will depend on the architecture of the seller's catalog.\",\"example\":\"white\"},\"color\":{\"type\":\"string\",\"description\":\"Indicates the predominant or main color of the product. This field is neither mandatory nor default, it will depend on the architecture of the seller's catalog.\",\"example\":\"black\"},\"size\":{\"type\":\"string\",\"description\":\"Indicates the size of the product.This field is neither mandatory nor default, it will depend on the architecture of the seller's catalog.\",\"example\":\"EUR44\"}}},\"matchFlux\":{\"type\":\"string\",\"description\":\"This field determines the type of [approval configuration applied to SKUs received from a seller](https://developers.vtex.com/docs/api-reference/marketplace-apis-suggestions#put-/suggestions/configuration/seller/-sellerId-). \\n\\nThe possible values include: \\n\\n-`default`, where the Matcher reviews the SKU, and approves it based on its score. \\n\\n-`manual`, for manual approvals through the Received SKU UI and Match API. \\n\\n-`autoApprove`, for every SKU received from a given seller to be approved automatically, regardless of the Matcher Score.\",\"example\":\"autoApprove\"}}}\n\n// Validate if response matches JSON schema \npm.test(\"[GET]::/suggestions/configuration/seller/:sellerId - Schema is valid\", function() {\n pm.response.to.have.jsonSchema(schema,{unknownFormats: [\"int32\", \"int64\", \"float\", \"double\"]});\n});\n" + "// Validate status 2xx \npm.test(\"[DELETE]::/suggestions/:sellerId/:sellerSkuId - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n" ] } } @@ -1955,22 +2018,33 @@ "protocolProfileBehavior": { "disableBodyPruning": true } - }, + } + ], + "event": [] + }, + { + "id": "6aa8db90-c7d7-43a8-bbf1-fafcd91d21a1", + "name": "Get Versions", + "description": { + "content": "", + "type": "text/plain" + }, + "item": [ { - "id": "dcd77acc-c414-4cb5-a153-062c2bb64012", - "name": "Save Seller's Approval Settings", + "id": "91ce20cc-4261-4108-ba75-0c428042d3e2", + "name": "Get all versions", "request": { - "name": "Save Seller's Approval Settings", + "name": "Get all versions", "description": { - "content": "Marketplaces use this endpoint to create or update approval settings to a specific seller, on the Received SKUs module. \n\nThe request includes all the details necessary to implement the chosen approval settings.", + "content": "Whenever a SKU suggestion is updated or changed, a new version of the original one is created. All versions are logged, so you can search for previous our current states of SKU suggestions. \n\nThis endpoint retrieves the data of *all* previous and latest versions of a specific SKU suggestion, sent by the seller. Whenever a SKU is updated, it is important to map previous versions, to compare and identify changes. \n\nThe response's object [latestversion] provides the information of the most recent version of that SKU suggestion.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/authentication-overview#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| Channels | UI resources | **Save suggestion rules** |\r\n| Suggestion | Suggestion resources | **Main** |\r\n\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.\r\n\r\nTo learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication-overview#machine-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.", "type": "text/plain" }, "url": { "path": [ "suggestions", - "configuration", - "seller", - ":sellerId" + ":sellerId", + ":sellerskuid", + "versions" ], "host": [ "{{baseUrl}}" @@ -1980,7 +2054,7 @@ { "disabled": false, "description": { - "content": "(Required) A string that identifies the seller in the marketplace. This ID must be created by the marketplace.", + "content": "(Required) A string that identifies the seller in the marketplace. This ID must be created by the marketplace and informed to the seller before the integration is built.", "type": "text/plain" }, "type": "any", @@ -1990,7 +2064,17 @@ { "disabled": false, "description": { - "content": "(Required) Name of the VTEX account that belongs to the marketplace. All data extracted, and changes added will be posted into this account.", + "content": "(Required) A string that identifies the SKU in the marketplace. This is the ID that the marketplace will use for future references to this SKU, such as price and inventory notifications.", + "type": "text/plain" + }, + "type": "any", + "value": "1234", + "key": "sellerskuid" + }, + { + "disabled": false, + "description": { + "content": "(Required) Name of the VTEX account. Used as part of the URL", "type": "text/plain" }, "type": "any", @@ -2003,7 +2087,7 @@ { "disabled": false, "description": { - "content": "(Required) HTTP Client Negotiation Accept Header. Indicates the types of responses the client can understand.", + "content": "(Required) HTTP Client Negotiation Accept Header. Indicates the types of responses the client can understand", "type": "text/plain" }, "key": "Accept", @@ -2017,38 +2101,25 @@ }, "key": "Content-Type", "value": "application/json" - }, - { - "key": "Content-Type", - "value": "application/json" } ], - "method": "PUT", - "body": { - "mode": "raw", - "raw": "{\n \"sellerId\": \"1a\",\n \"mapping\": null,\n \"matchFlux\": \"Default\"\n}", - "options": { - "raw": { - "headerFamily": "json", - "language": "json" - } - } - } + "method": "GET", + "body": {} }, "response": [ { "_": { "postman_previewlanguage": "text" }, - "id": "9ca8f031-80dd-4c71-a3d6-fa3f9382be96", + "id": "52815855-c2c4-4029-b021-40d882a88809", "name": "OK", "originalRequest": { "url": { "path": [ "suggestions", - "configuration", - "seller", - ":sellerId" + ":sellerId", + ":sellerskuid", + "versions" ], "host": [ "{{baseUrl}}" @@ -2060,7 +2131,7 @@ { "disabled": false, "description": { - "content": "(Required) HTTP Client Negotiation Accept Header. Indicates the types of responses the client can understand.", + "content": "(Required) HTTP Client Negotiation Accept Header. Indicates the types of responses the client can understand", "type": "text/plain" }, "key": "Accept", @@ -2074,23 +2145,10 @@ }, "key": "Content-Type", "value": "application/json" - }, - { - "key": "Content-Type", - "value": "application/json" } ], - "method": "PUT", - "body": { - "mode": "raw", - "raw": "{\n \"sellerId\": \"1a\",\n \"mapping\": null,\n \"matchFlux\": \"Default\"\n}", - "options": { - "raw": { - "headerFamily": "json", - "language": "json" - } - } - } + "method": "GET", + "body": {} }, "status": "OK", "code": 200, @@ -2102,10 +2160,10 @@ { "listen": "test", "script": { - "id": "f5746215-34e4-4b87-9153-d679cc648406", + "id": "96208e9f-05ff-452b-ad5a-f1e4e4ba04cc", "type": "text/javascript", "exec": [ - "// Validate status 2xx \npm.test(\"[PUT]::/suggestions/configuration/seller/:sellerId - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n" + "// Validate status 2xx \npm.test(\"[GET]::/suggestions/:sellerId/:sellerskuid/versions - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n" ] } } @@ -2115,22 +2173,21 @@ } }, { - "id": "0ca44f99-e085-4546-b814-2fdb0e6a08e9", - "name": "Activate autoApprove Setting for a Seller", + "id": "e7e2c9f8-7256-480b-ad27-c93cd33464cc", + "name": "Get version by ID", "request": { - "name": "Activate autoApprove Setting for a Seller", + "name": "Get version by ID", "description": { - "content": "This endpoint enables the auto approve setting to received SKUs from a specific seller. Be aware that once enabling the rule through this request, all received SKUs from that seller will be automatically approved on your store, regardless of the Matcher Score.", + "content": "Whenever a SKU suggestion is updated or changed, a new version of the original one is created. All versions are logged, so you can search for previous our current states of SKU suggestions. \n\n This endpoint retrieves a specific *version* of a chosen SKU sent by the seller. Add the Seller's ID, Seller's SKU ID, and version ID in the path to detail your search.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/authentication-overview#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| Channels | UI resources | **Save suggestion rules** |\r\n| Suggestion | Suggestion resources | **Main** |\r\n\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.\r\n\r\nTo learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication-overview#machine-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.", "type": "text/plain" }, "url": { "path": [ "suggestions", - "configuration", - "autoapproval", - "toggle", - "seller", - ":sellerId" + ":sellerId", + ":sellerskuid", + "versions", + ":version" ], "host": [ "{{baseUrl}}" @@ -2140,7 +2197,7 @@ { "disabled": false, "description": { - "content": "(Required) A string that identifies the seller in the marketplace. This ID must be created by the marketplace.", + "content": "(Required) A string that identifies the seller in the marketplace. This ID must be created by the marketplace and informed to the seller before the integration is built.", "type": "text/plain" }, "type": "any", @@ -2150,7 +2207,27 @@ { "disabled": false, "description": { - "content": "(Required) Name of the VTEX account that belongs to the marketplace. All data extracted, and changes added will be posted into this account.", + "content": "(Required) A string that identifies the SKU in the marketplace. This is the ID that the marketplace will use for future references to this SKU, such as price and inventory notifications.", + "type": "text/plain" + }, + "type": "any", + "value": "1234", + "key": "sellerskuid" + }, + { + "disabled": false, + "description": { + "content": "(Required) Whenever an SKU Suggestion is updated or changed, a new version of the original one is created. All versions are logged, so you can search for previous our current states of SKU suggestions. This field is the `versionId` associated to the version you choose to search for. You can get this field's value through the [Get SKU Suggestion by ID](https://developers.vtex.com/vtex-rest-api/reference/getsuggestion). through the `latestVersionId` field.", + "type": "text/plain" + }, + "type": "any", + "value": "09072021142808277", + "key": "version" + }, + { + "disabled": false, + "description": { + "content": "(Required) Name of the VTEX account. Used as part of the URL", "type": "text/plain" }, "type": "any", @@ -2163,7 +2240,7 @@ { "disabled": false, "description": { - "content": "(Required) HTTP Client Negotiation Accept Header. Indicates the types of responses the client can understand.", + "content": "(Required) HTTP Client Negotiation Accept Header. Indicates the types of responses the client can understand", "type": "text/plain" }, "key": "Accept", @@ -2177,40 +2254,26 @@ }, "key": "Content-Type", "value": "application/json" - }, - { - "key": "Content-Type", - "value": "application/json" } ], - "method": "PUT", - "body": { - "mode": "raw", - "raw": "{\n \"Enabled\": true\n}", - "options": { - "raw": { - "headerFamily": "json", - "language": "json" - } - } - } + "method": "GET", + "body": {} }, "response": [ { "_": { "postman_previewlanguage": "text" }, - "id": "fe167d41-8708-4d98-8deb-b84a9f630659", + "id": "9a2d3c1c-a615-451b-a626-69497af9e3d7", "name": "OK", "originalRequest": { "url": { "path": [ "suggestions", - "configuration", - "autoapproval", - "toggle", - "seller", - ":sellerId" + ":sellerId", + ":sellerskuid", + "versions", + ":version" ], "host": [ "{{baseUrl}}" @@ -2222,7 +2285,7 @@ { "disabled": false, "description": { - "content": "(Required) HTTP Client Negotiation Accept Header. Indicates the types of responses the client can understand.", + "content": "(Required) HTTP Client Negotiation Accept Header. Indicates the types of responses the client can understand", "type": "text/plain" }, "key": "Accept", @@ -2236,23 +2299,10 @@ }, "key": "Content-Type", "value": "application/json" - }, - { - "key": "Content-Type", - "value": "application/json" } ], - "method": "PUT", - "body": { - "mode": "raw", - "raw": "{\n \"Enabled\": true\n}", - "options": { - "raw": { - "headerFamily": "json", - "language": "json" - } - } - } + "method": "GET", + "body": {} }, "status": "OK", "code": 200, @@ -2264,10 +2314,10 @@ { "listen": "test", "script": { - "id": "d1871b3d-b2d7-4479-8f78-07ee5b5f174b", + "id": "8a9e6895-f028-49ec-bf60-bb4811a89496", "type": "text/javascript", "exec": [ - "// Validate status 2xx \npm.test(\"[PUT]::/suggestions/configuration/autoapproval/toggle/seller/:sellerId - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n" + "// Validate status 2xx \npm.test(\"[GET]::/suggestions/:sellerId/:sellerskuid/versions/:version - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n" ] } } @@ -2280,20 +2330,20 @@ "event": [] }, { - "id": "6a027c7a-8a12-43dc-a5b9-8394e67f5d61", + "id": "71fcfa98-ae61-4a0d-9429-e02c7d7fa436", "name": "Match Received SKUs", "description": { - "content": "Match SKU suggestions received in the marketplace.", + "content": "", "type": "text/plain" }, "item": [ { - "id": "43179973-76e6-4abd-bd12-d5e66d089ac2", - "name": "Match Received SKUs individually", + "id": "8b28fb96-9072-4310-bb7d-48db54ef6d77", + "name": "Match received SKUs individually", "request": { - "name": "Match Received SKUs individually", + "name": "Match received SKUs individually", "description": { - "content": "All SKUs sent from a seller to a marketplace must be reviewed and matched. Actions in the matching process are added in the request body through the [matchType] object. Match type actions include: \n\n1. `newproduct`: match the SKU as a new product. \n\n2. `itemMatch`: associate the received SKU to an existing SKU. \n\n3. `productMatch`: associate the received SKU to an existing product. \n\n4. `deny`: deny the received SKU. \n\n5. `pending`: the received SKU requires attention. \n\n6. `incomplete`: the received SKU is lacking information to be matched. \n\n7. `insufficientScore`: the score given by the Matcher to this received SKU doesn't qualify it to be matched. \n\nNote that if the autoApprove setting is enabled, the SKUs will be approved, regardless of the Score.", + "content": "All SKUs sent from a seller to a marketplace must be reviewed and matched. Actions in the matching process are added in the request body through the [matchType] object. Match type actions include: \n\n1. `newproduct`: Match the SKU as a new product. \n\n2. `itemMatch`: Associate the received SKU to an existing SKU. \n\n3. `productMatch`: Associate the received SKU to an existing product. \n\n4. `deny`: Deny the received SKU. \n\n5. `pending`: The received SKU requires attention. \n\n6. `incomplete`: The received SKU is lacking information to be matched. \n\n7. `insufficientScore`: The Score given by the Matcher to this received SKU doesn't qualify it to be matched. \n\nNote that if the autoApprove setting is enabled, the SKUs will be approved, regardless of the Score.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/authentication-overview#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| Channels | UI resources | **Save suggestion rules** |\r\n| Suggestion | Suggestion resources | **Main** |\r\n\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.\r\n\r\nTo learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication-overview#machine-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.", "type": "text/plain" }, "url": { @@ -2348,7 +2398,7 @@ "type": "text/plain" }, "type": "any", - "value": "deserunt aliquip in irure veniam", + "value": "sed id", "key": "matchid" }, { @@ -2385,12 +2435,16 @@ { "key": "Content-Type", "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" } ], "method": "PUT", "body": { "mode": "raw", - "raw": "{\n \"matcherId\": \"{{matcherid}}\",\n \"matchType\": \"itemMatch\",\n \"score\": \"{{score}} (must be decimal)\",\n \"skuRef\": \"{{skuid}}(should be specifed when match is a sku match)\",\n \"productRef\": \"{{productRef}}(should be specified when match is a product match)\",\n \"product\": {\n \"name\": \"Book A\",\n \"description\": \"Book description\",\n \"categoryId\": 12,\n \"brandId\": 1234567,\n \"matchType\": \"itemMatch\",\n \"specifications\": null\n },\n \"sku\": {\n \"name\": \"Sku exemplo\",\n \"eans\": [\n \"12345678901213\"\n ],\n \"refId\": null,\n \"height\": 1,\n \"width\": 1,\n \"length\": 1,\n \"weight\": 1,\n \"images\": [\n {\n \"imagem1.jpg\": {\n \"imagem1.jpg\": \"https://imageurl.example\"\n }\n }\n ],\n \"unitMultiplier\": 1,\n \"measurementUnit\": \"un\",\n \"specifications\": {\n \"Embalagem\": \"3 k g\"\n }\n }\n}", + "raw": "{\n \"matcherId\": \"{{matcherid}}\",\n \"matchType\": \"itemMatch\",\n \"score\": \"{{score}} (must be decimal)\",\n \"skuRef\": \"{{skuid}}(should be specifed when match is a sku match)\",\n \"productRef\": \"{{productRef}}(should be specified when match is a product match)\",\n \"product\": {\n \"name\": \"Book A\",\n \"description\": \"Book description\",\n \"categoryId\": 12,\n \"brandId\": 1234567,\n \"matchType\": \"itemMatch\",\n \"specifications\": null\n },\n \"sku\": {\n \"name\": \"Sku exemplo\",\n \"eans\": [\n \"12345678901213\"\n ],\n \"refId\": null,\n \"height\": 1,\n \"width\": 1,\n \"length\": 1,\n \"weight\": 1,\n \"images\": {\n \"imagem1.jpg\": \"https://imageurl.example\"\n },\n \"unitMultiplier\": 1,\n \"measurementUnit\": \"un\",\n \"specifications\": {\n \"Packaging\": \"3kg\"\n }\n }\n}", "options": { "raw": { "headerFamily": "json", @@ -2402,9 +2456,9 @@ "response": [ { "_": { - "postman_previewlanguage": "text" + "postman_previewlanguage": "json" }, - "id": "7d65bae0-fd21-47b2-8963-5f374515a0a2", + "id": "f9f6cd10-d0f4-4fe1-8b26-64a9d5bb2919", "name": "OK", "originalRequest": { "url": { @@ -2445,12 +2499,16 @@ { "key": "Content-Type", "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" } ], "method": "PUT", "body": { "mode": "raw", - "raw": "{\n \"matcherId\": \"{{matcherid}}\",\n \"matchType\": \"itemMatch\",\n \"score\": \"{{score}} (must be decimal)\",\n \"skuRef\": \"{{skuid}}(should be specifed when match is a sku match)\",\n \"productRef\": \"{{productRef}}(should be specified when match is a product match)\",\n \"product\": {\n \"name\": \"Book A\",\n \"description\": \"Book description\",\n \"categoryId\": 12,\n \"brandId\": 1234567,\n \"matchType\": \"itemMatch\",\n \"specifications\": null\n },\n \"sku\": {\n \"name\": \"Sku exemplo\",\n \"eans\": [\n \"12345678901213\"\n ],\n \"refId\": null,\n \"height\": 1,\n \"width\": 1,\n \"length\": 1,\n \"weight\": 1,\n \"images\": [\n {\n \"imagem1.jpg\": {\n \"imagem1.jpg\": \"https://imageurl.example\"\n }\n }\n ],\n \"unitMultiplier\": 1,\n \"measurementUnit\": \"un\",\n \"specifications\": {\n \"Embalagem\": \"3 k g\"\n }\n }\n}", + "raw": "{\n \"matcherId\": \"{{matcherid}}\",\n \"matchType\": \"itemMatch\",\n \"score\": \"{{score}} (must be decimal)\",\n \"skuRef\": \"{{skuid}}(should be specifed when match is a sku match)\",\n \"productRef\": \"{{productRef}}(should be specified when match is a product match)\",\n \"product\": {\n \"name\": \"Book A\",\n \"description\": \"Book description\",\n \"categoryId\": 12,\n \"brandId\": 1234567,\n \"matchType\": \"itemMatch\",\n \"specifications\": null\n },\n \"sku\": {\n \"name\": \"Sku exemplo\",\n \"eans\": [\n \"12345678901213\"\n ],\n \"refId\": null,\n \"height\": 1,\n \"width\": 1,\n \"length\": 1,\n \"weight\": 1,\n \"images\": {\n \"imagem1.jpg\": \"https://imageurl.example\"\n },\n \"unitMultiplier\": 1,\n \"measurementUnit\": \"un\",\n \"specifications\": {\n \"Packaging\": \"3kg\"\n }\n }\n}", "options": { "raw": { "headerFamily": "json", @@ -2461,7 +2519,13 @@ }, "status": "OK", "code": 200, - "header": [], + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "[\n {\n \"matchId\": \"06272023010821403\",\n \"matcherId\": \"vtex-matcher\",\n \"sellerId\": \"test858\",\n \"itemID\": \"81\",\n \"isSuccess\": false\n }\n]", "cookie": [] } ], @@ -2469,10 +2533,13 @@ { "listen": "test", "script": { - "id": "546901be-4e5a-4065-944e-b8685d40b5e5", + "id": "80c87626-d24f-4ff4-a4e2-766cf04781c9", "type": "text/javascript", "exec": [ - "// Validate status 2xx \npm.test(\"[PUT]::/suggestions/:sellerId/:sellerskuid/versions/:version/matches/:matchid - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n" + "// Validate status 2xx \npm.test(\"[PUT]::/suggestions/:sellerId/:sellerskuid/versions/:version/matches/:matchid - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", + "// Validate if response header has matching content-type\npm.test(\"[PUT]::/suggestions/:sellerId/:sellerskuid/versions/:version/matches/:matchid - Content-Type is application/json\", function () {\n pm.expect(pm.response.headers.get(\"Content-Type\")).to.include(\"application/json\");\n});\n", + "// Validate if response has JSON Body \npm.test(\"[PUT]::/suggestions/:sellerId/:sellerskuid/versions/:version/matches/:matchid - Response has JSON Body\", function () {\n pm.response.to.have.jsonBody();\n});\n", + "// Response Validation\nconst schema = {\"type\":\"array\",\"description\":\"An array containing the results of multiple match operations. Each object in the array represents the outcome of a single match attempt.\",\"items\":{\"type\":\"object\",\"description\":\"Represents the result of a single match operation, including details such as match ID, matcher ID, seller ID, item ID, and whether the operation was successful.\",\"properties\":{\"matchId\":{\"type\":\"string\",\"description\":\"Unique identifier for the match operation, which can be used for tracking and auditing purposes.\"},\"matcherId\":{\"type\":\"string\",\"description\":\"Identifier for the matcher entity that performed the match. It can represent VTEX's internal matcher or an external matcher service.\"},\"sellerId\":{\"type\":\"string\",\"description\":\"Unique identifier of the seller who owns the SKU being matched.\"},\"itemId\":{\"type\":\"string\",\"description\":\"Unique identifier of the item (SKU) that was processed during the match operation.\"},\"isSuccess\":{\"type\":\"boolean\",\"description\":\"Indicates whether the match operation was successful. A value of `true` means the operation succeeded, while `false` indicates a failure.\"}}}}\n\n// Validate if response matches JSON schema \npm.test(\"[PUT]::/suggestions/:sellerId/:sellerskuid/versions/:version/matches/:matchid - Schema is valid\", function() {\n pm.response.to.have.jsonSchema(schema,{unknownFormats: [\"int32\", \"int64\", \"float\", \"double\"]});\n});\n" ] } } @@ -2482,12 +2549,12 @@ } }, { - "id": "2a4de262-79fb-4b37-92b3-56092f3cc58f", - "name": "Match Multiple Received SKUs", + "id": "c128309b-168e-48f6-bae0-0df531746f8e", + "name": "Match multiple received SKUs", "request": { - "name": "Match Multiple Received SKUs", + "name": "Match multiple received SKUs", "description": { - "content": "Allows a marketplace to bulk approve, deny, or associate up to 25 received SKUs from sellers.\n\nThrough the `actionName` attribute, you can select the operation you want to apply to the received SKU. Actions include: \n\n* `newproduct`: match the SKU as a new product. \n\n* `skuassociation`: associate the received SKU to an existing SKU. \n\n* `productassociation`: associate the received SKU to an existing product. \n\n* `deny`: deny the received SKU.", + "content": "Allows a marketplace to bulk approve, deny, or associate up to 25 received SKUs from sellers.\n\nThrough the `actionName` attribute, you can select the operation you want to apply to the received SKU. Actions include: \n\n* `newproduct`: Match the SKU as a new product. \n\n* `skuassociation`: Associate the received SKU to an existing SKU. \n\n* `productassociation`: Associate the received SKU to an existing product. \n\n* `deny`: Deny the received SKU.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/authentication-overview#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| Channels | UI resources | **Save suggestion rules** |\r\n| Suggestion | Suggestion resources | **Main** |\r\n\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.\r\n\r\nTo learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication-overview#machine-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.", "type": "text/plain" }, "url": { @@ -2569,7 +2636,7 @@ "_": { "postman_previewlanguage": "json" }, - "id": "c42fd939-b728-4290-ab2a-0d8bdf2ce072", + "id": "8ff806f5-4286-4e59-b46b-5950b429fd99", "name": "OK", "originalRequest": { "url": { @@ -2633,7 +2700,7 @@ "value": "application/json" } ], - "body": "[\n {\n \"matchId\": \"06272023010821403\",\n \"matcherId\": \"vtex-matcher\",\n \"sellerId\": \"melissatestbug858\",\n \"itemId\": \"81\",\n \"isSuccess\": false\n },\n {\n \"matchId\": \"06272023010821403\",\n \"matcherId\": \"vtex-matcher\",\n \"sellerId\": \"melissatestbug858\",\n \"itemId\": \"81\",\n \"isSuccess\": false\n }\n]", + "body": "[\n {\n \"matchId\": \"06272023010821403\",\n \"matcherId\": \"vtex-matcher\",\n \"sellerId\": \"test858\",\n \"itemID\": \"81\",\n \"isSuccess\": false\n }\n]", "cookie": [] } ], @@ -2641,13 +2708,13 @@ { "listen": "test", "script": { - "id": "71680815-502d-436b-995b-fea4eafb54e3", + "id": "04bc1741-52c2-4b61-93c3-3ce2e2610323", "type": "text/javascript", "exec": [ "// Validate status 2xx \npm.test(\"[PUT]::/suggestions/matches/action/:actionName - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", "// Validate if response header has matching content-type\npm.test(\"[PUT]::/suggestions/matches/action/:actionName - Content-Type is application/json\", function () {\n pm.expect(pm.response.headers.get(\"Content-Type\")).to.include(\"application/json\");\n});\n", "// Validate if response has JSON Body \npm.test(\"[PUT]::/suggestions/matches/action/:actionName - Response has JSON Body\", function () {\n pm.response.to.have.jsonBody();\n});\n", - "// Response Validation\nconst schema = {\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"matchId\":{\"type\":\"string\",\"example\":\"06272023010821403\"},\"matcherId\":{\"type\":\"string\",\"example\":\"vtex-matcher\"},\"sellerId\":{\"type\":\"string\",\"example\":\"melissatestbug858\"},\"itemId\":{\"type\":\"string\",\"example\":\"81\"},\"isSuccess\":{\"type\":\"boolean\",\"example\":false}}}}\n\n// Validate if response matches JSON schema \npm.test(\"[PUT]::/suggestions/matches/action/:actionName - Schema is valid\", function() {\n pm.response.to.have.jsonSchema(schema,{unknownFormats: [\"int32\", \"int64\", \"float\", \"double\"]});\n});\n" + "// Response Validation\nconst schema = {\"type\":\"array\",\"description\":\"An array containing the results of multiple match operations. Each object in the array represents the outcome of a single match attempt.\",\"items\":{\"type\":\"object\",\"description\":\"Represents the result of a single match operation, including details such as match ID, matcher ID, seller ID, item ID, and whether the operation was successful.\",\"properties\":{\"matchId\":{\"type\":\"string\",\"description\":\"Unique identifier for the match operation, which can be used for tracking and auditing purposes.\"},\"matcherId\":{\"type\":\"string\",\"description\":\"Identifier for the matcher entity that performed the match. It can represent VTEX's internal matcher or an external matcher service.\"},\"sellerId\":{\"type\":\"string\",\"description\":\"Unique identifier of the seller who owns the SKU being matched.\"},\"itemId\":{\"type\":\"string\",\"description\":\"Unique identifier of the item (SKU) that was processed during the match operation.\"},\"isSuccess\":{\"type\":\"boolean\",\"description\":\"Indicates whether the match operation was successful. A value of `true` means the operation succeeded, while `false` indicates a failure.\"}}}}\n\n// Validate if response matches JSON schema \npm.test(\"[PUT]::/suggestions/matches/action/:actionName - Schema is valid\", function() {\n pm.response.to.have.jsonSchema(schema,{unknownFormats: [\"int32\", \"int64\", \"float\", \"double\"]});\n});\n" ] } } @@ -2674,7 +2741,7 @@ } ], "info": { - "_postman_id": "437b69f6-ecd1-4e01-99ff-0d65b27a0aa4", + "_postman_id": "2ad7a3e9-aca7-4156-b921-7edf011d0b7b", "name": "Suggestions", "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json", "description": { diff --git a/PostmanCollections/VTEX - Orders API (PII version).json b/PostmanCollections/VTEX - Orders API (PII version).json index e8072972e..31fbf7940 100644 --- a/PostmanCollections/VTEX - Orders API (PII version).json +++ b/PostmanCollections/VTEX - Orders API (PII version).json @@ -1,10 +1,10 @@ { "_": { - "postman_id": "dbe9ef78-d603-4648-bf64-8641cb4243d2" + "postman_id": "c2b691be-0c43-45e1-81e3-df340ab570bd" }, "item": [ { - "id": "f24c0643-1d3b-4cf7-81ca-c328dba5f6c3", + "id": "a9020192-1972-402c-b785-c0c92da946dd", "name": "Orders", "description": { "content": "", @@ -12,7 +12,7 @@ }, "item": [ { - "id": "27911e5f-57a9-49a3-8d15-923df80d9de7", + "id": "4c73109a-727a-4912-9d45-a9f8e2315d9c", "name": "Get order", "request": { "name": "Get order", @@ -87,7 +87,7 @@ "_": { "postman_previewlanguage": "json" }, - "id": "8dfc31a8-dcdf-4b07-904b-ff995bf3be51", + "id": "6486d1f4-b24b-4345-b5f0-fd82f06b9957", "name": "OK", "originalRequest": { "url": { @@ -165,13 +165,13 @@ { "listen": "test", "script": { - "id": "d9fffa9e-bc8c-41b8-8d75-775941afbd81", + "id": "8f008be7-ff28-4569-8d82-d5e51e873961", "type": "text/javascript", "exec": [ "// Validate status 2xx \npm.test(\"[GET]::/api/orders/pvt/document/:orderId - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", "// Validate if response header has matching content-type\npm.test(\"[GET]::/api/orders/pvt/document/:orderId - Content-Type is application/json\", function () {\n pm.expect(pm.response.headers.get(\"Content-Type\")).to.include(\"application/json\");\n});\n", "// Validate if response has JSON Body \npm.test(\"[GET]::/api/orders/pvt/document/:orderId - Response has JSON Body\", function () {\n pm.response.to.have.jsonBody();\n});\n", - "// Response Validation\nconst schema = {\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"Order ID.\"},\"sellerOrderId\":{\"type\":\"string\",\"description\":\"Seller order ID.\"},\"orderFormId\":{\"type\":\"string\",\"description\":\"ID of the shopping cart from which the order was created.\"},\"origin\":{\"type\":\"string\",\"description\":\"Order's [origin in the order flow](https://help.vtex.com/en/tutorial/order-flow-and-status--tutorials_196).\",\"enum\":[\"Marketplace\",\"Fulfillment\",\"Chain\"]},\"orderGroup\":{\"type\":\"string\",\"description\":\"Order group ID.\"},\"items\":{\"type\":\"array\",\"description\":\"Information on order items.\",\"items\":{\"type\":\"object\",\"description\":\"Information on each order item.\",\"properties\":{\"productCategories\":{\"type\":\"object\",\"description\":\"Object containing product categories with the structure: `{CategoryID}: {CategoryName}`.\",\"properties\":{\"additionalProperties\":{\"type\":\"string\",\"description\":\"Product category corresponding to the ID in the field key.\"}}},\"uniqueId\":{\"type\":\"string\",\"description\":\"Order item unique ID.\"},\"id\":{\"type\":\"string\",\"description\":\"Item ID.\"},\"productId\":{\"type\":\"string\",\"description\":\"Product ID.\"},\"lockId\":{\"type\":[\"string\",\"null\"],\"description\":\"[Reservation](https://help.vtex.com/en/tutorial/how-does-reservation-work--tutorials_92) ID.\"},\"ean\":{\"type\":[\"string\",\"null\"],\"description\":\"European Article Number (EAN) of the item.\"},\"quantity\":{\"type\":\"integer\",\"description\":\"Item quantity.\"},\"seller\":{\"type\":\"string\",\"description\":\"Seller name. When the store acts both as marketplace and seller, this field corresponds to `1`, because every VTEX store is its own seller 1.\"},\"sellerSku\":{\"type\":\"string\",\"description\":\"Seller SKU ID.\"},\"priceValidUntil\":{\"type\":\"string\",\"description\":\"Item price expiration date and time in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"name\":{\"type\":\"string\",\"description\":\"SKU name.\"},\"additionalInfo\":{\"type\":\"object\",\"description\":\"Item additional information.\",\"properties\":{\"brandName\":{\"type\":\"string\",\"description\":\"Item brand name.\"},\"brandId\":{\"type\":\"string\",\"description\":\"Item brand ID.\"},\"categoriesIds\":{\"type\":\"string\",\"description\":\"Categories IDs.\"},\"dimension\":{\"type\":\"object\",\"description\":\"Item dimensions.\",\"properties\":{\"cubicweight\":{\"type\":\"number\",\"description\":\"Item cubic weight.\"},\"height\":{\"type\":\"number\",\"description\":\"Item height.\"},\"length\":{\"type\":\"number\",\"description\":\"Item length.\"},\"weight\":{\"type\":\"number\",\"description\":\"Item weight.\"},\"width\":{\"type\":\"number\",\"description\":\"Item width.\"}}},\"productClusterId\":{\"type\":\"string\",\"description\":\"All product clusters related to the item.\"},\"commercialConditionId\":{\"type\":\"string\",\"description\":\"Commercial condition ID.\"},\"offeringInfo\":{\"type\":[\"string\",\"null\"],\"description\":\"Offering information.\"},\"offeringType\":{\"type\":[\"string\",\"null\"],\"description\":\"Offering type.\"},\"offeringTypeId\":{\"type\":[\"string\",\"null\"],\"description\":\"Offering type ID.\"},\"categories\":{\"type\":\"array\",\"description\":\"Item [categories](https://help.vtex.com/tracks/catalog-101--5AF0XfnjfWeopIFBgs3LIQ/2gkZDjXRqfsq62TlAkj4uf) information.\",\"items\":{\"type\":\"object\",\"description\":\"Information about a given category.\",\"properties\":{\"id\":{\"type\":\"integer\",\"description\":\"Category ID.\"},\"name\":{\"type\":\"string\",\"description\":\"Category name.\"}}}}}},\"attachments\":{\"type\":[\"array\",\"null\"],\"description\":\"Information on [attachments](https://help.vtex.com/en/tutorial/what-is-an-attachment--aGICk0RVbqKg6GYmQcWUm).\",\"items\":{\"type\":\"object\",\"description\":\"Information about a given attachment.\",\"properties\":{\"name\":{\"type\":[\"string\",\"null\"],\"description\":\"Attachment name.\"},\"content\":{\"type\":[\"object\",\"null\"],\"description\":\"Custom field for attachment content.\",\"additionalProperties\":{\"type\":[\"string\",\"null\"],\"description\":\"Custom field information.\"}}}}},\"attachmentOfferings\":{\"type\":[\"array\",\"null\"],\"description\":\"Array containing attachments details.\",\"items\":{\"type\":[\"object\",\"null\"],\"description\":\"Attachment details.\",\"properties\":{\"name\":{\"type\":[\"string\",\"null\"],\"description\":\"Attachment name.\"},\"required\":{\"type\":[\"boolean\",\"null\"],\"description\":\"Defines if the attachment is required (`true`) or not (`false`).\"},\"schema\":{\"type\":[\"object\",\"null\"],\"description\":\"Schema of the content declared in the field `attachmentOfferings`.\"}}}},\"assemblies\":{\"type\":[\"array\",\"null\"],\"description\":\"Information about the item customization, when applicable.\",\"items\":{\"type\":[\"string\",\"null\"],\"description\":\"Customization information.\"}},\"refId\":{\"type\":\"string\",\"description\":\"Ref ID.\"},\"shippingPrice\":{\"type\":[\"integer\",\"null\"],\"description\":\"Item shipping price in cents. This value does not account for the order total shipping price.\"},\"price\":{\"type\":\"integer\",\"description\":\"Item price in cents.\"},\"sellingPrice\":{\"type\":\"integer\",\"description\":\"Selling price in cents. This field can present rounding discrepancies, so we recommend retrieving pricing information from the `priceDefinition` field.\"},\"listPrice\":{\"type\":\"integer\",\"description\":\"List price in cents.\"},\"manualPrice\":{\"type\":[\"integer\",\"null\"],\"description\":\"[Manual price](https://help.vtex.com/en/tutorial/change-the-price-of-an-item-in-the-shopping-cart--7Cd37aCAmtL1qmoZJJvjNf) in cents.\"},\"tax\":{\"type\":\"integer\",\"description\":\"Tax value in cents.\"},\"rewardValue\":{\"type\":\"integer\",\"description\":\"Reward value in cents.\"},\"freightCommission\":{\"type\":\"integer\",\"description\":\"Freight commission value in cents.\"},\"commission\":{\"type\":\"integer\",\"description\":\"Commission value registered for the seller.\"},\"priceTags\":{\"type\":\"array\",\"description\":\"Information about price tags. A price tag is a price modifier, like s discount or a promotion applicable to the item in the order context.\",\"items\":{\"type\":\"object\",\"description\":\"Information about a given price tag.\",\"properties\":{\"name\":{\"type\":\"string\",\"description\":\"Price tag name.\"},\"rawValue\":{\"type\":\"number\",\"description\":\"Price tag raw value.\"},\"isPercentual\":{\"type\":\"boolean\",\"description\":\"Indicates whether price tag value is applied through a percentage (`true`) or not (`false`).\"},\"identifier\":{\"type\":\"string\",\"description\":\"Price tag identifier.\"},\"rate\":{\"type\":[\"integer\",\"null\"],\"description\":\"Price tag value.\"},\"jurisCode\":{\"type\":[\"string\",\"null\"],\"description\":\"Juris code.\"},\"jurisType\":{\"type\":[\"string\",\"null\"],\"description\":\"Juris type.\"},\"jurisName\":{\"type\":[\"string\",\"null\"],\"description\":\"Juris name.\"}}}},\"imageUrl\":{\"type\":\"string\",\"description\":\"Image URL.\"},\"detailUrl\":{\"type\":\"string\",\"description\":\"Detail URL.\"},\"components\":{\"type\":[\"array\",\"null\"],\"description\":\"Item components.\",\"items\":{\"type\":[\"string\",\"null\"],\"description\":\"Component name.\"}},\"bundleItems\":{\"type\":[\"array\",\"null\"],\"description\":\"Information about services sold with the item. For example, a gift package.\",\"items\":{\"type\":\"object\",\"description\":\"Information about a given service.\",\"properties\":{\"type\":{\"type\":\"string\",\"description\":\"Service type.\"},\"id\":{\"type\":\"integer\",\"description\":\"Service ID.\"},\"name\":{\"type\":\"string\",\"description\":\"Service name.\"},\"price\":{\"type\":\"integer\",\"description\":\"Service price in cents.\"}}}},\"offerings\":{\"type\":[\"array\",\"null\"],\"description\":\"Information about offerings, which are services related to the item. For example, a warranty or installation.\",\"items\":{\"type\":[\"string\",\"null\"],\"description\":\"Name of the service related to the item. For example, warranty or installation.\"}},\"preSaleDate\":{\"type\":[\"string\",\"null\"],\"description\":\"Presale date and time in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"isGift\":{\"type\":\"boolean\",\"description\":\"Defines it the item is a gift (`true`) or not (`false`).\"},\"taxCode\":{\"type\":[\"string\",\"null\"],\"description\":\" Item tax code.\"},\"measurementUnit\":{\"type\":\"string\",\"description\":\"Item measurement unit.\"},\"unitMultiplier\":{\"type\":\"number\",\"description\":\"Item unit multiplier.\"},\"marketingData\":{\"type\":[\"object\",\"null\"],\"description\":\"Information about marketing and promotions, such as coupon code and [Urchin Tracking Module (UTM)](https://help.vtex.com/en/tutorial/what-are-utm-source-utm-campaign-and-utm-medium--2wTz7QJ8KUG6skGAoAQuii).\",\"properties\":{\"utmSource\":{\"type\":[\"string\",\"null\"],\"description\":\"A UTM is an Urchin Tracking Module used to track traffic related to your store. This field is an UTM for tracking the traffic source, to know from which site, advertiser, or publication the customer came before reaching your site.\"},\"utmMedium\":{\"type\":\"string\",\"description\":\"UTM for tracking the advertising or marketing media used to reach your site, such as banners and newsletters.\"},\"utmCampaign\":{\"type\":[\"string\",\"null\"],\"description\":\"UTM for tracking the marketing campaign context.\"},\"utmPartner\":{\"type\":[\"string\",\"null\"],\"description\":\"UTM for tracking the partner.\"},\"utmipage\":{\"type\":[\"string\",\"null\"],\"description\":\"A `utmi` is an internal Urchin Tracking Module (UTM) used to track traffic inside your site. This field is an internal UTM for tracking pages.\"},\"utmiPart\":{\"type\":[\"string\",\"null\"],\"description\":\"Internal UTM for tracking the partner.\"},\"utmiCampaign\":{\"type\":[\"string\",\"null\"],\"description\":\"Internal UTM for tracking the marketing campaign context.\"},\"coupon\":{\"type\":[\"string\",\"null\"],\"description\":\"Coupon code used by the customer.\"},\"marketingTags\":{\"type\":\"array\",\"description\":\"List of marketing tags valid for the item.\",\"items\":{\"type\":\"string\",\"description\":\"Marketing tag name.\"}}}},\"parentAssemblyBinding\":{\"type\":[\"string\",\"null\"],\"description\":\"When items are indexed in between each other, this field returns the assembly option ID. This response is `null` for items that are not [assembly options](https://help.vtex.com/en/tutorial/assembly-options--5x5FhNr4f5RUGDEGWzV1nH).\"},\"parentItemIndex\":{\"type\":[\"integer\",\"null\"],\"description\":\"Ranking number that shows how related items are indexed in between each other. It starts at `0` as the primary item reference and counts up to `1`, `2`, and so on. For example, a customer bought sunglasses and hired a warranty service. Since the sunglasses are index `0`, the warranty service (the [assembly option](https://help.vtex.com/en/tutorial/assembly-options--5x5FhNr4f5RUGDEGWzV1nH)) is index `1` and has the `parentItemIndex` value `0`. This response is `null` for items that are not assembly options.\"},\"callCenterOperator\":{\"type\":[\"string\",\"null\"],\"description\":\"Identification code of the call center operator that sold the item, when applicable.\"},\"priceDefinition\":{\"type\":\"object\",\"description\":\"Item price information.\",\"properties\":{\"calculatedSellingPrice\":{\"type\":\"integer\",\"description\":\"Item calculated selling price in cents.\"},\"total\":{\"type\":\"integer\",\"description\":\"Item total price in cents.\"},\"sellingPrices\":{\"type\":\"array\",\"description\":\"Item selling prices.\",\"items\":{\"type\":\"object\",\"description\":\"Price value per quantity.\",\"properties\":{\"value\":{\"type\":\"integer\",\"description\":\"Item selling price value in cents.\"},\"quantity\":{\"type\":\"integer\",\"description\":\"Item quantity.\"}}}},\"reason\":{\"type\":[\"string\",\"null\"],\"description\":\"Item price definition reason.\"}}},\"costPrice\":{\"type\":[\"integer\",\"null\"],\"description\":\"Item cost price in cents.\"}}}},\"marketplaceItems\":{\"type\":[\"array\",\"null\"],\"description\":\"Marketplace items.\",\"items\":{\"type\":[\"string\",\"null\"],\"description\":\"Marketplace item.\"}},\"authorizedDate\":{\"type\":\"string\",\"description\":\"Order authorization date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"subscriptionData\":{\"type\":[\"object\",\"null\"],\"description\":\"Information about [subscriptions](https://help.vtex.com/tutorial/how-subscriptions-work--frequentlyAskedQuestions_4453), when applicable.\",\"properties\":{\"subscriptionGroupId\":{\"type\":[\"string\",\"null\"],\"description\":\"Subscription group ID. If this field returns `null` and the `executionCount` is `0`, the order is the first subscription order.\"},\"subscriptions\":{\"type\":[\"array\",\"null\"],\"description\":\"List with subscriptions details.\",\"items\":{\"type\":\"object\",\"description\":\"Subscription details.\",\"properties\":{\"executionCount\":{\"type\":\"integer\",\"description\":\"Position of the order in the subscription cycle. The first order will have the value `0`, the second will have the value `1`, and so on.\"},\"priceAtSubscriptionDate\":{\"type\":[\"number\",\"null\"],\"description\":\"Value of the order when the customer subscribed. Subscriptions created via VTEX Admin or [Subscriptions API](https://developers.vtex.com/docs/api-reference/subscriptions-api-v3) do not have an original order, so this field returns `0.0`.\"},\"itemIndex\":{\"type\":\"integer\",\"description\":\"Each item in the subscription order is identified by an index. The position starts in `0`, followed by `1`, `2`, and so on.\"},\"plan\":{\"type\":\"object\",\"description\":\"Information about the [subscription plan](https://help.vtex.com/en/tutorial/subscription-plans-beta--5kczKRqHEsrs1tYtRcY8wR).\",\"properties\":{\"type\":{\"type\":\"string\",\"description\":\"Plan type.\"},\"frequency\":{\"type\":\"object\",\"description\":\"Information about subscriptions' recurrence.\",\"properties\":{\"periodicity\":{\"type\":\"string\",\"description\":\"Defines the subscription recurrence period.\",\"enum\":[\"DAILY\",\"WEEKLY\",\"MONTHLY\",\"YEARLY\"]},\"interval\":{\"type\":\"integer\",\"description\":\"Time interval configured between subscription orders, which depends on the frequency. For a `DAY` frequency, the value will be days, for `MONTH` it will be months, and so on.\"}}},\"validity\":{\"type\":\"object\",\"description\":\"Information about the period during which the subscription will be valid.\",\"properties\":{\"begin\":{\"type\":\"string\",\"description\":\"Subscription plan beginning date and time in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"end\":{\"type\":[\"string\",\"null\"],\"description\":\"Subscription plan ending date and time in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"}}}}}}}}}},\"taxData\":{\"type\":[\"object\",\"null\"],\"description\":\"Order taxes information.\",\"required\":[\"areTaxesDesignatedByMarketplace\",\"taxInfoCollection\"],\"properties\":{\"areTaxesDesignatedByMarketplace\":{\"type\":\"boolean\",\"description\":\"Defines if the taxes were applied by the marketplace (`true`) or not (`false`).\"},\"taxInfoCollection\":{\"type\":\"array\",\"description\":\"Order taxes details.\",\"items\":{\"type\":\"object\",\"description\":\"Information about a given tax.\",\"required\":[\"itemIndex\",\"sku\",\"priceTags\"],\"properties\":{\"itemIndex\":{\"type\":\"integer\",\"description\":\"Item indexing number.\"},\"sku\":{\"type\":\"string\",\"description\":\"SKU ID.\"},\"priceTags\":{\"type\":[\"object\",\"null\"],\"description\":\"Information about order taxes.\",\"properties\":{\"areTaxesDesignatedByMarketplace\":{\"type\":\"boolean\",\"description\":\"Defines if the taxes were designated by the marketplace (`true`) or not (`false`).\"},\"taxInfoCollection\":{\"type\":\"array\",\"description\":\"Array with taxes' details.\",\"items\":{\"type\":\"object\",\"description\":\"Details about a given tax.\",\"properties\":{\"itemIndex\":{\"type\":\"integer\",\"description\":\"Item index number.\"},\"sku\":{\"type\":\"string\",\"description\":\"Alphanumeric sequence that identifies a SKU.\"},\"priceTags\":{\"type\":\"array\",\"description\":\"Price tags information with the original taxes calculated at order placement.\",\"items\":{\"type\":\"object\",\"description\":\"Information about a given price tag.\",\"properties\":{\"identifier\":{\"type\":\"string\",\"description\":\"Price tag identifier code.\"},\"isPercentual\":{\"type\":\"boolean\",\"description\":\"Indicates whether price tag value is applied through a percentage (`true`) or not (`false`).\"},\"name\":{\"type\":\"string\",\"description\":\"Price tag name.\"},\"value\":{\"type\":\"number\",\"description\":\"Price tag value.\"},\"rawValue\":{\"type\":\"number\",\"description\":\"Price tag raw value that can contain up to five decimals, separated by a period.\"}}}}}}}}}}}}}},\"invoicedDate\":{\"type\":[\"string\",\"null\"],\"description\":\"Order invoice date and time in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"marketplaceOrderId\":{\"type\":[\"string\",\"null\"],\"description\":\"Order ID in the marketplace.\"},\"marketplaceServicesEndpoint\":{\"type\":[\"string\",\"null\"],\"description\":\"Marketplace endpoint for post purchase communication.\"},\"clientProfileData\":{\"type\":\"object\",\"description\":\"Information about the client who created the order.\",\"required\":[\"id\",\"email\",\"firstName\",\"lastName\",\"documentType\",\"document\",\"phone\",\"corporateName\",\"tradeName\",\"corporateDocument\",\"stateInscription\",\"corporatePhone\",\"isCorporate\",\"userProfileId\",\"customerClass\"],\"properties\":{\"id\":{\"type\":[\"string\",\"null\"],\"description\":\"Client ID.\"},\"userProfileId\":{\"type\":\"string\",\"description\":\"User profile ID.\"},\"userProfileVersion\":{\"type\":[\"string\",\"null\"],\"description\":\"User profile version.\"},\"firstName\":{\"type\":\"string\",\"description\":\"Client first name.\"},\"lastName\":{\"type\":\"string\",\"description\":\"Client last name.\"},\"email\":{\"type\":\"string\",\"description\":\"Client email address.\"},\"document\":{\"type\":\"string\",\"description\":\"Client document code.\"},\"corporateDocument\":{\"type\":[\"string\",\"null\"],\"description\":\"If the client is a legal entity, this field includes the corporate document.\"},\"corporateName\":{\"type\":[\"string\",\"null\"],\"description\":\"If the client is a legal entity, this field includes the corporate name.\"},\"documentType\":{\"type\":\"string\",\"description\":\"Client document type.\"},\"phone\":{\"type\":\"string\",\"description\":\"Client telephone number.\"},\"tradeName\":{\"type\":[\"string\",\"null\"],\"description\":\"If the client is a legal entity, this field includes the trade name.\"},\"stateInscription\":{\"type\":[\"string\",\"null\"],\"description\":\"If the client is a legal entity, this field includes the corporate state inscription.\"},\"corporatePhone\":{\"type\":[\"string\",\"null\"],\"description\":\"If the client is a legal entity, this field includes the corporate telephone number.\"},\"isCorporate\":{\"type\":\"boolean\",\"description\":\"Defines if the client is corporate and a legal entity (`true`) or not (`false`).\"},\"customerClass\":{\"type\":[\"string\",\"null\"],\"description\":\"Customer class identification.\"},\"customerCode\":{\"type\":[\"string\",\"null\"],\"description\":\"Customer code.\"}}},\"giftRegistryData\":{\"type\":[\"object\",\"null\"],\"description\":\"[Gift list](https://developers.vtex.com/docs/guides/creating-gift-lists) information.\",\"properties\":{\"giftRegistryId\":{\"type\":\"string\",\"description\":\"Gift list ID.\"},\"giftRegistryType\":{\"type\":\"string\",\"description\":\"[Gift list type](https://help.vtex.com/en/tutorial/creating-a-type-of-list).\"},\"giftRegistryTypeName\":{\"type\":\"string\",\"description\":\"Gift list type name.\"},\"addressId\":{\"type\":\"string\",\"description\":\"Gift list shipping address ID.\"},\"description\":{\"type\":\"string\",\"description\":\"Gift list description.\"}}},\"emailTracked\":{\"type\":\"string\",\"description\":\"Customer email [tracked](https://help.vtex.com/en/tutorial/understanding-the-conversation-tracker--tutorials_195).\"},\"isCheckedIn\":{\"type\":\"boolean\",\"description\":\"Defines if the order was placed via [VTEX Sales App](https://help.vtex.com/en/tracks/instore-getting-started-and-setting-up--zav76TFEZlAjnyBVL5tRc) (`true`) or not (`false`).\"},\"approvedBy\":{\"type\":[\"string\",\"null\"],\"description\":\"User who approved the order, in case of manual approval.\"},\"cancelledBy\":{\"type\":[\"string\",\"null\"],\"description\":\"User that canceled the order.\"},\"canceledBy\":{\"type\":[\"string\",\"null\"],\"description\":\"User that canceled the order.\"},\"cancelReason\":{\"type\":[\"string\",\"null\"],\"description\":\"Order cancellation reason.\"},\"callCenterOperatorData\":{\"type\":[\"object\",\"null\"],\"description\":\"Information about the call center operator responsible for the order.\",\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"Call center operator identification code.\"},\"email\":{\"type\":\"string\",\"description\":\"Call center operator email.\"},\"userName\":{\"type\":\"string\",\"description\":\"Call center operator user name.\"}}},\"allowCancellation\":{\"type\":\"boolean\",\"description\":\"Defines if order cancellation is allowed (`true`) or not anymore (`false`).\"},\"allowEdition\":{\"type\":\"boolean\",\"description\":\"Defines if the order can be edited (`true`) or not anymore (`false`).\"},\"roundingError\":{\"type\":\"integer\",\"description\":\"Rounding error total amount in cents, when applicable. For example, in orders with a discount over non-integer multiplier items, the rounding price is performed per item, not after the sum of all items. That can cause a difference in the total discount amount, which is informed in this field.\"},\"salesChannel\":{\"type\":\"string\",\"description\":\"Sales channel (or [trade policy](https://help.vtex.com/tutorial/how-trade-policies-work--6Xef8PZiFm40kg2STrMkMV)) related to the order.\"},\"salesChannelData\":{\"type\":\"object\",\"description\":\"Sales channel (or [trade policy](https://help.vtex.com/tutorial/how-trade-policies-work--6Xef8PZiFm40kg2STrMkMV)) information.\",\"properties\":{\"countryCode\":{\"type\":[\"string\",\"null\"],\"description\":\"Three-digit country code, in [ISO 3166 ALPHA-3](https://www.iban.com/country-codes) format.\"},\"currencyCode\":{\"type\":[\"string\",\"null\"],\"description\":\"Currency code in [ISO 4217](https://www.iban.com/currency-codes) format.\"},\"currencyFormatInfo\":{\"type\":[\"object\",\"null\"],\"description\":\"Currency format details.\",\"properties\":{\"CurrencyDecimalDigits\":{\"type\":\"integer\",\"description\":\"Quantity of currency decimal digits.\"},\"CurrencyDecimalSeparator\":{\"type\":\"string\",\"description\":\"Defines what currency decimal separator will be applied.\"},\"CurrencyGroupSeparator\":{\"type\":\"string\",\"description\":\"Defines what currency group separator will be applied.\"},\"CurrencyGroupSize\":{\"type\":\"integer\",\"description\":\"Defines how many characters will be grouped.\"},\"StartsWithCurrencySymbol\":{\"type\":\"boolean\",\"description\":\"Defines if all prices will be initiated with the currency symbol (`true`) or not (`false`).\"}}},\"cultureInfo\":{\"type\":[\"string\",\"null\"],\"description\":\"Information about the culture.\"},\"currencyLocale\":{\"type\":\"integer\",\"description\":\"Currency Locale Code in [LCID](https://learn.microsoft.com/en-us/openspecs/office_standards/ms-oe376/6c085406-a698-4e12-9d4d-c3b0ee3dbc4a) format.\"},\"currencySymbol\":{\"type\":[\"string\",\"null\"],\"description\":\"Currency symbol.\"},\"timeZone\":{\"type\":[\"string\",\"null\"],\"description\":\"Time zone where the order was created.\"},\"id\":{\"type\":\"string\",\"description\":\"Sales channel (or [trade policy](https://help.vtex.com/tutorial/how-trade-policies-work--6Xef8PZiFm40kg2STrMkMV)) ID.\"},\"name\":{\"type\":\"string\",\"description\":\"Store name.\"},\"isActive\":{\"type\":\"boolean\",\"description\":\"Defines if the sales channel is active (`true`) or inactive (`false`).\"}}},\"customData\":{\"type\":[\"object\",\"null\"],\"description\":\"Customizable fields created by the store for the shopping cart. This field is useful for storing data not included in other fields. For example, a message for a gift or a name to be printed in a shirt.\",\"properties\":{\"customApps\":{\"type\":[\"array\",\"null\"],\"description\":\"Customizable apps created by the store.\",\"items\":{\"type\":[\"string\",\"null\"],\"description\":\"Customizable apps details.\"}}}},\"changesAttachment\":{\"type\":[\"object\",\"null\"],\"description\":\"Information about changes in the order.\",\"required\":[\"id\",\"changesData\"],\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"Order changes ID.\"},\"changesData\":{\"type\":\"array\",\"description\":\"Order changes details.\",\"items\":{\"required\":[\"reason\",\"discountValue\",\"incrementValue\",\"itemsAdded\",\"itemsRemoved\",\"receipt\"],\"type\":\"object\",\"description\":\"Details about an order change.\",\"properties\":{\"reason\":{\"type\":\"string\",\"description\":\"Text explaining why the order was changed. This information may be shown to the customer in the storefront or transactional emails.\"},\"discountValue\":{\"type\":[\"integer\",\"null\"],\"description\":\"Order change discount value in cents.\"},\"incrementValue\":{\"type\":[\"integer\",\"null\"],\"description\":\"Order change increment value in cents.\"},\"itemsAdded\":{\"type\":[\"array\",\"null\"],\"description\":\"Information about items added to the order, when applicable.\",\"items\":{\"type\":\"object\",\"description\":\"Information about an item added to the order.\",\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"Added item SKU ID.\"},\"name\":{\"type\":\"string\",\"description\":\"Added item SKU name.\"},\"quantity\":{\"type\":\"integer\",\"description\":\"Quantity of items added.\"},\"price\":{\"type\":\"integer\",\"description\":\"Added item price in cents.\"},\"unitMultiplier\":{\"type\":[\"string\",\"null\"],\"description\":\"Added item unit multiplier.\"}}}},\"itemsRemoved\":{\"type\":[\"array\",\"null\"],\"description\":\"Information about items removed from the order, when applicable.\",\"items\":{\"type\":\"object\",\"description\":\"Information about an item removed from the order.\",\"required\":[\"id\",\"name\",\"quantity\",\"price\",\"unitMultiplier\"],\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"Removed item SKU ID.\"},\"name\":{\"type\":\"string\",\"description\":\"Removed item name.\"},\"quantity\":{\"type\":\"integer\",\"format\":\"int32\",\"description\":\"Quantity of removed items.\"},\"price\":{\"type\":\"integer\",\"format\":\"int32\",\"description\":\"Removed item price in cents.\"},\"unitMultiplier\":{\"type\":[\"string\",\"null\"],\"description\":\"Removed item unit multiplier.\"}}}},\"receipt\":{\"required\":[\"date\",\"orderId\",\"receipt\"],\"type\":\"object\",\"description\":\"Order changes receipt information.\",\"properties\":{\"date\":{\"type\":\"string\",\"description\":\"Receipt creation date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"orderId\":{\"type\":\"string\",\"description\":\"Order ID.\"},\"receipt\":{\"type\":\"string\",\"description\":\"Receipt unique identifier code.\"}}}}}}}},\"commercialConditionData\":{\"type\":[\"string\",\"null\"],\"description\":\"Commercial condition information.\"},\"shippingData\":{\"type\":\"object\",\"description\":\"Order shipping information.\",\"required\":[\"address\",\"logisticsInfo\",\"trackingHints\",\"selectedAddresses\"],\"properties\":{\"address\":{\"type\":\"object\",\"description\":\"Shipping address details.\",\"required\":[\"addressType\",\"receiverName\",\"addressId\",\"postalCode\",\"city\",\"state\",\"country\",\"street\",\"number\",\"neighborhood\",\"complement\",\"reference\",\"geoCoordinates\"],\"properties\":{\"addressType\":{\"type\":\"string\",\"description\":\"Shipping address type.\",\"enum\":[\"residential\",\"pickup\"]},\"receiverName\":{\"type\":\"string\",\"description\":\"Full name of the order receiver.\"},\"addressId\":{\"type\":\"string\",\"description\":\"Shipping address ID.\"},\"versionId\":{\"type\":[\"string\",\"null\"],\"description\":\"Shipping address version ID.\"},\"entityId\":{\"type\":[\"string\",\"null\"],\"description\":\"Shipping address entity ID.\"},\"postalCode\":{\"type\":\"string\",\"description\":\"Shipping address postal code.\"},\"city\":{\"type\":\"string\",\"description\":\"Shipping address city.\"},\"state\":{\"type\":\"string\",\"description\":\"Shipping address state.\"},\"country\":{\"type\":\"string\",\"description\":\"Shipping address three-digit country code in [ISO 3166 ALPHA-3](https://www.iban.com/country-codes) format.\"},\"street\":{\"type\":\"string\",\"description\":\"Shipping address street.\"},\"number\":{\"type\":\"string\",\"description\":\"Shipping address number.\"},\"neighborhood\":{\"type\":\"string\",\"description\":\"Shipping address neighborhood.\"},\"complement\":{\"type\":[\"string\",\"null\"],\"description\":\"Shipping address complement.\"},\"reference\":{\"type\":[\"string\",\"null\"],\"description\":\"Shipping address additional information.\"},\"geoCoordinates\":{\"type\":\"array\",\"description\":\"Shipping address pair of geolocation coordinates, first longitude then latitude.\",\"items\":{\"type\":\"number\",\"description\":\"Longitude or latitude.\"}},\"contactId\":{\"type\":[\"string\",\"null\"],\"description\":\"Contact unique identifier.\"}}},\"logisticsInfo\":{\"type\":\"array\",\"description\":\"Logistics information regarding order items.\",\"items\":{\"type\":\"object\",\"description\":\"Logistics information about an item.\",\"properties\":{\"polygonName\":{\"type\":[\"string\",\"null\"],\"description\":\"Name of the [polygon](https://help.vtex.com/en/tutorial/registering-geolocation/) associated with the [shipping policy](https://help.vtex.com/en/tutorial/shipping-policy--tutorials_140).\"},\"shippingEstimate\":{\"type\":\"string\",\"description\":\"Shipping estimate time in days. For instance, three business days is represented `3bd`.\"},\"entityId\":{\"type\":[\"string\",\"null\"],\"description\":\"Shipping address entity ID.\"},\"versionId\":{\"type\":[\"string\",\"null\"],\"description\":\"Shipping address version ID.\"},\"pickupStoreInfo\":{\"type\":\"object\",\"description\":\"Information about a [loading dock](https://help.vtex.com/en/tutorial/loading-dock--5DY8xHEjOLYDVL41Urd5qj) that was transformed into a [pickup point](https://help.vtex.com/en/tutorial/pickup-points--2fljn6wLjn8M4lJHA6HP3R).\",\"required\":[\"additionalInfo\",\"address\",\"dockId\",\"friendlyName\",\"isPickupStore\"],\"properties\":{\"isPickupStore\":{\"type\":\"boolean\",\"description\":\"Defines if the shipping type was pickup (`true`) or not (`false`).\"},\"friendlyName\":{\"type\":[\"string\",\"null\"],\"description\":\"Name of the pickup point displayed at checkout.\"},\"address\":{\"type\":[\"object\",\"null\"],\"description\":\"Pickup point address information.\",\"properties\":{\"postalCode\":{\"type\":\"string\",\"description\":\"Pickup point address postal code.\"},\"country\":{\"type\":\"object\",\"description\":\"Information about the pickup point address country.\",\"properties\":{\"acronym\":{\"type\":\"string\",\"description\":\"Three-digit country code of the pickup point address in [ISO 3166 ALPHA-3](https://www.iban.com/country-codes) format.\"},\"name\":{\"type\":\"string\",\"description\":\"Country name of the pickup point address.\"}}},\"city\":{\"type\":\"string\",\"description\":\"Pickup point address city.\"},\"state\":{\"type\":\"string\",\"description\":\"Pickup point address state.\"},\"neighborhood\":{\"type\":\"string\",\"description\":\"Pickup point address neighborhood.\"},\"street\":{\"type\":\"string\",\"description\":\"Pickup point address street.\"},\"number\":{\"type\":\"string\",\"description\":\"Pickup point address number.\"},\"complement\":{\"type\":\"string\",\"description\":\"Pickup point address complement.\"},\"reference\":{\"type\":\"string\",\"description\":\"Pickup point address reference.\"},\"location\":{\"type\":\"object\",\"description\":\"Pickup point geolocation coordinates.\",\"properties\":{\"latitude\":{\"type\":\"number\",\"description\":\"Latitude coordinate.\"},\"longitude\":{\"type\":\"number\",\"description\":\"Longitude coordinate.\"}}}}},\"additionalInfo\":{\"type\":[\"string\",\"null\"],\"description\":\"Additional information.\"},\"dockId\":{\"type\":[\"string\",\"null\"],\"description\":\"ID of the loading dock related to the pickup point.\"}}},\"deliveryWindow\":{\"type\":[\"string\",\"null\"],\"description\":\"[Scheduled delivery](https://help.vtex.com/tutorial/scheduled-delivery--22g3HAVCGLFiU7xugShOBi) window information, when applicable.\"},\"sellingPrice\":{\"type\":\"integer\",\"description\":\"Item selling price in cents.\"},\"listPrice\":{\"type\":\"integer\",\"description\":\"Item [list price](https://help.vtex.com/en/tracks/prices-101--6f8pwCns3PJHqMvQSugNfP/3XcXp0r5WrJvogB8KIX4Kx#list-price) in cents.\"},\"price\":{\"type\":\"integer\",\"description\":\"Item shipping price in cents. This value does not correspond to the order total shipping price.\"},\"deliveryChannel\":{\"type\":\"string\",\"description\":\"Defines if the delivery channel is delivery or pickup.\",\"enum\":[\"delivery\",\"pickup-in-point\"]},\"deliveryCompany\":{\"type\":\"string\",\"description\":\"[Carrier](https://help.vtex.com/en/tutorial/carriers-on-vtex--7u9duMD5UQa2QQwukAWMcE) company name.\"},\"deliveryIds\":{\"type\":\"array\",\"description\":\"Order delivery IDs information.\",\"items\":{\"type\":\"object\",\"description\":\"Information about a delivery ID.\",\"properties\":{\"courierId\":{\"type\":\"string\",\"description\":\"Carrier ID.\"},\"warehouseId\":{\"type\":\"string\",\"description\":\"[Warehouse](https://help.vtex.com/en/tutorial/warehouse--6oIxvsVDTtGpO7y6zwhGpb) ID.\"},\"dockId\":{\"type\":\"string\",\"description\":\"[Loading dock](https://help.vtex.com/en/tutorial/loading-dock--5DY8xHEjOLYDVL41Urd5qj) ID.\"},\"courierName\":{\"type\":\"string\",\"description\":\"Carrier name.\"},\"quantity\":{\"type\":\"integer\",\"description\":\"Quantity of items being delivered.\"},\"totalListPrice\":{\"type\":[\"integer\",\"null\"],\"description\":\"Total list price in cents.\"},\"accountCarrierName\":{\"type\":\"string\",\"description\":\"Account carrier name.\"},\"kitItemDetails\":{\"type\":[\"array\",\"null\"],\"description\":\"Information about [kit](https://help.vtex.com/tutorial/what-is-a-kit--5ov5s3eHM4AqAAgqWwoc28) items, when applicable.\",\"items\":{\"type\":\"string\",\"description\":\"Kit item information.\"}}}}},\"shippingEstimateDate\":{\"type\":\"string\",\"description\":\"Shipping estimate date, defined after order confirmation, in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"deliveryChannels\":{\"type\":\"array\",\"description\":\"Delivery channels associated with the sales channel (or [trade policy](https://help.vtex.com/tutorial/how-trade-policies-work--6Xef8PZiFm40kg2STrMkMV)).\",\"items\":{\"type\":\"object\",\"description\":\"Delivery channel information.\",\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"Delivery channel shipping type.\",\"enum\":[\"delivery\",\"pickup-in-point\"]},\"stockBalance\":{\"type\":\"integer\",\"description\":\"Stock check for SKU availability.\"}}}},\"itemId\":{\"type\":\"string\",\"description\":\"SKU ID.\"},\"shipsTo\":{\"type\":\"array\",\"description\":\"List of shipping address countries.\",\"items\":{\"type\":\"string\",\"description\":\"Shipping address three-digit country code in [ISO 3166 ALPHA-3](https://www.iban.com/country-codes) format.\"}},\"slas\":{\"type\":\"array\",\"description\":\"Service Level Agreements (SLA) corresponding to [shipping policies](https://help.vtex.com/en/tutorial/shipping-policy--tutorials_140).\",\"items\":{\"type\":\"object\",\"description\":\"Service Level Agreement (SLA) information.\",\"properties\":{\"pickupPointId\":{\"type\":[\"string\",\"null\"],\"description\":\"[Pickup point](https://help.vtex.com/en/tutorial/pickup-points--2fljn6wLjn8M4lJHA6HP3R) ID related to the SLA.\"},\"pickupStoreInfo\":{\"type\":\"object\",\"description\":\"Information about a [loading dock](https://help.vtex.com/en/tutorial/loading-dock--5DY8xHEjOLYDVL41Urd5qj) that was transformed into a [pickup point](https://help.vtex.com/en/tutorial/pickup-points--2fljn6wLjn8M4lJHA6HP3R).\",\"required\":[\"additionalInfo\",\"address\",\"dockId\",\"friendlyName\",\"isPickupStore\"],\"properties\":{\"isPickupStore\":{\"type\":\"boolean\",\"description\":\"Defines if the shipping type was pickup (`true`) or not (`false`).\"},\"friendlyName\":{\"type\":[\"string\",\"null\"],\"description\":\"Name of the pickup point displayed at checkout.\"},\"address\":{\"type\":[\"object\",\"null\"],\"description\":\"Pickup point address information.\",\"properties\":{\"postalCode\":{\"type\":\"string\",\"description\":\"Pickup point address postal code.\"},\"country\":{\"type\":\"object\",\"description\":\"Information about the pickup point address country.\",\"properties\":{\"acronym\":{\"type\":\"string\",\"description\":\"Three-digit country code of the pickup point address in [ISO 3166 ALPHA-3](https://www.iban.com/country-codes) format.\"},\"name\":{\"type\":\"string\",\"description\":\"Country name of the pickup point address.\"}}},\"city\":{\"type\":\"string\",\"description\":\"Pickup point address city.\"},\"state\":{\"type\":\"string\",\"description\":\"Pickup point address state.\"},\"neighborhood\":{\"type\":\"string\",\"description\":\"Pickup point address neighborhood.\"},\"street\":{\"type\":\"string\",\"description\":\"Pickup point address street.\"},\"number\":{\"type\":\"string\",\"description\":\"Pickup point address number.\"},\"complement\":{\"type\":\"string\",\"description\":\"Pickup point address complement.\"},\"reference\":{\"type\":\"string\",\"description\":\"Pickup point address reference.\"},\"location\":{\"type\":\"object\",\"description\":\"Pickup point geolocation coordinates.\",\"properties\":{\"latitude\":{\"type\":\"number\",\"description\":\"Latitude coordinate.\"},\"longitude\":{\"type\":\"number\",\"description\":\"Longitude coordinate.\"}}}}},\"additionalInfo\":{\"type\":[\"string\",\"null\"],\"description\":\"Additional information.\"},\"dockId\":{\"type\":[\"string\",\"null\"],\"description\":\"ID of the loading dock related to the pickup point.\"}}},\"tax\":{\"type\":\"integer\",\"description\":\"SLA tax information.\"},\"listPrice\":{\"type\":\"integer\",\"description\":\"SLA shipping list price in cents.\"},\"price\":{\"type\":\"integer\",\"description\":\"SLA shipping price in cents. Does not account for the order total shipping price.\"},\"deliveryWindow\":{\"type\":[\"string\",\"null\"],\"description\":\"[Delivery window](https://help.vtex.com/tutorial/scheduled-delivery--22g3HAVCGLFiU7xugShOBi) information, when applicable.\"},\"availableDeliveryWindows\":{\"type\":[\"array\",\"null\"],\"description\":\"Available delivery windows information, when applicable.\",\"items\":{\"type\":\"string\",\"description\":\"Information about an available delivery window.\"}},\"lockTTL\":{\"type\":\"string\",\"description\":\"Logistics [reservation](https://help.vtex.com/en/tutorial/how-does-reservation-work--tutorials_92) waiting time related to the SLA.\"},\"shippingEstimateDate\":{\"type\":\"string\",\"description\":\"SLA shipping estimate date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"shippingEstimate\":{\"type\":\"string\",\"description\":\"Shipping estimate time in days. For instance, three business days is represented `3bd`.\"},\"deliveryIds\":{\"type\":\"array\",\"description\":\"SLA delivery IDs information.\",\"items\":{\"type\":\"object\",\"description\":\"Information about a delivery ID.\",\"properties\":{\"courierId\":{\"type\":\"string\",\"description\":\"Carrier ID.\"},\"warehouseId\":{\"type\":\"string\",\"description\":\"[Warehouse](https://help.vtex.com/en/tutorial/warehouse--6oIxvsVDTtGpO7y6zwhGpb) ID.\"},\"dockId\":{\"type\":\"string\",\"description\":\"[Loading dock](https://help.vtex.com/en/tutorial/loading-dock--5DY8xHEjOLYDVL41Urd5qj) ID.\"},\"courierName\":{\"type\":\"string\",\"description\":\"Carrier name.\"},\"quantity\":{\"type\":\"integer\",\"description\":\"Quantity of items being delivered.\"},\"totalListPrice\":{\"type\":[\"integer\",\"null\"],\"description\":\"Total list price in cents.\"},\"accountCarrierName\":{\"type\":\"string\",\"description\":\"Account carrier name.\"},\"kitItemDetails\":{\"type\":[\"array\",\"null\"],\"description\":\"Information about [kit](https://help.vtex.com/tutorial/what-is-a-kit--5ov5s3eHM4AqAAgqWwoc28) items, when applicable.\",\"items\":{\"type\":\"string\",\"description\":\"Kit item information.\"}}}}},\"name\":{\"type\":\"string\",\"description\":\"[Shipping policy](https://help.vtex.com/en/tutorial/shipping-policy--tutorials_140) name.\"},\"deliveryChannel\":{\"type\":\"string\",\"description\":\"Defines if the delivery channel is delivery or [pickup point](https://help.vtex.com/en/tutorial/pickup-points--2fljn6wLjn8M4lJHA6HP3R).\",\"enum\":[\"delivery\",\"pickup-in-point\"]},\"id\":{\"type\":\"string\",\"description\":\"ID of the shipping method used in the [shipping policy](https://help.vtex.com/en/tutorial/shipping-policy--tutorials_140).\"},\"pickupDistance\":{\"type\":[\"number\",\"null\"],\"description\":\"Distance in kilometers between the pickup point and the customer address. The distance is measured as a straight line.\"},\"polygonName\":{\"type\":[\"string\",\"null\"],\"description\":\"Name of the [polygon](https://help.vtex.com/en/tutorial/registering-geolocation/) associated with the shipping policy.\"},\"transitTime\":{\"type\":\"string\",\"description\":\"Number of days the carrier takes in transit to deliver the order. For instance, three business days is represented `3bd`.\"}}}},\"addressId\":{\"type\":[\"string\",\"null\"],\"description\":\"Shipping address ID.\"},\"selectedDeliveryChannel\":{\"type\":\"string\",\"description\":\"Delivery channel selected by the customer. This field is being deprecated and the information it retrieves can be found in the `deliveryChannel` field.\",\"enum\":[\"delivery\",\"pickup-in-point\"]},\"lockTTL\":{\"type\":\"string\",\"description\":\"Logistics [reservation](https://help.vtex.com/en/tutorial/how-does-reservation-work--tutorials_92) waiting time.\"},\"selectedSla\":{\"type\":\"string\",\"description\":\"Service Level Agreement (SLA), which corresponds to the shipping method selected by the customer, usually like normal or express.\"},\"itemIndex\":{\"type\":\"integer\",\"description\":\"Each item in the order is identified by an index. The position starts in `0`, followed by `1`, `2`, and so on.\"},\"pickupPointId\":{\"type\":[\"string\",\"null\"],\"description\":\"[Pickup point](https://help.vtex.com/en/tutorial/pickup-points--2fljn6wLjn8M4lJHA6HP3R) ID, when applicable.\"},\"transitTime\":{\"type\":\"string\",\"description\":\"Number of days the carrier takes in transit to deliver the order. For instance, three business days is represented `3bd`.\"}}}},\"trackingHints\":{\"type\":[\"array\",\"null\"],\"description\":\"Order shipping label information.\",\"items\":{\"type\":\"object\",\"description\":\"Shipping label details.\",\"properties\":{\"trackingId\":{\"type\":\"string\",\"description\":\"Order tracking ID.\"},\"courierName\":{\"type\":\"string\",\"description\":\"[Carrier](https://help.vtex.com/en/tutorial/carriers-on-vtex--7u9duMD5UQa2QQwukAWMcE) name.\"},\"trackingUrl\":{\"type\":\"string\",\"description\":\"Order tracking URL.\"},\"trackingLabel\":{\"type\":\"string\",\"description\":\"Order tracking label.\"}}}},\"selectedAddresses\":{\"type\":\"array\",\"description\":\"Selected adresses information.\",\"items\":{\"type\":\"object\",\"description\":\"Details about a selected adress.\",\"properties\":{\"addressType\":{\"type\":\"string\",\"description\":\"Selected adress shipping type.\",\"enum\":[\"residential\",\"pickup\"]},\"receiverName\":{\"type\":\"string\",\"description\":\"Full name of the order receiver.\"},\"addressId\":{\"type\":\"string\",\"description\":\"Selected address ID.\"},\"versionId\":{\"type\":[\"string\",\"null\"],\"description\":\"Selected address version ID.\"},\"entityId\":{\"type\":[\"string\",\"null\"],\"description\":\"Selected address entity ID.\"},\"postalCode\":{\"type\":\"string\",\"description\":\"Selected address postal code.\"},\"city\":{\"type\":\"string\",\"description\":\"Selected address city.\"},\"state\":{\"type\":\"string\",\"description\":\"Selected address state.\"},\"country\":{\"type\":\"string\",\"description\":\"Selected address three-digit country code in [ISO 3166 ALPHA-3](https://www.iban.com/country-codes) format.\"},\"street\":{\"type\":\"string\",\"description\":\"Selected address street.\"},\"number\":{\"type\":\"string\",\"description\":\"Selected address number.\"},\"neighborhood\":{\"type\":\"string\",\"description\":\"Selected address neighborhood.\"},\"complement\":{\"type\":[\"string\",\"null\"],\"description\":\"Selected address complement.\"},\"reference\":{\"type\":[\"string\",\"null\"],\"description\":\"Selected address additional information.\"},\"geoCoordinates\":{\"type\":\"array\",\"description\":\"Selected address pair of geolocation coordinates, first longitude then latitude.\",\"items\":{\"type\":\"number\",\"description\":\"Longitude or latitude.\"}},\"contactId\":{\"type\":[\"string\",\"null\"],\"description\":\"Contact unique identifier.\"}}}},\"availableAddresses\":{\"type\":\"array\",\"description\":\"Available adresses information.\",\"items\":{\"type\":\"object\",\"description\":\"Details about an available adress.\",\"properties\":{\"addressType\":{\"type\":\"string\",\"description\":\"Available adress shipping type.\",\"enum\":[\"residential\",\"pickup\"]},\"receiverName\":{\"type\":\"string\",\"description\":\"Full name of the order receiver.\"},\"addressId\":{\"type\":\"string\",\"description\":\"Available address ID.\"},\"versionId\":{\"type\":[\"string\",\"null\"],\"description\":\"Available address version ID.\"},\"entityId\":{\"type\":[\"string\",\"null\"],\"description\":\"Available address entity ID.\"},\"postalCode\":{\"type\":\"string\",\"description\":\"Available address postal code.\"},\"city\":{\"type\":\"string\",\"description\":\"Available address city.\"},\"state\":{\"type\":\"string\",\"description\":\"Available address state.\"},\"country\":{\"type\":\"string\",\"description\":\"Available address three-digit country code in [ISO 3166 ALPHA-3](https://www.iban.com/country-codes) format.\"},\"street\":{\"type\":\"string\",\"description\":\"Available address street.\"},\"number\":{\"type\":\"string\",\"description\":\"Available address number.\"},\"neighborhood\":{\"type\":\"string\",\"description\":\"Available address neighborhood.\"},\"complement\":{\"type\":[\"string\",\"null\"],\"description\":\"Available address complement.\"},\"reference\":{\"type\":[\"string\",\"null\"],\"description\":\"Available address additional information.\"},\"geoCoordinates\":{\"type\":\"array\",\"description\":\"Available address pair of geolocation coordinates, first longitude then latitude.\",\"items\":{\"type\":\"number\",\"description\":\"Longitude or latitude.\"}},\"contactId\":{\"type\":[\"string\",\"null\"],\"description\":\"Contact unique identifier.\"}}}},\"contactInformation\":{\"type\":[\"array\",\"null\"],\"description\":\"Order contact information.\",\"items\":{\"type\":\"object\",\"description\":\"Order contact details.\",\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"Contact ID.\"},\"email\":{\"type\":\"string\",\"description\":\"Contact email.\"},\"firstName\":{\"type\":\"string\",\"description\":\"Contact first name.\"},\"lastName\":{\"type\":\"string\",\"description\":\"Contact last name.\"},\"document\":{\"type\":\"string\",\"description\":\"Contact document number.\"},\"phone\":{\"type\":\"string\",\"description\":\"Contact phone number.\"},\"documentType\":{\"type\":\"string\",\"description\":\"Contact document type.\"}}}}}},\"packageAttachment\":{\"type\":[\"object\",\"null\"],\"description\":\"Information about shipping packages, which are created after order invoicing.\",\"properties\":{\"packages\":{\"type\":[\"array\",\"null\"],\"description\":\"List with packages' information.\",\"items\":{\"type\":\"object\",\"description\":\"Package details.\",\"properties\":{\"courier\":{\"type\":\"string\",\"description\":\"Name of the [carrier](https://help.vtex.com/en/tutorial/carriers-on-vtex--7u9duMD5UQa2QQwukAWMcE) responsible for the package shipping.\"},\"description\":{\"type\":[\"string\",\"null\"],\"description\":\"Package description.\"},\"invoiceNumber\":{\"type\":\"string\",\"description\":\"Unique identification code of the package invoice.\"},\"invoiceValue\":{\"type\":\"integer\",\"description\":\"Package invoice value in cents.\"},\"invoiceUrl\":{\"type\":\"string\",\"description\":\"Package invoice URL.\"},\"issuanceDate\":{\"type\":\"string\",\"description\":\"Package invoice issuance date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"trackingNumber\":{\"type\":\"string\",\"description\":\"Package [tracking number](https://developers.vtex.com/docs/api-reference/orders-api#patch-/api/oms/pvt/orders/-orderId-/invoice/-invoiceNumber-).\"},\"invoiceKey\":{\"type\":\"string\",\"description\":\"Package invoice key.\"},\"trackingUrl\":{\"type\":\"string\",\"description\":\"Package tracking URL.\"},\"embeddedInvoice\":{\"type\":\"string\",\"description\":\"Package invoice text in [xml format](https://help.vtex.com/en/tutorial/configuring-xml--tutorials_242). This field is important for stores integrated with [external marketplaces](https://developers.vtex.com/docs/guides/external-marketplace-integration-guide).\"},\"type\":{\"type\":\"string\",\"description\":\"Package invoice type, which can be:\\r\\n- `Output`: Selling order invoice.\\r\\n- `Input`: Returning items invoice.\",\"enum\":[\"Output\",\"Input\"]},\"items\":{\"type\":\"array\",\"description\":\"Information on each item in the package.\",\"items\":{\"type\":\"object\",\"description\":\"Package item details.\",\"properties\":{\"itemIndex\":{\"type\":\"integer\",\"description\":\"Item index of the item position whithin the `items` array. The count starts at `0`.\"},\"id\":{\"type\":\"string\",\"description\":\"SKU ID.\"},\"quantity\":{\"type\":\"integer\",\"description\":\"Package item quantity.\"},\"price\":{\"type\":\"integer\",\"description\":\"Package item price in cents.\"},\"description\":{\"type\":\"string\",\"description\":\"Package item description.\"},\"unitMultiplier\":{\"type\":\"number\",\"description\":\"Package item unit multiplier.\"}}}},\"courierStatus\":{\"type\":[\"object\",\"null\"],\"description\":\"[Carrier](https://help.vtex.com/en/tutorial/carriers-on-vtex--7u9duMD5UQa2QQwukAWMcE) shipping information.\",\"properties\":{\"deliveredDate\":{\"type\":\"string\",\"description\":\"Package delivery date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"status\":{\"type\":[\"string\",\"null\"],\"description\":\"Defines if a carrier was assigned for order shipping (`ok`) or not (`null`).\"},\"finished\":{\"type\":\"boolean\",\"description\":\"Defines if the carrier has already delivered the package (`true`) or not (`false`).\"},\"data\":{\"type\":\"array\",\"description\":\"Package tracking information.\",\"items\":{\"type\":\"object\",\"description\":\"Package tracking details.\",\"properties\":{\"lastChange\":{\"type\":\"string\",\"description\":\"Date since package tracking last change in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"city\":{\"type\":\"string\",\"description\":\"Package tracking city.\"},\"state\":{\"type\":\"string\",\"description\":\"Package tracking state in two-digit code format.\"},\"description\":{\"type\":\"string\",\"description\":\"Package tracking description.\"},\"createDate\":{\"type\":\"string\",\"description\":\"Package tracking creation date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"}}}}}},\"cfop\":{\"type\":[\"string\",\"null\"],\"description\":\"[CFOP](https://www.gov.br/receitafederal/pt-br/acesso-a-informacao/acoes-e-programas/facilitacao/anexo-ecf-cfop) (_Código Fiscal de Operação e Prestação_) is a Brazilian fiscal code of operations and services that classifies business transaction types.\"},\"lastChange\":{\"type\":\"string\",\"description\":\"Date since package tracking last change in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"restitutions\":{\"type\":[\"object\",\"null\"],\"description\":\"Information about a value being returned to the customer. This field applies only to invoices with the `Input` type because it relates to returning items.\",\"properties\":{\"refund\":{\"type\":\"object\",\"description\":\"Customer refund details.\",\"properties\":{\"value\":{\"type\":\"integer\",\"description\":\"Refund value in cents.\"},\"giftCardData\":{\"type\":[\"string\",\"null\"],\"description\":\"Refund involving a [gift card](https://developers.vtex.com/docs/guides/gift-card-integration-guide).\"},\"items\":{\"type\":[\"array\",\"null\"],\"description\":\"Information about the items being returned.\",\"items\":{\"type\":\"object\",\"description\":\"Returned item details.\",\"properties\":{\"useFreight\":{\"type\":[\"boolean\",\"null\"],\"description\":\"Defines if the refund includes freight values (`true`) or not (`false`).\"},\"isCompensation\":{\"type\":\"boolean\",\"description\":\"Defines if there are compensated unit tags in the package (`true`) or not (`false`).\"},\"compensationValue\":{\"type\":\"integer\",\"description\":\"Compensational refund value in cents.\"},\"id\":{\"type\":\"string\",\"description\":\"SKU ID of the returned item.\"},\"quantity\":{\"type\":\"integer\",\"description\":\"Number of items being returned.\"},\"price\":{\"type\":\"integer\",\"description\":\"Returned item price in cents.\"},\"description\":{\"type\":\"string\",\"description\":\"Customer reason for returning the item.\"}}}}}}}},\"volumes\":{\"type\":[\"integer\",\"null\"],\"description\":\"Indicates the number of boxes (volumes) needed to contain the package items. For example, two refrigerators do not fit in a single volume, so this field would have value `2`.\"}}}}}},\"marketplace\":{\"type\":[\"object\",\"null\"],\"description\":\"Information about the marketplace related to the order.\",\"properties\":{\"baseURL\":{\"type\":\"string\",\"description\":\"Marketplace base URL.\"},\"isCertified\":{\"type\":[\"boolean\",\"null\"],\"description\":\"Defines if the marketplace is a [VTEX certified marketplace](https://help.vtex.com/en/tutorial/marketplace-strategies-at-vtex--tutorials_402#integrating-with-certified-marketplaces) (`true`) or not (`false`).\"},\"name\":{\"type\":\"string\",\"description\":\"Marketplace name.\"}}},\"contextData\":{\"type\":\"object\",\"description\":\"Information about the order context.\",\"properties\":{\"loggedIn\":{\"type\":\"boolean\",\"description\":\"Defines if the user was logged in the account or not (`true`) or not (`false`).\"},\"hasAccessToOrderFormEnabledByLicenseManager\":{\"type\":\"boolean\",\"description\":\"Defines if in order placement the user had access to the order form enabled by the [License Manager](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) (`true`) or not (`false`).\"},\"userAgent\":{\"type\":\"string\",\"description\":\"User agent name.\"},\"userId\":{\"type\":\"string\",\"description\":\"User ID.\"}}},\"lastMessage\":{\"type\":[\"string\",\"null\"],\"description\":\"Last transactional message sent to the customer.\"},\"status\":{\"type\":\"string\",\"description\":\"[Order status](https://help.vtex.com/en/tutorial/order-flow-and-status--tutorials_196) in the workflow.\"},\"handlingData\":{\"type\":[\"string\",\"null\"],\"description\":\"Order handling information.\"},\"documentVersion\":{\"type\":\"string\",\"description\":\"Document version identification.\"},\"appVersion\":{\"type\":\"string\",\"description\":\"APP version identification.\"},\"workflowData\":{\"type\":\"object\",\"description\":\"Information about order processing and workflow.\",\"properties\":{\"instances\":{\"type\":\"array\",\"description\":\"Order processing details.\",\"items\":{\"type\":\"object\",\"description\":\"Order processing details for the marketplace and seller instances.\",\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"Workflow instance ID.\"},\"name\":{\"type\":\"string\",\"description\":\"Workflow instance name, related to marketplace and fulfillment.\"},\"currentStepName\":{\"type\":\"string\",\"description\":\"Current [order status](https://help.vtex.com/en/tutorial/order-flow-and-status--tutorials_196) in the workflow.\"},\"currentStepDescription\":{\"type\":[\"string\",\"null\"],\"description\":\"Current step description for the order status in the workflow.\"},\"lastChange\":{\"type\":\"string\",\"description\":\"Date of the order last change in the workflow in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"isInError\":{\"type\":\"boolean\",\"description\":\"Defines if the order processing in the workflow is in error (`true`) or not (`false`).\"},\"isInAutomaticRetry\":{\"type\":\"boolean\",\"description\":\"Defines if the order is in automatic processing retry in the workflow (`true`) or not (`false`).\"},\"creationDate\":{\"type\":\"string\",\"description\":\"Order creation date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"owner\":{\"type\":[\"string\",\"null\"],\"description\":\"Code that identifies the owner.\"},\"version\":{\"type\":[\"string\",\"null\"],\"description\":\"Workflow version.\"},\"timeLine\":{\"type\":\"array\",\"description\":\"Workflow timeline steps.\",\"items\":{\"type\":\"object\",\"description\":\"Information about a given workflow timeline step.\",\"properties\":{\"stepName\":{\"type\":\"string\",\"description\":\"Name of the timeline step.\"},\"date\":{\"type\":\"string\",\"description\":\"Timeline step processing date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"parentStepName\":{\"type\":\"string\",\"description\":\"Timeline parent step name.\"}}}},\"logicTimeLine\":{\"type\":\"array\",\"description\":\"Logical workflow timeline steps.\",\"items\":{\"type\":\"object\",\"description\":\"Information about a given logical workflow timeline step.\",\"properties\":{\"stepName\":{\"type\":\"string\",\"description\":\"Name of the logical timeline step.\"},\"date\":{\"type\":\"string\",\"description\":\"Logical timeline step processing date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"}}}},\"steps\":{\"type\":\"array\",\"description\":\"Steps in the order processing in the workflow.\",\"items\":{\"type\":\"object\",\"description\":\"Details about a given step in the order processing.\",\"properties\":{\"name\":{\"type\":\"string\",\"description\":\"Order processing step name.\"},\"next\":{\"type\":[\"array\",\"null\"],\"description\":\"Next order steps in the workflow.\",\"items\":{\"type\":\"object\",\"description\":\"Information about a given step in the workflow.\",\"properties\":{\"name\":{\"type\":\"string\",\"description\":\"Step status name.\"},\"next\":{\"type\":[\"string\",\"null\"],\"description\":\"Next order status step.\"},\"systemWillMove\":{\"type\":\"boolean\",\"description\":\"Defines if the order can move to the next step (`true`) or not (`false`).\"},\"actionsAllowed\":{\"type\":[\"object\",\"null\"],\"description\":\"Type of actions allowed in the next steps.\",\"properties\":{\"type\":{\"type\":\"string\",\"description\":\"Name of the order action allowed.\"}}},\"expectFlow\":{\"type\":[\"boolean\",\"null\"],\"description\":\"Defines if the order is progressing in the workflow as expected (`true`) or not (`false`).\"}}}},\"systemWillMove\":{\"type\":\"boolean\",\"description\":\"Defines if the order can move to the next workflow status (`true`) or not (`false`).\"},\"actionsAllowed\":{\"type\":[\"object\",\"null\"],\"description\":\"Type of actions allowed for order processing in the workflow.\",\"properties\":{\"type\":{\"type\":\"string\",\"description\":\"Name of the order action allowed.\"}}},\"start\":{\"type\":\"boolean\",\"description\":\"Defines if the step corresponds to the order creation (`true`) or not (`false`).\"}}}},\"currentLogicalStep\":{\"type\":\"string\",\"description\":\"Name of the order current logical step in the workflow.\"}}}},\"mainFlowIndex\":{\"type\":\"integer\",\"description\":\"Workflow processing index, starting from `0`.\"}}},\"checkedInPickupPointId\":{\"type\":[\"string\",\"null\"],\"description\":\"When the order is created at a physical store which is configured as a pickup point, this field retrieves the pickup point ID.\"},\"fingerPrint\":{\"type\":\"string\",\"description\":\"Order finger print code.\"},\"piiHidden\":{\"type\":\"boolean\",\"description\":\"Defines if the VTEX account uses [PII data architecture](https://developers.vtex.com/docs/guides/pii-data-architecture-specifications) (`true`) or not (`false`).\"},\"workflowIsInError\":{\"type\":\"boolean\",\"description\":\"Indicates if the order workflow presents an error (`true`) or if there are no errors (`false`).\"},\"callCenterOperator\":{\"type\":[\"string\",\"null\"],\"description\":\"Identification code of the call center operator responsible for the order, when applicable.\"},\"state\":{\"type\":\"string\",\"description\":\"[Order status](https://help.vtex.com/en/tutorial/order-flow-and-status--tutorials_196) in the workflow.\"},\"timeZoneCreationDate\":{\"type\":\"string\",\"description\":\"Order creation date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"timeZoneLastChange\":{\"type\":\"string\",\"description\":\"Date of the order processing last change in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"userType\":{\"type\":[\"string\",\"null\"],\"description\":\"User type.\"},\"clientPreferencesData\":{\"type\":\"object\",\"description\":\"Information about the customer preferences.\",\"properties\":{\"locale\":{\"type\":\"string\",\"description\":\"Language code of the customer preferred language while accessing the store.\"},\"optinNewsLetter\":{\"type\":\"boolean\",\"description\":\"Defines if the customer receives the store's newsletter (`true`) or not (`false`).\"}}},\"orderId\":{\"type\":\"string\",\"description\":\"Order ID.\"},\"workflowInstanceId\":{\"type\":[\"string\",\"null\"],\"description\":\"Workflow instance ID.\"},\"creationDate\":{\"type\":\"string\",\"description\":\"Order creation date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"totals\":{\"type\":\"array\",\"description\":\"Information about the order totals.\",\"items\":{\"type\":\"object\",\"description\":\"Details about the order totals.\",\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"Total ID, which defines what the total is about.\",\"enum\":[\"Items\",\"Discounts\",\"Shipping\",\"Tax\"]},\"name\":{\"type\":\"string\",\"description\":\"Total name.\"},\"value\":{\"type\":\"integer\",\"description\":\"Total value in cents.\"},\"alternativeTotals\":{\"type\":[\"array\",\"null\"],\"description\":\"Information about the order alternative totals, when applicable. For example, when there is a discount for items in the marketplace that results in a difference in the `Items` total value, the `alternativeTotals` can retrieve details about it.\",\"items\":{\"type\":\"object\",\"description\":\"Details about the order alternative totals.\",\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"Alternative total ID, which can be related to items, discounts, shipping or taxes.\"},\"name\":{\"type\":\"string\",\"description\":\"Alternative total name.\"},\"value\":{\"type\":\"integer\",\"description\":\"Alternative total value in cents.\"}}}}}}},\"sequence\":{\"type\":\"string\",\"description\":\"Sequence number part of the order ID. For example, in order `v70530116str-01`, the sequence is `70530116`.\"},\"receiptData\":{\"type\":\"object\",\"description\":\"Receipts with information about transactions.\",\"properties\":{\"receiptCollection\":{\"type\":\"object\",\"description\":\"Receipt with information about a given transaction.\",\"properties\":{\"receiptType\":{\"type\":\"string\",\"description\":\"Receipt transaction type.\"},\"date\":{\"type\":\"string\",\"description\":\"Receipt transaction date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"}}}}},\"isCompleted\":{\"type\":\"boolean\",\"description\":\"Defines if the order payment has been settled (`true`) or not (`false`).\"},\"openTextField\":{\"type\":[\"object\",\"null\"],\"description\":\"Optional field for additional information.\",\"additionalProperties\":{\"type\":\"string\",\"description\":\"Additional information.\"}},\"affiliateId\":{\"type\":[\"string\",\"null\"],\"description\":\"Three-letter [affiliate](https://help.vtex.com/en/tutorial/configuring-affiliates--tutorials_187) code configured by the seller to identify a marketplace.\"},\"value\":{\"type\":\"integer\",\"description\":\"Order total value in cents.\"},\"hostname\":{\"type\":\"string\",\"description\":\"Main [account name](https://help.vtex.com/en/tutorial/what-is-an-account-name--i0mIGLcg3QyEy8OCicEoC).\"},\"followUpEmail\":{\"type\":\"string\",\"description\":\"Email of the store employee responsible for managing the order.\"},\"lastChange\":{\"type\":\"string\",\"description\":\"Order last change date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"sellers\":{\"type\":\"array\",\"description\":\"Information about the sellers associated with the order.\",\"items\":{\"type\":\"object\",\"description\":\"Information about a given seller.\",\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"Seller identifier.\"},\"name\":{\"type\":\"string\",\"description\":\"Seller name.\"},\"logo\":{\"type\":[\"string\",\"null\"],\"description\":\"Seller logo URL.\"},\"fulfillmentEndpoint\":{\"type\":\"string\",\"description\":\"URL of the endpoint for fulfillment of seller's orders, which the marketplace use to communicate with the seller.\"},\"subSellerId\":{\"type\":\"string\",\"description\":\"Sub seller ID. When the main account acts both as seller and marketplace, this field will return the value `1`.\"}}}},\"marketingData\":{\"type\":[\"object\",\"null\"],\"description\":\"Information about marketing and promotions, such as coupon code and [Urchin Tracking Module (UTM)](https://help.vtex.com/en/tutorial/what-are-utm-source-utm-campaign-and-utm-medium--2wTz7QJ8KUG6skGAoAQuii).\",\"properties\":{\"utmSource\":{\"type\":[\"string\",\"null\"],\"description\":\"A UTM is an Urchin Tracking Module used to track traffic related to your store. This field is an UTM for tracking the traffic source, to know from which site, advertiser, or publication the customer came before reaching your site.\"},\"utmMedium\":{\"type\":\"string\",\"description\":\"UTM for tracking the advertising or marketing media used to reach your site, such as banners and newsletters.\"},\"utmCampaign\":{\"type\":[\"string\",\"null\"],\"description\":\"UTM for tracking the marketing campaign context.\"},\"utmPartner\":{\"type\":[\"string\",\"null\"],\"description\":\"UTM for tracking the partner.\"},\"utmipage\":{\"type\":[\"string\",\"null\"],\"description\":\"A `utmi` is an internal Urchin Tracking Module (UTM) used to track traffic inside your site. This field is an internal UTM for tracking pages.\"},\"utmiPart\":{\"type\":[\"string\",\"null\"],\"description\":\"Internal UTM for tracking the partner.\"},\"utmiCampaign\":{\"type\":[\"string\",\"null\"],\"description\":\"Internal UTM for tracking the marketing campaign context.\"},\"coupon\":{\"type\":[\"string\",\"null\"],\"description\":\"Coupon code used by the customer.\"},\"marketingTags\":{\"type\":\"array\",\"description\":\"List of marketing tags valid for the order.\",\"items\":{\"type\":\"string\",\"description\":\"Marketing tag name.\"}}}},\"ratesAndBenefitsData\":{\"type\":\"object\",\"description\":\"Information about promotions and taxes valid for the order.\",\"properties\":{\"rateAndBenefitsIdentifiers\":{\"type\":\"array\",\"description\":\"List of promotions and taxes.\",\"items\":{\"type\":\"object\",\"description\":\"Information about a given promotion or tax.\",\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"Promotion or tax ID.\"},\"name\":{\"type\":\"string\",\"description\":\"Promotion or tax name.\"},\"featured\":{\"type\":\"boolean\",\"description\":\"Defines if the [target audience](https://help.vtex.com/en/tutorial/creating-a-campaign-audience--6cnuDZJzIkIeocewAQQK4K) is featured (`true`) or not (`false`).\"},\"description\":{\"type\":[\"string\",\"null\"],\"description\":\"Promotion or tax description.\"},\"matchedParameters\":{\"type\":[\"object\",\"null\"],\"description\":\"Conditions met by the purchase for the promotion or tax to be applied.\",\"additionalProperties\":{\"type\":\"string\",\"description\":\"Promotion or tax condition.\"}},\"additionalInfo\":{\"type\":[\"object\",\"null\"],\"description\":\"Object containing additional information about the promotion or tax.\",\"additionalProperties\":{\"type\":\"string\",\"description\":\"Promotion or tax additional information.\"}}}}},\"teaser\":{\"type\":[\"array\",\"null\"],\"description\":\"List of promotion teasers.\",\"items\":{\"type\":\"object\",\"description\":\"Information about a promotion teaser.\",\"properties\":{\"name\":{\"type\":\"string\",\"description\":\"Promotion teaser name.\"},\"description\":{\"type\":\"string\",\"description\":\"Promotion teaser description.\"}}}}}},\"paymentData\":{\"type\":\"object\",\"description\":\"Payments information.\",\"properties\":{\"giftCards\":{\"type\":[\"array\",\"null\"],\"description\":\"[Gift cards](https://developers.vtex.com/docs/guides/gift-card-integration-guide) information, when applicable.\",\"items\":{\"type\":\"object\",\"description\":\"Gift card details.\",\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"Gift card identification.\"},\"redemptionCode\":{\"type\":\"string\",\"description\":\"Gift card code used by the customer at checkout.\"},\"name\":{\"type\":[\"string\",\"null\"],\"description\":\"Gift card name.\"},\"caption\":{\"type\":[\"string\",\"null\"],\"description\":\"Gift card loyalty program, when applicable.\"},\"value\":{\"type\":\"integer\",\"description\":\"Gift card value in cents.\"},\"balance\":{\"type\":\"number\",\"description\":\"Gift card current balance. For newly created gift cards, the balance will be `0.0`.\"},\"provider\":{\"type\":\"string\",\"description\":\"Gift card provider name.\"},\"groupName\":{\"type\":[\"string\",\"null\"],\"description\":\"Gift card group name.\"},\"inUse\":{\"type\":\"boolean\",\"description\":\"Defines if the gift card is in use (`true`) or not (`false`).\"},\"isSpecialCard\":{\"type\":\"boolean\",\"description\":\"Defines if the gift card is a special card (`true`) or not (`false`).\"}}}},\"transactions\":{\"type\":\"array\",\"description\":\"Information about the order financial transactions.\",\"items\":{\"type\":\"object\",\"description\":\"Information about a given transaction.\",\"properties\":{\"isActive\":{\"type\":\"boolean\",\"description\":\"Defines of the transaction is active (`true`) or inactive (`false`).\"},\"transactionId\":{\"type\":\"string\",\"description\":\"Transaction ID.\"},\"merchantName\":{\"type\":\"string\",\"description\":\"Merchant name.\"},\"payments\":{\"type\":\"array\",\"description\":\"Payments information.\",\"items\":{\"type\":\"object\",\"description\":\"Payment details.\",\"properties\":{\"bankIssuedInvoiceIdentificationNumberFormatted\":{\"type\":[\"string\",\"null\"],\"description\":\"Bank issued invoice numeric sequence formatted as customers see.\"},\"bankIssuedInvoiceIdentificationNumber\":{\"type\":[\"string\",\"null\"],\"description\":\"Bank issued invoice numeric sequence.\"},\"parentAccountId\":{\"type\":[\"string\",\"null\"],\"description\":\"When the payment was made in a subaccount, this field retrieves the main account ID.\"},\"accountId\":{\"type\":\"string\",\"description\":\"Identification code of the account where the payment was made.\"},\"dueDate\":{\"type\":[\"string\",\"null\"],\"description\":\"Payment due date in `MM/YY` format.\"},\"group\":{\"type\":\"string\",\"description\":\"Transaction payment method, which can be credit card, debid card, bank invoice, promissory, gift card or pix (`instantPayment`).\",\"enum\":[\"creditCard\",\"debitCard\",\"bankInvoice\",\"promissory\",\"giftCard\",\"instantPayment\"]},\"isGiftCardDiscount\":{\"type\":[\"boolean\",\"null\"],\"description\":\"Defines if the payment has a gift card discount (`true`) or not (`false`).\"},\"giftCardName\":{\"type\":[\"string\",\"null\"],\"description\":\"Gift card name.\"},\"giftCardCaption\":{\"type\":[\"string\",\"null\"],\"description\":\"Gift card caption.\"},\"giftCardProvider\":{\"type\":[\"string\",\"null\"],\"description\":\"Gift card provider ID.\"},\"giftCardId\":{\"type\":[\"string\",\"null\"],\"description\":\"Gift card ID.\"},\"redemptionCode\":{\"type\":[\"string\",\"null\"],\"description\":\"Gift card code used by the customer at checkout.\"},\"tid\":{\"type\":\"string\",\"description\":\"Provider unique identifier for the transaction.\"},\"koinUrl\":{\"type\":[\"string\",\"null\"],\"description\":\"Koin connector URL.\"},\"url\":{\"type\":[\"string\",\"null\"],\"description\":\"Payment URL.\"},\"expireYear\":{\"type\":[\"string\",\"null\"],\"description\":\"Card expiration year in 4-digit format.\"},\"expireMonth\":{\"type\":[\"string\",\"null\"],\"description\":\"Card expiration month in 2-digit format.\"},\"cvv2\":{\"type\":[\"string\",\"null\"],\"description\":\"Card Verification Value (CVV2) is a security code used by payment processors to reduce fraudulent credit and debit card transactions.\"},\"lastDigits\":{\"type\":[\"string\",\"null\"],\"description\":\"Card last four digits.\"},\"firstDigits\":{\"type\":[\"string\",\"null\"],\"description\":\"Card first four digits.\"},\"cardNumber\":{\"type\":[\"string\",\"null\"],\"description\":\"Card number.\"},\"cardHolder\":{\"type\":[\"string\",\"null\"],\"description\":\"Name of the card owner.\"},\"referenceValue\":{\"type\":\"integer\",\"description\":\"Total payment reference value in cents.\"},\"connectorResponses\":{\"type\":\"object\",\"description\":\"Payment provider (connector) responses. The fields within this object can vary according to the order payment provider.\",\"properties\":{\"Message\":{\"type\":\"string\",\"description\":\"Provider operational message or error to be logged.\"},\"tid\":{\"type\":\"string\",\"description\":\"Provider unique identifier for the transaction.\"},\"authorizationId\":{\"type\":\"string\",\"description\":\"Provider authorization ID.\"},\"status\":{\"type\":\"string\",\"description\":\"Order payment status in the [transaction flow](https://help.vtex.com/en/tracks/payments--6GAS7ZzGAm7AGoEAwDbwJG/1xjzgJZvqwaI1rfxLMCC3Y).\"},\"delayToAutoSettle\":{\"type\":\"integer\",\"description\":\"Total time (in seconds) before the auto settle, when the platform makes an automatic call to `/settlements`, regardless if the payment was approved by the merchant's anti-fraud provider. The maximum value allowed is `604800` seconds (7 days).\"},\"ReturnCode\":{\"type\":[\"string\",\"null\"],\"description\":\"Provider operational return code or error to be logged.\"},\"nsu\":{\"type\":\"string\",\"description\":\"Provider unique sequential number for the transaction.\"},\"code\":{\"type\":\"string\",\"description\":\"Provider operational code or error to be logged.\"},\"message\":{\"type\":\"string\",\"description\":\"Provider operational message or error to be logged.\"},\"Tid\":{\"type\":\"string\",\"description\":\"Provider unique identifier for the transaction.\"},\"acquirer\":{\"type\":\"string\",\"description\":\"[Acquirer](https://help.vtex.com/en/tracks/payments--6GAS7ZzGAm7AGoEAwDbwJG/kdPbEIWf8Xq8tESQvViMB#acquirer) name (mostly used for card payments).\"},\"authId\":{\"type\":\"string\",\"description\":\"Authorization identification.\"},\"paymentId\":{\"type\":\"string\",\"description\":\"Payment ID.\"},\"delayToAutoSettleAfterAntifraud\":{\"type\":\"string\",\"description\":\"Total time (in seconds) before the auto settle, when the platform makes an automatic call to `/settlements`. This happens only after the payment was approved by the merchant's anti-fraud provider.\"}}},\"installments\":{\"type\":\"integer\",\"description\":\"Number of payment installments.\"},\"value\":{\"type\":\"integer\",\"description\":\"Order total payment value in cents.\"},\"paymentSystemName\":{\"type\":\"string\",\"description\":\"Payment system name.\"},\"paymentSystem\":{\"type\":\"string\",\"description\":\"Payment system ID.\"},\"paymentOrigin\":{\"type\":[\"string\",\"null\"],\"description\":\"Type of [wallet](https://help.vtex.com/en/tutorial/what-is-an-e-wallet--4v5wcOe4A0SiaimWM2cU60) used in the payment.\"},\"id\":{\"type\":\"string\",\"description\":\"Payment unique identifier.\"},\"bankIssuedInvoiceBarCodeNumber\":{\"type\":[\"string\",\"null\"],\"description\":\"Bank issued invoice bar code number.\"},\"bankIssuedInvoiceBarCodeType\":{\"type\":[\"string\",\"null\"],\"description\":\"Bank issued invoice bar code type.\"},\"billingAddress\":{\"type\":[\"object\",\"null\"],\"description\":\"Billing address information.\",\"properties\":{\"addressType\":{\"type\":\"string\",\"description\":\"Billing address type, which can be `residential`, when the customer gives an address for delivery, or `pickup`, when the customer picks the order at a pickup point.\",\"enum\":[\"residential\",\"pickup\"]},\"receiverName\":{\"type\":\"string\",\"description\":\"Full name of the order receiver.\"},\"addressId\":{\"type\":\"string\",\"description\":\"Billing address ID.\"},\"versionId\":{\"type\":[\"string\",\"null\"],\"description\":\"Billing address version ID.\"},\"entityId\":{\"type\":[\"string\",\"null\"],\"description\":\"Billing address entity ID.\"},\"postalCode\":{\"type\":\"string\",\"description\":\"Billing address postal code.\"},\"city\":{\"type\":\"string\",\"description\":\"Billing address city.\"},\"state\":{\"type\":\"string\",\"description\":\"Billing address state.\"},\"country\":{\"type\":\"string\",\"description\":\"Billing address three-digit country code in [ISO 3166 ALPHA-3](https://www.iban.com/country-codes) format.\"},\"street\":{\"type\":\"string\",\"description\":\"Billing address street.\"},\"number\":{\"type\":\"string\",\"description\":\"Billing address number.\"},\"neighborhood\":{\"type\":\"string\",\"description\":\"Billing address neighborhood.\"},\"complement\":{\"type\":[\"string\",\"null\"],\"description\":\"Billing address complement.\"},\"reference\":{\"type\":[\"string\",\"null\"],\"description\":\"Billing address additional information.\"},\"geoCoordinates\":{\"type\":\"array\",\"description\":\"Billing address pair of geolocation coordinates, first longitude then latitude.\",\"items\":{\"type\":\"number\",\"description\":\"Longitude or latitude.\"}},\"contactId\":{\"type\":[\"string\",\"null\"],\"description\":\"Billing contact unique identifier.\"}}}}}},\"sharedTransaction\":{\"type\":\"boolean\",\"description\":\"Defines if the transaction is shared (`true`) or not (`false`).\"},\"status\":{\"type\":[\"string\",\"null\"],\"description\":\"Order payment status in the [transaction flow](https://help.vtex.com/en/tracks/payments--6GAS7ZzGAm7AGoEAwDbwJG/1xjzgJZvqwaI1rfxLMCC3Y).\"}}}}}},\"invoiceData\":{\"type\":[\"object\",\"null\"],\"description\":\"Order invoices information.\",\"properties\":{\"address\":{\"type\":[\"object\",\"null\"],\"description\":\"Invoice address information.\",\"properties\":{\"addressType\":{\"type\":[\"string\",\"null\"],\"description\":\"Invoice address type, which can be `residential`, when the customer gives an address for delivery, or `pickup`, when the customer picks the order at a pickup point.\",\"enum\":[\"residential\",\"pickup\"]},\"receiverName\":{\"type\":[\"string\",\"null\"],\"description\":\"Full name of the order receiver.\"},\"addressId\":{\"type\":[\"string\",\"null\"],\"description\":\"Invoice address ID.\"},\"versionId\":{\"type\":[\"string\",\"null\"],\"description\":\"Invoice address version ID.\"},\"entityId\":{\"type\":[\"string\",\"null\"],\"description\":\"Invoice address entity ID.\"},\"postalCode\":{\"type\":\"string\",\"description\":\"Invoice address postal code.\"},\"city\":{\"type\":\"string\",\"description\":\"Invoice address city.\"},\"state\":{\"type\":\"string\",\"description\":\"Invoice address state.\"},\"country\":{\"type\":\"string\",\"description\":\"Invoice address three-digit country code in [ISO 3166 ALPHA-3](https://www.iban.com/country-codes) format.\"},\"street\":{\"type\":\"string\",\"description\":\"Invoice address street.\"},\"number\":{\"type\":\"string\",\"description\":\"Invoice address number.\"},\"neighborhood\":{\"type\":\"string\",\"description\":\"Invoice address neighborhood.\"},\"complement\":{\"type\":[\"string\",\"null\"],\"description\":\"Invoice address complement.\"},\"reference\":{\"type\":[\"string\",\"null\"],\"description\":\"Invoice address additional information.\"},\"geoCoordinates\":{\"type\":\"array\",\"description\":\"Invoice address pair of geolocation coordinates, first longitude then latitude.\",\"items\":{\"type\":\"number\",\"description\":\"Longitude or latitude.\"}},\"contactId\":{\"type\":[\"string\",\"null\"],\"description\":\"Contact unique identifier.\"}}},\"userPaymentInfo\":{\"type\":[\"object\",\"null\"],\"description\":\"Invoice information regarding payment method.\",\"properties\":{\"paymentMethods\":{\"type\":\"array\",\"description\":\"List of the payment methods used by the customer in the purchase.\",\"items\":{\"type\":\"string\",\"description\":\"Payment method name.\"}}}},\"settleInvoices\":{\"type\":[\"array\",\"null\"],\"description\":\"List with the order settled invoices.\",\"items\":{\"type\":\"string\",\"description\":\"Settled invoice numeric identifier.\"}},\"invoiceSubject\":{\"type\":[\"object\",\"null\"],\"description\":\"Information about the invoice subject.\",\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"Invoice subject ID.\"},\"email\":{\"type\":\"string\",\"description\":\"Invoice subject email address.\"},\"firstName\":{\"type\":\"string\",\"description\":\"Invoice subject first name.\"},\"lastName\":{\"type\":\"string\",\"description\":\"Invoice subject last name.\"},\"phone\":{\"type\":\"string\",\"description\":\"Invoice subject phone number.\"}}}}},\"storePreferencesData\":{\"type\":\"object\",\"description\":\"Store preferences in the [Account settings](https://help.vtex.com/en/tutorial/account-details-page--2vhUVOKfCaswqLguT2F9xq).\",\"properties\":{\"countryCode\":{\"type\":\"string\",\"description\":\"Country code in three-digit [ISO 3166 ALPHA-3](https://www.iban.com/country-codes) format.\"},\"currencyCode\":{\"type\":\"string\",\"description\":\"Currency code in [ISO 4217](https://www.iban.com/currency-codes) format.\"},\"currencyFormatInfo\":{\"type\":\"object\",\"description\":\"Currency format settings.\",\"properties\":{\"CurrencyDecimalDigits\":{\"type\":\"integer\",\"description\":\"Number of currency decimal digits.\"},\"CurrencyDecimalSeparator\":{\"type\":\"string\",\"description\":\"Character for currency decimal separation.\"},\"CurrencyGroupSeparator\":{\"type\":\"string\",\"description\":\"Character for currency group separation.\"},\"CurrencyGroupSize\":{\"type\":\"integer\",\"description\":\"Limit of characters that can be grouped for currency groups.\"},\"StartsWithCurrencySymbol\":{\"type\":\"boolean\",\"description\":\"Defines if the prices displayed for customers start with the currency symbol (`true`) or not (`false`).\"}}},\"currencyLocale\":{\"type\":\"integer\",\"description\":\"Currency locale code in [LCID](https://learn.microsoft.com/en-us/openspecs/office_standards/ms-oe376/6c085406-a698-4e12-9d4d-c3b0ee3dbc4a) format.\"},\"currencySymbol\":{\"type\":\"string\",\"description\":\"Currency symbol characters.\"},\"timeZone\":{\"type\":\"string\",\"description\":\"Time zone considered for the store orders.\"}}},\"merchantName\":{\"type\":[\"string\",\"null\"],\"description\":\"Merchant name.\"},\"itemMetadata\":{\"type\":\"object\",\"description\":\"Metadata information about items.\",\"properties\":{\"items\":{\"type\":\"array\",\"description\":\"Metadata details about items.\",\"items\":{\"type\":\"object\",\"description\":\"Metadata details about a given item\",\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"SKU ID.\"},\"seller\":{\"type\":\"string\",\"description\":\"Seller ID.\"},\"name\":{\"type\":\"string\",\"description\":\"Item name as displayed to customers in the storefront.\"},\"skuName\":{\"type\":\"string\",\"description\":\"SKU name.\"},\"productId\":{\"type\":\"string\",\"description\":\"Product ID.\"},\"refId\":{\"type\":\"string\",\"description\":\"SKU reference ID.\"},\"ean\":{\"type\":[\"string\",\"null\"],\"description\":\"European Article Number (EAN) of the item.\"},\"imageUrl\":{\"type\":\"string\",\"description\":\"SKU image URL.\"},\"detailUrl\":{\"type\":\"string\",\"description\":\"SKU slug.\"},\"assemblyOptions\":{\"type\":[\"array\",\"null\"],\"description\":\"[Assembly options](https://help.vtex.com/en/tutorial/assembly-options--5x5FhNr4f5RUGDEGWzV1nH) information related to the item, when applicable.\",\"items\":{\"type\":\"object\",\"description\":\"[Assembly option](https://help.vtex.com/en/tutorial/assembly-options--5x5FhNr4f5RUGDEGWzV1nH) details.\",\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"Assembly option ID.\"},\"name\":{\"type\":\"string\",\"description\":\"Assembly option name.\"},\"required\":{\"type\":\"boolean\",\"description\":\"Defines if sending the attachment for the item purchased is required(`true`) or optional (`false`).\"},\"inputValues\":{\"type\":[\"object\",\"null\"],\"description\":\"Assembly option content.\",\"additionalProperties\":{\"type\":[\"string\",\"null\"],\"description\":\"Assembly option value.\"}},\"composition\":{\"type\":[\"object\",\"null\"],\"description\":\"Assembly option composition.\",\"additionalProperties\":{\"type\":\"string\",\"description\":\"Assembly option composition value.\"}}}}}}}}}},\"creationEnvironment\":{\"type\":[\"string\",\"null\"],\"description\":\"Order creation environment, which can be a [development workspace](https://developers.vtex.com/docs/guides/vtex-io-documentation-creating-a-development-workspace) (`BETA`) or a [production workspace](https://developers.vtex.com/docs/guides/vtex-io-documentation-creating-a-production-workspace) (`STABLE`).\",\"enum\":[\"BETA\",\"STABLE\"]},\"cancellationData\":{\"type\":[\"object\",\"null\"],\"description\":\"Information about [order cancellation](https://developers.vtex.com/docs/guides/order-canceling-improvements), when applicable.\",\"properties\":{\"requestedByUser\":{\"type\":\"boolean\",\"description\":\"Defines if the order cancellation was requested by the customer (`true`) or not (`false`).\"},\"requestedBySystem\":{\"type\":[\"boolean\",\"null\"],\"description\":\"Defines if the order cancellation was made by the system (`true`) or not (`false`). This type of order cancellation happens in [incomplete orders](https://help.vtex.com/en/tutorial/how-incomplete-orders-work--tutorials_294), for example.\"},\"requestedBySellerNotification\":{\"type\":[\"boolean\",\"null\"],\"description\":\"Defines if the order cancellation was requested by the seller (`true`) or not (`false`).\"},\"requestedByPaymentNotification\":{\"type\":[\"boolean\",\"null\"],\"description\":\"Defines if the order cancellation was requested by the payment gateway (`true`) or not (`false`).\"},\"reason\":{\"type\":\"string\",\"description\":\"Reason why the order was canceled.\"},\"cancellationDate\":{\"type\":\"string\",\"description\":\"Order cancellation date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"cancellationRequestId\":{\"type\":\"string\",\"description\":\"ID that identifies the cancellation operation.\"}}},\"cancellationRequests\":{\"type\":[\"array\",\"null\"],\"description\":\"Information about the [seller order cancellation denials](https://developers.vtex.com/docs/guides/order-canceling-improvements), regardless if the cancellation request was made by the marketplace or the customer.\",\"items\":{\"type\":\"object\",\"description\":\"Information about the seller denial to a given order cancellation request.\",\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"ID that identifies the original cancellation operation made by the marketplaces or its customer care service using the [Cancel order](https://developers.vtex.com/docs/api-reference/orders-api#post-/api/oms/pvt/orders/-orderId-/cancel) endpoint.\"},\"reason\":{\"type\":\"string\",\"description\":\"Reason why there was a request to cancel the order.\"},\"cancellationRequestDate\":{\"type\":\"string\",\"description\":\"Date of when the order cancellation request was processed by the platform. The date format is [ISO 8601 time zone offset](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"requestedByUser\":{\"type\":\"boolean\",\"description\":\"Defines if the order cancellation was requested by the customer (`true`) or not (`false`).\"},\"deniedBySeller\":{\"type\":\"boolean\",\"description\":\"Defines if the order cancellation request was [denied by the seller](https://developers.vtex.com/docs/guides/order-canceling-improvements) (`true`) or accepted by the seller (`false`).\"},\"deniedBySellerReason\":{\"type\":[\"string\",\"null\"],\"description\":\"Reason given by the seller for denying the order cancellation.\"},\"cancellationRequestDenyDate\":{\"type\":[\"string\",\"null\"],\"description\":\"Date of when the platform processed the seller denial to an order cancellation request. The date format is [ISO 8601 time zone offset](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"}}}}}}\n\n// Validate if response matches JSON schema \npm.test(\"[GET]::/api/orders/pvt/document/:orderId - Schema is valid\", function() {\n pm.response.to.have.jsonSchema(schema,{unknownFormats: [\"int32\", \"int64\", \"float\", \"double\"]});\n});\n" + "// Response Validation\nconst schema = {\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"Order ID.\"},\"sellerOrderId\":{\"type\":\"string\",\"description\":\"Seller order ID.\"},\"orderFormId\":{\"type\":\"string\",\"description\":\"ID of the shopping cart from which the order was created.\"},\"origin\":{\"type\":\"string\",\"description\":\"Order's [origin in the order flow](https://help.vtex.com/en/tutorial/order-flow-and-status--tutorials_196).\",\"enum\":[\"Marketplace\",\"Fulfillment\",\"Chain\"]},\"orderGroup\":{\"type\":\"string\",\"description\":\"Order group ID.\"},\"items\":{\"type\":\"array\",\"description\":\"Information on order items.\",\"items\":{\"type\":\"object\",\"description\":\"Information on each order item.\",\"properties\":{\"productCategories\":{\"type\":\"object\",\"description\":\"Object containing product categories with the structure: `{CategoryID}: {CategoryName}`.\",\"properties\":{\"additionalProperties\":{\"type\":\"string\",\"description\":\"Product category corresponding to the ID in the field key.\"}}},\"uniqueId\":{\"type\":\"string\",\"description\":\"Order item unique ID.\"},\"id\":{\"type\":\"string\",\"description\":\"Item ID.\"},\"productId\":{\"type\":\"string\",\"description\":\"Product ID.\"},\"lockId\":{\"type\":[\"string\",\"null\"],\"description\":\"[Reservation](https://help.vtex.com/en/tutorial/how-does-reservation-work--tutorials_92) ID.\"},\"ean\":{\"type\":[\"string\",\"null\"],\"description\":\"European Article Number (EAN) of the item.\"},\"quantity\":{\"type\":\"integer\",\"description\":\"Item quantity.\"},\"seller\":{\"type\":\"string\",\"description\":\"Seller name. When the store acts both as marketplace and seller, this field corresponds to `1`, because every VTEX store is its own seller 1.\"},\"sellerSku\":{\"type\":\"string\",\"description\":\"Seller SKU ID.\"},\"priceValidUntil\":{\"type\":\"string\",\"description\":\"Item price expiration date and time in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"name\":{\"type\":\"string\",\"description\":\"SKU name.\"},\"additionalInfo\":{\"type\":\"object\",\"description\":\"Item additional information.\",\"properties\":{\"brandName\":{\"type\":\"string\",\"description\":\"Item brand name.\"},\"brandId\":{\"type\":\"string\",\"description\":\"Item brand ID.\"},\"categoriesIds\":{\"type\":\"string\",\"description\":\"Categories IDs.\"},\"dimension\":{\"type\":\"object\",\"description\":\"Item dimensions.\",\"properties\":{\"cubicweight\":{\"type\":\"number\",\"description\":\"Item cubic weight.\"},\"height\":{\"type\":\"number\",\"description\":\"Item height.\"},\"length\":{\"type\":\"number\",\"description\":\"Item length.\"},\"weight\":{\"type\":\"number\",\"description\":\"Item weight.\"},\"width\":{\"type\":\"number\",\"description\":\"Item width.\"}}},\"productClusterId\":{\"type\":\"string\",\"description\":\"All product clusters related to the item.\"},\"commercialConditionId\":{\"type\":\"string\",\"description\":\"Commercial condition ID.\"},\"offeringInfo\":{\"type\":[\"string\",\"null\"],\"description\":\"Offering information.\"},\"offeringType\":{\"type\":[\"string\",\"null\"],\"description\":\"Offering type.\"},\"offeringTypeId\":{\"type\":[\"string\",\"null\"],\"description\":\"Offering type ID.\"},\"categories\":{\"type\":\"array\",\"description\":\"Item [categories](https://help.vtex.com/tracks/catalog-101--5AF0XfnjfWeopIFBgs3LIQ/2gkZDjXRqfsq62TlAkj4uf) information.\",\"items\":{\"type\":\"object\",\"description\":\"Information about a given category.\",\"properties\":{\"id\":{\"type\":\"integer\",\"description\":\"Category ID.\"},\"name\":{\"type\":\"string\",\"description\":\"Category name.\"}}}}}},\"attachments\":{\"type\":[\"array\",\"null\"],\"description\":\"Information on [attachments](https://help.vtex.com/en/tutorial/what-is-an-attachment--aGICk0RVbqKg6GYmQcWUm).\",\"items\":{\"type\":\"object\",\"description\":\"Information about a given attachment.\",\"properties\":{\"name\":{\"type\":[\"string\",\"null\"],\"description\":\"Attachment name.\"},\"content\":{\"type\":[\"object\",\"null\"],\"description\":\"Custom field for attachment content.\",\"additionalProperties\":{\"type\":[\"string\",\"null\"],\"description\":\"Custom field information.\"}}}}},\"attachmentOfferings\":{\"type\":[\"array\",\"null\"],\"description\":\"Array containing attachments details.\",\"items\":{\"type\":[\"object\",\"null\"],\"description\":\"Attachment details.\",\"properties\":{\"name\":{\"type\":[\"string\",\"null\"],\"description\":\"Attachment name.\"},\"required\":{\"type\":[\"boolean\",\"null\"],\"description\":\"Defines if the attachment is required (`true`) or not (`false`).\"},\"schema\":{\"type\":[\"object\",\"null\"],\"description\":\"Schema of the content declared in the field `attachmentOfferings`.\"}}}},\"assemblies\":{\"type\":[\"array\",\"null\"],\"description\":\"Information about the item customization, when applicable.\",\"items\":{\"type\":[\"string\",\"null\"],\"description\":\"Customization information.\"}},\"refId\":{\"type\":\"string\",\"description\":\"Ref ID.\"},\"shippingPrice\":{\"type\":[\"integer\",\"null\"],\"description\":\"Item shipping price in cents. This value does not account for the order total shipping price.\"},\"price\":{\"type\":\"integer\",\"description\":\"Item price in cents.\"},\"sellingPrice\":{\"type\":\"integer\",\"description\":\"Selling price in cents. This field can present rounding discrepancies, so we recommend retrieving pricing information from the `priceDefinition` field.\"},\"listPrice\":{\"type\":\"integer\",\"description\":\"List price in cents.\"},\"manualPrice\":{\"type\":[\"integer\",\"null\"],\"description\":\"[Manual price](https://help.vtex.com/en/tutorial/change-the-price-of-an-item-in-the-shopping-cart--7Cd37aCAmtL1qmoZJJvjNf) in cents.\"},\"tax\":{\"type\":\"integer\",\"description\":\"Tax value in cents.\"},\"rewardValue\":{\"type\":\"integer\",\"description\":\"Reward value in cents.\"},\"freightCommission\":{\"type\":\"integer\",\"description\":\"Freight commission value in cents.\"},\"commission\":{\"type\":\"integer\",\"description\":\"Commission value registered for the seller.\"},\"priceTags\":{\"type\":\"array\",\"description\":\"Information about price tags. A price tag is a price modifier, like s discount or a promotion applicable to the item in the order context.\",\"items\":{\"type\":\"object\",\"description\":\"Information about a given price tag.\",\"properties\":{\"name\":{\"type\":\"string\",\"description\":\"Price tag name.\"},\"rawValue\":{\"type\":\"number\",\"description\":\"Price tag raw value.\"},\"isPercentual\":{\"type\":\"boolean\",\"description\":\"Indicates whether price tag value is applied through a percentage (`true`) or not (`false`).\"},\"identifier\":{\"type\":\"string\",\"description\":\"Price tag identifier.\"},\"rate\":{\"type\":[\"integer\",\"null\"],\"description\":\"Price tag value.\"},\"jurisCode\":{\"type\":[\"string\",\"null\"],\"description\":\"Juris code.\"},\"jurisType\":{\"type\":[\"string\",\"null\"],\"description\":\"Juris type.\"},\"jurisName\":{\"type\":[\"string\",\"null\"],\"description\":\"Juris name.\"}}}},\"imageUrl\":{\"type\":\"string\",\"description\":\"Image URL.\"},\"detailUrl\":{\"type\":\"string\",\"description\":\"Detail URL.\"},\"components\":{\"type\":[\"array\",\"null\"],\"description\":\"Item components.\",\"items\":{\"type\":[\"string\",\"null\"],\"description\":\"Component name.\"}},\"bundleItems\":{\"type\":[\"array\",\"null\"],\"description\":\"Information about services sold with the item. For example, a gift package.\",\"items\":{\"type\":\"object\",\"description\":\"Information about a given service.\",\"properties\":{\"type\":{\"type\":\"string\",\"description\":\"Service type.\"},\"id\":{\"type\":\"integer\",\"description\":\"Service ID.\"},\"name\":{\"type\":\"string\",\"description\":\"Service name.\"},\"price\":{\"type\":\"integer\",\"description\":\"Service price in cents.\"}}}},\"offerings\":{\"type\":[\"array\",\"null\"],\"description\":\"Information about offerings, which are services related to the item. For example, a warranty or installation.\",\"items\":{\"type\":[\"string\",\"null\"],\"description\":\"Name of the service related to the item. For example, warranty or installation.\"}},\"preSaleDate\":{\"type\":[\"string\",\"null\"],\"description\":\"Presale date and time in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"isGift\":{\"type\":\"boolean\",\"description\":\"Defines it the item is a gift (`true`) or not (`false`).\"},\"taxCode\":{\"type\":[\"string\",\"null\"],\"description\":\" Item tax code.\"},\"measurementUnit\":{\"type\":\"string\",\"description\":\"Item measurement unit.\"},\"unitMultiplier\":{\"type\":\"number\",\"description\":\"Item unit multiplier.\"},\"marketingData\":{\"type\":[\"object\",\"null\"],\"description\":\"Information about marketing and promotions, such as coupon code and [Urchin Tracking Module (UTM)](https://help.vtex.com/en/tutorial/what-are-utm-source-utm-campaign-and-utm-medium--2wTz7QJ8KUG6skGAoAQuii).\",\"properties\":{\"utmSource\":{\"type\":[\"string\",\"null\"],\"description\":\"A UTM is an Urchin Tracking Module used to track traffic related to your store. This field is an UTM for tracking the traffic source, to know from which site, advertiser, or publication the customer came before reaching your site.\"},\"utmMedium\":{\"type\":\"string\",\"description\":\"UTM for tracking the advertising or marketing media used to reach your site, such as banners and newsletters.\"},\"utmCampaign\":{\"type\":[\"string\",\"null\"],\"description\":\"UTM for tracking the marketing campaign context.\"},\"utmPartner\":{\"type\":[\"string\",\"null\"],\"description\":\"UTM for tracking the partner.\"},\"utmipage\":{\"type\":[\"string\",\"null\"],\"description\":\"A `utmi` is an internal Urchin Tracking Module (UTM) used to track traffic inside your site. This field is an internal UTM for tracking pages.\"},\"utmiPart\":{\"type\":[\"string\",\"null\"],\"description\":\"Internal UTM for tracking the partner.\"},\"utmiCampaign\":{\"type\":[\"string\",\"null\"],\"description\":\"Internal UTM for tracking the marketing campaign context.\"},\"coupon\":{\"type\":[\"string\",\"null\"],\"description\":\"Coupon code used by the customer.\"},\"marketingTags\":{\"type\":\"array\",\"description\":\"List of marketing tags valid for the item.\",\"items\":{\"type\":\"string\",\"description\":\"Marketing tag name.\"}}}},\"parentAssemblyBinding\":{\"type\":[\"string\",\"null\"],\"description\":\"When items are indexed in between each other, this field returns the assembly option ID. This response is `null` for items that are not [assembly options](https://help.vtex.com/en/tutorial/assembly-options--5x5FhNr4f5RUGDEGWzV1nH).\"},\"parentItemIndex\":{\"type\":[\"integer\",\"null\"],\"description\":\"Ranking number that shows how related items are indexed in between each other. It starts at `0` as the primary item reference and counts up to `1`, `2`, and so on. For example, a customer bought sunglasses and hired a warranty service. Since the sunglasses are index `0`, the warranty service (the [assembly option](https://help.vtex.com/en/tutorial/assembly-options--5x5FhNr4f5RUGDEGWzV1nH)) is index `1` and has the `parentItemIndex` value `0`. This response is `null` for items that are not assembly options.\"},\"callCenterOperator\":{\"type\":[\"string\",\"null\"],\"description\":\"Identification code of the call center operator that sold the item, when applicable.\"},\"priceDefinition\":{\"type\":\"object\",\"description\":\"Item price information.\",\"properties\":{\"calculatedSellingPrice\":{\"type\":\"integer\",\"description\":\"Item calculated selling price in cents.\"},\"total\":{\"type\":\"integer\",\"description\":\"Item total price in cents.\"},\"sellingPrices\":{\"type\":\"array\",\"description\":\"Item selling prices.\",\"items\":{\"type\":\"object\",\"description\":\"Price value per quantity.\",\"properties\":{\"value\":{\"type\":\"integer\",\"description\":\"Item selling price value in cents.\"},\"quantity\":{\"type\":\"integer\",\"description\":\"Item quantity.\"}}}},\"reason\":{\"type\":[\"string\",\"null\"],\"description\":\"Item price definition reason.\"}}},\"costPrice\":{\"type\":[\"integer\",\"null\"],\"description\":\"Item cost price in cents.\"}}}},\"marketplaceItems\":{\"type\":[\"array\",\"null\"],\"description\":\"Marketplace items.\",\"items\":{\"type\":[\"string\",\"null\"],\"description\":\"Marketplace item.\"}},\"authorizedDate\":{\"type\":\"string\",\"description\":\"Order authorization date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"subscriptionData\":{\"type\":[\"object\",\"null\"],\"description\":\"Information about [subscriptions](https://help.vtex.com/tutorial/how-subscriptions-work--frequentlyAskedQuestions_4453), when applicable.\",\"properties\":{\"subscriptionGroupId\":{\"type\":[\"string\",\"null\"],\"description\":\"Subscription group ID. If this field returns `null` and the `executionCount` is `0`, the order is the first subscription order.\"},\"subscriptions\":{\"type\":[\"array\",\"null\"],\"description\":\"List with subscriptions details.\",\"items\":{\"type\":\"object\",\"description\":\"Subscription details.\",\"properties\":{\"executionCount\":{\"type\":\"integer\",\"description\":\"Position of the order in the subscription cycle. The first order will have the value `0`, the second will have the value `1`, and so on.\"},\"priceAtSubscriptionDate\":{\"type\":[\"number\",\"null\"],\"description\":\"Value of the order when the customer subscribed. Subscriptions created via VTEX Admin or [Subscriptions API](https://developers.vtex.com/docs/api-reference/subscriptions-api-v3) do not have an original order, so this field returns `0.0`.\"},\"itemIndex\":{\"type\":\"integer\",\"description\":\"Each item in the subscription order is identified by an index. The position starts in `0`, followed by `1`, `2`, and so on.\"},\"plan\":{\"type\":\"object\",\"description\":\"Information about the [subscription plan](https://help.vtex.com/en/tutorial/subscription-plans-beta--5kczKRqHEsrs1tYtRcY8wR).\",\"properties\":{\"type\":{\"type\":\"string\",\"description\":\"Plan type.\"},\"frequency\":{\"type\":\"object\",\"description\":\"Information about subscriptions' recurrence.\",\"properties\":{\"periodicity\":{\"type\":\"string\",\"description\":\"Defines the subscription recurrence period.\",\"enum\":[\"DAILY\",\"WEEKLY\",\"MONTHLY\",\"YEARLY\"]},\"interval\":{\"type\":\"integer\",\"description\":\"Time interval configured between subscription orders, which depends on the frequency. For a `DAY` frequency, the value will be days, for `MONTH` it will be months, and so on.\"}}},\"validity\":{\"type\":\"object\",\"description\":\"Information about the period during which the subscription will be valid.\",\"properties\":{\"begin\":{\"type\":\"string\",\"description\":\"Subscription plan beginning date and time in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"end\":{\"type\":[\"string\",\"null\"],\"description\":\"Subscription plan ending date and time in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"}}}}}}}}}},\"taxData\":{\"type\":[\"object\",\"null\"],\"description\":\"Order taxes information.\",\"required\":[\"areTaxesDesignatedByMarketplace\",\"taxInfoCollection\"],\"properties\":{\"areTaxesDesignatedByMarketplace\":{\"type\":\"boolean\",\"description\":\"Defines if the taxes were applied by the marketplace (`true`) or not (`false`).\"},\"taxInfoCollection\":{\"type\":\"array\",\"description\":\"Order taxes details.\",\"items\":{\"type\":\"object\",\"description\":\"Information about a given tax.\",\"required\":[\"itemIndex\",\"sku\",\"priceTags\"],\"properties\":{\"itemIndex\":{\"type\":\"integer\",\"description\":\"Item indexing number.\"},\"sku\":{\"type\":\"string\",\"description\":\"SKU ID.\"},\"priceTags\":{\"type\":[\"object\",\"null\"],\"description\":\"Information about order taxes.\",\"properties\":{\"areTaxesDesignatedByMarketplace\":{\"type\":\"boolean\",\"description\":\"Defines if the taxes were designated by the marketplace (`true`) or not (`false`).\"},\"taxInfoCollection\":{\"type\":\"array\",\"description\":\"Array with taxes' details.\",\"items\":{\"type\":\"object\",\"description\":\"Details about a given tax.\",\"properties\":{\"itemIndex\":{\"type\":\"integer\",\"description\":\"Item index number.\"},\"sku\":{\"type\":\"string\",\"description\":\"Alphanumeric sequence that identifies a SKU.\"},\"priceTags\":{\"type\":\"array\",\"description\":\"Price tags information with the original taxes calculated at order placement.\",\"items\":{\"type\":\"object\",\"description\":\"Information about a given price tag.\",\"properties\":{\"identifier\":{\"type\":\"string\",\"description\":\"Price tag identifier code.\"},\"isPercentual\":{\"type\":\"boolean\",\"description\":\"Indicates whether price tag value is applied through a percentage (`true`) or not (`false`).\"},\"name\":{\"type\":\"string\",\"description\":\"Price tag name.\"},\"value\":{\"type\":\"number\",\"description\":\"Price tag value.\"},\"rawValue\":{\"type\":\"number\",\"description\":\"Price tag raw value that can contain up to five decimals, separated by a period.\"}}}}}}}}}}}}}},\"invoicedDate\":{\"type\":[\"string\",\"null\"],\"description\":\"Order invoice date and time in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"marketplaceOrderId\":{\"type\":[\"string\",\"null\"],\"description\":\"Order ID in the marketplace.\"},\"marketplaceServicesEndpoint\":{\"type\":[\"string\",\"null\"],\"description\":\"Marketplace endpoint for post purchase communication.\"},\"clientProfileData\":{\"type\":\"object\",\"description\":\"Information about the client who created the order.\",\"required\":[\"id\",\"email\",\"firstName\",\"lastName\",\"documentType\",\"document\",\"phone\",\"corporateName\",\"tradeName\",\"corporateDocument\",\"stateInscription\",\"corporatePhone\",\"isCorporate\",\"userProfileId\",\"customerClass\"],\"properties\":{\"id\":{\"type\":[\"string\",\"null\"],\"description\":\"Client ID.\"},\"userProfileId\":{\"type\":\"string\",\"description\":\"User profile ID.\"},\"userProfileVersion\":{\"type\":[\"string\",\"null\"],\"description\":\"User profile version.\"},\"firstName\":{\"type\":\"string\",\"description\":\"Client first name.\"},\"lastName\":{\"type\":\"string\",\"description\":\"Client last name.\"},\"email\":{\"type\":\"string\",\"description\":\"Client email address.\"},\"document\":{\"type\":\"string\",\"description\":\"Client document code.\"},\"corporateDocument\":{\"type\":[\"string\",\"null\"],\"description\":\"If the client is a legal entity, this field includes the corporate document.\"},\"corporateName\":{\"type\":[\"string\",\"null\"],\"description\":\"If the client is a legal entity, this field includes the corporate name.\"},\"documentType\":{\"type\":\"string\",\"description\":\"Client document type.\"},\"phone\":{\"type\":\"string\",\"description\":\"Client telephone number.\"},\"tradeName\":{\"type\":[\"string\",\"null\"],\"description\":\"If the client is a legal entity, this field includes the trade name.\"},\"stateInscription\":{\"type\":[\"string\",\"null\"],\"description\":\"If the client is a legal entity, this field includes the corporate state inscription.\"},\"corporatePhone\":{\"type\":[\"string\",\"null\"],\"description\":\"If the client is a legal entity, this field includes the corporate telephone number.\"},\"isCorporate\":{\"type\":\"boolean\",\"description\":\"Defines if the client is corporate and a legal entity (`true`) or not (`false`).\"},\"customerClass\":{\"type\":[\"string\",\"null\"],\"description\":\"Customer class identification.\"},\"customerCode\":{\"type\":[\"string\",\"null\"],\"description\":\"Customer code.\"}}},\"giftRegistryData\":{\"type\":[\"object\",\"null\"],\"description\":\"[Gift list](https://developers.vtex.com/docs/guides/creating-gift-lists) information.\",\"properties\":{\"giftRegistryId\":{\"type\":\"string\",\"description\":\"Gift list ID.\"},\"giftRegistryType\":{\"type\":\"string\",\"description\":\"[Gift list type](https://help.vtex.com/en/tutorial/creating-a-type-of-list).\"},\"giftRegistryTypeName\":{\"type\":\"string\",\"description\":\"Gift list type name.\"},\"addressId\":{\"type\":\"string\",\"description\":\"Gift list shipping address ID.\"},\"description\":{\"type\":\"string\",\"description\":\"Gift list description.\"}}},\"emailTracked\":{\"type\":\"string\",\"description\":\"Customer email [tracked](https://help.vtex.com/en/tutorial/understanding-the-conversation-tracker--tutorials_195).\"},\"isCheckedIn\":{\"type\":\"boolean\",\"description\":\"Defines if the order was placed via [VTEX Sales App](https://help.vtex.com/en/tracks/instore-getting-started-and-setting-up--zav76TFEZlAjnyBVL5tRc) (`true`) or not (`false`).\"},\"approvedBy\":{\"type\":[\"string\",\"null\"],\"description\":\"User who approved the order, in case of manual approval.\"},\"cancelledBy\":{\"type\":[\"string\",\"null\"],\"description\":\"User that canceled the order.\"},\"canceledBy\":{\"type\":[\"string\",\"null\"],\"description\":\"User that canceled the order.\"},\"cancelReason\":{\"type\":[\"string\",\"null\"],\"description\":\"Order cancellation reason.\"},\"callCenterOperatorData\":{\"type\":[\"object\",\"null\"],\"description\":\"Information about the call center operator responsible for the order.\",\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"Call center operator identification code.\"},\"email\":{\"type\":\"string\",\"description\":\"Call center operator email.\"},\"userName\":{\"type\":\"string\",\"description\":\"Call center operator user name.\"}}},\"allowCancellation\":{\"type\":\"boolean\",\"description\":\"Defines if order cancellation is allowed (`true`) or not anymore (`false`).\"},\"allowEdition\":{\"type\":\"boolean\",\"description\":\"Defines if the order can be edited (`true`) or not anymore (`false`).\"},\"roundingError\":{\"type\":\"integer\",\"description\":\"Rounding error total amount in cents, when applicable. For example, in orders with a discount over non-integer multiplier items, the rounding price is performed per item, not after the sum of all items. That can cause a difference in the total discount amount, which is informed in this field.\"},\"salesChannel\":{\"type\":\"string\",\"description\":\"Sales channel (or [trade policy](https://help.vtex.com/tutorial/how-trade-policies-work--6Xef8PZiFm40kg2STrMkMV)) related to the order.\"},\"salesChannelData\":{\"type\":\"object\",\"description\":\"Sales channel (or [trade policy](https://help.vtex.com/tutorial/how-trade-policies-work--6Xef8PZiFm40kg2STrMkMV)) information.\",\"properties\":{\"countryCode\":{\"type\":[\"string\",\"null\"],\"description\":\"Three-digit country code, in [ISO 3166 ALPHA-3](https://www.iban.com/country-codes) format.\"},\"currencyCode\":{\"type\":[\"string\",\"null\"],\"description\":\"Currency code in [ISO 4217](https://www.iban.com/currency-codes) format.\"},\"currencyFormatInfo\":{\"type\":[\"object\",\"null\"],\"description\":\"Currency format details.\",\"properties\":{\"CurrencyDecimalDigits\":{\"type\":\"integer\",\"description\":\"Quantity of currency decimal digits.\"},\"CurrencyDecimalSeparator\":{\"type\":\"string\",\"description\":\"Defines what currency decimal separator will be applied.\"},\"CurrencyGroupSeparator\":{\"type\":\"string\",\"description\":\"Defines what currency group separator will be applied.\"},\"CurrencyGroupSize\":{\"type\":\"integer\",\"description\":\"Defines how many characters will be grouped.\"},\"StartsWithCurrencySymbol\":{\"type\":\"boolean\",\"description\":\"Defines if all prices will be initiated with the currency symbol (`true`) or not (`false`).\"}}},\"cultureInfo\":{\"type\":[\"string\",\"null\"],\"description\":\"Information about the culture.\"},\"currencyLocale\":{\"type\":\"integer\",\"description\":\"Currency Locale Code in [LCID](https://learn.microsoft.com/en-us/openspecs/office_standards/ms-oe376/6c085406-a698-4e12-9d4d-c3b0ee3dbc4a) format.\"},\"currencySymbol\":{\"type\":[\"string\",\"null\"],\"description\":\"Currency symbol.\"},\"timeZone\":{\"type\":[\"string\",\"null\"],\"description\":\"Time zone where the order was created.\"},\"id\":{\"type\":\"string\",\"description\":\"Sales channel (or [trade policy](https://help.vtex.com/tutorial/how-trade-policies-work--6Xef8PZiFm40kg2STrMkMV)) ID.\"},\"name\":{\"type\":\"string\",\"description\":\"Store name.\"},\"isActive\":{\"type\":\"boolean\",\"description\":\"Defines if the sales channel is active (`true`) or inactive (`false`).\"}}},\"customData\":{\"type\":[\"object\",\"null\"],\"description\":\"Customizable fields created by the store for the shopping cart. This field is useful for storing data not included in other fields. For example, a message for a gift or a name to be printed in a shirt.\",\"properties\":{\"customApps\":{\"type\":[\"array\",\"null\"],\"description\":\"Customizable apps created by the store.\",\"items\":{\"type\":[\"string\",\"null\"],\"description\":\"Customizable apps details.\"}}}},\"changesAttachment\":{\"type\":[\"object\",\"null\"],\"description\":\"Information about changes in the order.\",\"required\":[\"id\",\"changesData\"],\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"Order changes ID.\"},\"changesData\":{\"type\":\"array\",\"description\":\"Order changes details.\",\"items\":{\"required\":[\"reason\",\"discountValue\",\"incrementValue\",\"itemsAdded\",\"itemsRemoved\",\"receipt\"],\"type\":\"object\",\"description\":\"Details about an order change.\",\"properties\":{\"reason\":{\"type\":\"string\",\"description\":\"Text explaining why the order was changed. This information may be shown to the customer in the storefront or transactional emails.\"},\"discountValue\":{\"type\":[\"integer\",\"null\"],\"description\":\"Order change discount value in cents.\"},\"incrementValue\":{\"type\":[\"integer\",\"null\"],\"description\":\"Order change increment value in cents.\"},\"itemsAdded\":{\"type\":[\"array\",\"null\"],\"description\":\"Information about items added to the order, when applicable.\",\"items\":{\"type\":\"object\",\"description\":\"Information about an item added to the order.\",\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"Added item SKU ID.\"},\"name\":{\"type\":\"string\",\"description\":\"Added item SKU name.\"},\"quantity\":{\"type\":\"integer\",\"description\":\"Quantity of items added.\"},\"price\":{\"type\":\"integer\",\"description\":\"Added item price in cents.\"},\"unitMultiplier\":{\"type\":[\"string\",\"null\"],\"description\":\"Added item unit multiplier.\"}}}},\"itemsRemoved\":{\"type\":[\"array\",\"null\"],\"description\":\"Information about items removed from the order, when applicable.\",\"items\":{\"type\":\"object\",\"description\":\"Information about an item removed from the order.\",\"required\":[\"id\",\"name\",\"quantity\",\"price\",\"unitMultiplier\"],\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"Removed item SKU ID.\"},\"name\":{\"type\":\"string\",\"description\":\"Removed item name.\"},\"quantity\":{\"type\":\"integer\",\"format\":\"int32\",\"description\":\"Quantity of removed items.\"},\"price\":{\"type\":\"integer\",\"format\":\"int32\",\"description\":\"Removed item price in cents.\"},\"unitMultiplier\":{\"type\":[\"string\",\"null\"],\"description\":\"Removed item unit multiplier.\"}}}},\"receipt\":{\"required\":[\"date\",\"orderId\",\"receipt\"],\"type\":\"object\",\"description\":\"Order changes receipt information.\",\"properties\":{\"date\":{\"type\":\"string\",\"description\":\"Receipt creation date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"orderId\":{\"type\":\"string\",\"description\":\"Order ID.\"},\"receipt\":{\"type\":\"string\",\"description\":\"Receipt unique identifier code.\"}}}}}}}},\"commercialConditionData\":{\"type\":[\"string\",\"null\"],\"description\":\"Commercial condition information.\"},\"shippingData\":{\"type\":\"object\",\"description\":\"Order shipping information.\",\"required\":[\"address\",\"logisticsInfo\",\"trackingHints\",\"selectedAddresses\"],\"properties\":{\"address\":{\"type\":\"object\",\"description\":\"Shipping address details.\",\"required\":[\"addressType\",\"receiverName\",\"addressId\",\"postalCode\",\"city\",\"state\",\"country\",\"street\",\"number\",\"neighborhood\",\"complement\",\"reference\",\"geoCoordinates\"],\"properties\":{\"addressType\":{\"type\":\"string\",\"description\":\"Shipping address type.\",\"enum\":[\"residential\",\"pickup\"]},\"receiverName\":{\"type\":\"string\",\"description\":\"Full name of the order receiver.\"},\"addressId\":{\"type\":\"string\",\"description\":\"Shipping address ID.\"},\"versionId\":{\"type\":[\"string\",\"null\"],\"description\":\"Shipping address version ID.\"},\"entityId\":{\"type\":[\"string\",\"null\"],\"description\":\"Shipping address entity ID.\"},\"postalCode\":{\"type\":\"string\",\"description\":\"Shipping address postal code.\"},\"city\":{\"type\":\"string\",\"description\":\"Shipping address city.\"},\"state\":{\"type\":\"string\",\"description\":\"Shipping address state.\"},\"country\":{\"type\":\"string\",\"description\":\"Shipping address three-digit country code in [ISO 3166 ALPHA-3](https://www.iban.com/country-codes) format.\"},\"street\":{\"type\":\"string\",\"description\":\"Shipping address street.\"},\"number\":{\"type\":\"string\",\"description\":\"Shipping address number.\"},\"neighborhood\":{\"type\":\"string\",\"description\":\"Shipping address neighborhood.\"},\"complement\":{\"type\":[\"string\",\"null\"],\"description\":\"Shipping address complement.\"},\"reference\":{\"type\":[\"string\",\"null\"],\"description\":\"Shipping address additional information.\"},\"geoCoordinates\":{\"type\":\"array\",\"description\":\"Shipping address pair of geolocation coordinates, first longitude then latitude.\",\"items\":{\"type\":\"number\",\"description\":\"Longitude or latitude.\"}},\"contactId\":{\"type\":[\"string\",\"null\"],\"description\":\"Contact unique identifier.\"}}},\"logisticsInfo\":{\"type\":\"array\",\"description\":\"Logistics information regarding order items.\",\"items\":{\"type\":\"object\",\"description\":\"Logistics information about an item.\",\"properties\":{\"polygonName\":{\"type\":[\"string\",\"null\"],\"description\":\"Name of the [polygon](https://help.vtex.com/en/tutorial/registering-geolocation/) associated with the [shipping policy](https://help.vtex.com/en/tutorial/shipping-policy--tutorials_140).\"},\"shippingEstimate\":{\"type\":\"string\",\"description\":\"Shipping estimate time in days. For instance, three business days is represented `3bd`.\"},\"entityId\":{\"type\":[\"string\",\"null\"],\"description\":\"Shipping address entity ID.\"},\"versionId\":{\"type\":[\"string\",\"null\"],\"description\":\"Shipping address version ID.\"},\"pickupStoreInfo\":{\"type\":\"object\",\"description\":\"Information about a [loading dock](https://help.vtex.com/en/tutorial/loading-dock--5DY8xHEjOLYDVL41Urd5qj) that was transformed into a [pickup point](https://help.vtex.com/en/tutorial/pickup-points--2fljn6wLjn8M4lJHA6HP3R).\",\"required\":[\"additionalInfo\",\"address\",\"dockId\",\"friendlyName\",\"isPickupStore\"],\"properties\":{\"isPickupStore\":{\"type\":\"boolean\",\"description\":\"Defines if the shipping type was pickup (`true`) or not (`false`).\"},\"friendlyName\":{\"type\":[\"string\",\"null\"],\"description\":\"Name of the pickup point displayed at checkout.\"},\"address\":{\"type\":[\"object\",\"null\"],\"description\":\"Pickup point address information.\",\"properties\":{\"postalCode\":{\"type\":\"string\",\"description\":\"Pickup point address postal code.\"},\"country\":{\"type\":\"string\",\"description\":\"Three-digit country code of the pickup point address in [ISO 3166 ALPHA-3](https://www.iban.com/country-codes) format.\"},\"city\":{\"type\":\"string\",\"description\":\"Pickup point address city.\"},\"state\":{\"type\":\"string\",\"description\":\"Pickup point address state.\"},\"neighborhood\":{\"type\":\"string\",\"description\":\"Pickup point address neighborhood.\"},\"street\":{\"type\":\"string\",\"description\":\"Pickup point address street.\"},\"number\":{\"type\":\"string\",\"description\":\"Pickup point address number.\"},\"complement\":{\"type\":\"string\",\"description\":\"Pickup point address complement.\"},\"reference\":{\"type\":\"string\",\"description\":\"Pickup point address reference.\"},\"location\":{\"type\":\"object\",\"description\":\"Pickup point geolocation coordinates.\",\"properties\":{\"latitude\":{\"type\":\"number\",\"description\":\"Latitude coordinate.\"},\"longitude\":{\"type\":\"number\",\"description\":\"Longitude coordinate.\"}}}}},\"additionalInfo\":{\"type\":[\"string\",\"null\"],\"description\":\"Additional information.\"},\"dockId\":{\"type\":[\"string\",\"null\"],\"description\":\"ID of the loading dock related to the pickup point.\"}}},\"deliveryWindow\":{\"type\":[\"string\",\"null\"],\"description\":\"[Scheduled delivery](https://help.vtex.com/tutorial/scheduled-delivery--22g3HAVCGLFiU7xugShOBi) window information, when applicable.\"},\"sellingPrice\":{\"type\":\"integer\",\"description\":\"Item selling price in cents.\"},\"listPrice\":{\"type\":\"integer\",\"description\":\"Item [list price](https://help.vtex.com/en/tracks/prices-101--6f8pwCns3PJHqMvQSugNfP/3XcXp0r5WrJvogB8KIX4Kx#list-price) in cents.\"},\"price\":{\"type\":\"integer\",\"description\":\"Item shipping price in cents. This value does not correspond to the order total shipping price.\"},\"deliveryChannel\":{\"type\":\"string\",\"description\":\"Defines if the delivery channel is delivery or pickup.\",\"enum\":[\"delivery\",\"pickup-in-point\"]},\"deliveryCompany\":{\"type\":\"string\",\"description\":\"[Carrier](https://help.vtex.com/en/tutorial/carriers-on-vtex--7u9duMD5UQa2QQwukAWMcE) company name.\"},\"deliveryIds\":{\"type\":\"array\",\"description\":\"Order delivery IDs information.\",\"items\":{\"type\":\"object\",\"description\":\"Information about a delivery ID.\",\"properties\":{\"courierId\":{\"type\":\"string\",\"description\":\"Carrier ID.\"},\"warehouseId\":{\"type\":\"string\",\"description\":\"[Warehouse](https://help.vtex.com/en/tutorial/warehouse--6oIxvsVDTtGpO7y6zwhGpb) ID.\"},\"dockId\":{\"type\":\"string\",\"description\":\"[Loading dock](https://help.vtex.com/en/tutorial/loading-dock--5DY8xHEjOLYDVL41Urd5qj) ID.\"},\"courierName\":{\"type\":\"string\",\"description\":\"Carrier name.\"},\"quantity\":{\"type\":\"integer\",\"description\":\"Quantity of items being delivered.\"},\"totalListPrice\":{\"type\":[\"integer\",\"null\"],\"description\":\"Total list price in cents.\"},\"accountCarrierName\":{\"type\":\"string\",\"description\":\"Account carrier name.\"},\"kitItemDetails\":{\"type\":[\"array\",\"null\"],\"description\":\"Information about [kit](https://help.vtex.com/tutorial/what-is-a-kit--5ov5s3eHM4AqAAgqWwoc28) items, when applicable.\",\"items\":{\"type\":\"string\",\"description\":\"Kit item information.\"}}}}},\"shippingEstimateDate\":{\"type\":\"string\",\"description\":\"Shipping estimate date, defined after order confirmation, in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"deliveryChannels\":{\"type\":\"array\",\"description\":\"Delivery channels associated with the sales channel (or [trade policy](https://help.vtex.com/tutorial/how-trade-policies-work--6Xef8PZiFm40kg2STrMkMV)).\",\"items\":{\"type\":\"object\",\"description\":\"Delivery channel information.\",\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"Delivery channel shipping type.\",\"enum\":[\"delivery\",\"pickup-in-point\"]},\"stockBalance\":{\"type\":\"integer\",\"description\":\"Stock check for SKU availability.\"}}}},\"itemId\":{\"type\":\"string\",\"description\":\"SKU ID.\"},\"shipsTo\":{\"type\":\"array\",\"description\":\"List of shipping address countries.\",\"items\":{\"type\":\"string\",\"description\":\"Shipping address three-digit country code in [ISO 3166 ALPHA-3](https://www.iban.com/country-codes) format.\"}},\"slas\":{\"type\":\"array\",\"description\":\"Service Level Agreements (SLA) corresponding to [shipping policies](https://help.vtex.com/en/tutorial/shipping-policy--tutorials_140).\",\"items\":{\"type\":\"object\",\"description\":\"Service Level Agreement (SLA) information.\",\"properties\":{\"pickupPointId\":{\"type\":[\"string\",\"null\"],\"description\":\"[Pickup point](https://help.vtex.com/en/tutorial/pickup-points--2fljn6wLjn8M4lJHA6HP3R) ID related to the SLA.\"},\"pickupStoreInfo\":{\"type\":\"object\",\"description\":\"Information about a [loading dock](https://help.vtex.com/en/tutorial/loading-dock--5DY8xHEjOLYDVL41Urd5qj) that was transformed into a [pickup point](https://help.vtex.com/en/tutorial/pickup-points--2fljn6wLjn8M4lJHA6HP3R).\",\"required\":[\"additionalInfo\",\"address\",\"dockId\",\"friendlyName\",\"isPickupStore\"],\"properties\":{\"isPickupStore\":{\"type\":\"boolean\",\"description\":\"Defines if the shipping type was pickup (`true`) or not (`false`).\"},\"friendlyName\":{\"type\":[\"string\",\"null\"],\"description\":\"Name of the pickup point displayed at checkout.\"},\"address\":{\"type\":[\"object\",\"null\"],\"description\":\"Pickup point address information.\",\"properties\":{\"postalCode\":{\"type\":\"string\",\"description\":\"Pickup point address postal code.\"},\"country\":{\"type\":\"string\",\"description\":\"Three-digit country code of the pickup point address in [ISO 3166 ALPHA-3](https://www.iban.com/country-codes) format.\"},\"city\":{\"type\":\"string\",\"description\":\"Pickup point address city.\"},\"state\":{\"type\":\"string\",\"description\":\"Pickup point address state.\"},\"neighborhood\":{\"type\":\"string\",\"description\":\"Pickup point address neighborhood.\"},\"street\":{\"type\":\"string\",\"description\":\"Pickup point address street.\"},\"number\":{\"type\":\"string\",\"description\":\"Pickup point address number.\"},\"complement\":{\"type\":\"string\",\"description\":\"Pickup point address complement.\"},\"reference\":{\"type\":\"string\",\"description\":\"Pickup point address reference.\"},\"location\":{\"type\":\"object\",\"description\":\"Pickup point geolocation coordinates.\",\"properties\":{\"latitude\":{\"type\":\"number\",\"description\":\"Latitude coordinate.\"},\"longitude\":{\"type\":\"number\",\"description\":\"Longitude coordinate.\"}}}}},\"additionalInfo\":{\"type\":[\"string\",\"null\"],\"description\":\"Additional information.\"},\"dockId\":{\"type\":[\"string\",\"null\"],\"description\":\"ID of the loading dock related to the pickup point.\"}}},\"tax\":{\"type\":\"integer\",\"description\":\"SLA tax information.\"},\"listPrice\":{\"type\":\"integer\",\"description\":\"SLA shipping list price in cents.\"},\"price\":{\"type\":\"integer\",\"description\":\"SLA shipping price in cents. Does not account for the order total shipping price.\"},\"deliveryWindow\":{\"type\":[\"string\",\"null\"],\"description\":\"[Delivery window](https://help.vtex.com/tutorial/scheduled-delivery--22g3HAVCGLFiU7xugShOBi) information, when applicable.\"},\"availableDeliveryWindows\":{\"type\":[\"array\",\"null\"],\"description\":\"Available delivery windows information, when applicable.\",\"items\":{\"type\":\"string\",\"description\":\"Information about an available delivery window.\"}},\"lockTTL\":{\"type\":\"string\",\"description\":\"Logistics [reservation](https://help.vtex.com/en/tutorial/how-does-reservation-work--tutorials_92) waiting time related to the SLA.\"},\"shippingEstimateDate\":{\"type\":\"string\",\"description\":\"SLA shipping estimate date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"shippingEstimate\":{\"type\":\"string\",\"description\":\"Shipping estimate time in days. For instance, three business days is represented `3bd`.\"},\"deliveryIds\":{\"type\":\"array\",\"description\":\"SLA delivery IDs information.\",\"items\":{\"type\":\"object\",\"description\":\"Information about a delivery ID.\",\"properties\":{\"courierId\":{\"type\":\"string\",\"description\":\"Carrier ID.\"},\"warehouseId\":{\"type\":\"string\",\"description\":\"[Warehouse](https://help.vtex.com/en/tutorial/warehouse--6oIxvsVDTtGpO7y6zwhGpb) ID.\"},\"dockId\":{\"type\":\"string\",\"description\":\"[Loading dock](https://help.vtex.com/en/tutorial/loading-dock--5DY8xHEjOLYDVL41Urd5qj) ID.\"},\"courierName\":{\"type\":\"string\",\"description\":\"Carrier name.\"},\"quantity\":{\"type\":\"integer\",\"description\":\"Quantity of items being delivered.\"},\"totalListPrice\":{\"type\":[\"integer\",\"null\"],\"description\":\"Total list price in cents.\"},\"accountCarrierName\":{\"type\":\"string\",\"description\":\"Account carrier name.\"},\"kitItemDetails\":{\"type\":[\"array\",\"null\"],\"description\":\"Information about [kit](https://help.vtex.com/tutorial/what-is-a-kit--5ov5s3eHM4AqAAgqWwoc28) items, when applicable.\",\"items\":{\"type\":\"string\",\"description\":\"Kit item information.\"}}}}},\"name\":{\"type\":\"string\",\"description\":\"[Shipping policy](https://help.vtex.com/en/tutorial/shipping-policy--tutorials_140) name.\"},\"deliveryChannel\":{\"type\":\"string\",\"description\":\"Defines if the delivery channel is delivery or [pickup point](https://help.vtex.com/en/tutorial/pickup-points--2fljn6wLjn8M4lJHA6HP3R).\",\"enum\":[\"delivery\",\"pickup-in-point\"]},\"id\":{\"type\":\"string\",\"description\":\"ID of the shipping method used in the [shipping policy](https://help.vtex.com/en/tutorial/shipping-policy--tutorials_140).\"},\"pickupDistance\":{\"type\":[\"number\",\"null\"],\"description\":\"Distance in kilometers between the pickup point and the customer address. The distance is measured as a straight line.\"},\"polygonName\":{\"type\":[\"string\",\"null\"],\"description\":\"Name of the [polygon](https://help.vtex.com/en/tutorial/registering-geolocation/) associated with the shipping policy.\"},\"transitTime\":{\"type\":\"string\",\"description\":\"Number of days the carrier takes in transit to deliver the order. For instance, three business days is represented `3bd`.\"}}}},\"addressId\":{\"type\":[\"string\",\"null\"],\"description\":\"Shipping address ID.\"},\"selectedDeliveryChannel\":{\"type\":\"string\",\"description\":\"Delivery channel selected by the customer. This field is being deprecated and the information it retrieves can be found in the `deliveryChannel` field.\",\"enum\":[\"delivery\",\"pickup-in-point\"]},\"lockTTL\":{\"type\":\"string\",\"description\":\"Logistics [reservation](https://help.vtex.com/en/tutorial/how-does-reservation-work--tutorials_92) waiting time.\"},\"selectedSla\":{\"type\":\"string\",\"description\":\"Service Level Agreement (SLA), which corresponds to the shipping method selected by the customer, usually like normal or express.\"},\"itemIndex\":{\"type\":\"integer\",\"description\":\"Each item in the order is identified by an index. The position starts in `0`, followed by `1`, `2`, and so on.\"},\"pickupPointId\":{\"type\":[\"string\",\"null\"],\"description\":\"[Pickup point](https://help.vtex.com/en/tutorial/pickup-points--2fljn6wLjn8M4lJHA6HP3R) ID, when applicable.\"},\"transitTime\":{\"type\":\"string\",\"description\":\"Number of days the carrier takes in transit to deliver the order. For instance, three business days is represented `3bd`.\"}}}},\"trackingHints\":{\"type\":[\"array\",\"null\"],\"description\":\"Order shipping label information.\",\"items\":{\"type\":\"object\",\"description\":\"Shipping label details.\",\"properties\":{\"trackingId\":{\"type\":\"string\",\"description\":\"Order tracking ID.\"},\"courierName\":{\"type\":\"string\",\"description\":\"[Carrier](https://help.vtex.com/en/tutorial/carriers-on-vtex--7u9duMD5UQa2QQwukAWMcE) name.\"},\"trackingUrl\":{\"type\":\"string\",\"description\":\"Order tracking URL.\"},\"trackingLabel\":{\"type\":\"string\",\"description\":\"Order tracking label.\"}}}},\"selectedAddresses\":{\"type\":\"array\",\"description\":\"Selected adresses information.\",\"items\":{\"type\":\"object\",\"description\":\"Details about a selected adress.\",\"properties\":{\"addressType\":{\"type\":\"string\",\"description\":\"Selected adress shipping type.\",\"enum\":[\"residential\",\"pickup\"]},\"receiverName\":{\"type\":\"string\",\"description\":\"Full name of the order receiver.\"},\"addressId\":{\"type\":\"string\",\"description\":\"Selected address ID.\"},\"versionId\":{\"type\":[\"string\",\"null\"],\"description\":\"Selected address version ID.\"},\"entityId\":{\"type\":[\"string\",\"null\"],\"description\":\"Selected address entity ID.\"},\"postalCode\":{\"type\":\"string\",\"description\":\"Selected address postal code.\"},\"city\":{\"type\":\"string\",\"description\":\"Selected address city.\"},\"state\":{\"type\":\"string\",\"description\":\"Selected address state.\"},\"country\":{\"type\":\"string\",\"description\":\"Selected address three-digit country code in [ISO 3166 ALPHA-3](https://www.iban.com/country-codes) format.\"},\"street\":{\"type\":\"string\",\"description\":\"Selected address street.\"},\"number\":{\"type\":\"string\",\"description\":\"Selected address number.\"},\"neighborhood\":{\"type\":\"string\",\"description\":\"Selected address neighborhood.\"},\"complement\":{\"type\":[\"string\",\"null\"],\"description\":\"Selected address complement.\"},\"reference\":{\"type\":[\"string\",\"null\"],\"description\":\"Selected address additional information.\"},\"geoCoordinates\":{\"type\":\"array\",\"description\":\"Selected address pair of geolocation coordinates, first longitude then latitude.\",\"items\":{\"type\":\"number\",\"description\":\"Longitude or latitude.\"}},\"contactId\":{\"type\":[\"string\",\"null\"],\"description\":\"Contact unique identifier.\"}}}},\"availableAddresses\":{\"type\":\"array\",\"description\":\"Available adresses information.\",\"items\":{\"type\":\"object\",\"description\":\"Details about an available adress.\",\"properties\":{\"addressType\":{\"type\":\"string\",\"description\":\"Available adress shipping type.\",\"enum\":[\"residential\",\"pickup\"]},\"receiverName\":{\"type\":\"string\",\"description\":\"Full name of the order receiver.\"},\"addressId\":{\"type\":\"string\",\"description\":\"Available address ID.\"},\"versionId\":{\"type\":[\"string\",\"null\"],\"description\":\"Available address version ID.\"},\"entityId\":{\"type\":[\"string\",\"null\"],\"description\":\"Available address entity ID.\"},\"postalCode\":{\"type\":\"string\",\"description\":\"Available address postal code.\"},\"city\":{\"type\":\"string\",\"description\":\"Available address city.\"},\"state\":{\"type\":\"string\",\"description\":\"Available address state.\"},\"country\":{\"type\":\"string\",\"description\":\"Available address three-digit country code in [ISO 3166 ALPHA-3](https://www.iban.com/country-codes) format.\"},\"street\":{\"type\":\"string\",\"description\":\"Available address street.\"},\"number\":{\"type\":\"string\",\"description\":\"Available address number.\"},\"neighborhood\":{\"type\":\"string\",\"description\":\"Available address neighborhood.\"},\"complement\":{\"type\":[\"string\",\"null\"],\"description\":\"Available address complement.\"},\"reference\":{\"type\":[\"string\",\"null\"],\"description\":\"Available address additional information.\"},\"geoCoordinates\":{\"type\":\"array\",\"description\":\"Available address pair of geolocation coordinates, first longitude then latitude.\",\"items\":{\"type\":\"number\",\"description\":\"Longitude or latitude.\"}},\"contactId\":{\"type\":[\"string\",\"null\"],\"description\":\"Contact unique identifier.\"}}}},\"contactInformation\":{\"type\":[\"array\",\"null\"],\"description\":\"Order contact information.\",\"items\":{\"type\":\"object\",\"description\":\"Order contact details.\",\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"Contact ID.\"},\"email\":{\"type\":\"string\",\"description\":\"Contact email.\"},\"firstName\":{\"type\":\"string\",\"description\":\"Contact first name.\"},\"lastName\":{\"type\":\"string\",\"description\":\"Contact last name.\"},\"document\":{\"type\":\"string\",\"description\":\"Contact document number.\"},\"phone\":{\"type\":\"string\",\"description\":\"Contact phone number.\"},\"documentType\":{\"type\":\"string\",\"description\":\"Contact document type.\"}}}}}},\"packageAttachment\":{\"type\":[\"object\",\"null\"],\"description\":\"Information about shipping packages, which are created after order invoicing.\",\"properties\":{\"packages\":{\"type\":[\"array\",\"null\"],\"description\":\"List with packages' information.\",\"items\":{\"type\":\"object\",\"description\":\"Package details.\",\"properties\":{\"courier\":{\"type\":\"string\",\"description\":\"Name of the [carrier](https://help.vtex.com/en/tutorial/carriers-on-vtex--7u9duMD5UQa2QQwukAWMcE) responsible for the package shipping.\"},\"description\":{\"type\":[\"string\",\"null\"],\"description\":\"Package description.\"},\"invoiceNumber\":{\"type\":\"string\",\"description\":\"Unique identification code of the package invoice.\"},\"invoiceValue\":{\"type\":\"integer\",\"description\":\"Package invoice value in cents.\"},\"invoiceUrl\":{\"type\":\"string\",\"description\":\"Package invoice URL.\"},\"issuanceDate\":{\"type\":\"string\",\"description\":\"Package invoice issuance date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"trackingNumber\":{\"type\":\"string\",\"description\":\"Package [tracking number](https://developers.vtex.com/docs/api-reference/orders-api#patch-/api/oms/pvt/orders/-orderId-/invoice/-invoiceNumber-).\"},\"invoiceKey\":{\"type\":\"string\",\"description\":\"Package invoice key.\"},\"trackingUrl\":{\"type\":\"string\",\"description\":\"Package tracking URL.\"},\"embeddedInvoice\":{\"type\":\"string\",\"description\":\"Package invoice text in [xml format](https://help.vtex.com/en/tutorial/configuring-xml--tutorials_242). This field is important for stores integrated with [external marketplaces](https://developers.vtex.com/docs/guides/external-marketplace-integration-guide).\"},\"type\":{\"type\":\"string\",\"description\":\"Package invoice type, which can be:\\r\\n- `Output`: Selling order invoice.\\r\\n- `Input`: Returning items invoice.\",\"enum\":[\"Output\",\"Input\"]},\"items\":{\"type\":\"array\",\"description\":\"Information on each item in the package.\",\"items\":{\"type\":\"object\",\"description\":\"Package item details.\",\"properties\":{\"itemIndex\":{\"type\":\"integer\",\"description\":\"Item index of the item position whithin the `items` array. The count starts at `0`.\"},\"id\":{\"type\":\"string\",\"description\":\"SKU ID.\"},\"quantity\":{\"type\":\"integer\",\"description\":\"Package item quantity.\"},\"price\":{\"type\":\"integer\",\"description\":\"Package item price in cents.\"},\"description\":{\"type\":\"string\",\"description\":\"Package item description.\"},\"unitMultiplier\":{\"type\":\"number\",\"description\":\"Package item unit multiplier.\"}}}},\"courierStatus\":{\"type\":[\"object\",\"null\"],\"description\":\"[Carrier](https://help.vtex.com/en/tutorial/carriers-on-vtex--7u9duMD5UQa2QQwukAWMcE) shipping information.\",\"properties\":{\"deliveredDate\":{\"type\":\"string\",\"description\":\"Package delivery date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"status\":{\"type\":[\"string\",\"null\"],\"description\":\"Defines if a carrier was assigned for order shipping (`ok`) or not (`null`).\"},\"finished\":{\"type\":\"boolean\",\"description\":\"Defines if the carrier has already delivered the package (`true`) or not (`false`).\"},\"data\":{\"type\":\"array\",\"description\":\"Package tracking information.\",\"items\":{\"type\":\"object\",\"description\":\"Package tracking details.\",\"properties\":{\"lastChange\":{\"type\":\"string\",\"description\":\"Date since package tracking last change in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"city\":{\"type\":\"string\",\"description\":\"Package tracking city.\"},\"state\":{\"type\":\"string\",\"description\":\"Package tracking state in two-digit code format.\"},\"description\":{\"type\":\"string\",\"description\":\"Package tracking description.\"},\"createDate\":{\"type\":\"string\",\"description\":\"Package tracking creation date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"}}}}}},\"cfop\":{\"type\":[\"string\",\"null\"],\"description\":\"[CFOP](https://www.gov.br/receitafederal/pt-br/acesso-a-informacao/acoes-e-programas/facilitacao/anexo-ecf-cfop) (_Código Fiscal de Operação e Prestação_) is a Brazilian fiscal code of operations and services that classifies business transaction types.\"},\"lastChange\":{\"type\":\"string\",\"description\":\"Date since package tracking last change in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"restitutions\":{\"type\":[\"object\",\"null\"],\"description\":\"Information about a value being returned to the customer. This field applies only to invoices with the `Input` type because it relates to returning items.\",\"properties\":{\"refund\":{\"type\":\"object\",\"description\":\"Customer refund details.\",\"properties\":{\"value\":{\"type\":\"integer\",\"description\":\"Refund value in cents.\"},\"giftCardData\":{\"type\":[\"string\",\"null\"],\"description\":\"Refund involving a [gift card](https://developers.vtex.com/docs/guides/gift-card-integration-guide).\"},\"items\":{\"type\":[\"array\",\"null\"],\"description\":\"Information about the items being returned.\",\"items\":{\"type\":\"object\",\"description\":\"Returned item details.\",\"properties\":{\"useFreight\":{\"type\":[\"boolean\",\"null\"],\"description\":\"Defines if the refund includes freight values (`true`) or not (`false`).\"},\"isCompensation\":{\"type\":\"boolean\",\"description\":\"Defines if there are compensated unit tags in the package (`true`) or not (`false`).\"},\"compensationValue\":{\"type\":\"integer\",\"description\":\"Compensational refund value in cents.\"},\"id\":{\"type\":\"string\",\"description\":\"SKU ID of the returned item.\"},\"quantity\":{\"type\":\"integer\",\"description\":\"Number of items being returned.\"},\"price\":{\"type\":\"integer\",\"description\":\"Returned item price in cents.\"},\"description\":{\"type\":\"string\",\"description\":\"Customer reason for returning the item.\"}}}}}}}},\"volumes\":{\"type\":[\"integer\",\"null\"],\"description\":\"Indicates the number of boxes (volumes) needed to contain the package items. For example, two refrigerators do not fit in a single volume, so this field would have value `2`.\"}}}}}},\"marketplace\":{\"type\":[\"object\",\"null\"],\"description\":\"Information about the marketplace related to the order.\",\"properties\":{\"baseURL\":{\"type\":\"string\",\"description\":\"Marketplace base URL.\"},\"isCertified\":{\"type\":[\"boolean\",\"null\"],\"description\":\"Defines if the marketplace is a [VTEX certified marketplace](https://help.vtex.com/en/tutorial/marketplace-strategies-at-vtex--tutorials_402#integrating-with-certified-marketplaces) (`true`) or not (`false`).\"},\"name\":{\"type\":\"string\",\"description\":\"Marketplace name.\"}}},\"contextData\":{\"type\":\"object\",\"description\":\"Information about the order context.\",\"properties\":{\"loggedIn\":{\"type\":\"boolean\",\"description\":\"Defines if the user was logged in the account or not (`true`) or not (`false`).\"},\"hasAccessToOrderFormEnabledByLicenseManager\":{\"type\":\"boolean\",\"description\":\"Defines if in order placement the user had access to the order form enabled by the [License Manager](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) (`true`) or not (`false`).\"},\"userAgent\":{\"type\":\"string\",\"description\":\"User agent name.\"},\"userId\":{\"type\":\"string\",\"description\":\"User ID.\"}}},\"lastMessage\":{\"type\":[\"string\",\"null\"],\"description\":\"Last transactional message sent to the customer.\"},\"status\":{\"type\":\"string\",\"description\":\"[Order status](https://help.vtex.com/en/tutorial/order-flow-and-status--tutorials_196) in the workflow.\"},\"handlingData\":{\"type\":[\"string\",\"null\"],\"description\":\"Order handling information.\"},\"documentVersion\":{\"type\":\"string\",\"description\":\"Document version identification.\"},\"appVersion\":{\"type\":\"string\",\"description\":\"APP version identification.\"},\"workflowData\":{\"type\":\"object\",\"description\":\"Information about order processing and workflow.\",\"properties\":{\"instances\":{\"type\":\"array\",\"description\":\"Order processing details.\",\"items\":{\"type\":\"object\",\"description\":\"Order processing details for the marketplace and seller instances.\",\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"Workflow instance ID.\"},\"name\":{\"type\":\"string\",\"description\":\"Workflow instance name, related to marketplace and fulfillment.\"},\"currentStepName\":{\"type\":\"string\",\"description\":\"Current [order status](https://help.vtex.com/en/tutorial/order-flow-and-status--tutorials_196) in the workflow.\"},\"currentStepDescription\":{\"type\":[\"string\",\"null\"],\"description\":\"Current step description for the order status in the workflow.\"},\"lastChange\":{\"type\":\"string\",\"description\":\"Date of the order last change in the workflow in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"isInError\":{\"type\":\"boolean\",\"description\":\"Defines if the order processing in the workflow is in error (`true`) or not (`false`).\"},\"isInAutomaticRetry\":{\"type\":\"boolean\",\"description\":\"Defines if the order is in automatic processing retry in the workflow (`true`) or not (`false`).\"},\"creationDate\":{\"type\":\"string\",\"description\":\"Order creation date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"owner\":{\"type\":[\"string\",\"null\"],\"description\":\"Code that identifies the owner.\"},\"version\":{\"type\":[\"string\",\"null\"],\"description\":\"Workflow version.\"},\"timeLine\":{\"type\":\"array\",\"description\":\"Workflow timeline steps.\",\"items\":{\"type\":\"object\",\"description\":\"Information about a given workflow timeline step.\",\"properties\":{\"stepName\":{\"type\":\"string\",\"description\":\"Name of the timeline step.\"},\"date\":{\"type\":\"string\",\"description\":\"Timeline step processing date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"parentStepName\":{\"type\":\"string\",\"description\":\"Timeline parent step name.\"}}}},\"logicTimeLine\":{\"type\":\"array\",\"description\":\"Logical workflow timeline steps.\",\"items\":{\"type\":\"object\",\"description\":\"Information about a given logical workflow timeline step.\",\"properties\":{\"stepName\":{\"type\":\"string\",\"description\":\"Name of the logical timeline step.\"},\"date\":{\"type\":\"string\",\"description\":\"Logical timeline step processing date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"}}}},\"steps\":{\"type\":\"array\",\"description\":\"Steps in the order processing in the workflow.\",\"items\":{\"type\":\"object\",\"description\":\"Details about a given step in the order processing.\",\"properties\":{\"name\":{\"type\":\"string\",\"description\":\"Order processing step name.\"},\"next\":{\"type\":[\"array\",\"null\"],\"description\":\"Next order steps in the workflow.\",\"items\":{\"type\":\"object\",\"description\":\"Information about a given step in the workflow.\",\"properties\":{\"name\":{\"type\":\"string\",\"description\":\"Step status name.\"},\"next\":{\"type\":[\"string\",\"null\"],\"description\":\"Next order status step.\"},\"systemWillMove\":{\"type\":\"boolean\",\"description\":\"Defines if the order can move to the next step (`true`) or not (`false`).\"},\"actionsAllowed\":{\"type\":[\"object\",\"null\"],\"description\":\"Type of actions allowed in the next steps.\",\"properties\":{\"type\":{\"type\":\"string\",\"description\":\"Name of the order action allowed.\"}}},\"expectFlow\":{\"type\":[\"boolean\",\"null\"],\"description\":\"Defines if the order is progressing in the workflow as expected (`true`) or not (`false`).\"}}}},\"systemWillMove\":{\"type\":\"boolean\",\"description\":\"Defines if the order can move to the next workflow status (`true`) or not (`false`).\"},\"actionsAllowed\":{\"type\":[\"object\",\"null\"],\"description\":\"Type of actions allowed for order processing in the workflow.\",\"properties\":{\"type\":{\"type\":\"string\",\"description\":\"Name of the order action allowed.\"}}},\"start\":{\"type\":\"boolean\",\"description\":\"Defines if the step corresponds to the order creation (`true`) or not (`false`).\"}}}},\"currentLogicalStep\":{\"type\":\"string\",\"description\":\"Name of the order current logical step in the workflow.\"}}}},\"mainFlowIndex\":{\"type\":\"integer\",\"description\":\"Workflow processing index, starting from `0`.\"}}},\"checkedInPickupPointId\":{\"type\":[\"string\",\"null\"],\"description\":\"When the order is created at a physical store which is configured as a pickup point, this field retrieves the pickup point ID.\"},\"fingerPrint\":{\"type\":\"string\",\"description\":\"Order finger print code.\"},\"piiHidden\":{\"type\":\"boolean\",\"description\":\"Defines if the VTEX account uses [PII data architecture](https://developers.vtex.com/docs/guides/pii-data-architecture-specifications) (`true`) or not (`false`).\"},\"workflowIsInError\":{\"type\":\"boolean\",\"description\":\"Indicates if the order workflow presents an error (`true`) or if there are no errors (`false`).\"},\"callCenterOperator\":{\"type\":[\"string\",\"null\"],\"description\":\"Identification code of the call center operator responsible for the order, when applicable.\"},\"state\":{\"type\":\"string\",\"description\":\"[Order status](https://help.vtex.com/en/tutorial/order-flow-and-status--tutorials_196) in the workflow.\"},\"timeZoneCreationDate\":{\"type\":\"string\",\"description\":\"Order creation date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"timeZoneLastChange\":{\"type\":\"string\",\"description\":\"Date of the order processing last change in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"userType\":{\"type\":[\"string\",\"null\"],\"description\":\"User type.\"},\"clientPreferencesData\":{\"type\":\"object\",\"description\":\"Information about the customer preferences.\",\"properties\":{\"locale\":{\"type\":\"string\",\"description\":\"Language code of the customer preferred language while accessing the store.\"},\"optinNewsLetter\":{\"type\":\"boolean\",\"description\":\"Defines if the customer receives the store's newsletter (`true`) or not (`false`).\"}}},\"orderId\":{\"type\":\"string\",\"description\":\"Order ID.\"},\"workflowInstanceId\":{\"type\":[\"string\",\"null\"],\"description\":\"Workflow instance ID.\"},\"creationDate\":{\"type\":\"string\",\"description\":\"Order creation date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"totals\":{\"type\":\"array\",\"description\":\"Information about the order totals.\",\"items\":{\"type\":\"object\",\"description\":\"Details about the order totals.\",\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"Total ID, which defines what the total is about.\",\"enum\":[\"Items\",\"Discounts\",\"Shipping\",\"Tax\"]},\"name\":{\"type\":\"string\",\"description\":\"Total name.\"},\"value\":{\"type\":\"integer\",\"description\":\"Total value in cents.\"},\"alternativeTotals\":{\"type\":[\"array\",\"null\"],\"description\":\"Information about the order alternative totals, when applicable. For example, when there is a discount for items in the marketplace that results in a difference in the `Items` total value, the `alternativeTotals` can retrieve details about it.\",\"items\":{\"type\":\"object\",\"description\":\"Details about the order alternative totals.\",\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"Alternative total ID, which can be related to items, discounts, shipping or taxes.\"},\"name\":{\"type\":\"string\",\"description\":\"Alternative total name.\"},\"value\":{\"type\":\"integer\",\"description\":\"Alternative total value in cents.\"}}}}}}},\"sequence\":{\"type\":\"string\",\"description\":\"Sequence number part of the order ID. For example, in order `v70530116str-01`, the sequence is `70530116`.\"},\"receiptData\":{\"type\":\"object\",\"description\":\"Receipts with information about transactions.\",\"properties\":{\"receiptCollection\":{\"type\":\"object\",\"description\":\"Receipt with information about a given transaction.\",\"properties\":{\"receiptType\":{\"type\":\"string\",\"description\":\"Receipt transaction type.\"},\"date\":{\"type\":\"string\",\"description\":\"Receipt transaction date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"}}}}},\"isCompleted\":{\"type\":\"boolean\",\"description\":\"Defines if the order payment has been settled (`true`) or not (`false`).\"},\"openTextField\":{\"type\":[\"object\",\"null\"],\"description\":\"Optional field for additional information.\",\"additionalProperties\":{\"type\":\"string\",\"description\":\"Additional information.\"}},\"affiliateId\":{\"type\":[\"string\",\"null\"],\"description\":\"Three-letter [affiliate](https://help.vtex.com/en/tutorial/configuring-affiliates--tutorials_187) code configured by the seller to identify a marketplace.\"},\"value\":{\"type\":\"integer\",\"description\":\"Order total value in cents.\"},\"hostname\":{\"type\":\"string\",\"description\":\"Main [account name](https://help.vtex.com/en/tutorial/what-is-an-account-name--i0mIGLcg3QyEy8OCicEoC).\"},\"followUpEmail\":{\"type\":\"string\",\"description\":\"Email of the store employee responsible for managing the order.\"},\"lastChange\":{\"type\":\"string\",\"description\":\"Order last change date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"sellers\":{\"type\":\"array\",\"description\":\"Information about the sellers associated with the order.\",\"items\":{\"type\":\"object\",\"description\":\"Information about a given seller.\",\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"Seller identifier.\"},\"name\":{\"type\":\"string\",\"description\":\"Seller name.\"},\"logo\":{\"type\":[\"string\",\"null\"],\"description\":\"Seller logo URL.\"},\"fulfillmentEndpoint\":{\"type\":\"string\",\"description\":\"URL of the endpoint for fulfillment of seller's orders, which the marketplace use to communicate with the seller.\"},\"subSellerId\":{\"type\":\"string\",\"description\":\"Sub seller ID. When the main account acts both as seller and marketplace, this field will return the value `1`.\"}}}},\"marketingData\":{\"type\":[\"object\",\"null\"],\"description\":\"Information about marketing and promotions, such as coupon code and [Urchin Tracking Module (UTM)](https://help.vtex.com/en/tutorial/what-are-utm-source-utm-campaign-and-utm-medium--2wTz7QJ8KUG6skGAoAQuii).\",\"properties\":{\"utmSource\":{\"type\":[\"string\",\"null\"],\"description\":\"A UTM is an Urchin Tracking Module used to track traffic related to your store. This field is an UTM for tracking the traffic source, to know from which site, advertiser, or publication the customer came before reaching your site.\"},\"utmMedium\":{\"type\":\"string\",\"description\":\"UTM for tracking the advertising or marketing media used to reach your site, such as banners and newsletters.\"},\"utmCampaign\":{\"type\":[\"string\",\"null\"],\"description\":\"UTM for tracking the marketing campaign context.\"},\"utmPartner\":{\"type\":[\"string\",\"null\"],\"description\":\"UTM for tracking the partner.\"},\"utmipage\":{\"type\":[\"string\",\"null\"],\"description\":\"A `utmi` is an internal Urchin Tracking Module (UTM) used to track traffic inside your site. This field is an internal UTM for tracking pages.\"},\"utmiPart\":{\"type\":[\"string\",\"null\"],\"description\":\"Internal UTM for tracking the partner.\"},\"utmiCampaign\":{\"type\":[\"string\",\"null\"],\"description\":\"Internal UTM for tracking the marketing campaign context.\"},\"coupon\":{\"type\":[\"string\",\"null\"],\"description\":\"Coupon code used by the customer.\"},\"marketingTags\":{\"type\":\"array\",\"description\":\"List of marketing tags valid for the order.\",\"items\":{\"type\":\"string\",\"description\":\"Marketing tag name.\"}}}},\"ratesAndBenefitsData\":{\"type\":\"object\",\"description\":\"Information about promotions and taxes valid for the order.\",\"properties\":{\"rateAndBenefitsIdentifiers\":{\"type\":\"array\",\"description\":\"List of promotions and taxes.\",\"items\":{\"type\":\"object\",\"description\":\"Information about a given promotion or tax.\",\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"Promotion or tax ID.\"},\"name\":{\"type\":\"string\",\"description\":\"Promotion or tax name.\"},\"featured\":{\"type\":\"boolean\",\"description\":\"Defines if the [target audience](https://help.vtex.com/en/tutorial/creating-a-campaign-audience--6cnuDZJzIkIeocewAQQK4K) is featured (`true`) or not (`false`).\"},\"description\":{\"type\":[\"string\",\"null\"],\"description\":\"Promotion or tax description.\"},\"matchedParameters\":{\"type\":[\"object\",\"null\"],\"description\":\"Conditions met by the purchase for the promotion or tax to be applied.\",\"additionalProperties\":{\"type\":\"string\",\"description\":\"Promotion or tax condition.\"}},\"additionalInfo\":{\"type\":[\"object\",\"null\"],\"description\":\"Object containing additional information about the promotion or tax.\",\"additionalProperties\":{\"type\":\"string\",\"description\":\"Promotion or tax additional information.\"}}}}},\"teaser\":{\"type\":[\"array\",\"null\"],\"description\":\"List of promotion teasers.\",\"items\":{\"type\":\"object\",\"description\":\"Information about a promotion teaser.\",\"properties\":{\"name\":{\"type\":\"string\",\"description\":\"Promotion teaser name.\"},\"description\":{\"type\":\"string\",\"description\":\"Promotion teaser description.\"}}}}}},\"paymentData\":{\"type\":\"object\",\"description\":\"Payments information.\",\"properties\":{\"giftCards\":{\"type\":[\"array\",\"null\"],\"description\":\"[Gift cards](https://developers.vtex.com/docs/guides/gift-card-integration-guide) information, when applicable.\",\"items\":{\"type\":\"object\",\"description\":\"Gift card details.\",\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"Gift card identification.\"},\"redemptionCode\":{\"type\":\"string\",\"description\":\"Gift card code used by the customer at checkout.\"},\"name\":{\"type\":[\"string\",\"null\"],\"description\":\"Gift card name.\"},\"caption\":{\"type\":[\"string\",\"null\"],\"description\":\"Gift card loyalty program, when applicable.\"},\"value\":{\"type\":\"integer\",\"description\":\"Gift card value in cents.\"},\"balance\":{\"type\":\"number\",\"description\":\"Gift card current balance. For newly created gift cards, the balance will be `0.0`.\"},\"provider\":{\"type\":\"string\",\"description\":\"Gift card provider name.\"},\"groupName\":{\"type\":[\"string\",\"null\"],\"description\":\"Gift card group name.\"},\"inUse\":{\"type\":\"boolean\",\"description\":\"Defines if the gift card is in use (`true`) or not (`false`).\"},\"isSpecialCard\":{\"type\":\"boolean\",\"description\":\"Defines if the gift card is a special card (`true`) or not (`false`).\"}}}},\"transactions\":{\"type\":\"array\",\"description\":\"Information about the order financial transactions.\",\"items\":{\"type\":\"object\",\"description\":\"Information about a given transaction.\",\"properties\":{\"isActive\":{\"type\":\"boolean\",\"description\":\"Defines of the transaction is active (`true`) or inactive (`false`).\"},\"transactionId\":{\"type\":\"string\",\"description\":\"Transaction ID.\"},\"merchantName\":{\"type\":\"string\",\"description\":\"Merchant name.\"},\"payments\":{\"type\":\"array\",\"description\":\"Payments information.\",\"items\":{\"type\":\"object\",\"description\":\"Payment details.\",\"properties\":{\"bankIssuedInvoiceIdentificationNumberFormatted\":{\"type\":[\"string\",\"null\"],\"description\":\"Bank issued invoice numeric sequence formatted as customers see.\"},\"bankIssuedInvoiceIdentificationNumber\":{\"type\":[\"string\",\"null\"],\"description\":\"Bank issued invoice numeric sequence.\"},\"parentAccountId\":{\"type\":[\"string\",\"null\"],\"description\":\"When the payment was made in a subaccount, this field retrieves the main account ID.\"},\"accountId\":{\"type\":\"string\",\"description\":\"Identification code of the account where the payment was made.\"},\"dueDate\":{\"type\":[\"string\",\"null\"],\"description\":\"Payment due date in `MM/YY` format.\"},\"group\":{\"type\":\"string\",\"description\":\"Transaction payment method, which can be credit card, debid card, bank invoice, promissory, gift card or pix (`instantPayment`).\",\"enum\":[\"creditCard\",\"debitCard\",\"bankInvoice\",\"promissory\",\"giftCard\",\"instantPayment\"]},\"isGiftCardDiscount\":{\"type\":[\"boolean\",\"null\"],\"description\":\"Defines if the payment has a gift card discount (`true`) or not (`false`).\"},\"giftCardName\":{\"type\":[\"string\",\"null\"],\"description\":\"Gift card name.\"},\"giftCardCaption\":{\"type\":[\"string\",\"null\"],\"description\":\"Gift card caption.\"},\"giftCardProvider\":{\"type\":[\"string\",\"null\"],\"description\":\"Gift card provider ID.\"},\"giftCardId\":{\"type\":[\"string\",\"null\"],\"description\":\"Gift card ID.\"},\"redemptionCode\":{\"type\":[\"string\",\"null\"],\"description\":\"Gift card code used by the customer at checkout.\"},\"tid\":{\"type\":\"string\",\"description\":\"Provider unique identifier for the transaction.\"},\"koinUrl\":{\"type\":[\"string\",\"null\"],\"description\":\"Koin connector URL.\"},\"url\":{\"type\":[\"string\",\"null\"],\"description\":\"Payment URL.\"},\"expireYear\":{\"type\":[\"string\",\"null\"],\"description\":\"Card expiration year in 4-digit format.\"},\"expireMonth\":{\"type\":[\"string\",\"null\"],\"description\":\"Card expiration month in 2-digit format.\"},\"cvv2\":{\"type\":[\"string\",\"null\"],\"description\":\"Card Verification Value (CVV2) is a security code used by payment processors to reduce fraudulent credit and debit card transactions.\"},\"lastDigits\":{\"type\":[\"string\",\"null\"],\"description\":\"Card last four digits.\"},\"firstDigits\":{\"type\":[\"string\",\"null\"],\"description\":\"Card first four digits.\"},\"cardNumber\":{\"type\":[\"string\",\"null\"],\"description\":\"Card number.\"},\"cardHolder\":{\"type\":[\"string\",\"null\"],\"description\":\"Name of the card owner.\"},\"referenceValue\":{\"type\":\"integer\",\"description\":\"Total payment reference value in cents.\"},\"connectorResponses\":{\"type\":\"object\",\"description\":\"Payment provider (connector) responses. The fields within this object can vary according to the order payment provider.\",\"properties\":{\"Message\":{\"type\":\"string\",\"description\":\"Provider operational message or error to be logged.\"},\"tid\":{\"type\":\"string\",\"description\":\"Provider unique identifier for the transaction.\"},\"authorizationId\":{\"type\":\"string\",\"description\":\"Provider authorization ID.\"},\"status\":{\"type\":\"string\",\"description\":\"Order payment status in the [transaction flow](https://help.vtex.com/en/tracks/payments--6GAS7ZzGAm7AGoEAwDbwJG/1xjzgJZvqwaI1rfxLMCC3Y).\"},\"delayToAutoSettle\":{\"type\":\"integer\",\"description\":\"Total time (in seconds) before the auto settle, when the platform makes an automatic call to `/settlements`, regardless if the payment was approved by the merchant's anti-fraud provider. The maximum value allowed is `604800` seconds (7 days).\"},\"ReturnCode\":{\"type\":[\"string\",\"null\"],\"description\":\"Provider operational return code or error to be logged.\"},\"nsu\":{\"type\":\"string\",\"description\":\"Provider unique sequential number for the transaction.\"},\"code\":{\"type\":\"string\",\"description\":\"Provider operational code or error to be logged.\"},\"message\":{\"type\":\"string\",\"description\":\"Provider operational message or error to be logged.\"},\"Tid\":{\"type\":\"string\",\"description\":\"Provider unique identifier for the transaction.\"},\"acquirer\":{\"type\":\"string\",\"description\":\"[Acquirer](https://help.vtex.com/en/tracks/payments--6GAS7ZzGAm7AGoEAwDbwJG/kdPbEIWf8Xq8tESQvViMB#acquirer) name (mostly used for card payments).\"},\"authId\":{\"type\":\"string\",\"description\":\"Authorization identification.\"},\"paymentId\":{\"type\":\"string\",\"description\":\"Payment ID.\"},\"delayToAutoSettleAfterAntifraud\":{\"type\":\"string\",\"description\":\"Total time (in seconds) before the auto settle, when the platform makes an automatic call to `/settlements`. This happens only after the payment was approved by the merchant's anti-fraud provider.\"}}},\"installments\":{\"type\":\"integer\",\"description\":\"Number of payment installments.\"},\"value\":{\"type\":\"integer\",\"description\":\"Order total payment value in cents.\"},\"paymentSystemName\":{\"type\":\"string\",\"description\":\"Payment system name.\"},\"paymentSystem\":{\"type\":\"string\",\"description\":\"Payment system ID.\"},\"paymentOrigin\":{\"type\":[\"string\",\"null\"],\"description\":\"Type of [wallet](https://help.vtex.com/en/tutorial/what-is-an-e-wallet--4v5wcOe4A0SiaimWM2cU60) used in the payment.\"},\"id\":{\"type\":\"string\",\"description\":\"Payment unique identifier.\"},\"bankIssuedInvoiceBarCodeNumber\":{\"type\":[\"string\",\"null\"],\"description\":\"Bank issued invoice bar code number.\"},\"bankIssuedInvoiceBarCodeType\":{\"type\":[\"string\",\"null\"],\"description\":\"Bank issued invoice bar code type.\"},\"billingAddress\":{\"type\":[\"object\",\"null\"],\"description\":\"Billing address information.\",\"properties\":{\"addressType\":{\"type\":\"string\",\"description\":\"Billing address type, which can be `residential`, when the customer gives an address for delivery, or `pickup`, when the customer picks the order at a pickup point.\",\"enum\":[\"residential\",\"pickup\"]},\"receiverName\":{\"type\":\"string\",\"description\":\"Full name of the order receiver.\"},\"addressId\":{\"type\":\"string\",\"description\":\"Billing address ID.\"},\"versionId\":{\"type\":[\"string\",\"null\"],\"description\":\"Billing address version ID.\"},\"entityId\":{\"type\":[\"string\",\"null\"],\"description\":\"Billing address entity ID.\"},\"postalCode\":{\"type\":\"string\",\"description\":\"Billing address postal code.\"},\"city\":{\"type\":\"string\",\"description\":\"Billing address city.\"},\"state\":{\"type\":\"string\",\"description\":\"Billing address state.\"},\"country\":{\"type\":\"string\",\"description\":\"Billing address three-digit country code in [ISO 3166 ALPHA-3](https://www.iban.com/country-codes) format.\"},\"street\":{\"type\":\"string\",\"description\":\"Billing address street.\"},\"number\":{\"type\":\"string\",\"description\":\"Billing address number.\"},\"neighborhood\":{\"type\":\"string\",\"description\":\"Billing address neighborhood.\"},\"complement\":{\"type\":[\"string\",\"null\"],\"description\":\"Billing address complement.\"},\"reference\":{\"type\":[\"string\",\"null\"],\"description\":\"Billing address additional information.\"},\"geoCoordinates\":{\"type\":\"array\",\"description\":\"Billing address pair of geolocation coordinates, first longitude then latitude.\",\"items\":{\"type\":\"number\",\"description\":\"Longitude or latitude.\"}},\"contactId\":{\"type\":[\"string\",\"null\"],\"description\":\"Billing contact unique identifier.\"}}}}}},\"sharedTransaction\":{\"type\":\"boolean\",\"description\":\"Defines if the transaction is shared (`true`) or not (`false`).\"},\"status\":{\"type\":[\"string\",\"null\"],\"description\":\"Order payment status in the [transaction flow](https://help.vtex.com/en/tracks/payments--6GAS7ZzGAm7AGoEAwDbwJG/1xjzgJZvqwaI1rfxLMCC3Y).\"}}}}}},\"invoiceData\":{\"type\":[\"object\",\"null\"],\"description\":\"Order invoices information.\",\"properties\":{\"address\":{\"type\":[\"object\",\"null\"],\"description\":\"Invoice address information.\",\"properties\":{\"addressType\":{\"type\":[\"string\",\"null\"],\"description\":\"Invoice address type, which can be `residential`, when the customer gives an address for delivery, or `pickup`, when the customer picks the order at a pickup point.\",\"enum\":[\"residential\",\"pickup\"]},\"receiverName\":{\"type\":[\"string\",\"null\"],\"description\":\"Full name of the order receiver.\"},\"addressId\":{\"type\":[\"string\",\"null\"],\"description\":\"Invoice address ID.\"},\"versionId\":{\"type\":[\"string\",\"null\"],\"description\":\"Invoice address version ID.\"},\"entityId\":{\"type\":[\"string\",\"null\"],\"description\":\"Invoice address entity ID.\"},\"postalCode\":{\"type\":\"string\",\"description\":\"Invoice address postal code.\"},\"city\":{\"type\":\"string\",\"description\":\"Invoice address city.\"},\"state\":{\"type\":\"string\",\"description\":\"Invoice address state.\"},\"country\":{\"type\":\"string\",\"description\":\"Invoice address three-digit country code in [ISO 3166 ALPHA-3](https://www.iban.com/country-codes) format.\"},\"street\":{\"type\":\"string\",\"description\":\"Invoice address street.\"},\"number\":{\"type\":\"string\",\"description\":\"Invoice address number.\"},\"neighborhood\":{\"type\":\"string\",\"description\":\"Invoice address neighborhood.\"},\"complement\":{\"type\":[\"string\",\"null\"],\"description\":\"Invoice address complement.\"},\"reference\":{\"type\":[\"string\",\"null\"],\"description\":\"Invoice address additional information.\"},\"geoCoordinates\":{\"type\":\"array\",\"description\":\"Invoice address pair of geolocation coordinates, first longitude then latitude.\",\"items\":{\"type\":\"number\",\"description\":\"Longitude or latitude.\"}},\"contactId\":{\"type\":[\"string\",\"null\"],\"description\":\"Contact unique identifier.\"}}},\"userPaymentInfo\":{\"type\":[\"object\",\"null\"],\"description\":\"Invoice information regarding payment method.\",\"properties\":{\"paymentMethods\":{\"type\":\"array\",\"description\":\"List of the payment methods used by the customer in the purchase.\",\"items\":{\"type\":\"string\",\"description\":\"Payment method name.\"}}}},\"settleInvoices\":{\"type\":[\"array\",\"null\"],\"description\":\"List with the order settled invoices.\",\"items\":{\"type\":\"string\",\"description\":\"Settled invoice numeric identifier.\"}},\"invoiceSubject\":{\"type\":[\"object\",\"null\"],\"description\":\"Information about the invoice subject.\",\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"Invoice subject ID.\"},\"email\":{\"type\":\"string\",\"description\":\"Invoice subject email address.\"},\"firstName\":{\"type\":\"string\",\"description\":\"Invoice subject first name.\"},\"lastName\":{\"type\":\"string\",\"description\":\"Invoice subject last name.\"},\"phone\":{\"type\":\"string\",\"description\":\"Invoice subject phone number.\"}}}}},\"storePreferencesData\":{\"type\":\"object\",\"description\":\"Store preferences in the [Account settings](https://help.vtex.com/en/tutorial/account-details-page--2vhUVOKfCaswqLguT2F9xq).\",\"properties\":{\"countryCode\":{\"type\":\"string\",\"description\":\"Country code in three-digit [ISO 3166 ALPHA-3](https://www.iban.com/country-codes) format.\"},\"currencyCode\":{\"type\":\"string\",\"description\":\"Currency code in [ISO 4217](https://www.iban.com/currency-codes) format.\"},\"currencyFormatInfo\":{\"type\":\"object\",\"description\":\"Currency format settings.\",\"properties\":{\"CurrencyDecimalDigits\":{\"type\":\"integer\",\"description\":\"Number of currency decimal digits.\"},\"CurrencyDecimalSeparator\":{\"type\":\"string\",\"description\":\"Character for currency decimal separation.\"},\"CurrencyGroupSeparator\":{\"type\":\"string\",\"description\":\"Character for currency group separation.\"},\"CurrencyGroupSize\":{\"type\":\"integer\",\"description\":\"Limit of characters that can be grouped for currency groups.\"},\"StartsWithCurrencySymbol\":{\"type\":\"boolean\",\"description\":\"Defines if the prices displayed for customers start with the currency symbol (`true`) or not (`false`).\"}}},\"currencyLocale\":{\"type\":\"integer\",\"description\":\"Currency locale code in [LCID](https://learn.microsoft.com/en-us/openspecs/office_standards/ms-oe376/6c085406-a698-4e12-9d4d-c3b0ee3dbc4a) format.\"},\"currencySymbol\":{\"type\":\"string\",\"description\":\"Currency symbol characters.\"},\"timeZone\":{\"type\":\"string\",\"description\":\"Time zone considered for the store orders.\"}}},\"merchantName\":{\"type\":[\"string\",\"null\"],\"description\":\"Merchant name.\"},\"itemMetadata\":{\"type\":\"object\",\"description\":\"Metadata information about items.\",\"properties\":{\"items\":{\"type\":\"array\",\"description\":\"Metadata details about items.\",\"items\":{\"type\":\"object\",\"description\":\"Metadata details about a given item\",\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"SKU ID.\"},\"seller\":{\"type\":\"string\",\"description\":\"Seller ID.\"},\"name\":{\"type\":\"string\",\"description\":\"Item name as displayed to customers in the storefront.\"},\"skuName\":{\"type\":\"string\",\"description\":\"SKU name.\"},\"productId\":{\"type\":\"string\",\"description\":\"Product ID.\"},\"refId\":{\"type\":\"string\",\"description\":\"SKU reference ID.\"},\"ean\":{\"type\":[\"string\",\"null\"],\"description\":\"European Article Number (EAN) of the item.\"},\"imageUrl\":{\"type\":\"string\",\"description\":\"SKU image URL.\"},\"detailUrl\":{\"type\":\"string\",\"description\":\"SKU slug.\"},\"assemblyOptions\":{\"type\":[\"array\",\"null\"],\"description\":\"[Assembly options](https://help.vtex.com/en/tutorial/assembly-options--5x5FhNr4f5RUGDEGWzV1nH) information related to the item, when applicable.\",\"items\":{\"type\":\"object\",\"description\":\"[Assembly option](https://help.vtex.com/en/tutorial/assembly-options--5x5FhNr4f5RUGDEGWzV1nH) details.\",\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"Assembly option ID.\"},\"name\":{\"type\":\"string\",\"description\":\"Assembly option name.\"},\"required\":{\"type\":\"boolean\",\"description\":\"Defines if sending the attachment for the item purchased is required(`true`) or optional (`false`).\"},\"inputValues\":{\"type\":[\"object\",\"null\"],\"description\":\"Assembly option content.\",\"additionalProperties\":{\"type\":[\"string\",\"null\"],\"description\":\"Assembly option value.\"}},\"composition\":{\"type\":[\"object\",\"null\"],\"description\":\"Assembly option composition.\",\"additionalProperties\":{\"type\":\"string\",\"description\":\"Assembly option composition value.\"}}}}}}}}}},\"creationEnvironment\":{\"type\":[\"string\",\"null\"],\"description\":\"Order creation environment, which can be a [development workspace](https://developers.vtex.com/docs/guides/vtex-io-documentation-creating-a-development-workspace) (`BETA`) or a [production workspace](https://developers.vtex.com/docs/guides/vtex-io-documentation-creating-a-production-workspace) (`STABLE`).\",\"enum\":[\"BETA\",\"STABLE\"]},\"cancellationData\":{\"type\":[\"object\",\"null\"],\"description\":\"Information about [order cancellation](https://developers.vtex.com/docs/guides/order-canceling-improvements), when applicable.\",\"properties\":{\"requestedByUser\":{\"type\":\"boolean\",\"description\":\"Defines if the order cancellation was requested by the customer (`true`) or not (`false`).\"},\"requestedBySystem\":{\"type\":[\"boolean\",\"null\"],\"description\":\"Defines if the order cancellation was made by the system (`true`) or not (`false`). This type of order cancellation happens in [incomplete orders](https://help.vtex.com/en/tutorial/how-incomplete-orders-work--tutorials_294), for example.\"},\"requestedBySellerNotification\":{\"type\":[\"boolean\",\"null\"],\"description\":\"Defines if the order cancellation was requested by the seller (`true`) or not (`false`).\"},\"requestedByPaymentNotification\":{\"type\":[\"boolean\",\"null\"],\"description\":\"Defines if the order cancellation was requested by the payment gateway (`true`) or not (`false`).\"},\"reason\":{\"type\":\"string\",\"description\":\"Reason why the order was canceled.\"},\"cancellationDate\":{\"type\":\"string\",\"description\":\"Order cancellation date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"cancellationRequestId\":{\"type\":\"string\",\"description\":\"ID that identifies the cancellation operation.\"}}},\"cancellationRequests\":{\"type\":[\"array\",\"null\"],\"description\":\"Information about the [seller order cancellation denials](https://developers.vtex.com/docs/guides/order-canceling-improvements), regardless if the cancellation request was made by the marketplace or the customer.\",\"items\":{\"type\":\"object\",\"description\":\"Information about the seller denial to a given order cancellation request.\",\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"ID that identifies the original cancellation operation made by the marketplaces or its customer care service using the [Cancel order](https://developers.vtex.com/docs/api-reference/orders-api#post-/api/oms/pvt/orders/-orderId-/cancel) endpoint.\"},\"reason\":{\"type\":\"string\",\"description\":\"Reason why there was a request to cancel the order.\"},\"cancellationRequestDate\":{\"type\":\"string\",\"description\":\"Date of when the order cancellation request was processed by the platform. The date format is [ISO 8601 time zone offset](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"requestedByUser\":{\"type\":\"boolean\",\"description\":\"Defines if the order cancellation was requested by the customer (`true`) or not (`false`).\"},\"deniedBySeller\":{\"type\":\"boolean\",\"description\":\"Defines if the order cancellation request was [denied by the seller](https://developers.vtex.com/docs/guides/order-canceling-improvements) (`true`) or accepted by the seller (`false`).\"},\"deniedBySellerReason\":{\"type\":[\"string\",\"null\"],\"description\":\"Reason given by the seller for denying the order cancellation.\"},\"cancellationRequestDenyDate\":{\"type\":[\"string\",\"null\"],\"description\":\"Date of when the platform processed the seller denial to an order cancellation request. The date format is [ISO 8601 time zone offset](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"}}}}}}\n\n// Validate if response matches JSON schema \npm.test(\"[GET]::/api/orders/pvt/document/:orderId - Schema is valid\", function() {\n pm.response.to.have.jsonSchema(schema,{unknownFormats: [\"int32\", \"int64\", \"float\", \"double\"]});\n});\n" ] } } @@ -181,12 +181,12 @@ } }, { - "id": "a6f031db-61c3-4546-bb5b-bf6c033f6099", + "id": "d354566b-a470-4f0b-a874-9a808fd10748", "name": "List orders", "request": { "name": "List orders", "description": { - "content": "Retrieves a list of orders according to the query parameters used. The response returns masked order data.\r\n\r\n>⚠️ Throtling: Each account can make up to 6000 requests per minute.\r\n\r\n## Endpoint not meant for integrations\r\nThis request only retrieves orders that have been indexed, which takes aproximately four minutes. The information returned also may present inconsistencies or become unavailable in periods of peak order volume.\r\n\r\nTherefore, you must not use the List orders endpoint for integrations.\r\n\r\n>⚠️ To get up to date information and [build order integrations](https://developers.vtex.com/vtex-rest-api/docs/erp-integration-set-up-order-integration) use the [orders Feed or Hook](https://developers.vtex.com/vtex-rest-api/docs/feed-v3-1).\r\n\r\n> Check the [Orders onboarding guide](https://developers.vtex.com/vtex-rest-api/docs/orders-overview). We created this guide to improve the onboarding experience for developers at VTEX. It assembles all documentation on our Developer Portal about Orders and is organized by focusing on the developer's journey.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| OMS | OMS access | **List Orders** |\r\n| Checkout | CheckoutResources | **Orders 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| OMS - Full access | List Orders |\r\n| Checkout Admin | List Orders |\r\n| IntegrationProfile - Fulfillment Oms | List Orders |\r\n| OMS - Full access | Orders Full Access |\r\n| Checkout Admin | Orders Full Access |\r\n| IntegrationProfile - Fulfillment Oms | Orders 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). To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).", + "content": "Retrieves a list of orders according to the query parameters used. The response returns masked order data.\r\n\r\n>⚠️ Throttling: Each account can make up to 6000 requests per minute.\r\n\r\n## Endpoint not meant for integrations\r\nThis request only retrieves orders that have been indexed, which takes aproximately four minutes. The information returned also may present inconsistencies or become unavailable in periods of peak order volume.\r\n\r\nTherefore, you must not use the List orders endpoint for integrations.\r\n\r\n>⚠️ To get up to date information and [build order integrations](https://developers.vtex.com/vtex-rest-api/docs/erp-integration-set-up-order-integration) use the [orders Feed or Hook](https://developers.vtex.com/vtex-rest-api/docs/feed-v3-1).\r\n\r\n> Check the [Orders onboarding guide](https://developers.vtex.com/vtex-rest-api/docs/orders-overview). We created this guide to improve the onboarding experience for developers at VTEX. It assembles all documentation on our Developer Portal about Orders and is organized by focusing on the developer's journey.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| OMS | OMS access | **List Orders** |\r\n| Checkout | CheckoutResources | **Orders 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| OMS - Full access | List Orders |\r\n| Checkout Admin | List Orders |\r\n| IntegrationProfile - Fulfillment Oms | List Orders |\r\n| OMS - Full access | Orders Full Access |\r\n| Checkout Admin | Orders Full Access |\r\n| IntegrationProfile - Fulfillment Oms | Orders 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). To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).", "type": "text/plain" }, "url": { @@ -247,7 +247,7 @@ "_": { "postman_previewlanguage": "json" }, - "id": "246c4c18-1072-4ada-b8a7-2ff6ed967b78", + "id": "27430823-be07-4314-b6bc-1c69e91b7493", "name": "OK", "originalRequest": { "url": { @@ -327,13 +327,13 @@ { "listen": "test", "script": { - "id": "b1db3ccb-897c-4e5e-9b8c-21058ec1a709", + "id": "12b93361-8c31-4b59-a95c-114df3783f5c", "type": "text/javascript", "exec": [ "// Validate status 2xx \npm.test(\"[POST]::/api/orders/extendsearch/orders - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", "// Validate if response header has matching content-type\npm.test(\"[POST]::/api/orders/extendsearch/orders - Content-Type is application/json\", function () {\n pm.expect(pm.response.headers.get(\"Content-Type\")).to.include(\"application/json\");\n});\n", "// Validate if response has JSON Body \npm.test(\"[POST]::/api/orders/extendsearch/orders - Response has JSON Body\", function () {\n pm.response.to.have.jsonBody();\n});\n", - "// Response Validation\nconst schema = {\"type\":\"object\",\"properties\":{\"list\":{\"type\":\"array\",\"description\":\"List with orders' information.\",\"properties\":{\"paymentNames\":{\"type\":\"string\",\"description\":\"Payment system name.\"},\"orderId\":{\"type\":\"string\",\"description\":\"Order ID.\"},\"orderGroup\":{\"type\":\"string\",\"description\":\"Order group ID.\"},\"sequence\":{\"type\":\"string\",\"description\":\"Sequence number part of the order ID. For example, in order `v71041992str-01`, the sequence is `71041992`.\"},\"clientEmail\":{\"description\":\"Customer email.\",\"type\":\"string\"},\"clientDocument\":{\"type\":\"string\",\"description\":\"Customer document number.\"},\"clientCorporateDocument\":{\"type\":[\"string\",\"null\"],\"description\":\"Corporate document, if the customer is a legal entity.\"},\"clientCorporateName\":{\"type\":[\"string\",\"null\"],\"description\":\"Corporate name, if the customer is a legal entity.\"},\"clientName\":{\"type\":\"string\",\"description\":\"Customer name.\"},\"totalValue\":{\"type\":\"integer\",\"description\":\"Order total value in cents.\"},\"origin\":{\"type\":\"string\",\"description\":\"Order's origin in the [order flow](https://help.vtex.com/en/tutorial/order-flow-and-status--tutorials_196).\",\"enum\":[\"Marketplace\",\"Fulfillment\",\"Chain\"]},\"status\":{\"type\":\"string\",\"description\":\"[Order status](https://help.vtex.com/en/tutorial/order-flow-and-status--tutorials_196) in the workflow.\"},\"currencyCode\":{\"type\":\"string\",\"description\":\"Currency code in [ISO 4217](https://www.iban.com/currency-codes) format.\"},\"sellerNames\":{\"type\":\"array\",\"description\":\"Names of the sellers responsible for order fuflillment.\",\"items\":{\"type\":\"string\",\"description\":\"Seller name.\"}},\"sellerIds\":{\"type\":\"array\",\"description\":\"IDs of the sellers responsible for order fuflillment.\",\"items\":{\"type\":\"string\",\"description\":\"Seller ID.\"}},\"sellerOrderId\":{\"type\":\"string\",\"description\":\"Seller order ID.\"},\"totalItems\":{\"type\":\"string\",\"description\":\"Order total quantity of items.\"},\"pciTransactionId\":{\"type\":\"array\",\"description\":\"List with the PCI transaction ID.\",\"items\":{\"type\":\"string\",\"description\":\"PCI transaction ID.\"}},\"paymentNSU\":{\"type\":\"array\",\"description\":\"Unique sequence number that identifies a sales transaction using cards.\",\"items\":{\"type\":\"string\",\"description\":\"NSU sequence number.\"}},\"ratesAndBenefitsNames\":{\"type\":\"array\",\"description\":\"List of the promotions and taxes names valid for the purchase.\",\"items\":{\"type\":\"string\",\"description\":\"Promotion or tax name.\"}},\"ratesAndBenefitsIds\":{\"type\":\"array\",\"description\":\"List of the promotions and taxes IDs valid for the purchase.\",\"items\":{\"type\":\"string\",\"description\":\"Promotion or tax ID.\"}},\"shippingEstimatedDateMax\":{\"type\":\"string\",\"description\":\"Maximum shipping estimated date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"shippingEstimatedDateMin\":{\"type\":\"string\",\"description\":\"Minimum shipping estimated date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"transactionIds\":{\"type\":\"array\",\"description\":\"Array with payment transaction IDs information.\",\"items\":{\"type\":\"string\",\"description\":\"Payment transaction ID.\"}},\"paymentIds\":{\"type\":\"array\",\"description\":\"Array with payment IDs information.\",\"items\":{\"type\":\"string\",\"description\":\"Payment unique identifier.\"}},\"isInstore\":{\"type\":\"boolean\",\"description\":\"Defines if the order was placed via [VTEX Sales App](https://help.vtex.com/en/tracks/instore-getting-started-and-setting-up--zav76TFEZlAjnyBVL5tRc) (`true`) or not (`false`).\"},\"deliveryChannel\":{\"type\":\"array\",\"description\":\"List of delivery channels, which can be delivery or [pickup point](https://help.vtex.com/en/tutorial/pickup-points--2fljn6wLjn8M4lJHA6HP3R).\",\"items\":{\"type\":\"string\",\"description\":\"Delivery channel.\"},\"enum\":[\"delivery\",\"pickup-in-point\"]},\"productIds\":{\"type\":\"array\",\"description\":\"List of product IDs related to the orders items.\",\"items\":{\"type\":\"string\",\"description\":\"Product ID.\"}},\"hostname\":{\"type\":\"string\",\"description\":\"Main [account name](https://help.vtex.com/en/tutorial/what-is-an-account-name--i0mIGLcg3QyEy8OCicEoC).\"},\"creationDate\":{\"type\":\"string\",\"description\":\"Order creation date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"invoicedDate\":{\"type\":[\"string\",\"null\"],\"description\":\"Order invoice date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"authorizedDate\":{\"type\":\"string\",\"description\":\"Order authorization date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"orderIsComplete\":{\"type\":\"boolean\",\"description\":\"Defines if the order is complete (`true`) or [incomplete](https://help.vtex.com/en/tutorial/how-incomplete-orders-work--tutorials_294) (`false`).\"},\"marketingTags\":{\"type\":\"array\",\"description\":\"List of marketing tags valid for the order.\",\"items\":{\"type\":\"string\",\"description\":\"Marketing tag name.\"}},\"invoicesOutput\":{\"type\":[\"string\",\"null\"],\"description\":\"Order invoice number for an `output` operation, when the store sells an item to the customer.\"},\"invoicesInput\":{\"type\":[\"string\",\"null\"],\"description\":\"Order invoice number for an `input` operation, when the customer returnes an item to the store.\"},\"workflowInErrorState\":{\"type\":\"boolean\",\"description\":\"Defines if the order processing in the workflow is in error (`true`) or not (`false`).\"},\"workflowInRetry\":{\"type\":\"boolean\",\"description\":\"Defines if the order is in automatic processing retry in the workflow (`true`) or not (`false`).\"},\"userProfileId\":{\"type\":\"string\",\"description\":\"User profile ID.\"},\"lastChange\":{\"type\":\"string\",\"description\":\"Order last change date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"isAllDelivered\":{\"type\":\"boolean\",\"description\":\"Defines if all order items have being delivered (`true`) or not (`false`).\"},\"isAnyDelivered\":{\"type\":\"boolean\",\"description\":\"Defines if any order item has being delivered (`true`) or not (`false`).\"},\"giftCardProviders\":{\"type\":[\"array\",\"null\"],\"description\":\"Order [gift card](https://developers.vtex.com/docs/guides/gift-card-integration-guide) information, when applicable.\",\"items\":{\"type\":\"string\",\"description\":\"Gift card name.\"}},\"orderFormId\":{\"type\":\"string\",\"description\":\"ID of the shopping cart from which the order was created.\"},\"paymentApprovedDate\":{\"type\":\"string\",\"description\":\"Payment approval date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"readyForHandlingDate\":{\"type\":[\"string\",\"null\"],\"description\":\"Order ready for handling date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"deliveryDates\":{\"type\":[\"array\",\"null\"],\"description\":\"Array with delivery date information.\",\"items\":{\"type\":\"string\",\"description\":\"Order delivey date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"}},\"ingestPipelineMetadata\":{\"type\":\"array\",\"description\":\"Array with order processing metadata.\",\"items\":{\"type\":\"string\",\"description\":\"Metadata information.\"}},\"marketplaceWorkflowInstanceId\":{\"type\":[\"string\",\"null\"],\"description\":\"Marketplace workflow instance ID.\"},\"fulfillmentWorkflowInstanceId\":{\"type\":[\"string\",\"null\"],\"description\":\"Seller workflow instance ID.\"},\"callCenterOperatorEmail\":{\"type\":[\"string\",\"null\"],\"description\":\"Email of the call center operator responsible for the order, when applicable.\"},\"callCenterOperatorName\":{\"type\":[\"string\",\"null\"],\"description\":\"Name of the call center operator responsible for the order, when applicable.\"},\"productNames\":{\"type\":\"array\",\"description\":\"List of the order product names.\",\"items\":{\"type\":\"string\",\"description\":\"Product name.\"}}}},\"facets\":{\"type\":[\"array\",\"null\"],\"description\":\"Array of facets.\",\"items\":{\"type\":[\"string\",\"null\"],\"description\":\"Facets details.\"}},\"paging\":{\"type\":\"object\",\"description\":\"Pagination information.\",\"required\":[\"total\",\"pages\",\"currentPage\",\"perPage\"],\"properties\":{\"total\":{\"type\":\"integer\",\"description\":\"Total number of objects that exist for the `list` field, each corresponding to an order.\"},\"pages\":{\"type\":\"integer\",\"description\":\"Total number of pages.\"},\"currentPage\":{\"type\":\"integer\",\"description\":\"Number of the current page.\"},\"perPage\":{\"type\":\"integer\",\"description\":\"Number of objects per page that can be returned for the `list` field. The default value is `15` and the maximum value is `100`.\"}}},\"stats\":{\"type\":[\"object\",\"null\"],\"description\":\"Information about stats.\",\"required\":[\"stats\"],\"properties\":{\"stats\":{\"type\":\"object\",\"description\":\"Stats object.\",\"required\":[\"totalValue\",\"totalItems\"],\"properties\":{\"totalValue\":{\"type\":\"object\",\"description\":\"Stats total value.\",\"required\":[\"Count\",\"Max\",\"Mean\",\"Min\",\"Missing\",\"StdDev\",\"Sum\",\"SumOfSquares\",\"Facets\"],\"properties\":{\"Count\":{\"type\":\"integer\",\"description\":\"Value count.\"},\"Max\":{\"type\":\"integer\",\"description\":\"Maximum value.\"},\"Mean\":{\"type\":\"number\",\"description\":\"Value mean.\"},\"Min\":{\"type\":\"integer\",\"description\":\"Minimum value.\"},\"Missing\":{\"type\":\"integer\",\"description\":\"Missing values.\"},\"StdDev\":{\"type\":\"number\",\"description\":\"Standard deviation.\"},\"Sum\":{\"type\":\"integer\",\"description\":\"Sum of values.\"},\"SumOfSquares\":{\"type\":\"integer\",\"format\":\"int64\",\"description\":\"Value sum of squares.\"},\"Facets\":{\"type\":\"object\",\"description\":\"Facets related to total values.\",\"required\":[\"origin\",\"currencyCode\"],\"properties\":{\"origin\":{\"type\":\"object\",\"description\":\"Value facets origin.\",\"required\":[\"Fulfillment\",\"Marketplace\"],\"properties\":{\"Fulfillment\":{\"type\":\"object\",\"description\":\"Seller (fulfillment) facets information.\",\"required\":[\"Count\",\"Max\",\"Mean\",\"Min\",\"Missing\",\"StdDev\",\"Sum\",\"SumOfSquares\",\"Facets\"],\"properties\":{\"Count\":{\"type\":\"integer\",\"description\":\"Value count related to fulfillment.\"},\"Max\":{\"type\":\"integer\",\"description\":\"Maximum value related to fulfillment.\"},\"Mean\":{\"type\":\"number\",\"description\":\"Value mean related to fulfillment.\"},\"Min\":{\"type\":\"integer\",\"description\":\"Minimum related to fulfillment.\"},\"Missing\":{\"type\":\"integer\",\"description\":\"Missing values related to fulfillment.\"},\"StdDev\":{\"type\":\"number\",\"description\":\"Standard deviation related to fulfillment.\"},\"Sum\":{\"type\":\"integer\",\"description\":\"Value sum related to fulfillment.\"},\"SumOfSquares\":{\"type\":\"integer\",\"description\":\"Sum of squares related to fulfillment.\"},\"Facets\":{\"type\":[\"string\",\"null\"],\"description\":\"Facets related to fulfillment.\"}}},\"Marketplace\":{\"type\":\"object\",\"description\":\"Marketplace facets information.\",\"required\":[\"Count\",\"Max\",\"Mean\",\"Min\",\"Missing\",\"StdDev\",\"Sum\",\"SumOfSquares\",\"Facets\"],\"properties\":{\"Count\":{\"type\":\"integer\",\"description\":\"Value count related to the marketplace.\"},\"Max\":{\"type\":\"integer\",\"description\":\"Maximum value related to the marketplace.\"},\"Mean\":{\"type\":\"number\",\"description\":\"Value mean related to the marketplace.\"},\"Min\":{\"type\":\"integer\",\"description\":\"Minimum value related to the marketplace.\"},\"Missing\":{\"type\":\"integer\",\"description\":\"Missing values related to the marketplace.\"},\"StdDev\":{\"type\":\"number\",\"description\":\"Standard deviation related to the marketplace.\"},\"Sum\":{\"type\":\"integer\",\"description\":\"Values sum related to the marketplace.\"},\"SumOfSquares\":{\"type\":\"integer\",\"format\":\"int64\",\"description\":\"Sum of squares related to the marketplace.\"},\"Facets\":{\"type\":[\"string\",\"null\"],\"description\":\"Facets related to the marketplace.\"}}}}},\"currencyCode\":{\"type\":\"object\",\"description\":\"Total value currency code in [ISO 4217](https://www.iban.com/currency-codes) format.\",\"required\":[\"BRL\"],\"properties\":{\"BRL\":{\"type\":\"object\",\"description\":\"Currency code facets information.\",\"required\":[\"Count\",\"Max\",\"Mean\",\"Min\",\"Missing\",\"StdDev\",\"Sum\",\"SumOfSquares\",\"Facets\"],\"properties\":{\"Count\":{\"type\":\"integer\",\"description\":\"Value count related to the currency code.\"},\"Max\":{\"type\":\"integer\",\"description\":\"Maximum value related to the currency code.\"},\"Mean\":{\"type\":\"number\",\"description\":\"Value mean related to the currency code.\"},\"Min\":{\"type\":\"integer\",\"description\":\"Minimum value related to the currency code.\"},\"Missing\":{\"type\":\"integer\",\"description\":\"Missing values related to the currency code.\"},\"StdDev\":{\"type\":\"number\",\"description\":\"Standard deviation related to the currency code.\"},\"Sum\":{\"type\":\"integer\",\"description\":\"Sum of values related to the currency code.\"},\"SumOfSquares\":{\"type\":\"integer\",\"format\":\"int64\",\"description\":\"Sum of squares related to the currency code.\"},\"Facets\":{\"type\":[\"string\",\"null\"],\"description\":\"Facets related to the currency code.\"}}}}}}}}},\"totalItems\":{\"type\":\"object\",\"description\":\"Stats total items.\",\"required\":[\"Count\",\"Max\",\"Mean\",\"Min\",\"Missing\",\"StdDev\",\"Sum\",\"SumOfSquares\",\"Facets\"],\"properties\":{\"Count\":{\"type\":\"integer\",\"description\":\"Count.\"},\"Max\":{\"type\":\"integer\",\"description\":\"Maximum.\"},\"Mean\":{\"type\":\"number\",\"description\":\"Mean.\"},\"Min\":{\"type\":\"integer\",\"description\":\"Minimum.\"},\"Missing\":{\"type\":\"integer\",\"description\":\"Missing.\"},\"StdDev\":{\"type\":\"number\",\"description\":\"Standard deviation.\"},\"Sum\":{\"type\":\"integer\",\"description\":\"Sum.\"},\"SumOfSquares\":{\"type\":\"integer\",\"format\":\"int64\",\"description\":\"Sum of squares.\"},\"Facets\":{\"type\":[\"string\",\"null\"],\"description\":\"Facets.\"}}}}}}},\"reportRecordsLimit\":{\"type\":\"integer\",\"description\":\"Records limit.\"}}}\n\n// Validate if response matches JSON schema \npm.test(\"[POST]::/api/orders/extendsearch/orders - Schema is valid\", function() {\n pm.response.to.have.jsonSchema(schema,{unknownFormats: [\"int32\", \"int64\", \"float\", \"double\"]});\n});\n" + "// Response Validation\nconst schema = {\"type\":\"object\",\"properties\":{\"list\":{\"type\":\"array\",\"description\":\"List with orders' information.\",\"items\":{\"type\":\"object\",\"description\":\"Information about an order.\",\"properties\":{\"paymentNames\":{\"type\":\"string\",\"description\":\"Payment system name.\"},\"orderId\":{\"type\":\"string\",\"description\":\"Order ID.\"},\"orderGroup\":{\"type\":\"string\",\"description\":\"Order group ID.\"},\"sequence\":{\"type\":\"string\",\"description\":\"Sequence number part of the order ID. For example, in order `v71041992str-01`, the sequence is `71041992`.\"},\"clientEmail\":{\"description\":\"Customer email.\",\"type\":\"string\"},\"clientDocument\":{\"type\":\"string\",\"description\":\"Customer document number.\"},\"clientCorporateDocument\":{\"type\":[\"string\",\"null\"],\"description\":\"Corporate document, if the customer is a legal entity.\"},\"clientCorporateName\":{\"type\":[\"string\",\"null\"],\"description\":\"Corporate name, if the customer is a legal entity.\"},\"clientName\":{\"type\":\"string\",\"description\":\"Customer name.\"},\"totalValue\":{\"type\":\"integer\",\"description\":\"Order total value in cents.\"},\"origin\":{\"type\":\"string\",\"description\":\"Order's origin in the [order flow](https://help.vtex.com/en/tutorial/order-flow-and-status--tutorials_196).\",\"enum\":[\"Marketplace\",\"Fulfillment\",\"Chain\"]},\"status\":{\"type\":\"string\",\"description\":\"[Order status](https://help.vtex.com/en/tutorial/order-flow-and-status--tutorials_196) in the workflow.\"},\"currencyCode\":{\"type\":\"string\",\"description\":\"Currency code in [ISO 4217](https://www.iban.com/currency-codes) format.\"},\"sellerNames\":{\"type\":\"array\",\"description\":\"Names of the sellers responsible for order fuflillment.\",\"items\":{\"type\":\"string\",\"description\":\"Seller name.\"}},\"sellerIds\":{\"type\":\"array\",\"description\":\"IDs of the sellers responsible for order fuflillment.\",\"items\":{\"type\":\"string\",\"description\":\"Seller ID.\"}},\"sellerOrderId\":{\"type\":\"string\",\"description\":\"Seller order ID.\"},\"totalItems\":{\"type\":\"string\",\"description\":\"Order total quantity of items.\"},\"pciTransactionId\":{\"type\":\"array\",\"description\":\"List with the PCI transaction ID.\",\"items\":{\"type\":\"string\",\"description\":\"PCI transaction ID.\"}},\"paymentNSU\":{\"type\":\"array\",\"description\":\"Unique sequence number that identifies a sales transaction using cards.\",\"items\":{\"type\":\"string\",\"description\":\"NSU sequence number.\"}},\"ratesAndBenefitsNames\":{\"type\":\"array\",\"description\":\"List of the promotions and taxes names valid for the purchase.\",\"items\":{\"type\":\"string\",\"description\":\"Promotion or tax name.\"}},\"ratesAndBenefitsIds\":{\"type\":\"array\",\"description\":\"List of the promotions and taxes IDs valid for the purchase.\",\"items\":{\"type\":\"string\",\"description\":\"Promotion or tax ID.\"}},\"shippingEstimatedDateMax\":{\"type\":\"string\",\"description\":\"Maximum shipping estimated date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"shippingEstimatedDateMin\":{\"type\":\"string\",\"description\":\"Minimum shipping estimated date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"transactionIds\":{\"type\":\"array\",\"description\":\"Array with payment transaction IDs information.\",\"items\":{\"type\":\"string\",\"description\":\"Payment transaction ID.\"}},\"paymentIds\":{\"type\":\"array\",\"description\":\"Array with payment IDs information.\",\"items\":{\"type\":\"string\",\"description\":\"Payment unique identifier.\"}},\"isInstore\":{\"type\":\"boolean\",\"description\":\"Defines if the order was placed via [VTEX Sales App](https://help.vtex.com/en/tracks/instore-getting-started-and-setting-up--zav76TFEZlAjnyBVL5tRc) (`true`) or not (`false`).\"},\"deliveryChannel\":{\"type\":\"array\",\"description\":\"List of delivery channels, which can be delivery or [pickup point](https://help.vtex.com/en/tutorial/pickup-points--2fljn6wLjn8M4lJHA6HP3R).\",\"items\":{\"type\":\"string\",\"description\":\"Delivery channel.\"},\"enum\":[\"delivery\",\"pickup-in-point\"]},\"productIds\":{\"type\":\"array\",\"description\":\"List of product IDs related to the orders items.\",\"items\":{\"type\":\"string\",\"description\":\"Product ID.\"}},\"hostname\":{\"type\":\"string\",\"description\":\"Main [account name](https://help.vtex.com/en/tutorial/what-is-an-account-name--i0mIGLcg3QyEy8OCicEoC).\"},\"creationDate\":{\"type\":\"string\",\"description\":\"Order creation date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"invoicedDate\":{\"type\":[\"string\",\"null\"],\"description\":\"Order invoice date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"authorizedDate\":{\"type\":\"string\",\"description\":\"Order authorization date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"orderIsComplete\":{\"type\":\"boolean\",\"description\":\"Defines if the order is complete (`true`) or [incomplete](https://help.vtex.com/en/tutorial/how-incomplete-orders-work--tutorials_294) (`false`).\"},\"marketingTags\":{\"type\":\"array\",\"description\":\"List of marketing tags valid for the order.\",\"items\":{\"type\":\"string\",\"description\":\"Marketing tag name.\"}},\"invoicesOutput\":{\"type\":[\"string\",\"null\"],\"description\":\"Order invoice number for an `output` operation, when the store sells an item to the customer.\"},\"invoicesInput\":{\"type\":[\"string\",\"null\"],\"description\":\"Order invoice number for an `input` operation, when the customer returnes an item to the store.\"},\"workflowInErrorState\":{\"type\":\"boolean\",\"description\":\"Defines if the order processing in the workflow is in error (`true`) or not (`false`).\"},\"workflowInRetry\":{\"type\":\"boolean\",\"description\":\"Defines if the order is in automatic processing retry in the workflow (`true`) or not (`false`).\"},\"userProfileId\":{\"type\":\"string\",\"description\":\"User profile ID.\"},\"lastChange\":{\"type\":\"string\",\"description\":\"Order last change date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"isAllDelivered\":{\"type\":\"boolean\",\"description\":\"Defines if all order items have being delivered (`true`) or not (`false`).\"},\"isAnyDelivered\":{\"type\":\"boolean\",\"description\":\"Defines if any order item has being delivered (`true`) or not (`false`).\"},\"giftCardProviders\":{\"type\":[\"array\",\"null\"],\"description\":\"Order [gift card](https://developers.vtex.com/docs/guides/gift-card-integration-guide) information, when applicable.\",\"items\":{\"type\":\"string\",\"description\":\"Gift card name.\"}},\"orderFormId\":{\"type\":\"string\",\"description\":\"ID of the shopping cart from which the order was created.\"},\"paymentApprovedDate\":{\"type\":\"string\",\"description\":\"Payment approval date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"readyForHandlingDate\":{\"type\":[\"string\",\"null\"],\"description\":\"Order ready for handling date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"},\"deliveryDates\":{\"type\":[\"array\",\"null\"],\"description\":\"Array with delivery date information.\",\"items\":{\"type\":\"string\",\"description\":\"Order delivey date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.\"}},\"ingestPipelineMetadata\":{\"type\":\"array\",\"description\":\"Array with order processing metadata.\",\"items\":{\"type\":\"string\",\"description\":\"Metadata information.\"}},\"marketplaceWorkflowInstanceId\":{\"type\":[\"string\",\"null\"],\"description\":\"Marketplace workflow instance ID.\"},\"fulfillmentWorkflowInstanceId\":{\"type\":[\"string\",\"null\"],\"description\":\"Seller workflow instance ID.\"},\"callCenterOperatorEmail\":{\"type\":[\"string\",\"null\"],\"description\":\"Email of the call center operator responsible for the order, when applicable.\"},\"callCenterOperatorName\":{\"type\":[\"string\",\"null\"],\"description\":\"Name of the call center operator responsible for the order, when applicable.\"},\"productNames\":{\"type\":\"array\",\"description\":\"List of the order product names.\",\"items\":{\"type\":\"string\",\"description\":\"Product name.\"}}}}},\"facets\":{\"type\":[\"array\",\"null\"],\"description\":\"Array of facets.\",\"items\":{\"type\":[\"string\",\"null\"],\"description\":\"Facets details.\"}},\"paging\":{\"type\":\"object\",\"description\":\"Pagination information.\",\"required\":[\"total\",\"pages\",\"currentPage\",\"perPage\"],\"properties\":{\"total\":{\"type\":\"integer\",\"description\":\"Total number of objects that exist for the `list` field, each corresponding to an order.\"},\"pages\":{\"type\":\"integer\",\"description\":\"Total number of pages.\"},\"currentPage\":{\"type\":\"integer\",\"description\":\"Number of the current page.\"},\"perPage\":{\"type\":\"integer\",\"description\":\"Number of objects per page that can be returned for the `list` field. The default value is `15` and the maximum value is `100`.\"}}},\"stats\":{\"type\":[\"object\",\"null\"],\"description\":\"Information about stats.\",\"required\":[\"stats\"],\"properties\":{\"stats\":{\"type\":\"object\",\"description\":\"Stats object.\",\"required\":[\"totalValue\",\"totalItems\"],\"properties\":{\"totalValue\":{\"type\":\"object\",\"description\":\"Stats total value.\",\"required\":[\"Count\",\"Max\",\"Mean\",\"Min\",\"Missing\",\"StdDev\",\"Sum\",\"SumOfSquares\",\"Facets\"],\"properties\":{\"Count\":{\"type\":\"integer\",\"description\":\"Value count.\"},\"Max\":{\"type\":\"integer\",\"description\":\"Maximum value.\"},\"Mean\":{\"type\":\"number\",\"description\":\"Value mean.\"},\"Min\":{\"type\":\"integer\",\"description\":\"Minimum value.\"},\"Missing\":{\"type\":\"integer\",\"description\":\"Missing values.\"},\"StdDev\":{\"type\":\"number\",\"description\":\"Standard deviation.\"},\"Sum\":{\"type\":\"integer\",\"description\":\"Sum of values.\"},\"SumOfSquares\":{\"type\":\"integer\",\"format\":\"int64\",\"description\":\"Value sum of squares.\"},\"Facets\":{\"type\":\"object\",\"description\":\"Facets related to total values.\",\"required\":[\"origin\",\"currencyCode\"],\"properties\":{\"origin\":{\"type\":\"object\",\"description\":\"Value facets origin.\",\"required\":[\"Fulfillment\",\"Marketplace\"],\"properties\":{\"Fulfillment\":{\"type\":\"object\",\"description\":\"Seller (fulfillment) facets information.\",\"required\":[\"Count\",\"Max\",\"Mean\",\"Min\",\"Missing\",\"StdDev\",\"Sum\",\"SumOfSquares\",\"Facets\"],\"properties\":{\"Count\":{\"type\":\"integer\",\"description\":\"Value count related to fulfillment.\"},\"Max\":{\"type\":\"integer\",\"description\":\"Maximum value related to fulfillment.\"},\"Mean\":{\"type\":\"number\",\"description\":\"Value mean related to fulfillment.\"},\"Min\":{\"type\":\"integer\",\"description\":\"Minimum related to fulfillment.\"},\"Missing\":{\"type\":\"integer\",\"description\":\"Missing values related to fulfillment.\"},\"StdDev\":{\"type\":\"number\",\"description\":\"Standard deviation related to fulfillment.\"},\"Sum\":{\"type\":\"integer\",\"description\":\"Value sum related to fulfillment.\"},\"SumOfSquares\":{\"type\":\"integer\",\"description\":\"Sum of squares related to fulfillment.\"},\"Facets\":{\"type\":[\"string\",\"null\"],\"description\":\"Facets related to fulfillment.\"}}},\"Marketplace\":{\"type\":\"object\",\"description\":\"Marketplace facets information.\",\"required\":[\"Count\",\"Max\",\"Mean\",\"Min\",\"Missing\",\"StdDev\",\"Sum\",\"SumOfSquares\",\"Facets\"],\"properties\":{\"Count\":{\"type\":\"integer\",\"description\":\"Value count related to the marketplace.\"},\"Max\":{\"type\":\"integer\",\"description\":\"Maximum value related to the marketplace.\"},\"Mean\":{\"type\":\"number\",\"description\":\"Value mean related to the marketplace.\"},\"Min\":{\"type\":\"integer\",\"description\":\"Minimum value related to the marketplace.\"},\"Missing\":{\"type\":\"integer\",\"description\":\"Missing values related to the marketplace.\"},\"StdDev\":{\"type\":\"number\",\"description\":\"Standard deviation related to the marketplace.\"},\"Sum\":{\"type\":\"integer\",\"description\":\"Values sum related to the marketplace.\"},\"SumOfSquares\":{\"type\":\"integer\",\"format\":\"int64\",\"description\":\"Sum of squares related to the marketplace.\"},\"Facets\":{\"type\":[\"string\",\"null\"],\"description\":\"Facets related to the marketplace.\"}}}}},\"currencyCode\":{\"type\":\"object\",\"description\":\"Total value currency code in [ISO 4217](https://www.iban.com/currency-codes) format.\",\"required\":[\"BRL\"],\"properties\":{\"BRL\":{\"type\":\"object\",\"description\":\"Currency code facets information.\",\"required\":[\"Count\",\"Max\",\"Mean\",\"Min\",\"Missing\",\"StdDev\",\"Sum\",\"SumOfSquares\",\"Facets\"],\"properties\":{\"Count\":{\"type\":\"integer\",\"description\":\"Value count related to the currency code.\"},\"Max\":{\"type\":\"integer\",\"description\":\"Maximum value related to the currency code.\"},\"Mean\":{\"type\":\"number\",\"description\":\"Value mean related to the currency code.\"},\"Min\":{\"type\":\"integer\",\"description\":\"Minimum value related to the currency code.\"},\"Missing\":{\"type\":\"integer\",\"description\":\"Missing values related to the currency code.\"},\"StdDev\":{\"type\":\"number\",\"description\":\"Standard deviation related to the currency code.\"},\"Sum\":{\"type\":\"integer\",\"description\":\"Sum of values related to the currency code.\"},\"SumOfSquares\":{\"type\":\"integer\",\"format\":\"int64\",\"description\":\"Sum of squares related to the currency code.\"},\"Facets\":{\"type\":[\"string\",\"null\"],\"description\":\"Facets related to the currency code.\"}}}}}}}}},\"totalItems\":{\"type\":\"object\",\"description\":\"Stats total items.\",\"required\":[\"Count\",\"Max\",\"Mean\",\"Min\",\"Missing\",\"StdDev\",\"Sum\",\"SumOfSquares\",\"Facets\"],\"properties\":{\"Count\":{\"type\":\"integer\",\"description\":\"Count.\"},\"Max\":{\"type\":\"integer\",\"description\":\"Maximum.\"},\"Mean\":{\"type\":\"number\",\"description\":\"Mean.\"},\"Min\":{\"type\":\"integer\",\"description\":\"Minimum.\"},\"Missing\":{\"type\":\"integer\",\"description\":\"Missing.\"},\"StdDev\":{\"type\":\"number\",\"description\":\"Standard deviation.\"},\"Sum\":{\"type\":\"integer\",\"description\":\"Sum.\"},\"SumOfSquares\":{\"type\":\"integer\",\"format\":\"int64\",\"description\":\"Sum of squares.\"},\"Facets\":{\"type\":[\"string\",\"null\"],\"description\":\"Facets.\"}}}}}}},\"reportRecordsLimit\":{\"type\":\"integer\",\"description\":\"Records limit.\"}}}\n\n// Validate if response matches JSON schema \npm.test(\"[POST]::/api/orders/extendsearch/orders - Schema is valid\", function() {\n pm.response.to.have.jsonSchema(schema,{unknownFormats: [\"int32\", \"int64\", \"float\", \"double\"]});\n});\n" ] } } @@ -343,7 +343,7 @@ } }, { - "id": "72236edb-f4cc-43bc-83e9-6ce01faf44a0", + "id": "1b723a00-84f9-4411-be6b-6f8cee164fef", "name": "Start handling order", "request": { "name": "Start handling order", @@ -406,7 +406,7 @@ "_": { "postman_previewlanguage": "text" }, - "id": "e04d5160-6a47-4963-b804-9b874640112c", + "id": "2ca95e0b-762f-4421-bfc9-31bb804ce4ab", "name": "No content", "originalRequest": { "url": { @@ -465,7 +465,7 @@ "_": { "postman_previewlanguage": "text" }, - "id": "a3f76f8c-170b-4a0f-8fe2-e3a984251f14", + "id": "ef8fb83d-95e0-44dc-b3f2-f0a9871cebf8", "name": "Forbidden", "originalRequest": { "url": { @@ -524,7 +524,7 @@ "_": { "postman_previewlanguage": "text" }, - "id": "f13c7d63-750b-4d49-b519-004be73408f0", + "id": "801f8252-3ce3-43ab-bc56-fb1033d7caeb", "name": "Not found", "originalRequest": { "url": { @@ -583,7 +583,7 @@ "_": { "postman_previewlanguage": "text" }, - "id": "557f2099-0a77-4917-ab8f-0ed9fd368c05", + "id": "94078c0a-6c21-4d68-8260-78c8ca696a3c", "name": "Too many requests", "originalRequest": { "url": { @@ -643,7 +643,7 @@ { "listen": "test", "script": { - "id": "205184b1-1486-4dc1-8514-4462a7ca45c2", + "id": "27ca8ec1-3e3d-4c6b-bca0-9e4c9a3301ab", "type": "text/javascript", "exec": [ "// Validate status 2xx \npm.test(\"[POST]::/api/orders/pvt/document/:orderId/actions/start-handling - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", @@ -657,7 +657,7 @@ } }, { - "id": "a475e6f9-b326-465e-81aa-5127893d942b", + "id": "fbd7c556-9e04-421a-8555-f6a8cc84852b", "name": "Cancel order", "request": { "name": "Cancel order", @@ -736,7 +736,7 @@ "_": { "postman_previewlanguage": "json" }, - "id": "f82a861c-f414-4cd4-9244-fa3976114b7c", + "id": "2ff11529-6e27-44cc-accb-6dd16747cff7", "name": "OK", "originalRequest": { "url": { @@ -817,7 +817,7 @@ "_": { "postman_previewlanguage": "text" }, - "id": "390f7fee-17a5-4164-a27a-8ccbda06523c", + "id": "6a6559d7-c579-4930-bd27-09967a91b57d", "name": "The credentials are not enabled to access the service.", "originalRequest": { "url": { @@ -888,7 +888,7 @@ "_": { "postman_previewlanguage": "text" }, - "id": "5f676d28-c4cd-48db-aa2a-2cb7caaa4858", + "id": "51968c0a-7d7e-4b48-b86c-110e15dc1123", "name": "Value not found.", "originalRequest": { "url": { @@ -959,7 +959,7 @@ "_": { "postman_previewlanguage": "text" }, - "id": "7bf60230-e644-41b4-ad28-95db46e5eaf8", + "id": "5da26bcb-3725-4652-a2eb-c0a289bce918", "name": "Too many requests.", "originalRequest": { "url": { @@ -1031,7 +1031,7 @@ { "listen": "test", "script": { - "id": "445bdd7b-6f0d-4805-ae35-ecd6648ed2f1", + "id": "1791e0c9-9d10-4112-a92c-2f8352ad2e76", "type": "text/javascript", "exec": [ "// Validate status 2xx \npm.test(\"[POST]::/api/orders/pvt/document/:orderId/cancel - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", @@ -1050,7 +1050,7 @@ "event": [] }, { - "id": "71ec30c0-b135-44a7-9cdf-9474d5c728e8", + "id": "c822de40-77f1-4475-9770-72617c517f2c", "name": "Invoice", "description": { "content": "", @@ -1058,7 +1058,7 @@ }, "item": [ { - "id": "e238ce67-7ce8-44a1-9a51-0e051bab7583", + "id": "99473cf1-9f50-409b-8dc4-c520d9d609a0", "name": "Order invoice notification", "request": { "name": "Order invoice notification", @@ -1137,7 +1137,7 @@ "_": { "postman_previewlanguage": "json" }, - "id": "a98f7a9c-4f84-4e3c-b91e-b719f28a1782", + "id": "58a7771e-0690-4839-a5bf-fc7736366dbb", "name": "OK", "originalRequest": { "url": { @@ -1218,7 +1218,7 @@ "_": { "postman_previewlanguage": "text" }, - "id": "c0b57d54-fd88-4775-8e79-48ecd55930a8", + "id": "818f6dfb-2a7b-4779-9dc4-421426d25dd3", "name": "Forbidden", "originalRequest": { "url": { @@ -1289,7 +1289,7 @@ "_": { "postman_previewlanguage": "text" }, - "id": "49d6d19e-90a5-4e6b-92cd-882947177a51", + "id": "883aefb2-ccba-4353-aace-c3da197adc53", "name": "Not found", "originalRequest": { "url": { @@ -1360,7 +1360,7 @@ "_": { "postman_previewlanguage": "text" }, - "id": "bdaa68fd-da6a-4e62-8626-a795cf93714d", + "id": "7f80d909-0366-4f3f-9988-03b8954ddcca", "name": "Too many requests", "originalRequest": { "url": { @@ -1432,7 +1432,7 @@ { "listen": "test", "script": { - "id": "ee79a50f-c572-466f-ab1e-e1009b2be532", + "id": "3cd1a58b-7a35-49ce-bbee-a052ba6d11c9", "type": "text/javascript", "exec": [ "// Validate status 2xx \npm.test(\"[POST]::/api/orders/pvt/document/:orderId/invoices - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", @@ -1451,7 +1451,7 @@ "event": [] }, { - "id": "8e723c91-28f0-4c4f-9557-7801bbccf283", + "id": "0e9a36d1-8cb5-4b26-a5fd-d9d8e55db2b2", "name": "Payment", "description": { "content": "", @@ -1459,7 +1459,7 @@ }, "item": [ { - "id": "f078ecbf-5842-4dc4-a7a6-13117e624636", + "id": "c2666d74-b21d-4021-83ce-5bff03c3d854", "name": "Send payment notification", "request": { "name": "Send payment notification", @@ -1533,7 +1533,7 @@ "_": { "postman_previewlanguage": "text" }, - "id": "942232b5-4efe-4b42-bdab-5e1a844718cc", + "id": "07b7e689-7d8b-48ea-95fa-f52ce79be725", "name": "OK", "originalRequest": { "url": { @@ -1593,7 +1593,7 @@ "_": { "postman_previewlanguage": "text" }, - "id": "df86f263-f950-465d-85be-d54167379bcd", + "id": "b77e7601-73ed-4b62-9f79-d988d90e4a8c", "name": "Bad Request", "originalRequest": { "url": { @@ -1653,7 +1653,7 @@ "_": { "postman_previewlanguage": "text" }, - "id": "1f2a6e98-f808-4807-8c3c-ec8eea6ea4f0", + "id": "0838657f-08ee-4946-b616-8efeba0c867d", "name": "Forbidden", "originalRequest": { "url": { @@ -1713,7 +1713,7 @@ "_": { "postman_previewlanguage": "text" }, - "id": "0f1b492d-dfbf-45c5-90ff-dc2f5ac6def6", + "id": "17a24eb4-13ff-43ce-ab6c-b19aa1c7593c", "name": "Not Found", "originalRequest": { "url": { @@ -1773,7 +1773,7 @@ "_": { "postman_previewlanguage": "text" }, - "id": "4d094c56-fc8b-4fe5-89bb-b3cac6a70195", + "id": "bd96572e-73d9-442d-b207-741a3c0f2771", "name": "Too Many Requests", "originalRequest": { "url": { @@ -1834,7 +1834,7 @@ { "listen": "test", "script": { - "id": "edff31f3-5f4d-42c5-92da-10dae2c617e3", + "id": "b1fa2455-09bb-4de3-835b-562c7bcbf7f6", "type": "text/javascript", "exec": [ "// Validate status 2xx \npm.test(\"[POST]::/api/orders/pvt/document/:orderId/payment/:paymentId/notify-payment - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n" @@ -1889,11 +1889,11 @@ } ], "info": { - "_postman_id": "dbe9ef78-d603-4648-bf64-8641cb4243d2", + "_postman_id": "c2b691be-0c43-45e1-81e3-df340ab570bd", "name": "Orders API - PII data architecture", "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json", "description": { - "content": "VTEX stores using the [PII data architecture](https://developers.vtex.com/docs/guides/pii-data-architecture-specifications) from [Data Protection Plus](https://developers.vtex.com/docs/guides/data-protection-plus) must use this adapted version of the Orders API. Learn more about the modified behavior at [Changes in VTEX features behavior to handle PII data](https://developers.vtex.com/docs/guides/changes-in-vtex-features-behavior-to-handle-pii-data).\r\n\r\n>❗ The **Orders API - PII data architecture** is only compatible with stores using the PII data architecture from [Data Protection Plus](https://developers.vtex.com/docs/guides/data-protection-plus), which is in closed beta phase, only available in selected regions.\r\n\r\n>⚠️ This feature is part of [VTEX Shield](https://help.vtex.com/en/tutorial/vtex-shield--2CVk6H9eY2CBtHjtDI7BFh). If you are already a VTEX customer and want to adopt VTEX Shield for your business, please contact [Commercial Support](https://help.vtex.com/en/tracks/support-at-vtex--4AXsGdGHqExp9ZkiNq9eMy/3KQWGgkPOwbFTPfBxL7YwZ). Additional fees may apply. If you are not yet a customer but are interested in this solution, please complete our [contact form](https://vtex.com/us-en/contact/).\r\n\r\n## Index\r\n\r\n### Orders\r\n\r\n- `GET` [Get order](https://developers.vtex.com/docs/api-reference/orders-api-pii-version#get-/api/orders/pvt/document/-orderId-)\r\n- `POST` [List orders](https://developers.vtex.com/docs/api-reference/orders-api-pii-version#post-/api/orders/extendsearch/orders)\r\n- `POST` [Start handling order](https://developers.vtex.com/docs/api-reference/orders-api-pii-version#post-/api/orders/pvt/document/-orderId-/actions/start-handling)\r\n- `POST` [Cancel order](https://developers.vtex.com/docs/api-reference/orders-api-pii-version#post-/api/orders/pvt/document/-orderId-/cancel)\r\n\r\n### Invoice\r\n\r\n- `POST` [Order invoice notification](https://developers.vtex.com/docs/api-reference/orders-api-pii-version#post-/api/orders/pvt/document/-orderId-/invoices)\r\n\r\n### Payment\r\n\r\n- `POST` [Send payment notification](https://developers.vtex.com/docs/api-reference/orders-api-pii-version#post-/api/orders/pvt/document/-orderId-/payment/-paymentId-/notify-payment)", + "content": "VTEX stores using the [PII data architecture](https://developers.vtex.com/docs/guides/pii-data-architecture-specifications) from [Data Protection Plus](https://developers.vtex.com/docs/guides/data-protection-plus) must use this adapted version of the Orders API. Learn more about the modified behavior at [Changes in VTEX features behavior to handle PII data](https://developers.vtex.com/docs/guides/changes-in-vtex-features-behavior-to-handle-pii-data).\r\n\r\n>⚠️ The **Orders API - PII data architecture** is only compatible with stores using the PII data architecture from [Data Protection Plus](https://developers.vtex.com/docs/guides/data-protection-plus), which is in closed beta phase, only available in selected regions.\r\n>\r\n> This feature is part of [VTEX Shield](https://help.vtex.com/en/tutorial/vtex-shield--2CVk6H9eY2CBtHjtDI7BFh). If you are already a VTEX customer and want to adopt VTEX Shield for your business, please contact [Commercial Support](https://help.vtex.com/en/tracks/support-at-vtex--4AXsGdGHqExp9ZkiNq9eMy/3KQWGgkPOwbFTPfBxL7YwZ). Additional fees may apply. If you are not yet a customer but are interested in this solution, please complete our [contact form](https://vtex.com/us-en/contact/).\r\n\r\n## Index\r\n\r\n### Orders\r\n\r\n- `GET` [Get order](https://developers.vtex.com/docs/api-reference/orders-api-pii-version#get-/api/orders/pvt/document/-orderId-)\r\n- `POST` [List orders](https://developers.vtex.com/docs/api-reference/orders-api-pii-version#post-/api/orders/extendsearch/orders)\r\n- `POST` [Start handling order](https://developers.vtex.com/docs/api-reference/orders-api-pii-version#post-/api/orders/pvt/document/-orderId-/actions/start-handling)\r\n- `POST` [Cancel order](https://developers.vtex.com/docs/api-reference/orders-api-pii-version#post-/api/orders/pvt/document/-orderId-/cancel)\r\n\r\n### Invoice\r\n\r\n- `POST` [Order invoice notification](https://developers.vtex.com/docs/api-reference/orders-api-pii-version#post-/api/orders/pvt/document/-orderId-/invoices)\r\n\r\n### Payment\r\n\r\n- `POST` [Send payment notification](https://developers.vtex.com/docs/api-reference/orders-api-pii-version#post-/api/orders/pvt/document/-orderId-/payment/-paymentId-/notify-payment)", "type": "text/plain" } } diff --git a/PostmanCollections/VTEX - Payment Provider Protocol.json b/PostmanCollections/VTEX - Payment Provider Protocol.json index 2b56b7627..e127e0c05 100644 --- a/PostmanCollections/VTEX - Payment Provider Protocol.json +++ b/PostmanCollections/VTEX - Payment Provider Protocol.json @@ -1,10 +1,10 @@ { "_": { - "postman_id": "5374ce81-2181-44c2-8edf-038dd509f7a1" + "postman_id": "1322932f-66f1-4c40-8ae4-7321afd1774b" }, "item": [ { - "id": "63e01357-d2c5-4bf9-ad42-cfb7c9717c1a", + "id": "bed5e2a0-101e-4f89-970c-7d7525b49fa8", "name": "Payment Flow", "description": { "content": "", @@ -12,7 +12,7 @@ }, "item": [ { - "id": "dd3a3838-8e04-4b4d-b712-fb9b61b77300", + "id": "ec0419aa-1f4c-48a2-b823-57f76c2a90c5", "name": "List Payment Provider Manifest", "request": { "name": "List Payment Provider Manifest", @@ -28,17 +28,7 @@ "{{baseUrl}}" ], "query": [], - "variable": [ - { - "description": { - "content": "Payment provider endpoint URL.", - "type": "text/plain" - }, - "type": "any", - "value": "{{providerApiEndpoint}}", - "key": "providerApiEndpoint" - } - ] + "variable": [] }, "header": [ { @@ -58,16 +48,21 @@ }, "key": "Accept", "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" } ], - "method": "GET" + "method": "GET", + "body": {} }, "response": [ { "_": { "postman_previewlanguage": "json" }, - "id": "afac73f4-ac1d-4e89-81ab-c0b5d5f824c8", + "id": "f68c09c3-3142-4c09-af8a-074095632722", "name": "OK", "originalRequest": { "url": { @@ -78,17 +73,7 @@ "{{baseUrl}}" ], "query": [], - "variable": [ - { - "description": { - "content": "Payment provider endpoint URL.", - "type": "text/plain" - }, - "type": "any", - "value": "{{providerApiEndpoint}}", - "key": "providerApiEndpoint" - } - ] + "variable": [] }, "header": [ { @@ -133,7 +118,7 @@ { "listen": "test", "script": { - "id": "4a8c1bee-b118-4964-98ab-09edb82e995b", + "id": "2447bc62-97e2-4f47-95f4-740daf8b696e", "type": "text/javascript", "exec": [ "// Validate status 2xx \npm.test(\"[GET]::/manifest - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", @@ -149,7 +134,7 @@ } }, { - "id": "917a84fe-3b20-4874-849a-6999c7daa275", + "id": "5bf4c400-7025-42e4-a9c7-d2cf66b86793", "name": "Create payment", "request": { "name": "Create payment", @@ -165,17 +150,7 @@ "{{baseUrl}}" ], "query": [], - "variable": [ - { - "description": { - "content": "Payment provider endpoint URL.", - "type": "text/plain" - }, - "type": "any", - "value": "{{providerApiEndpoint}}", - "key": "providerApiEndpoint" - } - ] + "variable": [] }, "header": [ { @@ -213,6 +188,14 @@ }, "key": "Accept", "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" } ], "method": "POST", @@ -221,6 +204,7 @@ "raw": "{\n \"reference\": \"618272\",\n \"orderId\": \"1072430428324\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"2F023FD5A72A49D48A8633252B7CCBD6\",\n \"paymentId\": \"01693EB95BE443AC85874E395CD91565\",\n \"paymentMethod\": \"Diners\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"card\": {\n \"holder\": \"John Doe\",\n \"number\": \"364901****2661\",\n \"csc\": \"***\",\n \"expiration\": {\n \"month\": \"12\",\n \"year\": \"2020\"\n },\n \"document\": \"39295416023\",\n \"token\": null\n },\n \"value\": 31.9,\n \"referenceValue\": 31.9,\n \"currency\": \"BRL\",\n \"installments\": 1,\n \"installmentsInterestRate\": 0,\n \"installmentsValue\": 31.9,\n \"deviceFingerprint\": \"75076388\",\n \"ipAddress\": \"187.105.111.65\",\n \"miniCart\": {\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"cpf\",\n \"corporateName\": null,\n \"tradeName\": null,\n \"corporateDocument\": null,\n \"isCorporate\": false,\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521999999999\",\n \"createdDate\": \"2020-02-18T18:17:45\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"8\",\n \"name\": \"Tenis Preto I\",\n \"price\": 30.9,\n \"quantity\": 1,\n \"discount\": 0,\n \"deliveryType\": \"Normal\",\n \"categoryId\": \"5\",\n \"sellerId\": \"1\"\n }\n ],\n \"shippingValue\": 1,\n \"taxValue\": 0\n },\n \"url\": \"https://admin.mystore.example.com/orders?q=1072430428324\",\n \"callbackUrl\": \"https://api.mystore.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/1072430428324\",\n \"inboundRequestsUrl\": \"https://api.mystore.example.com/checkout/order/1072430428324/inbound-request/:action\",\n \"recipients\": [\n {\n \"id\": \"mymarketplace\",\n \"name\": \"My Marketplace QA\",\n \"documentType\": \"CNPJ\",\n \"document\": \"99999999999999\",\n \"role\": \"marketplace\",\n \"chargeProcessingFee\": true,\n \"chargebackLiable\": true,\n \"amount\": 31.9\n }\n ],\n \"merchantSettings\": [\n {\n \"name\": \"field1\",\n \"value\": \"value1\"\n },\n {\n \"name\": \"field2\",\n \"value\": \"value2\"\n }\n ],\n \"connectorMetadata\": [\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n }\n ]\n}", "options": { "raw": { + "headerFamily": "json", "language": "json" } } @@ -251,8 +235,8 @@ "_": { "postman_previewlanguage": "json" }, - "id": "eb30ce85-5f35-40ad-994e-bb8058c3d59b", - "name": "OK", + "id": "65e59c6a-7b05-47e3-bfdd-a004f5e35a0b", + "name": "Success", "originalRequest": { "url": { "path": [ @@ -262,19 +246,53 @@ "{{baseUrl}}" ], "query": [], - "variable": [ - { - "description": { - "content": "Payment provider endpoint URL.", - "type": "text/plain" - }, - "type": "any", - "value": "{{providerApiEndpoint}}", - "key": "providerApiEndpoint" - } - ] + "variable": [] }, "header": [ + { + "disabled": false, + "description": { + "content": "(Required) Unique identifier created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json.", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppKey", + "value": "{{X-PROVIDER-API-AppKey}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Unique token created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppToken", + "value": "{{X-PROVIDER-API-AppToken}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Type of the content being sent.", + "type": "text/plain" + }, + "key": "Content-Type", + "value": "application/json" + }, + { + "disabled": false, + "description": { + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "type": "text/plain" + }, + "key": "Accept", + "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" + }, { "description": { "content": "Added as a part of security scheme: apikey", @@ -282,7 +300,49 @@ }, "key": "X-VTEX-API-AppKey", "value": "" - }, + } + ], + "method": "POST", + "body": { + "mode": "raw", + "raw": "{\n \"reference\": \"618272\",\n \"orderId\": \"1072430428324\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"2F023FD5A72A49D48A8633252B7CCBD6\",\n \"paymentId\": \"01693EB95BE443AC85874E395CD91565\",\n \"paymentMethod\": \"Diners\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"card\": {\n \"holder\": \"John Doe\",\n \"number\": \"364901****2661\",\n \"csc\": \"***\",\n \"expiration\": {\n \"month\": \"12\",\n \"year\": \"2020\"\n },\n \"document\": \"39295416023\",\n \"token\": null\n },\n \"value\": 31.9,\n \"referenceValue\": 31.9,\n \"currency\": \"BRL\",\n \"installments\": 1,\n \"installmentsInterestRate\": 0,\n \"installmentsValue\": 31.9,\n \"deviceFingerprint\": \"75076388\",\n \"ipAddress\": \"187.105.111.65\",\n \"miniCart\": {\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"cpf\",\n \"corporateName\": null,\n \"tradeName\": null,\n \"corporateDocument\": null,\n \"isCorporate\": false,\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521999999999\",\n \"createdDate\": \"2020-02-18T18:17:45\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"8\",\n \"name\": \"Tenis Preto I\",\n \"price\": 30.9,\n \"quantity\": 1,\n \"discount\": 0,\n \"deliveryType\": \"Normal\",\n \"categoryId\": \"5\",\n \"sellerId\": \"1\"\n }\n ],\n \"shippingValue\": 1,\n \"taxValue\": 0\n },\n \"url\": \"https://admin.mystore.example.com/orders?q=1072430428324\",\n \"callbackUrl\": \"https://api.mystore.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/1072430428324\",\n \"inboundRequestsUrl\": \"https://api.mystore.example.com/checkout/order/1072430428324/inbound-request/:action\",\n \"recipients\": [\n {\n \"id\": \"mymarketplace\",\n \"name\": \"My Marketplace QA\",\n \"documentType\": \"CNPJ\",\n \"document\": \"99999999999999\",\n \"role\": \"marketplace\",\n \"chargeProcessingFee\": true,\n \"chargebackLiable\": true,\n \"amount\": 31.9\n }\n ],\n \"merchantSettings\": [\n {\n \"name\": \"field1\",\n \"value\": \"value1\"\n },\n {\n \"name\": \"field2\",\n \"value\": \"value2\"\n }\n ],\n \"connectorMetadata\": [\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n }\n ]\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } + }, + "status": "OK", + "code": 200, + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"status\": \"approved\",\n \"authorizationId\": \"AUT123567\",\n \"nsu\": \"NSU987432\",\n \"tid\": \"TID1578324421\",\n \"acquirer\": \"FooBarPayments\",\n \"delayToAutoSettle\": 432000,\n \"delayToAutoSettleAfterAntifraud\": 120,\n \"delayToCancel\": 600,\n \"connectorMetadata\": [\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n }\n ]\n}", + "cookie": [] + }, + { + "_": { + "postman_previewlanguage": "json" + }, + "id": "8d5bc2db-e40d-4b53-b265-cf0889417f92", + "name": "Success - PIX", + "originalRequest": { + "url": { + "path": [ + "payments" + ], + "host": [ + "{{baseUrl}}" + ], + "query": [], + "variable": [] + }, + "header": [ { "disabled": false, "description": { @@ -319,17 +379,30 @@ "key": "Accept", "value": "application/json" }, + { + "key": "Content-Type", + "value": "application/json" + }, { "key": "Accept", "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" } ], "method": "POST", "body": { "mode": "raw", - "raw": "{\n \"reference\": \"618272\",\n \"orderId\": \"1072430428324\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"2F023FD5A72A49D48A8633252B7CCBD6\",\n \"paymentId\": \"01693EB95BE443AC85874E395CD91565\",\n \"paymentMethod\": \"Diners\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"card\": {\n \"holder\": \"John Doe\",\n \"number\": \"364901****2661\",\n \"csc\": \"***\",\n \"expiration\": {\n \"month\": \"12\",\n \"year\": \"2020\"\n },\n \"document\": \"39295416023\",\n \"token\": null\n },\n \"value\": 31.9,\n \"referenceValue\": 31.9,\n \"currency\": \"BRL\",\n \"installments\": 1,\n \"installmentsInterestRate\": 0,\n \"installmentsValue\": 31.9,\n \"deviceFingerprint\": \"75076388\",\n \"ipAddress\": \"187.105.111.65\",\n \"miniCart\": {\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"cpf\",\n \"corporateName\": null,\n \"tradeName\": null,\n \"corporateDocument\": null,\n \"isCorporate\": false,\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521999999999\",\n \"createdDate\": \"2020-02-18T18:17:45\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"8\",\n \"name\": \"Tenis Preto I\",\n \"price\": 30.9,\n \"quantity\": 1,\n \"discount\": 0,\n \"deliveryType\": \"Normal\",\n \"categoryId\": \"5\",\n \"sellerId\": \"1\"\n }\n ],\n \"shippingValue\": 1,\n \"taxValue\": 0\n },\n \"url\": \"https://admin.mystore.example.com/orders?q=1072430428324\",\n \"callbackUrl\": \"https://api.mystore.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/1072430428324\",\n \"inboundRequestsUrl\": \"https://api.mystore.example.com/checkout/order/1072430428324/inbound-request/:action\",\n \"recipients\": [\n {\n \"id\": \"mymarketplace\",\n \"name\": \"My Marketplace QA\",\n \"documentType\": \"CNPJ\",\n \"document\": \"99999999999999\",\n \"role\": \"marketplace\",\n \"chargeProcessingFee\": true,\n \"chargebackLiable\": true,\n \"amount\": 31.9\n }\n ],\n \"merchantSettings\": [\n {\n \"name\": \"field1\",\n \"value\": \"value1\"\n },\n {\n \"name\": \"field2\",\n \"value\": \"value2\"\n }\n ],\n \"connectorMetadata\": [\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n }\n ]\n}", + "raw": "{\n \"reference\": \"32478982\",\n \"orderId\": \"v967373115140abc\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"paymentMethod\": \"Pix\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"value\": 4307.23,\n \"referenceValue\": 4307.23,\n \"currency\": \"BRL\",\n \"installments\": 1,\n \"deviceFingerprint\": \"15ace369587ha\",\n \"card\": {\n \"holder\": null,\n \"number\": null,\n \"csc\": null,\n \"expiration\": {\n \"month\": null,\n \"year\": null\n }\n },\n \"miniCart\": {\n \"shippingValue\": 11.44,\n \"taxValue\": 10.01,\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"cpf\",\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521999999999\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"132981\",\n \"name\": \"My First Product\",\n \"price\": 2134.9,\n \"quantity\": 2,\n \"discount\": 5\n },\n {\n \"id\": \"123242\",\n \"name\": \"My Second Product\",\n \"price\": 21.98,\n \"quantity\": 1,\n \"discount\": 1\n }\n ]\n },\n \"url\": \"https://admin.mystore.example.com/orders/v32478982\",\n \"callbackUrl\": \"https://api.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/v32478982\"\n}", "options": { "raw": { + "headerFamily": "json", "language": "json" } } @@ -343,15 +416,15 @@ "value": "application/json" } ], - "body": "{\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"status\": \"approved\",\n \"authorizationId\": \"AUT123567\",\n \"nsu\": \"NSU987432\",\n \"tid\": \"TID1578324421\",\n \"acquirer\": \"FooBarPayments\",\n \"delayToAutoSettle\": 432000,\n \"delayToAutoSettleAfterAntifraud\": 120,\n \"delayToCancel\": 600,\n \"connectorMetadata\": [\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n }\n ]\n}", + "body": "{\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"status\": \"undefined\",\n \"tid\": \"TID1578324421\",\n \"authorizationId\": null,\n \"nsu\": null,\n \"code\": \"APP123\",\n \"paymentAppData\": {\n \"payload\": \"{\\\"code\\\":\\\"https://bacen.pix/pix/code\\\",\\\"qrCodeBase64Image\\\":\\\"iVBORw0KGgoAAAANSUhEUgAAAAIAAAACCAYAAABytg0kAAABQGlDQ1BJQ0MgUHJvZmlsZQAAKJFjYGDiSSwoyGFhYGDIzSspCnJ3UoiIjFJgf8LAxSDMwMkgwiCZmFxc4BgQ4ANUwgCjUcG3awyMIPqyLsgspwWXFu+Xeyundb6w0WL33C5M9SiAKyW1OBlI/wHihOSCohIGBsYYIFu5vKQAxG4AskWKgI4CsqeA2OkQ9goQOwnC3gNWExLkDGRfALIFkjMSU4DsB0C2ThKSeDoSG2ovCLAZGZkbhBNwKKmgJLWiBEQ75xdUFmWmZ5QoOAJDJ1XBMy9ZT0fByMDIgIEBFNYQ1Z9vgMOQUYwDIZapzMBgmQEUfIQQSxNmYNiZzsDAU4UQU5/PwMBrxMBw5GJBYlEi3AGM31iK04yNIGzu7QwMrNP+//8M9Ca7JgPD3+v////e/v//32UMDMy3GBgOfAMA4+RdqZ9YRkcAAABWZVhJZk1NACoAAAAIAAGHaQAEAAAAAQAAABoAAAAAAAOShgAHAAAAEgAAAESgAgAEAAAAAQAAAAKgAwAEAAAAAQAAAAIAAAAAQVNDSUkAAABTY3JlZW5zaG900Fpo3gAAAdJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDUuNC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6ZXhpZj0iaHR0cDovL25zLmFkb2JlLmNvbS9leGlmLzEuMC8iPgogICAgICAgICA8ZXhpZjpQaXhlbFhEaW1lbnNpb24+MjwvZXhpZjpQaXhlbFhEaW1lbnNpb24+CiAgICAgICAgIDxleGlmOlVzZXJDb21tZW50PlNjcmVlbnNob3Q8L2V4aWY6VXNlckNvbW1lbnQ+CiAgICAgICAgIDxleGlmOlBpeGVsWURpbWVuc2lvbj4yPC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+Cl89Cn4AAAASSURBVAgdY/wPBAxAwAQiQAAAPfgEAIAu9DkAAAAASUVORK5CYII=\\\"}\"\n },\n \"message\": \"The customer needs to finish the payment flow\",\n \"delayToAutoSettle\": 604800,\n \"delayToAutoSettleAfterAntifraud\": 120,\n \"delayToCancel\": 300\n}", "cookie": [] }, { "_": { "postman_previewlanguage": "json" }, - "id": "9adf7391-1dbd-4a05-93ab-7e11335cf2b2", - "name": "Bad Request", + "id": "51ee8889-86c6-4f2b-b520-e2ed78dc4fe6", + "name": "Success - Credit Card", "originalRequest": { "url": { "path": [ @@ -361,19 +434,53 @@ "{{baseUrl}}" ], "query": [], - "variable": [ - { - "description": { - "content": "Payment provider endpoint URL.", - "type": "text/plain" - }, - "type": "any", - "value": "{{providerApiEndpoint}}", - "key": "providerApiEndpoint" - } - ] + "variable": [] }, "header": [ + { + "disabled": false, + "description": { + "content": "(Required) Unique identifier created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json.", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppKey", + "value": "{{X-PROVIDER-API-AppKey}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Unique token created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppToken", + "value": "{{X-PROVIDER-API-AppToken}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Type of the content being sent.", + "type": "text/plain" + }, + "key": "Content-Type", + "value": "application/json" + }, + { + "disabled": false, + "description": { + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "type": "text/plain" + }, + "key": "Accept", + "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" + }, { "description": { "content": "Added as a part of security scheme: apikey", @@ -381,7 +488,49 @@ }, "key": "X-VTEX-API-AppKey", "value": "" - }, + } + ], + "method": "POST", + "body": { + "mode": "raw", + "raw": "{\n \"reference\": \"32478982\",\n \"orderId\": \"v967373115140abc\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"paymentMethod\": \"Visa\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"value\": 4307.23,\n \"referenceValue\": 4000,\n \"currency\": \"BRL\",\n \"installments\": 3,\n \"deviceFingerprint\": \"12ade389087fe\",\n \"card\": {\n \"holder\": \"John Doe\",\n \"number\": \"4682185088924788\",\n \"csc\": \"021\",\n \"expiration\": {\n \"month\": \"06\",\n \"year\": \"2029\"\n }\n },\n \"miniCart\": {\n \"shippingValue\": 11.44,\n \"taxValue\": 10.01,\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"CPF\",\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521987654321\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"132981\",\n \"name\": \"My First Product\",\n \"price\": 2134.9,\n \"quantity\": 2,\n \"discount\": 5\n },\n {\n \"id\": \"123242\",\n \"name\": \"My Second Product\",\n \"price\": 21.98,\n \"quantity\": 1,\n \"discount\": 1\n }\n ]\n },\n \"url\": \"https://admin.mystore.example.com/orders/v32478982\",\n \"callbackUrl\": \"https://api.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/v32478982\"\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } + }, + "status": "OK", + "code": 200, + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"paymentId\": \"01693EB95BE443AC85874E395CD91565\",\n \"status\": \"approved\",\n \"authorizationId\": \"AUT-09DC5E8F03\",\n \"nsu\": \"NSU-107521E866\",\n \"tid\": \"TID-7B58BE1A08\",\n \"acquirer\": \"TestPay\",\n \"code\": \"2000\",\n \"message\": null,\n \"delayToAutoSettle\": 21600,\n \"delayToAutoSettleAfterAntifraud\": 1800,\n \"delayToCancel\": 21600,\n \"connectorMetadata\": [\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n }\n ]\n}", + "cookie": [] + }, + { + "_": { + "postman_previewlanguage": "json" + }, + "id": "e9da6a46-30b9-4ad9-a8cf-76979fdf0d07", + "name": "Success - Bank invoice", + "originalRequest": { + "url": { + "path": [ + "payments" + ], + "host": [ + "{{baseUrl}}" + ], + "query": [], + "variable": [] + }, + "header": [ { "disabled": false, "description": { @@ -418,39 +567,2684 @@ "key": "Accept", "value": "application/json" }, + { + "key": "Content-Type", + "value": "application/json" + }, { "key": "Accept", "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" + } + ], + "method": "POST", + "body": { + "mode": "raw", + "raw": "{\n \"reference\": \"32478982\",\n \"orderId\": \"v967373115140abc\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"paymentMethod\": \"BankInvoice\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"value\": 4307.23,\n \"referenceValue\": 4307.23,\n \"currency\": \"BRL\",\n \"installments\": 1,\n \"deviceFingerprint\": \"12ade389087fe\",\n \"card\": {\n \"holder\": null,\n \"number\": null,\n \"csc\": null,\n \"expiration\": {\n \"month\": null,\n \"year\": null\n }\n },\n \"miniCart\": {\n \"shippingValue\": 11.44,\n \"taxValue\": 10.01,\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"CPF\",\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521987654321\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"132981\",\n \"name\": \"My First Product\",\n \"price\": 2134.9,\n \"quantity\": 2,\n \"discount\": 5\n },\n {\n \"id\": \"123242\",\n \"name\": \"My Second Product\",\n \"price\": 21.98,\n \"quantity\": 1,\n \"discount\": 1\n }\n ]\n },\n \"url\": \"https://admin.mystore.example.com/orders/v32478982\",\n \"callbackUrl\": \"https://api.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/v32478982\"\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } + }, + "status": "OK", + "code": 200, + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"paymentId\": \"01693EB95BE443AC85874E395CD91565\",\n \"status\": \"undefined\",\n \"authorizationId\": \"AUT-2E7CBF7290-ASYNC\",\n \"paymentUrl\": \"https://example.org/boleto/gatewayqa/2F023FD5A72A49D48A8633252B7CCBD6/01693EB95BE443AC85874E395CD91565\",\n \"identificationNumber\": \"23790504004199031316957008109209378300000019900\",\n \"identificationNumberFormatted\": \"23790.50400 41990.313169 57008.109209 3 78300000019900\",\n \"barCodeImageType\": \"i25\",\n \"barCodeImageNumber\": \"23793783000000199000504041990313165700810920\",\n \"nsu\": \"NSU-60F328ACD8-ASYNC\",\n \"tid\": \"TID-F3FB9B3FDB-ASYNC\",\n \"acquirer\": \"TestPay\",\n \"code\": \"2000-ASYNC\",\n \"message\": null,\n \"delayToAutoSettle\": 21600,\n \"delayToAutoSettleAfterAntifraud\": 1800,\n \"delayToCancel\": 21600\n}", + "cookie": [] + }, + { + "_": { + "postman_previewlanguage": "json" + }, + "id": "e78f1dec-d81e-4645-a1eb-23ef91758036", + "name": "Success - Payment App", + "originalRequest": { + "url": { + "path": [ + "payments" + ], + "host": [ + "{{baseUrl}}" + ], + "query": [], + "variable": [] + }, + "header": [ + { + "disabled": false, + "description": { + "content": "(Required) Unique identifier created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json.", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppKey", + "value": "{{X-PROVIDER-API-AppKey}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Unique token created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppToken", + "value": "{{X-PROVIDER-API-AppToken}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Type of the content being sent.", + "type": "text/plain" + }, + "key": "Content-Type", + "value": "application/json" + }, + { + "disabled": false, + "description": { + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "type": "text/plain" + }, + "key": "Accept", + "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" + } + ], + "method": "POST", + "body": { + "mode": "raw", + "raw": "{\n \"reference\": \"32478982\",\n \"orderId\": \"v967373115140abc\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"paymentMethod\": \"Visa\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"value\": 4307.23,\n \"referenceValue\": 4000,\n \"currency\": \"BRL\",\n \"installments\": 3,\n \"deviceFingerprint\": \"12ade389087fe\",\n \"card\": {\n \"holder\": \"John Doe\",\n \"number\": \"4682185088924788\",\n \"csc\": \"021\",\n \"expiration\": {\n \"month\": \"06\",\n \"year\": \"2029\"\n }\n },\n \"miniCart\": {\n \"shippingValue\": 11.44,\n \"taxValue\": 10.01,\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"CPF\",\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521987654321\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"132981\",\n \"name\": \"My First Product\",\n \"price\": 2134.9,\n \"quantity\": 2,\n \"discount\": 5\n },\n {\n \"id\": \"123242\",\n \"name\": \"My Second Product\",\n \"price\": 21.98,\n \"quantity\": 1,\n \"discount\": 1\n }\n ]\n },\n \"url\": \"https://admin.mystore.example.com/orders/v32478982\",\n \"callbackUrl\": \"https://api.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/v32478982\"\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } + }, + "status": "OK", + "code": 200, + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"paymentId\": \"01693EB95BE443AC85874E395CD91565\",\n \"status\": \"undefined\",\n \"authorizationId\": \"AUT-6929AD8429\",\n \"paymentAppData\": {\n \"appName\": \"vtex.payment\",\n \"payload\": \"{\\\"approvePaymentUrl\\\":\\\"https://api.mystore.example.com/payments/F5C1A4E20D3B4E07B7E871F5B5BC9F91/callback-trigger/approved?url=https://api.mystore.example.com/transactions/D3AA1FC8372E430E8236649DB5EBD08E/payments/F5C1A4E20D3B4E07B7E871F5B5BC9F91/notification\\\",\\\"denyPaymentUrl\\\":\\\"https://api.mystore.example.com/payments/F5C1A4E20D3B4E07B7E871F5B5BC9F91/callback-trigger/denied?url=https://api.mystore.example.com/transactions/D3AA1FC8372E430E8236649DB5EBD08E/payments/F5C1A4E20D3B4E07B7E871F5B5BC9F91/notification\\\",\\\"orderId\\\":\\\"1072650953886\\\",\\\"transactionId\\\":\\\"D3AA1FC8372E430E8236649DB5EBD08E\\\",\\\"paymentId\\\":\\\"F5C1A4E20D3B4E07B7E871F5B5BC9F91\\\",\\\"timestamp\\\":\\\"2020-10-29 17:15:59Z\\\"}\"\n },\n \"nsu\": \"NSU-227AFD0BD2\",\n \"tid\": \"TID-DBE4BFFB19\",\n \"acquirer\": \"TestPay\",\n \"code\": \"2001\",\n \"message\": null,\n \"delayToAutoSettle\": 21600,\n \"delayToAutoSettleAfterAntifraud\": 1800,\n \"delayToCancel\": 21600\n}", + "cookie": [] + }, + { + "_": { + "postman_previewlanguage": "json" + }, + "id": "9fb95931-3700-44e9-bff2-bc8832679ce3", + "name": "Success - Redirect", + "originalRequest": { + "url": { + "path": [ + "payments" + ], + "host": [ + "{{baseUrl}}" + ], + "query": [], + "variable": [] + }, + "header": [ + { + "disabled": false, + "description": { + "content": "(Required) Unique identifier created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json.", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppKey", + "value": "{{X-PROVIDER-API-AppKey}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Unique token created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppToken", + "value": "{{X-PROVIDER-API-AppToken}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Type of the content being sent.", + "type": "text/plain" + }, + "key": "Content-Type", + "value": "application/json" + }, + { + "disabled": false, + "description": { + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "type": "text/plain" + }, + "key": "Accept", + "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" + } + ], + "method": "POST", + "body": { + "mode": "raw", + "raw": "{\n \"reference\": \"618272\",\n \"orderId\": \"1072430428324\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"2F023FD5A72A49D48A8633252B7CCBD6\",\n \"paymentId\": \"01693EB95BE443AC85874E395CD91565\",\n \"paymentMethod\": \"BankInvoice\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"card\": {\n \"holder\": \"null\",\n \"number\": \"null\",\n \"csc\": \"null\",\n \"expiration\": {\n \"month\": \"null\",\n \"year\": \"null\"\n }\n },\n \"document\": null,\n \"token\": null,\n \"value\": 31.9,\n \"referenceValue\": 31.9,\n \"currency\": \"BRL\",\n \"installments\": 1,\n \"installmentsInterestRate\": 0,\n \"installmentsValue\": 31.9,\n \"deviceFingerprint\": \"98073964\",\n \"ipAddress\": \"187.105.111.65\",\n \"miniCart\": {\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"cpf\",\n \"corporateName\": null,\n \"tradeName\": null,\n \"corporateDocument\": null,\n \"isCorporate\": false,\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521999999999\",\n \"createdDate\": \"2020-02-18T18:17:45\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"8\",\n \"name\": \"Tenis Preto I\",\n \"price\": 30.9,\n \"quantity\": 1,\n \"discount\": 0,\n \"deliveryType\": \"Normal\",\n \"categoryId\": \"5\",\n \"sellerId\": \"1\"\n }\n ],\n \"shippingValue\": 11.44,\n \"taxValue\": 10.01\n },\n \"url\": \"https://admin.mystore.example.com/orders?q=1072430428324\",\n \"callbackUrl\": \"https://api.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/1072430428324\",\n \"inboundRequestsUrl\": \"https://api.mystore.example.com/checkout/order/1072430428324/inbound-request/:action\",\n \"recipients\": [\n {\n \"id\": \"mymarketplace\",\n \"name\": \"My Marketplace QA\",\n \"documentType\": \"CNPJ\",\n \"document\": \"99999999999999\",\n \"role\": \"marketplace\",\n \"chargeProcessingFee\": true,\n \"chargebackLiable\": true,\n \"amount\": 31.9\n }\n ],\n \"merchantSettings\": [\n {\n \"name\": \"field1\",\n \"value\": \"value1\"\n },\n {\n \"name\": \"field2\",\n \"value\": \"value2\"\n }\n ]\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } + }, + "status": "OK", + "code": 200, + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"paymentId\": \"7ee64e51-a0d3-4405-874c-d7497ab84572\",\n \"status\": \"undefined\",\n \"tid\": \"214c699cb408ce6a7110\",\n \"paymentUrl\": \"http://php-connector.herokuapp.com/installments.php?paymentId=7ee64e51-a0d3-4405-874c-d7497ab84572\"\n}", + "cookie": [] + }, + { + "_": { + "postman_previewlanguage": "json" + }, + "id": "29510e65-6bdb-4e03-bf5e-99c71feef72e", + "name": "Success - Callback", + "originalRequest": { + "url": { + "path": [ + "payments" + ], + "host": [ + "{{baseUrl}}" + ], + "query": [], + "variable": [] + }, + "header": [ + { + "disabled": false, + "description": { + "content": "(Required) Unique identifier created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json.", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppKey", + "value": "{{X-PROVIDER-API-AppKey}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Unique token created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppToken", + "value": "{{X-PROVIDER-API-AppToken}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Type of the content being sent.", + "type": "text/plain" + }, + "key": "Content-Type", + "value": "application/json" + }, + { + "disabled": false, + "description": { + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "type": "text/plain" + }, + "key": "Accept", + "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" + } + ], + "method": "POST", + "body": { + "mode": "raw", + "raw": "{\n \"reference\": \"32478982\",\n \"orderId\": \"v967373115140abc\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"paymentMethod\": \"CustomPay\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"value\": 4307.23,\n \"referenceValue\": 4307.23,\n \"currency\": \"BRL\",\n \"installments\": 1,\n \"deviceFingerprint\": \"12ade389087fe\",\n \"card\": {\n \"holder\": null,\n \"number\": null,\n \"csc\": null,\n \"expiration\": {\n \"month\": null,\n \"year\": null\n }\n },\n \"miniCart\": {\n \"shippingValue\": 11.44,\n \"taxValue\": 10.01,\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"CPF\",\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521987654321\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"132981\",\n \"name\": \"My First Product\",\n \"price\": 2134.9,\n \"quantity\": 2,\n \"discount\": 5\n },\n {\n \"id\": \"123242\",\n \"name\": \"My Second Product\",\n \"price\": 21.98,\n \"quantity\": 1,\n \"discount\": 1\n }\n ]\n },\n \"url\": \"https://admin.mystore.example.com/orders/v32478982\",\n \"callbackUrl\": \"https://api.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/v32478982\",\n \"inboundRequestsUrl\": \"https://mystore.api.example.com/some-path/inbound-request/:action\"\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } + }, + "status": "OK", + "code": 200, + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"paymentId\": \"7ee64e51-a0d3-4405-874c-d7497ab84572\",\n \"status\": \"approved\",\n \"authorizationId\": \"3baafb4097d6c8ad3883\",\n \"paymentUrl\": null,\n \"nsu\": \"214c699cb408ce6a7110\",\n \"tid\": \"214c699cb408ce6a7110\",\n \"acquirer\": null,\n \"code\": null,\n \"message\": \"Payment with custom installments approved\",\n \"delayToAutoSettle\": 21600,\n \"delayToAutoSettleAfterAntifraud\": 1800,\n \"delayToCancel\": 21600\n}", + "cookie": [] + }, + { + "_": { + "postman_previewlanguage": "json" + }, + "id": "c878742e-55c0-43a0-8ea2-6a8b558f9382", + "name": "Redirect Success Undefined", + "originalRequest": { + "url": { + "path": [ + "payments" + ], + "host": [ + "{{baseUrl}}" + ], + "query": [], + "variable": [] + }, + "header": [ + { + "disabled": false, + "description": { + "content": "(Required) Unique identifier created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json.", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppKey", + "value": "{{X-PROVIDER-API-AppKey}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Unique token created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppToken", + "value": "{{X-PROVIDER-API-AppToken}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Type of the content being sent.", + "type": "text/plain" + }, + "key": "Content-Type", + "value": "application/json" + }, + { + "disabled": false, + "description": { + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "type": "text/plain" + }, + "key": "Accept", + "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" + } + ], + "method": "POST", + "body": { + "mode": "raw", + "raw": "{\n \"reference\": \"32478982\",\n \"orderId\": \"v967373115140abc\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"paymentMethod\": \"FakePay\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"value\": 4307.23,\n \"referenceValue\": 4307.23,\n \"currency\": \"BRL\",\n \"installments\": 1,\n \"deviceFingerprint\": \"12ade389087fe\",\n \"card\": {\n \"holder\": null,\n \"number\": null,\n \"csc\": null,\n \"expiration\": {\n \"month\": null,\n \"year\": null\n }\n },\n \"miniCart\": {\n \"shippingValue\": 11.44,\n \"taxValue\": 10.01,\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"CPF\",\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521987654321\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"132981\",\n \"name\": \"My First Product\",\n \"price\": 2134.9,\n \"quantity\": 2,\n \"discount\": 5\n },\n {\n \"id\": \"123242\",\n \"name\": \"My Second Product\",\n \"price\": 21.98,\n \"quantity\": 1,\n \"discount\": 1\n }\n ]\n },\n \"url\": \"https://admin.mystore.example.com/orders/v32478982\",\n \"callbackUrl\": \"https://api.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/v32478982\"\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } + }, + "status": "OK", + "code": 200, + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"status\": \"approved\",\n \"authorizationId\": \"AUT123567\",\n \"nsu\": \"NSU987432\",\n \"tid\": \"TID1578324421\",\n \"acquirer\": \"FooBarPayments\",\n \"delayToAutoSettle\": 432000,\n \"delayToAutoSettleAfterAntifraud\": 120,\n \"delayToCancel\": 600,\n \"connectorMetadata\": [\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n }\n ]\n}", + "cookie": [] + }, + { + "_": { + "postman_previewlanguage": "json" + }, + "id": "28eaf223-77f9-481c-ad3f-47a5e7c03b94", + "name": "Redirect Success Approved", + "originalRequest": { + "url": { + "path": [ + "payments" + ], + "host": [ + "{{baseUrl}}" + ], + "query": [], + "variable": [] + }, + "header": [ + { + "disabled": false, + "description": { + "content": "(Required) Unique identifier created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json.", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppKey", + "value": "{{X-PROVIDER-API-AppKey}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Unique token created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppToken", + "value": "{{X-PROVIDER-API-AppToken}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Type of the content being sent.", + "type": "text/plain" + }, + "key": "Content-Type", + "value": "application/json" + }, + { + "disabled": false, + "description": { + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "type": "text/plain" + }, + "key": "Accept", + "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" + } + ], + "method": "POST", + "body": { + "mode": "raw", + "raw": "{\n \"reference\": \"618272\",\n \"orderId\": \"1072430428324\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"2F023FD5A72A49D48A8633252B7CCBD6\",\n \"paymentId\": \"01693EB95BE443AC85874E395CD91565\",\n \"paymentMethod\": \"RedirectPay\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"value\": 31.9,\n \"referenceValue\": 31.9,\n \"currency\": \"BRL\",\n \"installments\": 1,\n \"installmentsInterestRate\": 0,\n \"installmentsValue\": 31.9,\n \"deviceFingerprint\": \"75076388\",\n \"ipAddress\": \"187.105.111.65\",\n \"miniCart\": {\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"cpf\",\n \"corporateName\": null,\n \"tradeName\": null,\n \"corporateDocument\": null,\n \"isCorporate\": false,\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521999999999\",\n \"createdDate\": \"2020-02-18T18:17:45\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"8\",\n \"name\": \"Tenis Preto I\",\n \"price\": 30.9,\n \"quantity\": 1,\n \"discount\": 0,\n \"deliveryType\": \"Normal\",\n \"categoryId\": \"5\",\n \"sellerId\": \"1\"\n }\n ],\n \"shippingValue\": 1,\n \"taxValue\": 0\n },\n \"url\": \"https://admin.mystore.example.com/orders/v32478982\",\n \"callbackUrl\": \"https://api.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/v32478982\",\n \"inboundRequestsUrl\": \"https://api.mystore.example.com/checkout/order/1072430428324/inbound-request/:action\",\n \"recipients\": [\n {\n \"id\": \"mymarketplace\",\n \"name\": \"My Marketplace QA\",\n \"documentType\": \"CNPJ\",\n \"document\": \"99999999999999\",\n \"role\": \"marketplace\",\n \"chargeProcessingFee\": true,\n \"chargebackLiable\": true,\n \"amount\": 31.9\n }\n ],\n \"merchantSettings\": [\n {\n \"name\": \"field1\",\n \"value\": \"value1\"\n },\n {\n \"name\": \"field2\",\n \"value\": \"value2\"\n }\n ]\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } + }, + "status": "OK", + "code": 200, + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"status\": \"approved\",\n \"authorizationId\": \"AUT123567\",\n \"nsu\": \"NSU987432\",\n \"tid\": \"TID1578324421\",\n \"acquirer\": \"FooBarPayments\",\n \"delayToAutoSettle\": 432000,\n \"delayToAutoSettleAfterAntifraud\": 120,\n \"delayToCancel\": 600,\n \"connectorMetadata\": [\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n }\n ]\n}", + "cookie": [] + }, + { + "_": { + "postman_previewlanguage": "json" + }, + "id": "fcfac17f-93f5-4a09-a48a-65705596801f", + "name": "Fail Generic Error", + "originalRequest": { + "url": { + "path": [ + "payments" + ], + "host": [ + "{{baseUrl}}" + ], + "query": [], + "variable": [] + }, + "header": [ + { + "disabled": false, + "description": { + "content": "(Required) Unique identifier created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json.", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppKey", + "value": "{{X-PROVIDER-API-AppKey}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Unique token created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppToken", + "value": "{{X-PROVIDER-API-AppToken}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Type of the content being sent.", + "type": "text/plain" + }, + "key": "Content-Type", + "value": "application/json" + }, + { + "disabled": false, + "description": { + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "type": "text/plain" + }, + "key": "Accept", + "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" + } + ], + "method": "POST", + "body": { + "mode": "raw", + "raw": "{\n \"reference\": \"32478982\",\n \"orderId\": \"v967373115140abc\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"paymentMethod\": \"Visa\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"value\": 4307.23,\n \"referenceValue\": 4000,\n \"currency\": \"BRL\",\n \"installments\": 3,\n \"deviceFingerprint\": \"12ade389087fe\",\n \"card\": {\n \"holder\": \"John Doe\",\n \"number\": \"4682185088924788\",\n \"csc\": \"021\",\n \"expiration\": {\n \"month\": \"06\",\n \"year\": \"2029\"\n }\n },\n \"miniCart\": {\n \"shippingValue\": 11.44,\n \"taxValue\": 10.01,\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"CPF\",\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521987654321\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"132981\",\n \"name\": \"My First Product\",\n \"price\": 2134.9,\n \"quantity\": 2,\n \"discount\": 5\n },\n {\n \"id\": \"123242\",\n \"name\": \"My Second Product\",\n \"price\": 21.98,\n \"quantity\": 1,\n \"discount\": 1\n }\n ]\n },\n \"url\": \"https://admin.mystore.example.com/orders/v32478982\",\n \"callbackUrl\": \"https://api.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/v32478982\"\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } + }, + "status": "OK", + "code": 200, + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"status\": \"approved\",\n \"authorizationId\": \"AUT123567\",\n \"nsu\": \"NSU987432\",\n \"tid\": \"TID1578324421\",\n \"acquirer\": \"FooBarPayments\",\n \"delayToAutoSettle\": 432000,\n \"delayToAutoSettleAfterAntifraud\": 120,\n \"delayToCancel\": 600,\n \"connectorMetadata\": [\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n }\n ]\n}", + "cookie": [] + }, + { + "_": { + "postman_previewlanguage": "json" + }, + "id": "835cf9be-a231-4c7a-b42c-69237136d061", + "name": "Fail Bad Request", + "originalRequest": { + "url": { + "path": [ + "payments" + ], + "host": [ + "{{baseUrl}}" + ], + "query": [], + "variable": [] + }, + "header": [ + { + "disabled": false, + "description": { + "content": "(Required) Unique identifier created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json.", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppKey", + "value": "{{X-PROVIDER-API-AppKey}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Unique token created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppToken", + "value": "{{X-PROVIDER-API-AppToken}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Type of the content being sent.", + "type": "text/plain" + }, + "key": "Content-Type", + "value": "application/json" + }, + { + "disabled": false, + "description": { + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "type": "text/plain" + }, + "key": "Accept", + "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" + } + ], + "method": "POST", + "body": { + "mode": "raw", + "raw": "{\n \"reference\": \"32478982\",\n \"orderId\": \"v967373115140abc\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"paymentMethod\": \"Visa\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"value\": 4307.23,\n \"referenceValue\": 4000,\n \"currency\": \"BRL\",\n \"installments\": 3,\n \"deviceFingerprint\": \"12ade389087fe\",\n \"card\": {\n \"holder\": \"John Doe\",\n \"number\": \"4682185088924788\",\n \"csc\": \"021\",\n \"expiration\": {\n \"month\": \"06\",\n \"year\": \"2029\"\n }\n },\n \"miniCart\": {\n \"shippingValue\": 11.44,\n \"taxValue\": 10.01,\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"CPF\",\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521987654321\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"132981\",\n \"name\": \"My First Product\",\n \"price\": 2134.9,\n \"quantity\": 2,\n \"discount\": 5\n },\n {\n \"id\": \"123242\",\n \"name\": \"My Second Product\",\n \"price\": 21.98,\n \"quantity\": 1,\n \"discount\": 1\n }\n ]\n },\n \"url\": \"https://admin.mystore.example.com/orders/v32478982\",\n \"callbackUrl\": \"https://api.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/v32478982\"\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } + }, + "status": "OK", + "code": 200, + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"status\": \"approved\",\n \"authorizationId\": \"AUT123567\",\n \"nsu\": \"NSU987432\",\n \"tid\": \"TID1578324421\",\n \"acquirer\": \"FooBarPayments\",\n \"delayToAutoSettle\": 432000,\n \"delayToAutoSettleAfterAntifraud\": 120,\n \"delayToCancel\": 600,\n \"connectorMetadata\": [\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n }\n ]\n}", + "cookie": [] + }, + { + "_": { + "postman_previewlanguage": "json" + }, + "id": "f35e79a6-a4d8-4167-8619-484e29d293fb", + "name": "Credit Card Success Approved", + "originalRequest": { + "url": { + "path": [ + "payments" + ], + "host": [ + "{{baseUrl}}" + ], + "query": [], + "variable": [] + }, + "header": [ + { + "disabled": false, + "description": { + "content": "(Required) Unique identifier created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json.", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppKey", + "value": "{{X-PROVIDER-API-AppKey}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Unique token created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppToken", + "value": "{{X-PROVIDER-API-AppToken}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Type of the content being sent.", + "type": "text/plain" + }, + "key": "Content-Type", + "value": "application/json" + }, + { + "disabled": false, + "description": { + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "type": "text/plain" + }, + "key": "Accept", + "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" + } + ], + "method": "POST", + "body": { + "mode": "raw", + "raw": "{\n \"reference\": \"618272\",\n \"orderId\": \"1072430428324\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"2F023FD5A72A49D48A8633252B7CCBD6\",\n \"paymentId\": \"01693EB95BE443AC85874E395CD91565\",\n \"paymentMethod\": \"Diners\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"card\": {\n \"holder\": \"John Doe\",\n \"number\": \"364901****2661\",\n \"csc\": \"***\",\n \"expiration\": {\n \"month\": \"12\",\n \"year\": \"2020\"\n },\n \"document\": \"39295416023\",\n \"token\": null\n },\n \"value\": 31.9,\n \"referenceValue\": 31.9,\n \"currency\": \"BRL\",\n \"installments\": 1,\n \"installmentsInterestRate\": 0,\n \"installmentsValue\": 31.9,\n \"deviceFingerprint\": \"75076388\",\n \"ipAddress\": \"187.105.111.65\",\n \"miniCart\": {\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"cpf\",\n \"corporateName\": null,\n \"tradeName\": null,\n \"corporateDocument\": null,\n \"isCorporate\": false,\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521999999999\",\n \"createdDate\": \"2020-02-18T18:17:45\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"8\",\n \"name\": \"Tenis Preto I\",\n \"price\": 30.9,\n \"quantity\": 1,\n \"discount\": 0,\n \"deliveryType\": \"Normal\",\n \"categoryId\": \"5\",\n \"sellerId\": \"1\"\n }\n ],\n \"shippingValue\": 1,\n \"taxValue\": 0\n },\n \"url\": \"https://admin.mystore.example.com/orders?q=1072430428324\",\n \"callbackUrl\": \"https://api.mystore.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/1072430428324\",\n \"inboundRequestsUrl\": \"https://api.mystore.example.com/checkout/order/1072430428324/inbound-request/:action\",\n \"recipients\": [\n {\n \"id\": \"mymarketplace\",\n \"name\": \"My Marketplace QA\",\n \"documentType\": \"CNPJ\",\n \"document\": \"99999999999999\",\n \"role\": \"marketplace\",\n \"chargeProcessingFee\": true,\n \"chargebackLiable\": true,\n \"amount\": 31.9\n }\n ],\n \"merchantSettings\": [\n {\n \"name\": \"field1\",\n \"value\": \"value1\"\n },\n {\n \"name\": \"field2\",\n \"value\": \"value2\"\n }\n ],\n \"connectorMetadata\": [\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n }\n ]\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } + }, + "status": "Bad Request", + "code": 400, + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"status\": \"error\",\n \"code\": \"ERR123\",\n \"message\": \"The currency ABC is not supported\"\n}", + "cookie": [] + }, + { + "_": { + "postman_previewlanguage": "json" + }, + "id": "6f1cfaf9-d3e1-4bc8-94d6-716527b1c78f", + "name": "Pix Success Approved", + "originalRequest": { + "url": { + "path": [ + "payments" + ], + "host": [ + "{{baseUrl}}" + ], + "query": [], + "variable": [] + }, + "header": [ + { + "disabled": false, + "description": { + "content": "(Required) Unique identifier created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json.", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppKey", + "value": "{{X-PROVIDER-API-AppKey}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Unique token created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppToken", + "value": "{{X-PROVIDER-API-AppToken}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Type of the content being sent.", + "type": "text/plain" + }, + "key": "Content-Type", + "value": "application/json" + }, + { + "disabled": false, + "description": { + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "type": "text/plain" + }, + "key": "Accept", + "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" + } + ], + "method": "POST", + "body": { + "mode": "raw", + "raw": "{\n \"reference\": \"32478982\",\n \"orderId\": \"v967373115140abc\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"paymentMethod\": \"Pix\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"value\": 4307.23,\n \"referenceValue\": 4307.23,\n \"currency\": \"BRL\",\n \"installments\": 1,\n \"deviceFingerprint\": \"15ace369587ha\",\n \"card\": {\n \"holder\": null,\n \"number\": null,\n \"csc\": null,\n \"expiration\": {\n \"month\": null,\n \"year\": null\n }\n },\n \"miniCart\": {\n \"shippingValue\": 11.44,\n \"taxValue\": 10.01,\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"cpf\",\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521999999999\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"132981\",\n \"name\": \"My First Product\",\n \"price\": 2134.9,\n \"quantity\": 2,\n \"discount\": 5\n },\n {\n \"id\": \"123242\",\n \"name\": \"My Second Product\",\n \"price\": 21.98,\n \"quantity\": 1,\n \"discount\": 1\n }\n ]\n },\n \"url\": \"https://admin.mystore.example.com/orders/v32478982\",\n \"callbackUrl\": \"https://api.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/v32478982\"\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } + }, + "status": "Bad Request", + "code": 400, + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"status\": \"error\",\n \"code\": \"ERR123\",\n \"message\": \"The currency ABC is not supported\"\n}", + "cookie": [] + }, + { + "_": { + "postman_previewlanguage": "json" + }, + "id": "257d1e17-99b0-4a4e-9d58-c4312dd7593a", + "name": "Success Undefined", + "originalRequest": { + "url": { + "path": [ + "payments" + ], + "host": [ + "{{baseUrl}}" + ], + "query": [], + "variable": [] + }, + "header": [ + { + "disabled": false, + "description": { + "content": "(Required) Unique identifier created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json.", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppKey", + "value": "{{X-PROVIDER-API-AppKey}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Unique token created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppToken", + "value": "{{X-PROVIDER-API-AppToken}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Type of the content being sent.", + "type": "text/plain" + }, + "key": "Content-Type", + "value": "application/json" + }, + { + "disabled": false, + "description": { + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "type": "text/plain" + }, + "key": "Accept", + "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" + } + ], + "method": "POST", + "body": { + "mode": "raw", + "raw": "{\n \"reference\": \"32478982\",\n \"orderId\": \"v967373115140abc\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"paymentMethod\": \"Visa\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"value\": 4307.23,\n \"referenceValue\": 4000,\n \"currency\": \"BRL\",\n \"installments\": 3,\n \"deviceFingerprint\": \"12ade389087fe\",\n \"card\": {\n \"holder\": \"John Doe\",\n \"number\": \"4682185088924788\",\n \"csc\": \"021\",\n \"expiration\": {\n \"month\": \"06\",\n \"year\": \"2029\"\n }\n },\n \"miniCart\": {\n \"shippingValue\": 11.44,\n \"taxValue\": 10.01,\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"CPF\",\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521987654321\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"132981\",\n \"name\": \"My First Product\",\n \"price\": 2134.9,\n \"quantity\": 2,\n \"discount\": 5\n },\n {\n \"id\": \"123242\",\n \"name\": \"My Second Product\",\n \"price\": 21.98,\n \"quantity\": 1,\n \"discount\": 1\n }\n ]\n },\n \"url\": \"https://admin.mystore.example.com/orders/v32478982\",\n \"callbackUrl\": \"https://api.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/v32478982\"\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } + }, + "status": "Bad Request", + "code": 400, + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"status\": \"error\",\n \"code\": \"ERR123\",\n \"message\": \"The currency ABC is not supported\"\n}", + "cookie": [] + }, + { + "_": { + "postman_previewlanguage": "json" + }, + "id": "6915e282-55e4-4179-a5b6-36e3e4e2e80d", + "name": "BankInvoice Success Undefined", + "originalRequest": { + "url": { + "path": [ + "payments" + ], + "host": [ + "{{baseUrl}}" + ], + "query": [], + "variable": [] + }, + "header": [ + { + "disabled": false, + "description": { + "content": "(Required) Unique identifier created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json.", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppKey", + "value": "{{X-PROVIDER-API-AppKey}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Unique token created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppToken", + "value": "{{X-PROVIDER-API-AppToken}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Type of the content being sent.", + "type": "text/plain" + }, + "key": "Content-Type", + "value": "application/json" + }, + { + "disabled": false, + "description": { + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "type": "text/plain" + }, + "key": "Accept", + "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" + } + ], + "method": "POST", + "body": { + "mode": "raw", + "raw": "{\n \"reference\": \"32478982\",\n \"orderId\": \"v967373115140abc\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"paymentMethod\": \"BankInvoice\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"value\": 4307.23,\n \"referenceValue\": 4307.23,\n \"currency\": \"BRL\",\n \"installments\": 1,\n \"deviceFingerprint\": \"12ade389087fe\",\n \"card\": {\n \"holder\": null,\n \"number\": null,\n \"csc\": null,\n \"expiration\": {\n \"month\": null,\n \"year\": null\n }\n },\n \"miniCart\": {\n \"shippingValue\": 11.44,\n \"taxValue\": 10.01,\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"CPF\",\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521987654321\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"132981\",\n \"name\": \"My First Product\",\n \"price\": 2134.9,\n \"quantity\": 2,\n \"discount\": 5\n },\n {\n \"id\": \"123242\",\n \"name\": \"My Second Product\",\n \"price\": 21.98,\n \"quantity\": 1,\n \"discount\": 1\n }\n ]\n },\n \"url\": \"https://admin.mystore.example.com/orders/v32478982\",\n \"callbackUrl\": \"https://api.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/v32478982\"\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } + }, + "status": "Bad Request", + "code": 400, + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"status\": \"error\",\n \"code\": \"ERR123\",\n \"message\": \"The currency ABC is not supported\"\n}", + "cookie": [] + }, + { + "_": { + "postman_previewlanguage": "json" + }, + "id": "fa97fbf1-6688-4123-a1a3-ca9ed53d64fd", + "name": "Success Denied", + "originalRequest": { + "url": { + "path": [ + "payments" + ], + "host": [ + "{{baseUrl}}" + ], + "query": [], + "variable": [] + }, + "header": [ + { + "disabled": false, + "description": { + "content": "(Required) Unique identifier created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json.", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppKey", + "value": "{{X-PROVIDER-API-AppKey}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Unique token created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppToken", + "value": "{{X-PROVIDER-API-AppToken}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Type of the content being sent.", + "type": "text/plain" + }, + "key": "Content-Type", + "value": "application/json" + }, + { + "disabled": false, + "description": { + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "type": "text/plain" + }, + "key": "Accept", + "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" + } + ], + "method": "POST", + "body": { + "mode": "raw", + "raw": "{\n \"reference\": \"32478982\",\n \"orderId\": \"v967373115140abc\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"paymentMethod\": \"Visa\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"value\": 4307.23,\n \"referenceValue\": 4000,\n \"currency\": \"BRL\",\n \"installments\": 3,\n \"deviceFingerprint\": \"12ade389087fe\",\n \"card\": {\n \"holder\": \"John Doe\",\n \"number\": \"4682185088924788\",\n \"csc\": \"021\",\n \"expiration\": {\n \"month\": \"06\",\n \"year\": \"2029\"\n }\n },\n \"miniCart\": {\n \"shippingValue\": 11.44,\n \"taxValue\": 10.01,\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"CPF\",\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521987654321\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"132981\",\n \"name\": \"My First Product\",\n \"price\": 2134.9,\n \"quantity\": 2,\n \"discount\": 5\n },\n {\n \"id\": \"123242\",\n \"name\": \"My Second Product\",\n \"price\": 21.98,\n \"quantity\": 1,\n \"discount\": 1\n }\n ]\n },\n \"url\": \"https://admin.mystore.example.com/orders/v32478982\",\n \"callbackUrl\": \"https://api.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/v32478982\"\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } + }, + "status": "Bad Request", + "code": 400, + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"status\": \"error\",\n \"code\": \"ERR123\",\n \"message\": \"The currency ABC is not supported\"\n}", + "cookie": [] + }, + { + "_": { + "postman_previewlanguage": "json" + }, + "id": "8978d52c-26ce-4ee6-a077-f0ffd324ca2f", + "name": "BankInvoice Success Approved", + "originalRequest": { + "url": { + "path": [ + "payments" + ], + "host": [ + "{{baseUrl}}" + ], + "query": [], + "variable": [] + }, + "header": [ + { + "disabled": false, + "description": { + "content": "(Required) Unique identifier created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json.", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppKey", + "value": "{{X-PROVIDER-API-AppKey}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Unique token created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppToken", + "value": "{{X-PROVIDER-API-AppToken}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Type of the content being sent.", + "type": "text/plain" + }, + "key": "Content-Type", + "value": "application/json" + }, + { + "disabled": false, + "description": { + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "type": "text/plain" + }, + "key": "Accept", + "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" + } + ], + "method": "POST", + "body": { + "mode": "raw", + "raw": "{\n \"reference\": \"618272\",\n \"orderId\": \"1072430428324\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"2F023FD5A72A49D48A8633252B7CCBD6\",\n \"paymentId\": \"01693EB95BE443AC85874E395CD91565\",\n \"paymentMethod\": \"BankInvoice\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"card\": {\n \"holder\": \"null\",\n \"number\": \"null\",\n \"csc\": \"null\",\n \"expiration\": {\n \"month\": \"null\",\n \"year\": \"null\"\n }\n },\n \"document\": null,\n \"token\": null,\n \"value\": 31.9,\n \"referenceValue\": 31.9,\n \"currency\": \"BRL\",\n \"installments\": 1,\n \"installmentsInterestRate\": 0,\n \"installmentsValue\": 31.9,\n \"deviceFingerprint\": \"98073964\",\n \"ipAddress\": \"187.105.111.65\",\n \"miniCart\": {\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"cpf\",\n \"corporateName\": null,\n \"tradeName\": null,\n \"corporateDocument\": null,\n \"isCorporate\": false,\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521999999999\",\n \"createdDate\": \"2020-02-18T18:17:45\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"8\",\n \"name\": \"Tenis Preto I\",\n \"price\": 30.9,\n \"quantity\": 1,\n \"discount\": 0,\n \"deliveryType\": \"Normal\",\n \"categoryId\": \"5\",\n \"sellerId\": \"1\"\n }\n ],\n \"shippingValue\": 11.44,\n \"taxValue\": 10.01\n },\n \"url\": \"https://admin.mystore.example.com/orders?q=1072430428324\",\n \"callbackUrl\": \"https://api.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/1072430428324\",\n \"inboundRequestsUrl\": \"https://api.mystore.example.com/checkout/order/1072430428324/inbound-request/:action\",\n \"recipients\": [\n {\n \"id\": \"mymarketplace\",\n \"name\": \"My Marketplace QA\",\n \"documentType\": \"CNPJ\",\n \"document\": \"99999999999999\",\n \"role\": \"marketplace\",\n \"chargeProcessingFee\": true,\n \"chargebackLiable\": true,\n \"amount\": 31.9\n }\n ],\n \"merchantSettings\": [\n {\n \"name\": \"field1\",\n \"value\": \"value1\"\n },\n {\n \"name\": \"field2\",\n \"value\": \"value2\"\n }\n ]\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } + }, + "status": "Bad Request", + "code": 400, + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"status\": \"error\",\n \"code\": \"ERR123\",\n \"message\": \"The currency ABC is not supported\"\n}", + "cookie": [] + }, + { + "_": { + "postman_previewlanguage": "json" + }, + "id": "f3b47262-4a69-487d-a25f-1d55cab4b41c", + "name": "Payment App + Inbound Request Success Undefined", + "originalRequest": { + "url": { + "path": [ + "payments" + ], + "host": [ + "{{baseUrl}}" + ], + "query": [], + "variable": [] + }, + "header": [ + { + "disabled": false, + "description": { + "content": "(Required) Unique identifier created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json.", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppKey", + "value": "{{X-PROVIDER-API-AppKey}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Unique token created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppToken", + "value": "{{X-PROVIDER-API-AppToken}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Type of the content being sent.", + "type": "text/plain" + }, + "key": "Content-Type", + "value": "application/json" + }, + { + "disabled": false, + "description": { + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "type": "text/plain" + }, + "key": "Accept", + "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" + } + ], + "method": "POST", + "body": { + "mode": "raw", + "raw": "{\n \"reference\": \"32478982\",\n \"orderId\": \"v967373115140abc\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"paymentMethod\": \"CustomPay\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"value\": 4307.23,\n \"referenceValue\": 4307.23,\n \"currency\": \"BRL\",\n \"installments\": 1,\n \"deviceFingerprint\": \"12ade389087fe\",\n \"card\": {\n \"holder\": null,\n \"number\": null,\n \"csc\": null,\n \"expiration\": {\n \"month\": null,\n \"year\": null\n }\n },\n \"miniCart\": {\n \"shippingValue\": 11.44,\n \"taxValue\": 10.01,\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"CPF\",\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521987654321\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"132981\",\n \"name\": \"My First Product\",\n \"price\": 2134.9,\n \"quantity\": 2,\n \"discount\": 5\n },\n {\n \"id\": \"123242\",\n \"name\": \"My Second Product\",\n \"price\": 21.98,\n \"quantity\": 1,\n \"discount\": 1\n }\n ]\n },\n \"url\": \"https://admin.mystore.example.com/orders/v32478982\",\n \"callbackUrl\": \"https://api.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/v32478982\",\n \"inboundRequestsUrl\": \"https://mystore.api.example.com/some-path/inbound-request/:action\"\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } + }, + "status": "Bad Request", + "code": 400, + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"status\": \"error\",\n \"code\": \"ERR123\",\n \"message\": \"The currency ABC is not supported\"\n}", + "cookie": [] + }, + { + "_": { + "postman_previewlanguage": "json" + }, + "id": "46157ad9-4af9-47ac-ac9b-2fbda713beb4", + "name": "Redirect Success Undefined", + "originalRequest": { + "url": { + "path": [ + "payments" + ], + "host": [ + "{{baseUrl}}" + ], + "query": [], + "variable": [] + }, + "header": [ + { + "disabled": false, + "description": { + "content": "(Required) Unique identifier created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json.", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppKey", + "value": "{{X-PROVIDER-API-AppKey}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Unique token created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppToken", + "value": "{{X-PROVIDER-API-AppToken}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Type of the content being sent.", + "type": "text/plain" + }, + "key": "Content-Type", + "value": "application/json" + }, + { + "disabled": false, + "description": { + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "type": "text/plain" + }, + "key": "Accept", + "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" + } + ], + "method": "POST", + "body": { + "mode": "raw", + "raw": "{\n \"reference\": \"32478982\",\n \"orderId\": \"v967373115140abc\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"paymentMethod\": \"FakePay\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"value\": 4307.23,\n \"referenceValue\": 4307.23,\n \"currency\": \"BRL\",\n \"installments\": 1,\n \"deviceFingerprint\": \"12ade389087fe\",\n \"card\": {\n \"holder\": null,\n \"number\": null,\n \"csc\": null,\n \"expiration\": {\n \"month\": null,\n \"year\": null\n }\n },\n \"miniCart\": {\n \"shippingValue\": 11.44,\n \"taxValue\": 10.01,\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"CPF\",\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521987654321\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"132981\",\n \"name\": \"My First Product\",\n \"price\": 2134.9,\n \"quantity\": 2,\n \"discount\": 5\n },\n {\n \"id\": \"123242\",\n \"name\": \"My Second Product\",\n \"price\": 21.98,\n \"quantity\": 1,\n \"discount\": 1\n }\n ]\n },\n \"url\": \"https://admin.mystore.example.com/orders/v32478982\",\n \"callbackUrl\": \"https://api.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/v32478982\"\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } + }, + "status": "Bad Request", + "code": 400, + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"status\": \"error\",\n \"code\": \"ERR123\",\n \"message\": \"The currency ABC is not supported\"\n}", + "cookie": [] + }, + { + "_": { + "postman_previewlanguage": "json" + }, + "id": "73a77570-da5a-4b77-b342-03d11b82dcf8", + "name": "Redirect Success Approved", + "originalRequest": { + "url": { + "path": [ + "payments" + ], + "host": [ + "{{baseUrl}}" + ], + "query": [], + "variable": [] + }, + "header": [ + { + "disabled": false, + "description": { + "content": "(Required) Unique identifier created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json.", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppKey", + "value": "{{X-PROVIDER-API-AppKey}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Unique token created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppToken", + "value": "{{X-PROVIDER-API-AppToken}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Type of the content being sent.", + "type": "text/plain" + }, + "key": "Content-Type", + "value": "application/json" + }, + { + "disabled": false, + "description": { + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "type": "text/plain" + }, + "key": "Accept", + "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" + } + ], + "method": "POST", + "body": { + "mode": "raw", + "raw": "{\n \"reference\": \"618272\",\n \"orderId\": \"1072430428324\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"2F023FD5A72A49D48A8633252B7CCBD6\",\n \"paymentId\": \"01693EB95BE443AC85874E395CD91565\",\n \"paymentMethod\": \"RedirectPay\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"value\": 31.9,\n \"referenceValue\": 31.9,\n \"currency\": \"BRL\",\n \"installments\": 1,\n \"installmentsInterestRate\": 0,\n \"installmentsValue\": 31.9,\n \"deviceFingerprint\": \"75076388\",\n \"ipAddress\": \"187.105.111.65\",\n \"miniCart\": {\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"cpf\",\n \"corporateName\": null,\n \"tradeName\": null,\n \"corporateDocument\": null,\n \"isCorporate\": false,\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521999999999\",\n \"createdDate\": \"2020-02-18T18:17:45\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"8\",\n \"name\": \"Tenis Preto I\",\n \"price\": 30.9,\n \"quantity\": 1,\n \"discount\": 0,\n \"deliveryType\": \"Normal\",\n \"categoryId\": \"5\",\n \"sellerId\": \"1\"\n }\n ],\n \"shippingValue\": 1,\n \"taxValue\": 0\n },\n \"url\": \"https://admin.mystore.example.com/orders/v32478982\",\n \"callbackUrl\": \"https://api.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/v32478982\",\n \"inboundRequestsUrl\": \"https://api.mystore.example.com/checkout/order/1072430428324/inbound-request/:action\",\n \"recipients\": [\n {\n \"id\": \"mymarketplace\",\n \"name\": \"My Marketplace QA\",\n \"documentType\": \"CNPJ\",\n \"document\": \"99999999999999\",\n \"role\": \"marketplace\",\n \"chargeProcessingFee\": true,\n \"chargebackLiable\": true,\n \"amount\": 31.9\n }\n ],\n \"merchantSettings\": [\n {\n \"name\": \"field1\",\n \"value\": \"value1\"\n },\n {\n \"name\": \"field2\",\n \"value\": \"value2\"\n }\n ]\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } + }, + "status": "Bad Request", + "code": 400, + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"status\": \"error\",\n \"code\": \"ERR123\",\n \"message\": \"The currency ABC is not supported\"\n}", + "cookie": [] + }, + { + "_": { + "postman_previewlanguage": "json" + }, + "id": "b76d82ff-202c-4c37-8ffc-d6c5ff6ceaf7", + "name": "Fail Generic Error", + "originalRequest": { + "url": { + "path": [ + "payments" + ], + "host": [ + "{{baseUrl}}" + ], + "query": [], + "variable": [] + }, + "header": [ + { + "disabled": false, + "description": { + "content": "(Required) Unique identifier created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json.", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppKey", + "value": "{{X-PROVIDER-API-AppKey}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Unique token created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppToken", + "value": "{{X-PROVIDER-API-AppToken}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Type of the content being sent.", + "type": "text/plain" + }, + "key": "Content-Type", + "value": "application/json" + }, + { + "disabled": false, + "description": { + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "type": "text/plain" + }, + "key": "Accept", + "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" + } + ], + "method": "POST", + "body": { + "mode": "raw", + "raw": "{\n \"reference\": \"32478982\",\n \"orderId\": \"v967373115140abc\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"paymentMethod\": \"Visa\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"value\": 4307.23,\n \"referenceValue\": 4000,\n \"currency\": \"BRL\",\n \"installments\": 3,\n \"deviceFingerprint\": \"12ade389087fe\",\n \"card\": {\n \"holder\": \"John Doe\",\n \"number\": \"4682185088924788\",\n \"csc\": \"021\",\n \"expiration\": {\n \"month\": \"06\",\n \"year\": \"2029\"\n }\n },\n \"miniCart\": {\n \"shippingValue\": 11.44,\n \"taxValue\": 10.01,\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"CPF\",\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521987654321\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"132981\",\n \"name\": \"My First Product\",\n \"price\": 2134.9,\n \"quantity\": 2,\n \"discount\": 5\n },\n {\n \"id\": \"123242\",\n \"name\": \"My Second Product\",\n \"price\": 21.98,\n \"quantity\": 1,\n \"discount\": 1\n }\n ]\n },\n \"url\": \"https://admin.mystore.example.com/orders/v32478982\",\n \"callbackUrl\": \"https://api.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/v32478982\"\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } + }, + "status": "Bad Request", + "code": 400, + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"status\": \"error\",\n \"code\": \"ERR123\",\n \"message\": \"The currency ABC is not supported\"\n}", + "cookie": [] + }, + { + "_": { + "postman_previewlanguage": "json" + }, + "id": "9f66cba4-6226-46ab-97f3-aa22f37b8efa", + "name": "Fail Bad Request", + "originalRequest": { + "url": { + "path": [ + "payments" + ], + "host": [ + "{{baseUrl}}" + ], + "query": [], + "variable": [] + }, + "header": [ + { + "disabled": false, + "description": { + "content": "(Required) Unique identifier created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json.", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppKey", + "value": "{{X-PROVIDER-API-AppKey}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Unique token created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppToken", + "value": "{{X-PROVIDER-API-AppToken}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Type of the content being sent.", + "type": "text/plain" + }, + "key": "Content-Type", + "value": "application/json" + }, + { + "disabled": false, + "description": { + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "type": "text/plain" + }, + "key": "Accept", + "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" + } + ], + "method": "POST", + "body": { + "mode": "raw", + "raw": "{\n \"reference\": \"32478982\",\n \"orderId\": \"v967373115140abc\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"paymentMethod\": \"Visa\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"value\": 4307.23,\n \"referenceValue\": 4000,\n \"currency\": \"BRL\",\n \"installments\": 3,\n \"deviceFingerprint\": \"12ade389087fe\",\n \"card\": {\n \"holder\": \"John Doe\",\n \"number\": \"4682185088924788\",\n \"csc\": \"021\",\n \"expiration\": {\n \"month\": \"06\",\n \"year\": \"2029\"\n }\n },\n \"miniCart\": {\n \"shippingValue\": 11.44,\n \"taxValue\": 10.01,\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"CPF\",\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521987654321\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"132981\",\n \"name\": \"My First Product\",\n \"price\": 2134.9,\n \"quantity\": 2,\n \"discount\": 5\n },\n {\n \"id\": \"123242\",\n \"name\": \"My Second Product\",\n \"price\": 21.98,\n \"quantity\": 1,\n \"discount\": 1\n }\n ]\n },\n \"url\": \"https://admin.mystore.example.com/orders/v32478982\",\n \"callbackUrl\": \"https://api.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/v32478982\"\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } + }, + "status": "Bad Request", + "code": 400, + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"status\": \"error\",\n \"code\": \"ERR123\",\n \"message\": \"The currency ABC is not supported\"\n}", + "cookie": [] + }, + { + "_": { + "postman_previewlanguage": "json" + }, + "id": "43b3a660-9867-4248-8d44-75e56bdcd097", + "name": "Credit Card Success Approved", + "originalRequest": { + "url": { + "path": [ + "payments" + ], + "host": [ + "{{baseUrl}}" + ], + "query": [], + "variable": [] + }, + "header": [ + { + "disabled": false, + "description": { + "content": "(Required) Unique identifier created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json.", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppKey", + "value": "{{X-PROVIDER-API-AppKey}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Unique token created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppToken", + "value": "{{X-PROVIDER-API-AppToken}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Type of the content being sent.", + "type": "text/plain" + }, + "key": "Content-Type", + "value": "application/json" + }, + { + "disabled": false, + "description": { + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "type": "text/plain" + }, + "key": "Accept", + "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" + } + ], + "method": "POST", + "body": { + "mode": "raw", + "raw": "{\n \"reference\": \"618272\",\n \"orderId\": \"1072430428324\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"2F023FD5A72A49D48A8633252B7CCBD6\",\n \"paymentId\": \"01693EB95BE443AC85874E395CD91565\",\n \"paymentMethod\": \"Diners\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"card\": {\n \"holder\": \"John Doe\",\n \"number\": \"364901****2661\",\n \"csc\": \"***\",\n \"expiration\": {\n \"month\": \"12\",\n \"year\": \"2020\"\n },\n \"document\": \"39295416023\",\n \"token\": null\n },\n \"value\": 31.9,\n \"referenceValue\": 31.9,\n \"currency\": \"BRL\",\n \"installments\": 1,\n \"installmentsInterestRate\": 0,\n \"installmentsValue\": 31.9,\n \"deviceFingerprint\": \"75076388\",\n \"ipAddress\": \"187.105.111.65\",\n \"miniCart\": {\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"cpf\",\n \"corporateName\": null,\n \"tradeName\": null,\n \"corporateDocument\": null,\n \"isCorporate\": false,\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521999999999\",\n \"createdDate\": \"2020-02-18T18:17:45\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"8\",\n \"name\": \"Tenis Preto I\",\n \"price\": 30.9,\n \"quantity\": 1,\n \"discount\": 0,\n \"deliveryType\": \"Normal\",\n \"categoryId\": \"5\",\n \"sellerId\": \"1\"\n }\n ],\n \"shippingValue\": 1,\n \"taxValue\": 0\n },\n \"url\": \"https://admin.mystore.example.com/orders?q=1072430428324\",\n \"callbackUrl\": \"https://api.mystore.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/1072430428324\",\n \"inboundRequestsUrl\": \"https://api.mystore.example.com/checkout/order/1072430428324/inbound-request/:action\",\n \"recipients\": [\n {\n \"id\": \"mymarketplace\",\n \"name\": \"My Marketplace QA\",\n \"documentType\": \"CNPJ\",\n \"document\": \"99999999999999\",\n \"role\": \"marketplace\",\n \"chargeProcessingFee\": true,\n \"chargebackLiable\": true,\n \"amount\": 31.9\n }\n ],\n \"merchantSettings\": [\n {\n \"name\": \"field1\",\n \"value\": \"value1\"\n },\n {\n \"name\": \"field2\",\n \"value\": \"value2\"\n }\n ],\n \"connectorMetadata\": [\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n }\n ]\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } + }, + "status": "Internal Server Error", + "code": 500, + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"status\": \"error\",\n \"code\": \"ERR123\",\n \"message\": \"Authorization has failed due to an internal error\"\n}", + "cookie": [] + }, + { + "_": { + "postman_previewlanguage": "json" + }, + "id": "8d315ed7-43ad-45c1-9edc-e61207bd03c2", + "name": "Pix Success Approved", + "originalRequest": { + "url": { + "path": [ + "payments" + ], + "host": [ + "{{baseUrl}}" + ], + "query": [], + "variable": [] + }, + "header": [ + { + "disabled": false, + "description": { + "content": "(Required) Unique identifier created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json.", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppKey", + "value": "{{X-PROVIDER-API-AppKey}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Unique token created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppToken", + "value": "{{X-PROVIDER-API-AppToken}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Type of the content being sent.", + "type": "text/plain" + }, + "key": "Content-Type", + "value": "application/json" + }, + { + "disabled": false, + "description": { + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "type": "text/plain" + }, + "key": "Accept", + "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" + } + ], + "method": "POST", + "body": { + "mode": "raw", + "raw": "{\n \"reference\": \"32478982\",\n \"orderId\": \"v967373115140abc\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"paymentMethod\": \"Pix\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"value\": 4307.23,\n \"referenceValue\": 4307.23,\n \"currency\": \"BRL\",\n \"installments\": 1,\n \"deviceFingerprint\": \"15ace369587ha\",\n \"card\": {\n \"holder\": null,\n \"number\": null,\n \"csc\": null,\n \"expiration\": {\n \"month\": null,\n \"year\": null\n }\n },\n \"miniCart\": {\n \"shippingValue\": 11.44,\n \"taxValue\": 10.01,\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"cpf\",\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521999999999\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"132981\",\n \"name\": \"My First Product\",\n \"price\": 2134.9,\n \"quantity\": 2,\n \"discount\": 5\n },\n {\n \"id\": \"123242\",\n \"name\": \"My Second Product\",\n \"price\": 21.98,\n \"quantity\": 1,\n \"discount\": 1\n }\n ]\n },\n \"url\": \"https://admin.mystore.example.com/orders/v32478982\",\n \"callbackUrl\": \"https://api.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/v32478982\"\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } + }, + "status": "Internal Server Error", + "code": 500, + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"status\": \"error\",\n \"code\": \"ERR123\",\n \"message\": \"Authorization has failed due to an internal error\"\n}", + "cookie": [] + }, + { + "_": { + "postman_previewlanguage": "json" + }, + "id": "618ac527-3178-4f0d-a28d-3bbaa464a4d2", + "name": "Success Undefined", + "originalRequest": { + "url": { + "path": [ + "payments" + ], + "host": [ + "{{baseUrl}}" + ], + "query": [], + "variable": [] + }, + "header": [ + { + "disabled": false, + "description": { + "content": "(Required) Unique identifier created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json.", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppKey", + "value": "{{X-PROVIDER-API-AppKey}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Unique token created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppToken", + "value": "{{X-PROVIDER-API-AppToken}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Type of the content being sent.", + "type": "text/plain" + }, + "key": "Content-Type", + "value": "application/json" + }, + { + "disabled": false, + "description": { + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "type": "text/plain" + }, + "key": "Accept", + "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" + } + ], + "method": "POST", + "body": { + "mode": "raw", + "raw": "{\n \"reference\": \"32478982\",\n \"orderId\": \"v967373115140abc\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"paymentMethod\": \"Visa\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"value\": 4307.23,\n \"referenceValue\": 4000,\n \"currency\": \"BRL\",\n \"installments\": 3,\n \"deviceFingerprint\": \"12ade389087fe\",\n \"card\": {\n \"holder\": \"John Doe\",\n \"number\": \"4682185088924788\",\n \"csc\": \"021\",\n \"expiration\": {\n \"month\": \"06\",\n \"year\": \"2029\"\n }\n },\n \"miniCart\": {\n \"shippingValue\": 11.44,\n \"taxValue\": 10.01,\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"CPF\",\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521987654321\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"132981\",\n \"name\": \"My First Product\",\n \"price\": 2134.9,\n \"quantity\": 2,\n \"discount\": 5\n },\n {\n \"id\": \"123242\",\n \"name\": \"My Second Product\",\n \"price\": 21.98,\n \"quantity\": 1,\n \"discount\": 1\n }\n ]\n },\n \"url\": \"https://admin.mystore.example.com/orders/v32478982\",\n \"callbackUrl\": \"https://api.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/v32478982\"\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } + }, + "status": "Internal Server Error", + "code": 500, + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"status\": \"error\",\n \"code\": \"ERR123\",\n \"message\": \"Authorization has failed due to an internal error\"\n}", + "cookie": [] + }, + { + "_": { + "postman_previewlanguage": "json" + }, + "id": "4bc94029-5ea7-4a3a-8136-ee9802124930", + "name": "BankInvoice Success Undefined", + "originalRequest": { + "url": { + "path": [ + "payments" + ], + "host": [ + "{{baseUrl}}" + ], + "query": [], + "variable": [] + }, + "header": [ + { + "disabled": false, + "description": { + "content": "(Required) Unique identifier created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json.", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppKey", + "value": "{{X-PROVIDER-API-AppKey}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Unique token created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppToken", + "value": "{{X-PROVIDER-API-AppToken}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Type of the content being sent.", + "type": "text/plain" + }, + "key": "Content-Type", + "value": "application/json" + }, + { + "disabled": false, + "description": { + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "type": "text/plain" + }, + "key": "Accept", + "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" + } + ], + "method": "POST", + "body": { + "mode": "raw", + "raw": "{\n \"reference\": \"32478982\",\n \"orderId\": \"v967373115140abc\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"paymentMethod\": \"BankInvoice\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"value\": 4307.23,\n \"referenceValue\": 4307.23,\n \"currency\": \"BRL\",\n \"installments\": 1,\n \"deviceFingerprint\": \"12ade389087fe\",\n \"card\": {\n \"holder\": null,\n \"number\": null,\n \"csc\": null,\n \"expiration\": {\n \"month\": null,\n \"year\": null\n }\n },\n \"miniCart\": {\n \"shippingValue\": 11.44,\n \"taxValue\": 10.01,\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"CPF\",\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521987654321\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"132981\",\n \"name\": \"My First Product\",\n \"price\": 2134.9,\n \"quantity\": 2,\n \"discount\": 5\n },\n {\n \"id\": \"123242\",\n \"name\": \"My Second Product\",\n \"price\": 21.98,\n \"quantity\": 1,\n \"discount\": 1\n }\n ]\n },\n \"url\": \"https://admin.mystore.example.com/orders/v32478982\",\n \"callbackUrl\": \"https://api.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/v32478982\"\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } + }, + "status": "Internal Server Error", + "code": 500, + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"status\": \"error\",\n \"code\": \"ERR123\",\n \"message\": \"Authorization has failed due to an internal error\"\n}", + "cookie": [] + }, + { + "_": { + "postman_previewlanguage": "json" + }, + "id": "b2098e8c-47b5-4860-807b-70bcfadf857a", + "name": "Success Denied", + "originalRequest": { + "url": { + "path": [ + "payments" + ], + "host": [ + "{{baseUrl}}" + ], + "query": [], + "variable": [] + }, + "header": [ + { + "disabled": false, + "description": { + "content": "(Required) Unique identifier created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json.", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppKey", + "value": "{{X-PROVIDER-API-AppKey}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Unique token created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppToken", + "value": "{{X-PROVIDER-API-AppToken}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Type of the content being sent.", + "type": "text/plain" + }, + "key": "Content-Type", + "value": "application/json" + }, + { + "disabled": false, + "description": { + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "type": "text/plain" + }, + "key": "Accept", + "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" + } + ], + "method": "POST", + "body": { + "mode": "raw", + "raw": "{\n \"reference\": \"32478982\",\n \"orderId\": \"v967373115140abc\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"paymentMethod\": \"Visa\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"value\": 4307.23,\n \"referenceValue\": 4000,\n \"currency\": \"BRL\",\n \"installments\": 3,\n \"deviceFingerprint\": \"12ade389087fe\",\n \"card\": {\n \"holder\": \"John Doe\",\n \"number\": \"4682185088924788\",\n \"csc\": \"021\",\n \"expiration\": {\n \"month\": \"06\",\n \"year\": \"2029\"\n }\n },\n \"miniCart\": {\n \"shippingValue\": 11.44,\n \"taxValue\": 10.01,\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"CPF\",\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521987654321\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"132981\",\n \"name\": \"My First Product\",\n \"price\": 2134.9,\n \"quantity\": 2,\n \"discount\": 5\n },\n {\n \"id\": \"123242\",\n \"name\": \"My Second Product\",\n \"price\": 21.98,\n \"quantity\": 1,\n \"discount\": 1\n }\n ]\n },\n \"url\": \"https://admin.mystore.example.com/orders/v32478982\",\n \"callbackUrl\": \"https://api.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/v32478982\"\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } + }, + "status": "Internal Server Error", + "code": 500, + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"status\": \"error\",\n \"code\": \"ERR123\",\n \"message\": \"Authorization has failed due to an internal error\"\n}", + "cookie": [] + }, + { + "_": { + "postman_previewlanguage": "json" + }, + "id": "3a83b946-c58b-4117-bc4d-f0d01065a0bd", + "name": "BankInvoice Success Approved", + "originalRequest": { + "url": { + "path": [ + "payments" + ], + "host": [ + "{{baseUrl}}" + ], + "query": [], + "variable": [] + }, + "header": [ + { + "disabled": false, + "description": { + "content": "(Required) Unique identifier created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json.", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppKey", + "value": "{{X-PROVIDER-API-AppKey}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Unique token created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppToken", + "value": "{{X-PROVIDER-API-AppToken}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Type of the content being sent.", + "type": "text/plain" + }, + "key": "Content-Type", + "value": "application/json" + }, + { + "disabled": false, + "description": { + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "type": "text/plain" + }, + "key": "Accept", + "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" + } + ], + "method": "POST", + "body": { + "mode": "raw", + "raw": "{\n \"reference\": \"618272\",\n \"orderId\": \"1072430428324\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"2F023FD5A72A49D48A8633252B7CCBD6\",\n \"paymentId\": \"01693EB95BE443AC85874E395CD91565\",\n \"paymentMethod\": \"BankInvoice\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"card\": {\n \"holder\": \"null\",\n \"number\": \"null\",\n \"csc\": \"null\",\n \"expiration\": {\n \"month\": \"null\",\n \"year\": \"null\"\n }\n },\n \"document\": null,\n \"token\": null,\n \"value\": 31.9,\n \"referenceValue\": 31.9,\n \"currency\": \"BRL\",\n \"installments\": 1,\n \"installmentsInterestRate\": 0,\n \"installmentsValue\": 31.9,\n \"deviceFingerprint\": \"98073964\",\n \"ipAddress\": \"187.105.111.65\",\n \"miniCart\": {\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"cpf\",\n \"corporateName\": null,\n \"tradeName\": null,\n \"corporateDocument\": null,\n \"isCorporate\": false,\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521999999999\",\n \"createdDate\": \"2020-02-18T18:17:45\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"8\",\n \"name\": \"Tenis Preto I\",\n \"price\": 30.9,\n \"quantity\": 1,\n \"discount\": 0,\n \"deliveryType\": \"Normal\",\n \"categoryId\": \"5\",\n \"sellerId\": \"1\"\n }\n ],\n \"shippingValue\": 11.44,\n \"taxValue\": 10.01\n },\n \"url\": \"https://admin.mystore.example.com/orders?q=1072430428324\",\n \"callbackUrl\": \"https://api.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/1072430428324\",\n \"inboundRequestsUrl\": \"https://api.mystore.example.com/checkout/order/1072430428324/inbound-request/:action\",\n \"recipients\": [\n {\n \"id\": \"mymarketplace\",\n \"name\": \"My Marketplace QA\",\n \"documentType\": \"CNPJ\",\n \"document\": \"99999999999999\",\n \"role\": \"marketplace\",\n \"chargeProcessingFee\": true,\n \"chargebackLiable\": true,\n \"amount\": 31.9\n }\n ],\n \"merchantSettings\": [\n {\n \"name\": \"field1\",\n \"value\": \"value1\"\n },\n {\n \"name\": \"field2\",\n \"value\": \"value2\"\n }\n ]\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } + }, + "status": "Internal Server Error", + "code": 500, + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"status\": \"error\",\n \"code\": \"ERR123\",\n \"message\": \"Authorization has failed due to an internal error\"\n}", + "cookie": [] + }, + { + "_": { + "postman_previewlanguage": "json" + }, + "id": "b48e1241-46e9-4ff1-8d22-2e1ab33ad0bb", + "name": "Payment App + Inbound Request Success Undefined", + "originalRequest": { + "url": { + "path": [ + "payments" + ], + "host": [ + "{{baseUrl}}" + ], + "query": [], + "variable": [] + }, + "header": [ + { + "disabled": false, + "description": { + "content": "(Required) Unique identifier created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json.", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppKey", + "value": "{{X-PROVIDER-API-AppKey}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Unique token created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppToken", + "value": "{{X-PROVIDER-API-AppToken}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Type of the content being sent.", + "type": "text/plain" + }, + "key": "Content-Type", + "value": "application/json" + }, + { + "disabled": false, + "description": { + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "type": "text/plain" + }, + "key": "Accept", + "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" + } + ], + "method": "POST", + "body": { + "mode": "raw", + "raw": "{\n \"reference\": \"32478982\",\n \"orderId\": \"v967373115140abc\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"paymentMethod\": \"CustomPay\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"value\": 4307.23,\n \"referenceValue\": 4307.23,\n \"currency\": \"BRL\",\n \"installments\": 1,\n \"deviceFingerprint\": \"12ade389087fe\",\n \"card\": {\n \"holder\": null,\n \"number\": null,\n \"csc\": null,\n \"expiration\": {\n \"month\": null,\n \"year\": null\n }\n },\n \"miniCart\": {\n \"shippingValue\": 11.44,\n \"taxValue\": 10.01,\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"CPF\",\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521987654321\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"132981\",\n \"name\": \"My First Product\",\n \"price\": 2134.9,\n \"quantity\": 2,\n \"discount\": 5\n },\n {\n \"id\": \"123242\",\n \"name\": \"My Second Product\",\n \"price\": 21.98,\n \"quantity\": 1,\n \"discount\": 1\n }\n ]\n },\n \"url\": \"https://admin.mystore.example.com/orders/v32478982\",\n \"callbackUrl\": \"https://api.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/v32478982\",\n \"inboundRequestsUrl\": \"https://mystore.api.example.com/some-path/inbound-request/:action\"\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } + }, + "status": "Internal Server Error", + "code": 500, + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"status\": \"error\",\n \"code\": \"ERR123\",\n \"message\": \"Authorization has failed due to an internal error\"\n}", + "cookie": [] + }, + { + "_": { + "postman_previewlanguage": "json" + }, + "id": "c6b9b0b4-0658-4361-a4e4-1044f064458b", + "name": "Redirect Success Undefined", + "originalRequest": { + "url": { + "path": [ + "payments" + ], + "host": [ + "{{baseUrl}}" + ], + "query": [], + "variable": [] + }, + "header": [ + { + "disabled": false, + "description": { + "content": "(Required) Unique identifier created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json.", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppKey", + "value": "{{X-PROVIDER-API-AppKey}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Unique token created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppToken", + "value": "{{X-PROVIDER-API-AppToken}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Type of the content being sent.", + "type": "text/plain" + }, + "key": "Content-Type", + "value": "application/json" + }, + { + "disabled": false, + "description": { + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "type": "text/plain" + }, + "key": "Accept", + "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" + } + ], + "method": "POST", + "body": { + "mode": "raw", + "raw": "{\n \"reference\": \"32478982\",\n \"orderId\": \"v967373115140abc\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"paymentMethod\": \"FakePay\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"value\": 4307.23,\n \"referenceValue\": 4307.23,\n \"currency\": \"BRL\",\n \"installments\": 1,\n \"deviceFingerprint\": \"12ade389087fe\",\n \"card\": {\n \"holder\": null,\n \"number\": null,\n \"csc\": null,\n \"expiration\": {\n \"month\": null,\n \"year\": null\n }\n },\n \"miniCart\": {\n \"shippingValue\": 11.44,\n \"taxValue\": 10.01,\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"CPF\",\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521987654321\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"132981\",\n \"name\": \"My First Product\",\n \"price\": 2134.9,\n \"quantity\": 2,\n \"discount\": 5\n },\n {\n \"id\": \"123242\",\n \"name\": \"My Second Product\",\n \"price\": 21.98,\n \"quantity\": 1,\n \"discount\": 1\n }\n ]\n },\n \"url\": \"https://admin.mystore.example.com/orders/v32478982\",\n \"callbackUrl\": \"https://api.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/v32478982\"\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } + }, + "status": "Internal Server Error", + "code": 500, + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"status\": \"error\",\n \"code\": \"ERR123\",\n \"message\": \"Authorization has failed due to an internal error\"\n}", + "cookie": [] + }, + { + "_": { + "postman_previewlanguage": "json" + }, + "id": "a94cdd49-9b51-4586-9a35-664e27e63f7a", + "name": "Redirect Success Approved", + "originalRequest": { + "url": { + "path": [ + "payments" + ], + "host": [ + "{{baseUrl}}" + ], + "query": [], + "variable": [] + }, + "header": [ + { + "disabled": false, + "description": { + "content": "(Required) Unique identifier created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json.", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppKey", + "value": "{{X-PROVIDER-API-AppKey}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Unique token created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppToken", + "value": "{{X-PROVIDER-API-AppToken}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Type of the content being sent.", + "type": "text/plain" + }, + "key": "Content-Type", + "value": "application/json" + }, + { + "disabled": false, + "description": { + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "type": "text/plain" + }, + "key": "Accept", + "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" + } + ], + "method": "POST", + "body": { + "mode": "raw", + "raw": "{\n \"reference\": \"618272\",\n \"orderId\": \"1072430428324\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"2F023FD5A72A49D48A8633252B7CCBD6\",\n \"paymentId\": \"01693EB95BE443AC85874E395CD91565\",\n \"paymentMethod\": \"RedirectPay\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"value\": 31.9,\n \"referenceValue\": 31.9,\n \"currency\": \"BRL\",\n \"installments\": 1,\n \"installmentsInterestRate\": 0,\n \"installmentsValue\": 31.9,\n \"deviceFingerprint\": \"75076388\",\n \"ipAddress\": \"187.105.111.65\",\n \"miniCart\": {\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"cpf\",\n \"corporateName\": null,\n \"tradeName\": null,\n \"corporateDocument\": null,\n \"isCorporate\": false,\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521999999999\",\n \"createdDate\": \"2020-02-18T18:17:45\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"8\",\n \"name\": \"Tenis Preto I\",\n \"price\": 30.9,\n \"quantity\": 1,\n \"discount\": 0,\n \"deliveryType\": \"Normal\",\n \"categoryId\": \"5\",\n \"sellerId\": \"1\"\n }\n ],\n \"shippingValue\": 1,\n \"taxValue\": 0\n },\n \"url\": \"https://admin.mystore.example.com/orders/v32478982\",\n \"callbackUrl\": \"https://api.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/v32478982\",\n \"inboundRequestsUrl\": \"https://api.mystore.example.com/checkout/order/1072430428324/inbound-request/:action\",\n \"recipients\": [\n {\n \"id\": \"mymarketplace\",\n \"name\": \"My Marketplace QA\",\n \"documentType\": \"CNPJ\",\n \"document\": \"99999999999999\",\n \"role\": \"marketplace\",\n \"chargeProcessingFee\": true,\n \"chargebackLiable\": true,\n \"amount\": 31.9\n }\n ],\n \"merchantSettings\": [\n {\n \"name\": \"field1\",\n \"value\": \"value1\"\n },\n {\n \"name\": \"field2\",\n \"value\": \"value2\"\n }\n ]\n}", + "options": { + "raw": { + "headerFamily": "json", + "language": "json" + } + } + } + }, + "status": "Internal Server Error", + "code": 500, + "header": [ + { + "key": "Content-Type", + "value": "application/json" + } + ], + "body": "{\n \"status\": \"error\",\n \"code\": \"ERR123\",\n \"message\": \"Authorization has failed due to an internal error\"\n}", + "cookie": [] + }, + { + "_": { + "postman_previewlanguage": "json" + }, + "id": "63e17628-a20e-4860-b2ca-296b59739446", + "name": "Fail Generic Error", + "originalRequest": { + "url": { + "path": [ + "payments" + ], + "host": [ + "{{baseUrl}}" + ], + "query": [], + "variable": [] + }, + "header": [ + { + "disabled": false, + "description": { + "content": "(Required) Unique identifier created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json.", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppKey", + "value": "{{X-PROVIDER-API-AppKey}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Unique token created by the provider and configured on the provider configuration page (Admin VTEX). To use this header as authorization, check that the `usesProviderHeadersName` field is set to `true` in the payment provider's `configuration.json`. To check the `configuration.json` file, access the route {{connector}}/paymentProvider/configuration.json", + "type": "text/plain" + }, + "key": "X-PROVIDER-API-AppToken", + "value": "{{X-PROVIDER-API-AppToken}}" + }, + { + "disabled": false, + "description": { + "content": "(Required) Type of the content being sent.", + "type": "text/plain" + }, + "key": "Content-Type", + "value": "application/json" + }, + { + "disabled": false, + "description": { + "content": "(Required) HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.", + "type": "text/plain" + }, + "key": "Accept", + "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" } ], "method": "POST", "body": { "mode": "raw", - "raw": "{\n \"reference\": \"618272\",\n \"orderId\": \"1072430428324\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"2F023FD5A72A49D48A8633252B7CCBD6\",\n \"paymentId\": \"01693EB95BE443AC85874E395CD91565\",\n \"paymentMethod\": \"Diners\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"card\": {\n \"holder\": \"John Doe\",\n \"number\": \"364901****2661\",\n \"csc\": \"***\",\n \"expiration\": {\n \"month\": \"12\",\n \"year\": \"2020\"\n },\n \"document\": \"39295416023\",\n \"token\": null\n },\n \"value\": 31.9,\n \"referenceValue\": 31.9,\n \"currency\": \"BRL\",\n \"installments\": 1,\n \"installmentsInterestRate\": 0,\n \"installmentsValue\": 31.9,\n \"deviceFingerprint\": \"75076388\",\n \"ipAddress\": \"187.105.111.65\",\n \"miniCart\": {\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"cpf\",\n \"corporateName\": null,\n \"tradeName\": null,\n \"corporateDocument\": null,\n \"isCorporate\": false,\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521999999999\",\n \"createdDate\": \"2020-02-18T18:17:45\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"8\",\n \"name\": \"Tenis Preto I\",\n \"price\": 30.9,\n \"quantity\": 1,\n \"discount\": 0,\n \"deliveryType\": \"Normal\",\n \"categoryId\": \"5\",\n \"sellerId\": \"1\"\n }\n ],\n \"shippingValue\": 1,\n \"taxValue\": 0\n },\n \"url\": \"https://admin.mystore.example.com/orders?q=1072430428324\",\n \"callbackUrl\": \"https://api.mystore.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/1072430428324\",\n \"inboundRequestsUrl\": \"https://api.mystore.example.com/checkout/order/1072430428324/inbound-request/:action\",\n \"recipients\": [\n {\n \"id\": \"mymarketplace\",\n \"name\": \"My Marketplace QA\",\n \"documentType\": \"CNPJ\",\n \"document\": \"99999999999999\",\n \"role\": \"marketplace\",\n \"chargeProcessingFee\": true,\n \"chargebackLiable\": true,\n \"amount\": 31.9\n }\n ],\n \"merchantSettings\": [\n {\n \"name\": \"field1\",\n \"value\": \"value1\"\n },\n {\n \"name\": \"field2\",\n \"value\": \"value2\"\n }\n ],\n \"connectorMetadata\": [\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n }\n ]\n}", + "raw": "{\n \"reference\": \"32478982\",\n \"orderId\": \"v967373115140abc\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"paymentMethod\": \"Visa\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"value\": 4307.23,\n \"referenceValue\": 4000,\n \"currency\": \"BRL\",\n \"installments\": 3,\n \"deviceFingerprint\": \"12ade389087fe\",\n \"card\": {\n \"holder\": \"John Doe\",\n \"number\": \"4682185088924788\",\n \"csc\": \"021\",\n \"expiration\": {\n \"month\": \"06\",\n \"year\": \"2029\"\n }\n },\n \"miniCart\": {\n \"shippingValue\": 11.44,\n \"taxValue\": 10.01,\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"CPF\",\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521987654321\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"132981\",\n \"name\": \"My First Product\",\n \"price\": 2134.9,\n \"quantity\": 2,\n \"discount\": 5\n },\n {\n \"id\": \"123242\",\n \"name\": \"My Second Product\",\n \"price\": 21.98,\n \"quantity\": 1,\n \"discount\": 1\n }\n ]\n },\n \"url\": \"https://admin.mystore.example.com/orders/v32478982\",\n \"callbackUrl\": \"https://api.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/v32478982\"\n}", "options": { "raw": { + "headerFamily": "json", "language": "json" } } } }, - "status": "Bad Request", - "code": 400, + "status": "Internal Server Error", + "code": 500, "header": [ { "key": "Content-Type", "value": "application/json" } ], - "body": "{\n \"status\": \"error\",\n \"code\": \"ERR123\",\n \"message\": \"The currency ABC is not supported\"\n}", + "body": "{\n \"status\": \"error\",\n \"code\": \"ERR123\",\n \"message\": \"Authorization has failed due to an internal error\"\n}", "cookie": [] }, { "_": { "postman_previewlanguage": "json" }, - "id": "339e433f-2dba-41e8-87e9-1775f73e54b9", - "name": "Internal Server Error", + "id": "3507ce28-fc96-4351-ac33-9edf3008556f", + "name": "Fail Bad Request", "originalRequest": { "url": { "path": [ @@ -460,27 +3254,9 @@ "{{baseUrl}}" ], "query": [], - "variable": [ - { - "description": { - "content": "Payment provider endpoint URL.", - "type": "text/plain" - }, - "type": "any", - "value": "{{providerApiEndpoint}}", - "key": "providerApiEndpoint" - } - ] + "variable": [] }, "header": [ - { - "description": { - "content": "Added as a part of security scheme: apikey", - "type": "text/plain" - }, - "key": "X-VTEX-API-AppKey", - "value": "" - }, { "disabled": false, "description": { @@ -517,17 +3293,30 @@ "key": "Accept", "value": "application/json" }, + { + "key": "Content-Type", + "value": "application/json" + }, { "key": "Accept", "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" } ], "method": "POST", "body": { "mode": "raw", - "raw": "{\n \"reference\": \"618272\",\n \"orderId\": \"1072430428324\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"2F023FD5A72A49D48A8633252B7CCBD6\",\n \"paymentId\": \"01693EB95BE443AC85874E395CD91565\",\n \"paymentMethod\": \"Diners\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"card\": {\n \"holder\": \"John Doe\",\n \"number\": \"364901****2661\",\n \"csc\": \"***\",\n \"expiration\": {\n \"month\": \"12\",\n \"year\": \"2020\"\n },\n \"document\": \"39295416023\",\n \"token\": null\n },\n \"value\": 31.9,\n \"referenceValue\": 31.9,\n \"currency\": \"BRL\",\n \"installments\": 1,\n \"installmentsInterestRate\": 0,\n \"installmentsValue\": 31.9,\n \"deviceFingerprint\": \"75076388\",\n \"ipAddress\": \"187.105.111.65\",\n \"miniCart\": {\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"cpf\",\n \"corporateName\": null,\n \"tradeName\": null,\n \"corporateDocument\": null,\n \"isCorporate\": false,\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521999999999\",\n \"createdDate\": \"2020-02-18T18:17:45\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"8\",\n \"name\": \"Tenis Preto I\",\n \"price\": 30.9,\n \"quantity\": 1,\n \"discount\": 0,\n \"deliveryType\": \"Normal\",\n \"categoryId\": \"5\",\n \"sellerId\": \"1\"\n }\n ],\n \"shippingValue\": 1,\n \"taxValue\": 0\n },\n \"url\": \"https://admin.mystore.example.com/orders?q=1072430428324\",\n \"callbackUrl\": \"https://api.mystore.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/1072430428324\",\n \"inboundRequestsUrl\": \"https://api.mystore.example.com/checkout/order/1072430428324/inbound-request/:action\",\n \"recipients\": [\n {\n \"id\": \"mymarketplace\",\n \"name\": \"My Marketplace QA\",\n \"documentType\": \"CNPJ\",\n \"document\": \"99999999999999\",\n \"role\": \"marketplace\",\n \"chargeProcessingFee\": true,\n \"chargebackLiable\": true,\n \"amount\": 31.9\n }\n ],\n \"merchantSettings\": [\n {\n \"name\": \"field1\",\n \"value\": \"value1\"\n },\n {\n \"name\": \"field2\",\n \"value\": \"value2\"\n }\n ],\n \"connectorMetadata\": [\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n }\n ]\n}", + "raw": "{\n \"reference\": \"32478982\",\n \"orderId\": \"v967373115140abc\",\n \"shopperInteraction\": \"ecommerce\",\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"paymentMethod\": \"Visa\",\n \"paymentMethodCustomCode\": null,\n \"merchantName\": \"mystore\",\n \"value\": 4307.23,\n \"referenceValue\": 4000,\n \"currency\": \"BRL\",\n \"installments\": 3,\n \"deviceFingerprint\": \"12ade389087fe\",\n \"card\": {\n \"holder\": \"John Doe\",\n \"number\": \"4682185088924788\",\n \"csc\": \"021\",\n \"expiration\": {\n \"month\": \"06\",\n \"year\": \"2029\"\n }\n },\n \"miniCart\": {\n \"shippingValue\": 11.44,\n \"taxValue\": 10.01,\n \"buyer\": {\n \"id\": \"c1245228-1c68-11e6-94ac-0afa86a846a5\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"document\": \"01234567890\",\n \"documentType\": \"CPF\",\n \"email\": \"john.doe@example.com\",\n \"phone\": \"+5521987654321\"\n },\n \"shippingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Praia de Botafogo St.\",\n \"number\": \"300\",\n \"complement\": \"3rd Floor\",\n \"neighborhood\": \"Botafogo\",\n \"postalCode\": \"22250040\",\n \"city\": \"Rio de Janeiro\",\n \"state\": \"RJ\"\n },\n \"billingAddress\": {\n \"country\": \"BRA\",\n \"street\": \"Brigadeiro Faria Lima Avenue\",\n \"number\": \"4440\",\n \"complement\": \"10th Floor\",\n \"neighborhood\": \"Itaim Bibi\",\n \"postalCode\": \"04538132\",\n \"city\": \"São Paulo\",\n \"state\": \"SP\"\n },\n \"items\": [\n {\n \"id\": \"132981\",\n \"name\": \"My First Product\",\n \"price\": 2134.9,\n \"quantity\": 2,\n \"discount\": 5\n },\n {\n \"id\": \"123242\",\n \"name\": \"My Second Product\",\n \"price\": 21.98,\n \"quantity\": 1,\n \"discount\": 1\n }\n ]\n },\n \"url\": \"https://admin.mystore.example.com/orders/v32478982\",\n \"callbackUrl\": \"https://api.example.com/some-path/to-notify/status-changes?an=mystore\",\n \"returnUrl\": \"https://mystore.example.com/checkout/order/v32478982\"\n}", "options": { "raw": { + "headerFamily": "json", "language": "json" } } @@ -549,13 +3338,13 @@ { "listen": "test", "script": { - "id": "caea41a0-6b93-49fb-8af5-d297cab09608", + "id": "61350ef5-14d3-4b5c-9592-195b8a0e4f8c", "type": "text/javascript", "exec": [ "// Validate status 2xx \npm.test(\"[POST]::/payments - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", "// Validate if response header has matching content-type\npm.test(\"[POST]::/payments - Content-Type is application/json\", function () {\n pm.expect(pm.response.headers.get(\"Content-Type\")).to.include(\"application/json\");\n});\n", "// Validate if response has JSON Body \npm.test(\"[POST]::/payments - Response has JSON Body\", function () {\n pm.response.to.have.jsonBody();\n});\n", - "// Response Validation\nconst schema = {\"required\":[\"paymentId\",\"status\",\"authorizationId\",\"tid\",\"nsu\",\"acquirer\",\"delayToAutoSettle\",\"delayToAutoSettleAfterAntifraud\",\"delayToCancel\"],\"type\":\"object\",\"description\":\"Create payment response body information.\",\"properties\":{\"paymentId\":{\"type\":\"string\",\"description\":\"VTEX identifier for this payment. The same sent in the request.\"},\"status\":{\"type\":\"string\",\"description\":\"The Provider's status for this payment. Must be one of three values:\\r\\n\\r\\n- `approved`\\r\\n- `denied`\\r\\n- `undefined`.\"},\"authorizationId\":{\"type\":\"string\",\"description\":\"Provider's unique identifier for the authorization. Should be sent when the payment is authorized. In other statuses, it should be absent or `null`.\"},\"bankIssueInvoiceId\":{\"type\":\"string\",\"description\":\"This field is deprecated, please use `paymentUrl` instead. The bank invoice URL to be presented to the end user.\"},\"paymentUrl\":{\"type\":[\"string\",\"null\"],\"description\":\"When the payment is via bank invoice, this should be the invoice URL to be presented to the user. If the payment requires the redirection of the user, this should be the URL to redirect the user. If neither is the case, then this should be absent.\"},\"paymentAppData\":{\"type\":\"object\",\"description\":\"Object which indicates that a [Payment App](https://developers.vtex.com/docs/guides/payments-integration-payment-app) is needed to finish the payment. This object contains the data to be used by the Payment App.\",\"required\":[\"appName\",\"payload\"],\"properties\":{\"appName\":{\"type\":\"string\",\"description\":\"Indicates which VTEX IO app that will handle the payment flow at Checkout.\"},\"payload\":{\"type\":\"string\",\"description\":\"The payload that will be sent to your app, like a serialized JSON, for example.\"}}},\"identificationNumber\":{\"type\":\"string\",\"description\":\"The bank invoice unformatted identification number. Should only be present when the payment is made via bank invoice.\"},\"identificationNumberFormatted\":{\"type\":\"string\",\"description\":\"The bank invoice formatted identification number that will be presented to the end user.\"},\"barCodeImageType\":{\"type\":\"string\",\"description\":\"The bank invoice barcode image type. For instance, \\\"i25\\\" for Brazilian *Boleto Bancário*. Should only be present when the payment is made via bank invoice.\"},\"barCodeImageNumber\":{\"type\":\"string\",\"description\":\"The bank invoice number to generate a barcode (must follow any regulations/specifications for targeted countries). Should only be present when the payment is made via bank invoice.\"},\"tid\":{\"type\":\"string\",\"description\":\"Provider's unique identifier for the transaction.\"},\"nsu\":{\"type\":[\"string\",\"null\"],\"description\":\"Provider's unique sequential number for the transaction.\"},\"acquirer\":{\"type\":[\"string\",\"null\"],\"description\":\"Acquirer name (mostly used for card payments).\"},\"redirectUrl\":{\"type\":\"string\",\"description\":\"This field is deprecated, please use `paymentUrl` instead. The URL the end user needs to be redirected to (external authentication, 3DS, etc).\"},\"code\":{\"type\":[\"string\",\"null\"],\"description\":\"Provider's operation/error code to be logged.\"},\"message\":{\"type\":[\"string\",\"null\"],\"description\":\"Provider's operation/error message to be logged.\"},\"delayToAutoSettle\":{\"type\":\"integer\",\"description\":\"Total time (in seconds) before we make an automatic call to `/settlements`, regardless of whether the payment was approved by the merchant's anti-fraud provider or not. The maximum time allowed to wait for an auto capture is 604800 seconds (7 days).\"},\"delayToAutoSettleAfterAntifraud\":{\"type\":\"integer\",\"description\":\"Total time (in seconds) before we make an automatic call to `/settlements` after merchant's antifraud approval.\"},\"delayToCancel\":{\"type\":\"integer\",\"description\":\"Total time (in seconds) to wait for an authorization and make an automatic call to `/cancellations` to cancel the payment. The minimum value is 10 minutes (600 seconds). **NOTE 1**: If you set this field to a time period less than 24 hours (86399 seconds or less), the gateway will retry processing the payment every 1 hour. If you use a value of 24 hours (86400 seconds) or more in this field, the gateway will retry processing the payment every 4 hours. **NOTE 2**: For `delayToCancel` values between 5 minutes and 1 hour (300 and 3600 seconds), or when payment is made by [PIX](https://developers.vtex.com/docs/guides/payments-integration-pix-instant-payments-in-brazil) (Brazilian instant payment method), retry calls will occur every 5 minutes.\"},\"maxValue\":{\"type\":\"integer\",\"description\":\"The maximum value for this payment. This field allows changes to be made to transactions to settle larger amounts as a result of order changes.\"},\"connectorMetadata\":{\"type\":\"array\",\"description\":\"Array containing metadata fields sent from the provider to the payment gateway.\",\"items\":{\"type\":\"object\",\"description\":\"Metadata fields information.\",\"required\":[\"name\",\"value\"],\"properties\":{\"name\":{\"type\":\"string\",\"description\":\"The name of the metadata to be stored in the gateway (limited to 20 characters).\"},\"value\":{\"type\":\"string\",\"description\":\"The value of the metadata stored (limited to 200 characters).\"}}}}}}\n\n// Validate if response matches JSON schema \npm.test(\"[POST]::/payments - Schema is valid\", function() {\n pm.response.to.have.jsonSchema(schema,{unknownFormats: [\"int32\", \"int64\", \"float\", \"double\"]});\n});\n" + "// Response Validation\nconst schema = {\"required\":[\"paymentId\",\"status\",\"authorizationId\",\"tid\",\"nsu\",\"acquirer\",\"delayToAutoSettle\",\"delayToAutoSettleAfterAntifraud\",\"delayToCancel\"],\"type\":\"object\",\"description\":\"Create payment response body information.\",\"properties\":{\"paymentId\":{\"type\":\"string\",\"description\":\"VTEX identifier for this payment. The same sent in the request.\"},\"status\":{\"type\":\"string\",\"description\":\"The Provider's status for this payment. Must be one of three values:\\r\\n\\r\\n- `approved`\\r\\n- `denied`\\r\\n- `undefined`.\"},\"authorizationId\":{\"type\":\"string\",\"description\":\"Provider's unique identifier for the authorization. Should be sent when the payment is authorized. In other statuses, it should be absent or `null`.\"},\"bankIssueInvoiceId\":{\"type\":\"string\",\"description\":\"This field is deprecated, please use `paymentUrl` instead. The bank invoice URL to be presented to the end user.\"},\"paymentUrl\":{\"type\":[\"string\",\"null\"],\"description\":\"When the payment is via bank invoice, this should be the invoice URL to be presented to the user. If the payment requires the redirection of the user, this should be the URL to redirect the user. If neither is the case, then this should be absent.\"},\"paymentAppData\":{\"type\":\"object\",\"description\":\"Object which indicates that a [Payment App](https://developers.vtex.com/docs/guides/payments-integration-payment-app) is needed to finish the payment. This object contains the data to be used by the Payment App.\",\"required\":[\"appName\",\"payload\"],\"properties\":{\"appName\":{\"type\":\"string\",\"description\":\"Indicates which VTEX IO app that will handle the payment flow at Checkout.\"},\"payload\":{\"type\":\"string\",\"description\":\"The payload that will be sent to your app, like a serialized JSON, for example.\"}}},\"identificationNumber\":{\"type\":\"string\",\"description\":\"The bank invoice unformatted identification number. Should only be present when the payment is made via bank invoice.\"},\"identificationNumberFormatted\":{\"type\":\"string\",\"description\":\"The bank invoice formatted identification number that will be presented to the end user.\"},\"barCodeImageType\":{\"type\":\"string\",\"description\":\"The bank invoice barcode image type. For instance, \\\"i25\\\" for Brazilian *Boleto Bancário*. Should only be present when the payment is made via bank invoice.\"},\"barCodeImageNumber\":{\"type\":\"string\",\"description\":\"The bank invoice number to generate a barcode (must follow any regulations/specifications for targeted countries). Should only be present when the payment is made via bank invoice.\"},\"tid\":{\"type\":\"string\",\"description\":\"Provider's unique identifier for the transaction.\"},\"nsu\":{\"type\":[\"string\",\"null\"],\"description\":\"Provider's unique sequential number for the transaction.\"},\"acquirer\":{\"type\":[\"string\",\"null\"],\"description\":\"Acquirer name (mostly used for card payments).\"},\"redirectUrl\":{\"type\":\"string\",\"description\":\"This field is deprecated, please use `paymentUrl` instead. The URL the end user needs to be redirected to (external authentication, 3DS, etc).\"},\"code\":{\"type\":[\"string\",\"null\"],\"description\":\"Provider's operation/error code to be logged.\"},\"message\":{\"type\":[\"string\",\"null\"],\"description\":\"Provider's operation/error message to be logged.\"},\"delayToAutoSettle\":{\"type\":\"integer\",\"description\":\"Total time (in seconds) before we make an automatic call to `/settlements`, regardless of whether the payment was approved by the merchant's anti-fraud provider or not. The maximum time allowed to wait for an auto capture is 604800 seconds (7 days).\"},\"delayToAutoSettleAfterAntifraud\":{\"type\":\"integer\",\"description\":\"Total time (in seconds) before we make an automatic call to `/settlements` after merchant's antifraud approval.\"},\"delayToCancel\":{\"type\":\"integer\",\"description\":\"Total time (in seconds) to wait for an authorization and make an automatic call to `/cancellations` to cancel the payment. The minimum value is 10 minutes (600 seconds). **NOTE 1**: If you set this field to a time period less than 24 hours (86399 seconds or less), the gateway will retry processing the payment every 1 hour. If you use a value of 24 hours (86400 seconds) or more in this field, the gateway will retry processing the payment every 4 hours. **NOTE 2**: For `delayToCancel` values between 5 minutes and 1 hour (300 and 3600 seconds), or when payment is made by [PIX](https://developers.vtex.com/docs/guides/payments-integration-pix-instant-payments-in-brazil) (Brazilian instant payment method), retry calls will occur every 5 minutes. **NOTE 3**: The maximum value allowed for the `delayToCancel` is 30 days (2592000 seconds).\"},\"maxValue\":{\"type\":\"integer\",\"description\":\"The maximum value for this payment. This field allows changes to be made to transactions to settle larger amounts as a result of order changes.\"},\"connectorMetadata\":{\"type\":\"array\",\"description\":\"Array containing metadata fields sent from the provider to the payment gateway.\",\"items\":{\"type\":\"object\",\"description\":\"Metadata fields information.\",\"required\":[\"name\",\"value\"],\"properties\":{\"name\":{\"type\":\"string\",\"description\":\"The name of the metadata to be stored in the gateway (limited to 20 characters).\"},\"value\":{\"type\":\"string\",\"description\":\"The value of the metadata stored (limited to 200 characters).\"}}}}}}\n\n// Validate if response matches JSON schema \npm.test(\"[POST]::/payments - Schema is valid\", function() {\n pm.response.to.have.jsonSchema(schema,{unknownFormats: [\"int32\", \"int64\", \"float\", \"double\"]});\n});\n" ] } } @@ -565,7 +3354,7 @@ } }, { - "id": "d44a489d-fb57-4507-b96a-a946a336dfca", + "id": "4da7cbac-e5c6-4a11-b707-f674a00472cb", "name": "Cancel payment", "request": { "name": "Cancel payment", @@ -593,15 +3382,6 @@ "type": "any", "value": "F5C1A4E20D3B4E07B7E871F5B5BC9F91", "key": "paymentId" - }, - { - "description": { - "content": "Payment provider endpoint URL.", - "type": "text/plain" - }, - "type": "any", - "value": "{{providerApiEndpoint}}", - "key": "providerApiEndpoint" } ] }, @@ -641,6 +3421,14 @@ }, "key": "Accept", "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" } ], "method": "POST", @@ -649,6 +3437,7 @@ "raw": "{\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"requestId\": \"D12D9B80972C462980F5067A3A126837\",\n \"authorizationId\": \"5784589\",\n \"tid\": \"10022005181543584603\",\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"nsu\": \"NSU987432\",\n \"sandboxMode\": false,\n \"merchantSettings\": [\n {\n \"name\": \"Public Merchant ID Test.\",\n \"value\": \"1\"\n },\n {\n \"name\": \"Public Merchant ID Test.\",\n \"value\": \"1\"\n }\n ],\n \"connectorMetadata\": [\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n },\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n }\n ]\n}", "options": { "raw": { + "headerFamily": "json", "language": "json" } } @@ -679,7 +3468,7 @@ "_": { "postman_previewlanguage": "json" }, - "id": "bf98ba3e-10bd-4f1a-915d-345cf22b5f65", + "id": "4ed835ae-12b6-4e56-a4ce-e17362e2836a", "name": "OK", "originalRequest": { "url": { @@ -692,37 +3481,9 @@ "{{baseUrl}}" ], "query": [], - "variable": [ - { - "disabled": false, - "description": { - "content": "(Required) VTEX payment identifier.", - "type": "text/plain" - }, - "type": "any", - "value": "F5C1A4E20D3B4E07B7E871F5B5BC9F91", - "key": "paymentId" - }, - { - "description": { - "content": "Payment provider endpoint URL.", - "type": "text/plain" - }, - "type": "any", - "value": "{{providerApiEndpoint}}", - "key": "providerApiEndpoint" - } - ] + "variable": [] }, "header": [ - { - "description": { - "content": "Added as a part of security scheme: apikey", - "type": "text/plain" - }, - "key": "X-VTEX-API-AppKey", - "value": "" - }, { "disabled": false, "description": { @@ -759,9 +3520,21 @@ "key": "Accept", "value": "application/json" }, + { + "key": "Content-Type", + "value": "application/json" + }, { "key": "Accept", "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" } ], "method": "POST", @@ -770,6 +3543,7 @@ "raw": "{\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"requestId\": \"D12D9B80972C462980F5067A3A126837\",\n \"authorizationId\": \"5784589\",\n \"tid\": \"10022005181543584603\",\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"nsu\": \"NSU987432\",\n \"sandboxMode\": false,\n \"merchantSettings\": [\n {\n \"name\": \"Public Merchant ID Test.\",\n \"value\": \"1\"\n },\n {\n \"name\": \"Public Merchant ID Test.\",\n \"value\": \"1\"\n }\n ],\n \"connectorMetadata\": [\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n },\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n }\n ]\n}", "options": { "raw": { + "headerFamily": "json", "language": "json" } } @@ -790,7 +3564,7 @@ "_": { "postman_previewlanguage": "json" }, - "id": "52bb19d2-ca1d-4530-8eb0-3b2f426ee945", + "id": "1229856d-1ad5-4c18-b8fe-412aa4d3f0f7", "name": "Internal Server Error", "originalRequest": { "url": { @@ -803,37 +3577,9 @@ "{{baseUrl}}" ], "query": [], - "variable": [ - { - "disabled": false, - "description": { - "content": "(Required) VTEX payment identifier.", - "type": "text/plain" - }, - "type": "any", - "value": "F5C1A4E20D3B4E07B7E871F5B5BC9F91", - "key": "paymentId" - }, - { - "description": { - "content": "Payment provider endpoint URL.", - "type": "text/plain" - }, - "type": "any", - "value": "{{providerApiEndpoint}}", - "key": "providerApiEndpoint" - } - ] + "variable": [] }, "header": [ - { - "description": { - "content": "Added as a part of security scheme: apikey", - "type": "text/plain" - }, - "key": "X-VTEX-API-AppKey", - "value": "" - }, { "disabled": false, "description": { @@ -870,9 +3616,21 @@ "key": "Accept", "value": "application/json" }, + { + "key": "Content-Type", + "value": "application/json" + }, { "key": "Accept", "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" } ], "method": "POST", @@ -881,6 +3639,7 @@ "raw": "{\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"requestId\": \"D12D9B80972C462980F5067A3A126837\",\n \"authorizationId\": \"5784589\",\n \"tid\": \"10022005181543584603\",\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"nsu\": \"NSU987432\",\n \"sandboxMode\": false,\n \"merchantSettings\": [\n {\n \"name\": \"Public Merchant ID Test.\",\n \"value\": \"1\"\n },\n {\n \"name\": \"Public Merchant ID Test.\",\n \"value\": \"1\"\n }\n ],\n \"connectorMetadata\": [\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n },\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n }\n ]\n}", "options": { "raw": { + "headerFamily": "json", "language": "json" } } @@ -901,7 +3660,7 @@ "_": { "postman_previewlanguage": "json" }, - "id": "ff1bc14f-62b1-4407-a655-2f3e94276b3e", + "id": "d9787f06-38a2-4a9c-9024-690f075ce463", "name": "Not Implemented", "originalRequest": { "url": { @@ -914,37 +3673,9 @@ "{{baseUrl}}" ], "query": [], - "variable": [ - { - "disabled": false, - "description": { - "content": "(Required) VTEX payment identifier.", - "type": "text/plain" - }, - "type": "any", - "value": "F5C1A4E20D3B4E07B7E871F5B5BC9F91", - "key": "paymentId" - }, - { - "description": { - "content": "Payment provider endpoint URL.", - "type": "text/plain" - }, - "type": "any", - "value": "{{providerApiEndpoint}}", - "key": "providerApiEndpoint" - } - ] + "variable": [] }, "header": [ - { - "description": { - "content": "Added as a part of security scheme: apikey", - "type": "text/plain" - }, - "key": "X-VTEX-API-AppKey", - "value": "" - }, { "disabled": false, "description": { @@ -981,9 +3712,21 @@ "key": "Accept", "value": "application/json" }, + { + "key": "Content-Type", + "value": "application/json" + }, { "key": "Accept", "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" } ], "method": "POST", @@ -992,6 +3735,7 @@ "raw": "{\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"requestId\": \"D12D9B80972C462980F5067A3A126837\",\n \"authorizationId\": \"5784589\",\n \"tid\": \"10022005181543584603\",\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"nsu\": \"NSU987432\",\n \"sandboxMode\": false,\n \"merchantSettings\": [\n {\n \"name\": \"Public Merchant ID Test.\",\n \"value\": \"1\"\n },\n {\n \"name\": \"Public Merchant ID Test.\",\n \"value\": \"1\"\n }\n ],\n \"connectorMetadata\": [\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n },\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n }\n ]\n}", "options": { "raw": { + "headerFamily": "json", "language": "json" } } @@ -1013,7 +3757,7 @@ { "listen": "test", "script": { - "id": "b55eced2-9725-4186-bebe-8cf455be9dd3", + "id": "023bc171-d238-4627-a436-29c7cb56006e", "type": "text/javascript", "exec": [ "// Validate status 2xx \npm.test(\"[POST]::/payments/:paymentId/cancellations - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", @@ -1029,7 +3773,7 @@ } }, { - "id": "18f21ae4-42bb-4fba-be0b-ae2df22547b2", + "id": "ee77de1f-0a7a-42ea-9a84-347c84056b9b", "name": "Settle payment", "request": { "name": "Settle payment", @@ -1057,15 +3801,6 @@ "type": "any", "value": "F5C1A4E20D3B4E07B7E871F5B5BC9F91", "key": "paymentId" - }, - { - "description": { - "content": "Payment provider endpoint URL.", - "type": "text/plain" - }, - "type": "any", - "value": "{{providerApiEndpoint}}", - "key": "providerApiEndpoint" } ] }, @@ -1105,14 +3840,23 @@ }, "key": "Accept", "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" } ], "method": "POST", "body": { "mode": "raw", - "raw": "{\n \"transactionId\": \"conse\",\n \"requestId\": \"ut sunt cillum consequat\",\n \"paymentId\": \"anim dolore eu magna\",\n \"value\": -7731696.580490872,\n \"authorizationId\": \"eiusmod consectetur \",\n \"tid\": \"sunt reprehenderit sit\",\n \"nsu\": \"irure do in aliqua\",\n \"recipients\": [\n {\n \"id\": \"amet ullamco\",\n \"name\": \"dolore occaecat aliqua elit\",\n \"documentType\": \"Lorem velit dolor voluptate\",\n \"document\": \"cillum in\",\n \"role\": \"ut ut\",\n \"amount\": 35829039.21024272,\n \"chargeProcessingFee\": true,\n \"chargebackLiable\": true,\n \"commissionAmount\": -86599554.10297346\n },\n {\n \"id\": \"voluptate dolor reprehenderit\",\n \"name\": \"irure minim labore laboris\",\n \"documentType\": \"velit elit Ut labore irure\",\n \"document\": \"tempor laborum\",\n \"role\": \"ut exercitation dolore\",\n \"amount\": -23591312.900243804,\n \"chargeProcessingFee\": false,\n \"chargebackLiable\": false,\n \"commissionAmount\": 21059234.276404306\n }\n ],\n \"sandboxMode\": false,\n \"merchantSettings\": [\n {\n \"name\": \"deserunt\",\n \"value\": \"pariatur\"\n },\n {\n \"name\": \"qui consequat ut aute\",\n \"value\": \"voluptate sunt in cupidatat\"\n }\n ],\n \"connectorMetadata\": [\n {\n \"name\": \"dolor nulla ea ad\",\n \"value\": \"culpa quis eiusmod in\"\n },\n {\n \"name\": \"laborum do incididunt\",\n \"value\": \"aliqua\"\n }\n ]\n}", + "raw": "{\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"requestId\": \"2019-02-04T22:53:42-40000\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"value\": 45,\n \"authorizationId\": \"5784589\",\n \"tid\": \"5784589\",\n \"nsu\": \"NSU987432\",\n \"recipients\": [\n {\n \"id\": \"mystore\",\n \"name\": \"Company XPTO\",\n \"documentType\": \"CNPJ\",\n \"document\": \"05314972000174\",\n \"role\": \"marketplace\",\n \"chargeProcessingFee\": true,\n \"chargebackLiable\": true,\n \"amount\": 7.2\n },\n {\n \"id\": \"sellerA\",\n \"name\": \"Company ABC\",\n \"documentType\": \"CNPJ\",\n \"document\": \"24830098000172\",\n \"role\": \"seller\",\n \"chargeProcessingFee\": false,\n \"chargebackLiable\": false,\n \"amount\": 37.8,\n \"commissionAmount\": 7.2\n }\n ],\n \"sandboxMode\": false,\n \"merchantSettings\": [\n {\n \"name\": \"Public Merchant ID Test.\",\n \"value\": \"1\"\n }\n ],\n \"connectorMetadata\": [\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n }\n ]\n}", "options": { "raw": { + "headerFamily": "json", "language": "json" } } @@ -1143,7 +3887,7 @@ "_": { "postman_previewlanguage": "json" }, - "id": "b8398aa4-6f1e-4127-acb1-60764ec00903", + "id": "42040140-8ee0-4aee-b873-c7f45705fd92", "name": "OK", "originalRequest": { "url": { @@ -1156,37 +3900,9 @@ "{{baseUrl}}" ], "query": [], - "variable": [ - { - "disabled": false, - "description": { - "content": "(Required) VTEX payment identifier.", - "type": "text/plain" - }, - "type": "any", - "value": "F5C1A4E20D3B4E07B7E871F5B5BC9F91", - "key": "paymentId" - }, - { - "description": { - "content": "Payment provider endpoint URL.", - "type": "text/plain" - }, - "type": "any", - "value": "{{providerApiEndpoint}}", - "key": "providerApiEndpoint" - } - ] + "variable": [] }, "header": [ - { - "description": { - "content": "Added as a part of security scheme: apikey", - "type": "text/plain" - }, - "key": "X-VTEX-API-AppKey", - "value": "" - }, { "disabled": false, "description": { @@ -1223,17 +3939,30 @@ "key": "Accept", "value": "application/json" }, + { + "key": "Content-Type", + "value": "application/json" + }, { "key": "Accept", "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" } ], "method": "POST", "body": { "mode": "raw", - "raw": "{\n \"transactionId\": \"aliqua do aute in\",\n \"requestId\": \"in voluptate\",\n \"paymentId\": \"veniam nostrud consectetur sunt\",\n \"value\": -92238213.01226027,\n \"authorizationId\": \"in dolore\",\n \"tid\": \"in nisi occaecat commodo sit\",\n \"nsu\": \"amet enim exercitation\",\n \"recipients\": [\n {\n \"id\": \"velit Duis Lorem elit\",\n \"name\": \"ea \",\n \"documentType\": \"sed minim officia sunt do\",\n \"document\": \"consequat ipsum irure\",\n \"role\": \"sint fugiat culpa\",\n \"amount\": 91809924.5025126,\n \"chargeProcessingFee\": false,\n \"chargebackLiable\": true,\n \"commissionAmount\": -61715263.45146399\n },\n {\n \"id\": \"aute occaecat \",\n \"name\": \"ipsum exercitation do\",\n \"documentType\": \"deserunt sint cillum \",\n \"document\": \"et exercitation\",\n \"role\": \"quis\",\n \"amount\": -75256935.52892672,\n \"chargeProcessingFee\": false,\n \"chargebackLiable\": true,\n \"commissionAmount\": -25890992.41375217\n }\n ],\n \"sandboxMode\": true,\n \"merchantSettings\": [\n {\n \"name\": \"pariatur esse in elit\",\n \"value\": \"elit non\"\n },\n {\n \"name\": \"sed ipsum culpa quis proident\",\n \"value\": \"commodo veniam\"\n }\n ],\n \"connectorMetadata\": [\n {\n \"name\": \"ut\",\n \"value\": \"nulla sunt irure do\"\n },\n {\n \"name\": \"irure Excepteu\",\n \"value\": \"pariatur labore do in in\"\n }\n ]\n}", + "raw": "{\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"requestId\": \"2019-02-04T22:53:42-40000\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"value\": 45,\n \"authorizationId\": \"5784589\",\n \"tid\": \"5784589\",\n \"nsu\": \"NSU987432\",\n \"recipients\": [\n {\n \"id\": \"mystore\",\n \"name\": \"Company XPTO\",\n \"documentType\": \"CNPJ\",\n \"document\": \"05314972000174\",\n \"role\": \"marketplace\",\n \"chargeProcessingFee\": true,\n \"chargebackLiable\": true,\n \"amount\": 7.2\n },\n {\n \"id\": \"sellerA\",\n \"name\": \"Company ABC\",\n \"documentType\": \"CNPJ\",\n \"document\": \"24830098000172\",\n \"role\": \"seller\",\n \"chargeProcessingFee\": false,\n \"chargebackLiable\": false,\n \"amount\": 37.8,\n \"commissionAmount\": 7.2\n }\n ],\n \"sandboxMode\": false,\n \"merchantSettings\": [\n {\n \"name\": \"Public Merchant ID Test.\",\n \"value\": \"1\"\n }\n ],\n \"connectorMetadata\": [\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n }\n ]\n}", "options": { "raw": { + "headerFamily": "json", "language": "json" } } @@ -1254,7 +3983,7 @@ "_": { "postman_previewlanguage": "json" }, - "id": "3886c9e0-05d0-42cc-b5c8-6993f9230385", + "id": "89c62eee-c4fa-4d01-94c8-8437123e463b", "name": "Internal Server Error", "originalRequest": { "url": { @@ -1267,37 +3996,9 @@ "{{baseUrl}}" ], "query": [], - "variable": [ - { - "disabled": false, - "description": { - "content": "(Required) VTEX payment identifier.", - "type": "text/plain" - }, - "type": "any", - "value": "F5C1A4E20D3B4E07B7E871F5B5BC9F91", - "key": "paymentId" - }, - { - "description": { - "content": "Payment provider endpoint URL.", - "type": "text/plain" - }, - "type": "any", - "value": "{{providerApiEndpoint}}", - "key": "providerApiEndpoint" - } - ] + "variable": [] }, "header": [ - { - "description": { - "content": "Added as a part of security scheme: apikey", - "type": "text/plain" - }, - "key": "X-VTEX-API-AppKey", - "value": "" - }, { "disabled": false, "description": { @@ -1334,17 +4035,30 @@ "key": "Accept", "value": "application/json" }, + { + "key": "Content-Type", + "value": "application/json" + }, { "key": "Accept", "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" } ], "method": "POST", "body": { "mode": "raw", - "raw": "{\n \"transactionId\": \"aliqua do aute in\",\n \"requestId\": \"in voluptate\",\n \"paymentId\": \"veniam nostrud consectetur sunt\",\n \"value\": -92238213.01226027,\n \"authorizationId\": \"in dolore\",\n \"tid\": \"in nisi occaecat commodo sit\",\n \"nsu\": \"amet enim exercitation\",\n \"recipients\": [\n {\n \"id\": \"velit Duis Lorem elit\",\n \"name\": \"ea \",\n \"documentType\": \"sed minim officia sunt do\",\n \"document\": \"consequat ipsum irure\",\n \"role\": \"sint fugiat culpa\",\n \"amount\": 91809924.5025126,\n \"chargeProcessingFee\": false,\n \"chargebackLiable\": true,\n \"commissionAmount\": -61715263.45146399\n },\n {\n \"id\": \"aute occaecat \",\n \"name\": \"ipsum exercitation do\",\n \"documentType\": \"deserunt sint cillum \",\n \"document\": \"et exercitation\",\n \"role\": \"quis\",\n \"amount\": -75256935.52892672,\n \"chargeProcessingFee\": false,\n \"chargebackLiable\": true,\n \"commissionAmount\": -25890992.41375217\n }\n ],\n \"sandboxMode\": true,\n \"merchantSettings\": [\n {\n \"name\": \"pariatur esse in elit\",\n \"value\": \"elit non\"\n },\n {\n \"name\": \"sed ipsum culpa quis proident\",\n \"value\": \"commodo veniam\"\n }\n ],\n \"connectorMetadata\": [\n {\n \"name\": \"ut\",\n \"value\": \"nulla sunt irure do\"\n },\n {\n \"name\": \"irure Excepteu\",\n \"value\": \"pariatur labore do in in\"\n }\n ]\n}", + "raw": "{\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"requestId\": \"2019-02-04T22:53:42-40000\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"value\": 45,\n \"authorizationId\": \"5784589\",\n \"tid\": \"5784589\",\n \"nsu\": \"NSU987432\",\n \"recipients\": [\n {\n \"id\": \"mystore\",\n \"name\": \"Company XPTO\",\n \"documentType\": \"CNPJ\",\n \"document\": \"05314972000174\",\n \"role\": \"marketplace\",\n \"chargeProcessingFee\": true,\n \"chargebackLiable\": true,\n \"amount\": 7.2\n },\n {\n \"id\": \"sellerA\",\n \"name\": \"Company ABC\",\n \"documentType\": \"CNPJ\",\n \"document\": \"24830098000172\",\n \"role\": \"seller\",\n \"chargeProcessingFee\": false,\n \"chargebackLiable\": false,\n \"amount\": 37.8,\n \"commissionAmount\": 7.2\n }\n ],\n \"sandboxMode\": false,\n \"merchantSettings\": [\n {\n \"name\": \"Public Merchant ID Test.\",\n \"value\": \"1\"\n }\n ],\n \"connectorMetadata\": [\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n }\n ]\n}", "options": { "raw": { + "headerFamily": "json", "language": "json" } } @@ -1366,7 +4080,7 @@ { "listen": "test", "script": { - "id": "6ac301c5-ac53-4468-b4c6-aeaa5fa866e9", + "id": "06a6ffac-45d1-4061-9ae3-e56f2bfa5f9d", "type": "text/javascript", "exec": [ "// Validate status 2xx \npm.test(\"[POST]::/payments/:paymentId/settlements - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", @@ -1382,7 +4096,7 @@ } }, { - "id": "7665e907-3dc9-444f-87bc-48cdc7cb37fa", + "id": "5e4cc07f-11f8-4048-9f2e-b543ee30ca90", "name": "Refund payment", "request": { "name": "Refund payment", @@ -1410,15 +4124,6 @@ "type": "any", "value": "F5C1A4E20D3B4E07B7E871F5B5BC9F91", "key": "paymentId" - }, - { - "description": { - "content": "Payment provider endpoint URL.", - "type": "text/plain" - }, - "type": "any", - "value": "{{providerApiEndpoint}}", - "key": "providerApiEndpoint" } ] }, @@ -1458,14 +4163,23 @@ }, "key": "Accept", "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" } ], "method": "POST", "body": { "mode": "raw", - "raw": "{\n \"requestId\": \"culpa elit ad veniam laborum\",\n \"settleId\": \"i\",\n \"paymentId\": \"officia laboris\",\n \"tid\": \"in\",\n \"value\": 68299185.51884556,\n \"transactionId\": \"qui commodo velit fugiat cupid\",\n \"authorizationId\": \"nisi et mollit\",\n \"nsu\": \"ut dolor ullamco aute\",\n \"recipients\": [\n {\n \"id\": \"sed fugiat\",\n \"name\": \"minim\",\n \"documentType\": \"commodo tempor\",\n \"document\": \"Ut et minim mollit\",\n \"role\": \"irure ea veniam Lorem Duis\",\n \"amount\": -60539335.78339437,\n \"chargeProcessingFee\": false,\n \"chargebackLiable\": false,\n \"comissionAmount\": -53020546.86052018\n },\n {\n \"id\": \"dolore \",\n \"name\": \"c\",\n \"documentType\": \"ex Excepteur laborum nisi\",\n \"document\": \"irure non dolore exercitation nulla\",\n \"role\": \"pari\",\n \"amount\": -11235968.434699833,\n \"chargeProcessingFee\": true,\n \"chargebackLiable\": true,\n \"comissionAmount\": -77967913.11581966\n }\n ],\n \"sandboxMode\": false,\n \"merchantSettings\": [\n {\n \"name\": \"Ut in tempor\",\n \"value\": \"magna consectetur pariatur amet deserunt\"\n },\n {\n \"name\": \"est amet sunt\",\n \"value\": \"culpa fugiat\"\n }\n ],\n \"connectorMetadata\": [\n {\n \"name\": \"commodo proident enim dolore dolor\",\n \"value\": \"magna\"\n },\n {\n \"name\": \"sint\",\n \"value\": \"mollit incididunt\"\n }\n ]\n}", + "raw": "{\n \"requestId\": \"LA4E20D3B4E07B7E871F5B5BC9F91\",\n \"settleId\": \"Q5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"tid\": \"10022005181543584603\",\n \"authorizationId\": \"AUT123567\",\n \"nsu\": \"NSU987432\",\n \"value\": 20,\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"recipients\": [\n {\n \"id\": \"mystore\",\n \"name\": \"Company XPTO\",\n \"documentType\": \"CNPJ\",\n \"document\": \"05314972000174\",\n \"role\": \"marketplace\",\n \"chargeProcessingFee\": true,\n \"chargebackLiable\": true,\n \"amount\": 3.2\n },\n {\n \"id\": \"sellerA\",\n \"name\": \"Company ABC\",\n \"documentType\": \"CNPJ\",\n \"document\": \"24830098000172\",\n \"role\": \"seller\",\n \"amount\": 16.8,\n \"comissionAmount\": 3\n }\n ],\n \"sandboxMode\": false,\n \"merchantSettings\": [\n {\n \"name\": \"Public Merchant ID Test.\",\n \"value\": \"1\"\n }\n ],\n \"connectorMetadata\": [\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n }\n ]\n}", "options": { "raw": { + "headerFamily": "json", "language": "json" } } @@ -1496,7 +4210,7 @@ "_": { "postman_previewlanguage": "json" }, - "id": "46d3a501-b5d3-410a-b9cf-a169ea6ed633", + "id": "8c2eed97-3852-4c25-9394-66fb566c1334", "name": "OK", "originalRequest": { "url": { @@ -1508,38 +4222,10 @@ "host": [ "{{baseUrl}}" ], - "query": [], - "variable": [ - { - "disabled": false, - "description": { - "content": "(Required) VTEX payment identifier.", - "type": "text/plain" - }, - "type": "any", - "value": "F5C1A4E20D3B4E07B7E871F5B5BC9F91", - "key": "paymentId" - }, - { - "description": { - "content": "Payment provider endpoint URL.", - "type": "text/plain" - }, - "type": "any", - "value": "{{providerApiEndpoint}}", - "key": "providerApiEndpoint" - } - ] - }, - "header": [ - { - "description": { - "content": "Added as a part of security scheme: apikey", - "type": "text/plain" - }, - "key": "X-VTEX-API-AppKey", - "value": "" - }, + "query": [], + "variable": [] + }, + "header": [ { "disabled": false, "description": { @@ -1576,17 +4262,30 @@ "key": "Accept", "value": "application/json" }, + { + "key": "Content-Type", + "value": "application/json" + }, { "key": "Accept", "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" } ], "method": "POST", "body": { "mode": "raw", - "raw": "{\n \"requestId\": \"sunt fugiat\",\n \"settleId\": \"laboris commodo aliqua\",\n \"paymentId\": \"ad nulla voluptate dolor\",\n \"tid\": \"exercitation ad esse\",\n \"value\": 18114911.777967885,\n \"transactionId\": \"fugiat elit id consequat Ut\",\n \"authorizationId\": \"occaecat\",\n \"nsu\": \"amet et\",\n \"recipients\": [\n {\n \"id\": \"in Duis esse\",\n \"name\": \"irure\",\n \"documentType\": \"nulla culpa in in consequat\",\n \"document\": \"amet\",\n \"role\": \"in mollit ullamco laborum\",\n \"amount\": 91989930.83465585,\n \"chargeProcessingFee\": true,\n \"chargebackLiable\": true,\n \"comissionAmount\": 95316366.71246839\n },\n {\n \"id\": \"voluptate ipsum\",\n \"name\": \"Ut ullamco quis\",\n \"documentType\": \"nulla se\",\n \"document\": \"tem\",\n \"role\": \"non sint Dui\",\n \"amount\": -3660709.750245154,\n \"chargeProcessingFee\": false,\n \"chargebackLiable\": false,\n \"comissionAmount\": -70014134.35489333\n }\n ],\n \"sandboxMode\": true,\n \"merchantSettings\": [\n {\n \"name\": \"dolore magna sed\",\n \"value\": \"sed sit Lorem in\"\n },\n {\n \"name\": \"magna \",\n \"value\": \"tempor dolor\"\n }\n ],\n \"connectorMetadata\": [\n {\n \"name\": \"sit quis\",\n \"value\": \"anim cupidatat fugiat quis\"\n },\n {\n \"name\": \"in qui\",\n \"value\": \"ut\"\n }\n ]\n}", + "raw": "{\n \"requestId\": \"LA4E20D3B4E07B7E871F5B5BC9F91\",\n \"settleId\": \"Q5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"tid\": \"10022005181543584603\",\n \"authorizationId\": \"AUT123567\",\n \"nsu\": \"NSU987432\",\n \"value\": 20,\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"recipients\": [\n {\n \"id\": \"mystore\",\n \"name\": \"Company XPTO\",\n \"documentType\": \"CNPJ\",\n \"document\": \"05314972000174\",\n \"role\": \"marketplace\",\n \"chargeProcessingFee\": true,\n \"chargebackLiable\": true,\n \"amount\": 3.2\n },\n {\n \"id\": \"sellerA\",\n \"name\": \"Company ABC\",\n \"documentType\": \"CNPJ\",\n \"document\": \"24830098000172\",\n \"role\": \"seller\",\n \"amount\": 16.8,\n \"comissionAmount\": 3\n }\n ],\n \"sandboxMode\": false,\n \"merchantSettings\": [\n {\n \"name\": \"Public Merchant ID Test.\",\n \"value\": \"1\"\n }\n ],\n \"connectorMetadata\": [\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n }\n ]\n}", "options": { "raw": { + "headerFamily": "json", "language": "json" } } @@ -1607,7 +4306,7 @@ "_": { "postman_previewlanguage": "json" }, - "id": "dde1b066-e045-4ade-9e07-0c9d39b6482b", + "id": "b6efe16a-f5ea-480e-bb40-e5efa5d09ff4", "name": "Internal Server Error", "originalRequest": { "url": { @@ -1620,37 +4319,9 @@ "{{baseUrl}}" ], "query": [], - "variable": [ - { - "disabled": false, - "description": { - "content": "(Required) VTEX payment identifier.", - "type": "text/plain" - }, - "type": "any", - "value": "F5C1A4E20D3B4E07B7E871F5B5BC9F91", - "key": "paymentId" - }, - { - "description": { - "content": "Payment provider endpoint URL.", - "type": "text/plain" - }, - "type": "any", - "value": "{{providerApiEndpoint}}", - "key": "providerApiEndpoint" - } - ] + "variable": [] }, "header": [ - { - "description": { - "content": "Added as a part of security scheme: apikey", - "type": "text/plain" - }, - "key": "X-VTEX-API-AppKey", - "value": "" - }, { "disabled": false, "description": { @@ -1687,17 +4358,30 @@ "key": "Accept", "value": "application/json" }, + { + "key": "Content-Type", + "value": "application/json" + }, { "key": "Accept", "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" } ], "method": "POST", "body": { "mode": "raw", - "raw": "{\n \"requestId\": \"sunt fugiat\",\n \"settleId\": \"laboris commodo aliqua\",\n \"paymentId\": \"ad nulla voluptate dolor\",\n \"tid\": \"exercitation ad esse\",\n \"value\": 18114911.777967885,\n \"transactionId\": \"fugiat elit id consequat Ut\",\n \"authorizationId\": \"occaecat\",\n \"nsu\": \"amet et\",\n \"recipients\": [\n {\n \"id\": \"in Duis esse\",\n \"name\": \"irure\",\n \"documentType\": \"nulla culpa in in consequat\",\n \"document\": \"amet\",\n \"role\": \"in mollit ullamco laborum\",\n \"amount\": 91989930.83465585,\n \"chargeProcessingFee\": true,\n \"chargebackLiable\": true,\n \"comissionAmount\": 95316366.71246839\n },\n {\n \"id\": \"voluptate ipsum\",\n \"name\": \"Ut ullamco quis\",\n \"documentType\": \"nulla se\",\n \"document\": \"tem\",\n \"role\": \"non sint Dui\",\n \"amount\": -3660709.750245154,\n \"chargeProcessingFee\": false,\n \"chargebackLiable\": false,\n \"comissionAmount\": -70014134.35489333\n }\n ],\n \"sandboxMode\": true,\n \"merchantSettings\": [\n {\n \"name\": \"dolore magna sed\",\n \"value\": \"sed sit Lorem in\"\n },\n {\n \"name\": \"magna \",\n \"value\": \"tempor dolor\"\n }\n ],\n \"connectorMetadata\": [\n {\n \"name\": \"sit quis\",\n \"value\": \"anim cupidatat fugiat quis\"\n },\n {\n \"name\": \"in qui\",\n \"value\": \"ut\"\n }\n ]\n}", + "raw": "{\n \"requestId\": \"LA4E20D3B4E07B7E871F5B5BC9F91\",\n \"settleId\": \"Q5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"tid\": \"10022005181543584603\",\n \"authorizationId\": \"AUT123567\",\n \"nsu\": \"NSU987432\",\n \"value\": 20,\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"recipients\": [\n {\n \"id\": \"mystore\",\n \"name\": \"Company XPTO\",\n \"documentType\": \"CNPJ\",\n \"document\": \"05314972000174\",\n \"role\": \"marketplace\",\n \"chargeProcessingFee\": true,\n \"chargebackLiable\": true,\n \"amount\": 3.2\n },\n {\n \"id\": \"sellerA\",\n \"name\": \"Company ABC\",\n \"documentType\": \"CNPJ\",\n \"document\": \"24830098000172\",\n \"role\": \"seller\",\n \"amount\": 16.8,\n \"comissionAmount\": 3\n }\n ],\n \"sandboxMode\": false,\n \"merchantSettings\": [\n {\n \"name\": \"Public Merchant ID Test.\",\n \"value\": \"1\"\n }\n ],\n \"connectorMetadata\": [\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n }\n ]\n}", "options": { "raw": { + "headerFamily": "json", "language": "json" } } @@ -1718,7 +4402,7 @@ "_": { "postman_previewlanguage": "json" }, - "id": "b25394e4-b05a-4c6f-a88f-173693fa6267", + "id": "3b2e56ef-0f0b-4686-9705-d230868ace69", "name": "Not Implemented", "originalRequest": { "url": { @@ -1731,37 +4415,9 @@ "{{baseUrl}}" ], "query": [], - "variable": [ - { - "disabled": false, - "description": { - "content": "(Required) VTEX payment identifier.", - "type": "text/plain" - }, - "type": "any", - "value": "F5C1A4E20D3B4E07B7E871F5B5BC9F91", - "key": "paymentId" - }, - { - "description": { - "content": "Payment provider endpoint URL.", - "type": "text/plain" - }, - "type": "any", - "value": "{{providerApiEndpoint}}", - "key": "providerApiEndpoint" - } - ] + "variable": [] }, "header": [ - { - "description": { - "content": "Added as a part of security scheme: apikey", - "type": "text/plain" - }, - "key": "X-VTEX-API-AppKey", - "value": "" - }, { "disabled": false, "description": { @@ -1798,17 +4454,30 @@ "key": "Accept", "value": "application/json" }, + { + "key": "Content-Type", + "value": "application/json" + }, { "key": "Accept", "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" } ], "method": "POST", "body": { "mode": "raw", - "raw": "{\n \"requestId\": \"sunt fugiat\",\n \"settleId\": \"laboris commodo aliqua\",\n \"paymentId\": \"ad nulla voluptate dolor\",\n \"tid\": \"exercitation ad esse\",\n \"value\": 18114911.777967885,\n \"transactionId\": \"fugiat elit id consequat Ut\",\n \"authorizationId\": \"occaecat\",\n \"nsu\": \"amet et\",\n \"recipients\": [\n {\n \"id\": \"in Duis esse\",\n \"name\": \"irure\",\n \"documentType\": \"nulla culpa in in consequat\",\n \"document\": \"amet\",\n \"role\": \"in mollit ullamco laborum\",\n \"amount\": 91989930.83465585,\n \"chargeProcessingFee\": true,\n \"chargebackLiable\": true,\n \"comissionAmount\": 95316366.71246839\n },\n {\n \"id\": \"voluptate ipsum\",\n \"name\": \"Ut ullamco quis\",\n \"documentType\": \"nulla se\",\n \"document\": \"tem\",\n \"role\": \"non sint Dui\",\n \"amount\": -3660709.750245154,\n \"chargeProcessingFee\": false,\n \"chargebackLiable\": false,\n \"comissionAmount\": -70014134.35489333\n }\n ],\n \"sandboxMode\": true,\n \"merchantSettings\": [\n {\n \"name\": \"dolore magna sed\",\n \"value\": \"sed sit Lorem in\"\n },\n {\n \"name\": \"magna \",\n \"value\": \"tempor dolor\"\n }\n ],\n \"connectorMetadata\": [\n {\n \"name\": \"sit quis\",\n \"value\": \"anim cupidatat fugiat quis\"\n },\n {\n \"name\": \"in qui\",\n \"value\": \"ut\"\n }\n ]\n}", + "raw": "{\n \"requestId\": \"LA4E20D3B4E07B7E871F5B5BC9F91\",\n \"settleId\": \"Q5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"tid\": \"10022005181543584603\",\n \"authorizationId\": \"AUT123567\",\n \"nsu\": \"NSU987432\",\n \"value\": 20,\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"recipients\": [\n {\n \"id\": \"mystore\",\n \"name\": \"Company XPTO\",\n \"documentType\": \"CNPJ\",\n \"document\": \"05314972000174\",\n \"role\": \"marketplace\",\n \"chargeProcessingFee\": true,\n \"chargebackLiable\": true,\n \"amount\": 3.2\n },\n {\n \"id\": \"sellerA\",\n \"name\": \"Company ABC\",\n \"documentType\": \"CNPJ\",\n \"document\": \"24830098000172\",\n \"role\": \"seller\",\n \"amount\": 16.8,\n \"comissionAmount\": 3\n }\n ],\n \"sandboxMode\": false,\n \"merchantSettings\": [\n {\n \"name\": \"Public Merchant ID Test.\",\n \"value\": \"1\"\n }\n ],\n \"connectorMetadata\": [\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n }\n ]\n}", "options": { "raw": { + "headerFamily": "json", "language": "json" } } @@ -1830,7 +4499,7 @@ { "listen": "test", "script": { - "id": "fe653551-d631-4466-a73b-8b3314013352", + "id": "ef925413-d05f-4830-bf54-e6cdb22a066d", "type": "text/javascript", "exec": [ "// Validate status 2xx \npm.test(\"[POST]::/payments/:paymentId/refunds - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", @@ -1846,7 +4515,7 @@ } }, { - "id": "a3e90cda-827f-49e4-a629-616f04ba1cf3", + "id": "34e1db4a-690a-4238-87b4-f5367b9152d9", "name": "Inbound request (BETA)", "request": { "name": "Inbound request (BETA)", @@ -1885,15 +4554,6 @@ "type": "any", "value": "hook", "key": "action" - }, - { - "description": { - "content": "Payment provider endpoint URL.", - "type": "text/plain" - }, - "type": "any", - "value": "{{providerApiEndpoint}}", - "key": "providerApiEndpoint" } ] }, @@ -1933,6 +4593,14 @@ }, "key": "Accept", "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" } ], "method": "POST", @@ -1941,6 +4609,7 @@ "raw": "{\n \"requestId\": \"LA4E20D3B4E07B7E871F5B5BC9F91\",\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"authorizationId\": \"AUT123567\",\n \"tid\": \"10022005181543584603\",\n \"nsu\": \"NSU987432\",\n \"requestData\": {\n \"body\": \"{{originalRequestBody}}\"\n },\n \"merchantSettings\": [\n {\n \"name\": \"Public Merchant ID Test.\",\n \"value\": \"1\"\n },\n {\n \"name\": \"Public Merchant ID Test.\",\n \"value\": \"1\"\n }\n ],\n \"connectorMetadata\": [\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n },\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n }\n ]\n}", "options": { "raw": { + "headerFamily": "json", "language": "json" } } @@ -1971,7 +4640,7 @@ "_": { "postman_previewlanguage": "json" }, - "id": "b76bbf39-7f74-4bc8-9bb8-09bbc72fe9ea", + "id": "e1684f0c-62fd-43ea-af72-b5fc49585bba", "name": "OK", "originalRequest": { "url": { @@ -1985,47 +4654,9 @@ "{{baseUrl}}" ], "query": [], - "variable": [ - { - "disabled": false, - "description": { - "content": "(Required) VTEX payment identifier.", - "type": "text/plain" - }, - "type": "any", - "value": "F5C1A4E20D3B4E07B7E871F5B5BC9F91", - "key": "paymentId" - }, - { - "disabled": false, - "description": { - "content": "(Required) Describes the type of action that will be performed on the route (e.g. hook, enrollment, among others). It is the same `:action` information used in the `inboundRequestsUrl` provided in the [Create Payment](https://developers.vtex.com/docs/api-reference/payment-provider-protocol#post-/payments?endpoint=post-/payments) endpoint payload.", - "type": "text/plain" - }, - "type": "any", - "value": "hook", - "key": "action" - }, - { - "description": { - "content": "Payment provider endpoint URL.", - "type": "text/plain" - }, - "type": "any", - "value": "{{providerApiEndpoint}}", - "key": "providerApiEndpoint" - } - ] + "variable": [] }, "header": [ - { - "description": { - "content": "Added as a part of security scheme: apikey", - "type": "text/plain" - }, - "key": "X-VTEX-API-AppKey", - "value": "" - }, { "disabled": false, "description": { @@ -2062,9 +4693,21 @@ "key": "Accept", "value": "application/json" }, + { + "key": "Content-Type", + "value": "application/json" + }, { "key": "Accept", "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" } ], "method": "POST", @@ -2073,6 +4716,7 @@ "raw": "{\n \"requestId\": \"LA4E20D3B4E07B7E871F5B5BC9F91\",\n \"transactionId\": \"D3AA1FC8372E430E8236649DB5EBD08E\",\n \"paymentId\": \"F5C1A4E20D3B4E07B7E871F5B5BC9F91\",\n \"authorizationId\": \"AUT123567\",\n \"tid\": \"10022005181543584603\",\n \"nsu\": \"NSU987432\",\n \"requestData\": {\n \"body\": \"{{originalRequestBody}}\"\n },\n \"merchantSettings\": [\n {\n \"name\": \"Public Merchant ID Test.\",\n \"value\": \"1\"\n },\n {\n \"name\": \"Public Merchant ID Test.\",\n \"value\": \"1\"\n }\n ],\n \"connectorMetadata\": [\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n },\n {\n \"name\": \"MetadataName\",\n \"value\": \"MetadataValue\"\n }\n ]\n}", "options": { "raw": { + "headerFamily": "json", "language": "json" } } @@ -2094,13 +4738,13 @@ { "listen": "test", "script": { - "id": "c01770c0-30db-4c0c-bf61-a3a1505babc8", + "id": "873be53d-42bc-40e1-8ac8-ee49ec205965", "type": "text/javascript", "exec": [ "// Validate status 2xx \npm.test(\"[POST]::/payments/:paymentId/inbound/:action - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", "// Validate if response header has matching content-type\npm.test(\"[POST]::/payments/:paymentId/inbound/:action - Content-Type is application/json\", function () {\n pm.expect(pm.response.headers.get(\"Content-Type\")).to.include(\"application/json\");\n});\n", "// Validate if response has JSON Body \npm.test(\"[POST]::/payments/:paymentId/inbound/:action - Response has JSON Body\", function () {\n pm.response.to.have.jsonBody();\n});\n", - "// Response Validation\nconst schema = {\"required\":[\"requestId\",\"paymentId\",\"responseData\"],\"type\":\"object\",\"description\":\"Inbound Request response body information.\",\"properties\":{\"requestId\":{\"type\":\"string\",\"description\":\"The same `requestId` sent in the request.\"},\"paymentId\":{\"type\":\"string\",\"description\":\"The same `paymentId` sent in the request.\"},\"code\":{\"type\":\"string\",\"description\":\"Provider's operation/error code to be logged.\"},\"message\":{\"type\":\"string\",\"description\":\"Provider's operation/error message to be logged.\"},\"responseData\":{\"required\":[\"statusCode\",\"contentType\",\"content\"],\"type\":\"object\",\"description\":\"Response data information.\",\"properties\":{\"statusCode\":{\"type\":\"integer\",\"description\":\"Your desired status code.\"},\"contentType\":{\"type\":\"string\",\"description\":\"Your desired content-type.\"},\"content\":{\"type\":\"string\",\"description\":\"Your desired content body.\"}}},\"connectorMetadata\":{\"type\":\"array\",\"description\":\"Array containing metadata fields sent from the provider to the payment gateway.\",\"items\":{\"type\":\"object\",\"description\":\"Metadata fields information.\",\"required\":[\"name\",\"value\"],\"properties\":{\"name\":{\"type\":\"string\",\"description\":\"The name of the metadata to be stored in the gateway (limited to 20 characters).\",\"example\":\"MetadataName\"},\"value\":{\"type\":\"string\",\"description\":\"The value of the metadata stored (limited to 200 characters).\",\"example\":\"MetadataValue\"}}}}}}\n\n// Validate if response matches JSON schema \npm.test(\"[POST]::/payments/:paymentId/inbound/:action - Schema is valid\", function() {\n pm.response.to.have.jsonSchema(schema,{unknownFormats: [\"int32\", \"int64\", \"float\", \"double\"]});\n});\n" + "// Response Validation\nconst schema = {\"required\":[\"requestId\",\"paymentId\",\"responseData\"],\"type\":\"object\",\"description\":\"Inbound Request response body information.\",\"properties\":{\"requestId\":{\"type\":\"string\",\"description\":\"The same `requestId` sent in the request.\"},\"paymentId\":{\"type\":\"string\",\"description\":\"The same `paymentId` sent in the request.\"},\"code\":{\"type\":\"string\",\"description\":\"Provider's operation/error code to be logged.\"},\"message\":{\"type\":\"string\",\"description\":\"Provider's operation/error message to be logged.\"},\"responseData\":{\"required\":[\"statusCode\",\"contentType\",\"content\"],\"type\":\"object\",\"description\":\"Response data information.\",\"properties\":{\"statusCode\":{\"type\":\"integer\",\"description\":\"Your desired status code.\"},\"contentType\":{\"type\":\"string\",\"description\":\"Your desired content-type.\"},\"content\":{\"type\":\"string\",\"description\":\"Your desired content body.\"}}},\"connectorMetadata\":{\"type\":\"array\",\"description\":\"Array containing metadata fields sent from the provider to the payment gateway.\",\"items\":{\"type\":\"object\",\"description\":\"Metadata fields information.\",\"required\":[\"name\",\"value\"],\"properties\":{\"name\":{\"type\":\"string\",\"description\":\"The name of the metadata to be stored in the gateway (limited to 20 characters).\"},\"value\":{\"type\":\"string\",\"description\":\"The value of the metadata stored (limited to 200 characters).\"}}}}}}\n\n// Validate if response matches JSON schema \npm.test(\"[POST]::/payments/:paymentId/inbound/:action - Schema is valid\", function() {\n pm.response.to.have.jsonSchema(schema,{unknownFormats: [\"int32\", \"int64\", \"float\", \"double\"]});\n});\n" ] } } @@ -2113,7 +4757,7 @@ "event": [] }, { - "id": "10bbf2d6-0c45-4012-862e-7cc674dffded", + "id": "fa778627-d809-4854-859e-c58aa0449c6f", "name": "Configuration Flow", "description": { "content": "", @@ -2121,7 +4765,7 @@ }, "item": [ { - "id": "42eb4996-5893-4e09-bf28-9f1722328cce", + "id": "c04cd3ea-516e-4cd0-b32b-c07ab13cfd79", "name": "Create authorization token", "request": { "name": "Create authorization token", @@ -2138,17 +4782,7 @@ "{{baseUrl}}" ], "query": [], - "variable": [ - { - "description": { - "content": "Payment provider endpoint URL.", - "type": "text/plain" - }, - "type": "any", - "value": "{{providerApiEndpoint}}", - "key": "providerApiEndpoint" - } - ] + "variable": [] }, "header": [ { @@ -2186,6 +4820,14 @@ }, "key": "Accept", "value": "application/json" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" } ], "method": "POST", @@ -2194,6 +4836,7 @@ "raw": "{\n \"applicationId\": \"vtex\",\n \"returnUrl\": \"https://admin.mystore.example.com/provider-return?authorizationCode=\"\n}", "options": { "raw": { + "headerFamily": "json", "language": "json" } } @@ -2224,7 +4867,7 @@ "_": { "postman_previewlanguage": "json" }, - "id": "993847c4-7291-46a5-bee4-6739f646fc03", + "id": "7b953bd5-b3cf-4f17-827e-b195def4229c", "name": "OK", "originalRequest": { "url": { @@ -2236,27 +4879,9 @@ "{{baseUrl}}" ], "query": [], - "variable": [ - { - "description": { - "content": "Payment provider endpoint URL.", - "type": "text/plain" - }, - "type": "any", - "value": "{{providerApiEndpoint}}", - "key": "providerApiEndpoint" - } - ] + "variable": [] }, "header": [ - { - "description": { - "content": "Added as a part of security scheme: apikey", - "type": "text/plain" - }, - "key": "X-VTEX-API-AppKey", - "value": "" - }, { "disabled": false, "description": { @@ -2293,9 +4918,21 @@ "key": "Accept", "value": "application/json" }, + { + "key": "Content-Type", + "value": "application/json" + }, { "key": "Accept", "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" } ], "method": "POST", @@ -2304,6 +4941,7 @@ "raw": "{\n \"applicationId\": \"vtex\",\n \"returnUrl\": \"https://admin.mystore.example.com/provider-return?authorizationCode=\"\n}", "options": { "raw": { + "headerFamily": "json", "language": "json" } } @@ -2325,7 +4963,7 @@ { "listen": "test", "script": { - "id": "4399c559-7bcf-4cf2-9f0e-aa82fb72398e", + "id": "8f4d7345-dcaa-4322-b784-989774159e0a", "type": "text/javascript", "exec": [ "// Validate status 2xx \npm.test(\"[POST]::/authorization/token - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", @@ -2341,7 +4979,7 @@ } }, { - "id": "383101e4-ba40-4ff4-b374-c0bd07b9a9e4", + "id": "210269e8-3c76-4680-9032-6bffe4d59773", "name": "Provider authentication", "request": { "name": "Provider authentication", @@ -2377,17 +5015,7 @@ "value": "{{token}}" } ], - "variable": [ - { - "description": { - "content": "Payment provider endpoint URL.", - "type": "text/plain" - }, - "type": "any", - "value": "{{providerApiEndpoint}}", - "key": "providerApiEndpoint" - } - ] + "variable": [] }, "header": [ { @@ -2428,6 +5056,7 @@ } ], "method": "GET", + "body": {}, "auth": { "type": "apikey", "apikey": [ @@ -2454,7 +5083,7 @@ "_": { "postman_previewlanguage": "text" }, - "id": "5f4194dc-6b87-4ae3-82fa-3695f696e4bd", + "id": "5a1e1ae1-a8ef-4bf1-ace0-eca16d29ca69", "name": "OK. This endpoint does not return any data in the response body.", "originalRequest": { "url": { @@ -2467,35 +5096,27 @@ ], "query": [ { + "disabled": false, + "description": { + "content": "(Required) VTEX application identifier.", + "type": "text/plain" + }, "key": "applicationId", "value": "vtex" }, { - "key": "token", - "value": "{{token}}" - } - ], - "variable": [ - { + "disabled": false, "description": { - "content": "Payment provider endpoint URL.", + "content": "(Required) You must generate a token that will be used to identify the same context when we redirect the merchant to your application.", "type": "text/plain" }, - "type": "any", - "value": "{{providerApiEndpoint}}", - "key": "providerApiEndpoint" + "key": "token", + "value": "{{token}}" } - ] + ], + "variable": [] }, "header": [ - { - "description": { - "content": "Added as a part of security scheme: apikey", - "type": "text/plain" - }, - "key": "X-VTEX-API-AppKey", - "value": "" - }, { "disabled": false, "description": { @@ -2531,6 +5152,14 @@ }, "key": "Accept", "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" } ], "method": "GET", @@ -2538,13 +5167,7 @@ }, "status": "OK", "code": 200, - "header": [ - { - "key": "Content-Type", - "value": "text/plain" - } - ], - "body": "", + "header": [], "cookie": [] } ], @@ -2552,7 +5175,7 @@ { "listen": "test", "script": { - "id": "0dbc4f4d-0d3c-4448-85b9-3c3a8313a869", + "id": "8bf305b8-38b5-40b9-93af-976f3cfccc92", "type": "text/javascript", "exec": [ "// Validate status 2xx \npm.test(\"[GET]::/authorization/redirect - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n" @@ -2565,7 +5188,7 @@ } }, { - "id": "5efc59be-1e0f-4749-9657-371f9b523fed", + "id": "d9615386-0574-4589-a131-d6f419652999", "name": "Get credentials", "request": { "name": "Get credentials", @@ -2601,17 +5224,7 @@ "value": "{{authorizationCode}}" } ], - "variable": [ - { - "description": { - "content": "Payment provider endpoint URL.", - "type": "text/plain" - }, - "type": "any", - "value": "{{providerApiEndpoint}}", - "key": "providerApiEndpoint" - } - ] + "variable": [] }, "header": [ { @@ -2649,9 +5262,14 @@ }, "key": "Accept", "value": "application/json" + }, + { + "key": "Accept", + "value": "application/json" } ], "method": "GET", + "body": {}, "auth": { "type": "apikey", "apikey": [ @@ -2678,7 +5296,7 @@ "_": { "postman_previewlanguage": "json" }, - "id": "297dbc02-f9f7-4740-8926-88fb87dc2542", + "id": "168f6bd1-4c9e-41ef-b33c-708ddc2ccd80", "name": "OK", "originalRequest": { "url": { @@ -2691,35 +5309,27 @@ ], "query": [ { + "disabled": false, + "description": { + "content": "(Required) VTEX application identifier.", + "type": "text/plain" + }, "key": "applicationId", "value": "vtex" }, { - "key": "authorizationCode", - "value": "{{authorizationCode}}" - } - ], - "variable": [ - { + "disabled": false, "description": { - "content": "Payment provider endpoint URL.", + "content": "(Required) Code generate by affiliation that will be used to identify the merchant authorization.", "type": "text/plain" }, - "type": "any", - "value": "{{providerApiEndpoint}}", - "key": "providerApiEndpoint" + "key": "authorizationCode", + "value": "{{authorizationCode}}" } - ] + ], + "variable": [] }, "header": [ - { - "description": { - "content": "Added as a part of security scheme: apikey", - "type": "text/plain" - }, - "key": "X-VTEX-API-AppKey", - "value": "" - }, { "disabled": false, "description": { @@ -2759,6 +5369,14 @@ { "key": "Accept", "value": "application/json" + }, + { + "description": { + "content": "Added as a part of security scheme: apikey", + "type": "text/plain" + }, + "key": "X-VTEX-API-AppKey", + "value": "" } ], "method": "GET", @@ -2780,7 +5398,7 @@ { "listen": "test", "script": { - "id": "f9a3ce96-9ded-4821-82ca-a915c70bcde9", + "id": "7f860d0b-3ad1-428b-83bc-4345f2cb0ea8", "type": "text/javascript", "exec": [ "// Validate status 2xx \npm.test(\"[GET]::/authorization/credentials - Status code is 2xx\", function () {\n pm.response.to.be.success;\n});\n", @@ -2802,22 +5420,18 @@ "event": [], "variable": [ { - "description": { - "content": "Payment provider endpoint URL.", - "type": "text/plain" - }, "type": "any", "value": "{providerApiEndpoint}", "key": "providerApiEndpoint" }, { - "type": "string", + "type": "any", "value": "https://{{providerApiEndpoint}}", "key": "baseUrl" } ], "info": { - "_postman_id": "5374ce81-2181-44c2-8edf-038dd509f7a1", + "_postman_id": "1322932f-66f1-4c40-8ae4-7321afd1774b", "name": "Payment Provider Protocol API", "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json", "description": { diff --git a/VTEX - Antifraud Provider API.json b/VTEX - Antifraud Provider API.json index dbebe2337..9460a4149 100644 --- a/VTEX - Antifraud Provider API.json +++ b/VTEX - Antifraud Provider API.json @@ -341,6 +341,7 @@ }, "example": { "cardholderDocument": "required", + "allowAntifraudOnGiftCard": true, "customFields": [ { "name": "AnalysisMode", @@ -789,6 +790,10 @@ "type": "string", "description": "Indicates the requirement of cardholder document in card transactions. The field has three possible values: `required`, `optional`, or `unused`." }, + "allowAntifraudOnGiftCard":{ + "type": "boolean", + "description": "Indicates whether the anti-fraud provider can process payment transactions made using [gift cards](https://developers.vtex.com/docs/guides/gift-card-integration-guide)." + }, "customFields": { "type": "array", "description": "Describes the customized fields supported by the connector.", diff --git a/VTEX - Marketplace APIs - Suggestions.json b/VTEX - Marketplace APIs - Suggestions.json index 3482967fa..a738c4079 100644 --- a/VTEX - Marketplace APIs - Suggestions.json +++ b/VTEX - Marketplace APIs - Suggestions.json @@ -2348,9 +2348,20 @@ } }, "Images": { - "type": "object", - "description": "Object that represent the SKU's images.", - "example": + "type": "array", + "description": "Array containing objects that represent the SKU's images. Each object should have a key representing the image file name and a value containing the URL of the image. The image must be sent through `https` protocol, otherwise it will not be rendered in VTEX Admin.", + "items": { + "type": "object", + "description": "An object that represents a single SKU image with a filename as the key and the image URL as the value.", + "properties": { + "imagem1.jpg": { + "type": "string", + "description": "The URL of the SKU's image. Must be an `https` URL.", + "example": "https://imageurl.example" + } + } + }, + "example": [ { "imagem1.jpg": "https://imageurl.example" } diff --git a/VTEX - Orders API (PII version).json b/VTEX - Orders API (PII version).json index 5f4763ae5..2c8ffaaf9 100644 --- a/VTEX - Orders API (PII version).json +++ b/VTEX - Orders API (PII version).json @@ -3737,298 +3737,302 @@ "list": { "type": "array", "description": "List with orders' information.", - "properties": { - "paymentNames": { - "type": "string", - "description": "Payment system name." - }, - "orderId": { - "type": "string", - "description": "Order ID." - }, - "orderGroup": { - "type": "string", - "description": "Order group ID." - }, - "sequence": { - "type": "string", - "description": "Sequence number part of the order ID. For example, in order `v71041992str-01`, the sequence is `71041992`." - }, - "clientEmail": { - "description": "Customer email.", - "type": "string" - }, - "clientDocument": { - "type": "string", - "description": "Customer document number." - }, - "clientCorporateDocument": { - "type": "string", - "description": "Corporate document, if the customer is a legal entity.", - "nullable": true - }, - "clientCorporateName": { - "type": "string", - "description": "Corporate name, if the customer is a legal entity.", - "nullable": true - }, - "clientName": { - "type": "string", - "description": "Customer name." - }, - "totalValue": { - "type": "integer", - "description": "Order total value in cents." - }, - "origin": { - "type": "string", - "description": "Order's origin in the [order flow](https://help.vtex.com/en/tutorial/order-flow-and-status--tutorials_196).", - "enum": [ - "Marketplace", - "Fulfillment", - "Chain" - ] - }, - "status": { - "type": "string", - "description": "[Order status](https://help.vtex.com/en/tutorial/order-flow-and-status--tutorials_196) in the workflow." - }, - "currencyCode": { - "type": "string", - "description": "Currency code in [ISO 4217](https://www.iban.com/currency-codes) format." - }, - "sellerNames": { - "type": "array", - "description": "Names of the sellers responsible for order fuflillment.", - "items": { + "items": { + "type": "object", + "description": "Information about an order.", + "properties": { + "paymentNames": { "type": "string", - "description": "Seller name." - } - }, - "sellerIds": { - "type": "array", - "description": "IDs of the sellers responsible for order fuflillment.", - "items": { + "description": "Payment system name." + }, + "orderId": { "type": "string", - "description": "Seller ID." - } - }, - "sellerOrderId": { - "type": "string", - "description": "Seller order ID." - }, - "totalItems": { - "type": "string", - "description": "Order total quantity of items." - }, - "pciTransactionId": { - "type": "array", - "description": "List with the PCI transaction ID.", - "items": { + "description": "Order ID." + }, + "orderGroup": { "type": "string", - "description": "PCI transaction ID." - } - }, - "paymentNSU": { - "type": "array", - "description": "Unique sequence number that identifies a sales transaction using cards.", - "items": { + "description": "Order group ID." + }, + "sequence": { "type": "string", - "description": "NSU sequence number." - } - }, - "ratesAndBenefitsNames": { - "type": "array", - "description": "List of the promotions and taxes names valid for the purchase.", - "items": { + "description": "Sequence number part of the order ID. For example, in order `v71041992str-01`, the sequence is `71041992`." + }, + "clientEmail": { + "description": "Customer email.", + "type": "string" + }, + "clientDocument": { "type": "string", - "description": "Promotion or tax name." - } - }, - "ratesAndBenefitsIds": { - "type": "array", - "description": "List of the promotions and taxes IDs valid for the purchase.", - "items": { + "description": "Customer document number." + }, + "clientCorporateDocument": { "type": "string", - "description": "Promotion or tax ID." - } - }, - "shippingEstimatedDateMax": { - "type": "string", - "description": "Maximum shipping estimated date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`." - }, - "shippingEstimatedDateMin": { - "type": "string", - "description": "Minimum shipping estimated date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`." - }, - "transactionIds": { - "type": "array", - "description": "Array with payment transaction IDs information.", - "items": { + "description": "Corporate document, if the customer is a legal entity.", + "nullable": true + }, + "clientCorporateName": { "type": "string", - "description": "Payment transaction ID." - } - }, - "paymentIds": { - "type": "array", - "description": "Array with payment IDs information.", - "items": { + "description": "Corporate name, if the customer is a legal entity.", + "nullable": true + }, + "clientName": { "type": "string", - "description": "Payment unique identifier." - } - }, - "isInstore": { - "type": "boolean", - "description": "Defines if the order was placed via [VTEX Sales App](https://help.vtex.com/en/tracks/instore-getting-started-and-setting-up--zav76TFEZlAjnyBVL5tRc) (`true`) or not (`false`)." - }, - "deliveryChannel": { - "type": "array", - "description": "List of delivery channels, which can be delivery or [pickup point](https://help.vtex.com/en/tutorial/pickup-points--2fljn6wLjn8M4lJHA6HP3R).", - "items": { + "description": "Customer name." + }, + "totalValue": { + "type": "integer", + "description": "Order total value in cents." + }, + "origin": { "type": "string", - "description": "Delivery channel." + "description": "Order's origin in the [order flow](https://help.vtex.com/en/tutorial/order-flow-and-status--tutorials_196).", + "enum": [ + "Marketplace", + "Fulfillment", + "Chain" + ] }, - "enum": [ - "delivery", - "pickup-in-point" - ] - }, - "productIds": { - "type": "array", - "description": "List of product IDs related to the orders items.", - "items": { + "status": { "type": "string", - "description": "Product ID." - } - }, - "hostname": { - "type": "string", - "description": "Main [account name](https://help.vtex.com/en/tutorial/what-is-an-account-name--i0mIGLcg3QyEy8OCicEoC)." - }, - "creationDate": { - "type": "string", - "description": "Order creation date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`." - }, - "invoicedDate": { - "type": "string", - "description": "Order invoice date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.", - "nullable": true - }, - "authorizedDate": { - "type": "string", - "description": "Order authorization date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`." - }, - "orderIsComplete": { - "type": "boolean", - "description": "Defines if the order is complete (`true`) or [incomplete](https://help.vtex.com/en/tutorial/how-incomplete-orders-work--tutorials_294) (`false`)." - }, - "marketingTags": { - "type": "array", - "description": "List of marketing tags valid for the order.", - "items": { + "description": "[Order status](https://help.vtex.com/en/tutorial/order-flow-and-status--tutorials_196) in the workflow." + }, + "currencyCode": { "type": "string", - "description": "Marketing tag name." - } - }, - "invoicesOutput": { - "type": "string", - "description": "Order invoice number for an `output` operation, when the store sells an item to the customer.", - "nullable": true - }, - "invoicesInput": { - "type": "string", - "description": "Order invoice number for an `input` operation, when the customer returnes an item to the store.", - "nullable": true - }, - "workflowInErrorState": { - "type": "boolean", - "description": "Defines if the order processing in the workflow is in error (`true`) or not (`false`)." - }, - "workflowInRetry": { - "type": "boolean", - "description": "Defines if the order is in automatic processing retry in the workflow (`true`) or not (`false`)." - }, - "userProfileId": { - "type": "string", - "description": "User profile ID." - }, - "lastChange": { - "type": "string", - "description": "Order last change date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`." - }, - "isAllDelivered": { - "type": "boolean", - "description": "Defines if all order items have being delivered (`true`) or not (`false`)." - }, - "isAnyDelivered": { - "type": "boolean", - "description": "Defines if any order item has being delivered (`true`) or not (`false`)." - }, - "giftCardProviders": { - "type": "array", - "description": "Order [gift card](https://developers.vtex.com/docs/guides/gift-card-integration-guide) information, when applicable.", - "nullable": true, - "items": { + "description": "Currency code in [ISO 4217](https://www.iban.com/currency-codes) format." + }, + "sellerNames": { + "type": "array", + "description": "Names of the sellers responsible for order fuflillment.", + "items": { + "type": "string", + "description": "Seller name." + } + }, + "sellerIds": { + "type": "array", + "description": "IDs of the sellers responsible for order fuflillment.", + "items": { + "type": "string", + "description": "Seller ID." + } + }, + "sellerOrderId": { "type": "string", - "description": "Gift card name." - } - }, - "orderFormId": { - "type": "string", - "description": "ID of the shopping cart from which the order was created." - }, - "paymentApprovedDate": { - "type": "string", - "description": "Payment approval date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`." - }, - "readyForHandlingDate": { - "type": "string", - "description": "Order ready for handling date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.", - "nullable": true - }, - "deliveryDates": { - "type": "array", - "description": "Array with delivery date information.", - "nullable": true, - "items": { + "description": "Seller order ID." + }, + "totalItems": { + "type": "integer", + "description": "Order total quantity of items." + }, + "pciTransactionId": { + "type": "array", + "description": "List with the PCI transaction ID.", + "items": { + "type": "string", + "description": "PCI transaction ID." + } + }, + "paymentNSU": { + "type": "array", + "description": "Unique sequence number that identifies a sales transaction using cards.", + "items": { + "type": "string", + "description": "NSU sequence number." + } + }, + "ratesAndBenefitsNames": { + "type": "array", + "description": "List of the promotions and taxes names valid for the purchase.", + "items": { + "type": "string", + "description": "Promotion or tax name." + } + }, + "ratesAndBenefitsIds": { + "type": "array", + "description": "List of the promotions and taxes IDs valid for the purchase.", + "items": { + "type": "string", + "description": "Promotion or tax ID." + } + }, + "shippingEstimatedDateMax": { "type": "string", - "description": "Order delivey date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`." - } - }, - "ingestPipelineMetadata": { - "type": "array", - "description": "Array with order processing metadata.", - "items": { + "description": "Maximum shipping estimated date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`." + }, + "shippingEstimatedDateMin": { "type": "string", - "description": "Metadata information." - } - }, - "marketplaceWorkflowInstanceId": { - "type": "string", - "description": "Marketplace workflow instance ID.", - "nullable": true - }, - "fulfillmentWorkflowInstanceId": { - "type": "string", - "description": "Seller workflow instance ID.", - "nullable": true - }, - "callCenterOperatorEmail": { - "type": "string", - "description": "Email of the call center operator responsible for the order, when applicable.", - "nullable": true - }, - "callCenterOperatorName": { - "type": "string", - "description": "Name of the call center operator responsible for the order, when applicable.", - "nullable": true - }, - "productNames": { - "type": "array", - "description": "List of the order product names.", - "items": { + "description": "Minimum shipping estimated date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`." + }, + "transactionIds": { + "type": "array", + "description": "Array with payment transaction IDs information.", + "items": { + "type": "string", + "description": "Payment transaction ID." + } + }, + "paymentIds": { + "type": "array", + "description": "Array with payment IDs information.", + "items": { + "type": "string", + "description": "Payment unique identifier." + } + }, + "isInstore": { + "type": "boolean", + "description": "Defines if the order was placed via [VTEX Sales App](https://help.vtex.com/en/tracks/instore-getting-started-and-setting-up--zav76TFEZlAjnyBVL5tRc) (`true`) or not (`false`)." + }, + "deliveryChannel": { + "type": "array", + "description": "List of delivery channels, which can be delivery or [pickup point](https://help.vtex.com/en/tutorial/pickup-points--2fljn6wLjn8M4lJHA6HP3R).", + "items": { + "type": "string", + "description": "Delivery channel.", + "enum": [ + "delivery", + "pickup-in-point" + ] + } + }, + "productIds": { + "type": "array", + "description": "List of product IDs related to the orders items.", + "items": { + "type": "string", + "description": "Product ID." + } + }, + "hostname": { + "type": "string", + "description": "Main [account name](https://help.vtex.com/en/tutorial/what-is-an-account-name--i0mIGLcg3QyEy8OCicEoC)." + }, + "creationDate": { + "type": "string", + "description": "Order creation date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`." + }, + "invoicedDate": { + "type": "string", + "description": "Order invoice date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.", + "nullable": true + }, + "authorizedDate": { + "type": "string", + "description": "Order authorization date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`." + }, + "orderIsComplete": { + "type": "boolean", + "description": "Defines if the order is complete (`true`) or [incomplete](https://help.vtex.com/en/tutorial/how-incomplete-orders-work--tutorials_294) (`false`)." + }, + "marketingTags": { + "type": "array", + "description": "List of marketing tags valid for the order.", + "items": { + "type": "string", + "description": "Marketing tag name." + } + }, + "invoicesOutput": { + "type": "string", + "description": "Order invoice number for an `output` operation, when the store sells an item to the customer.", + "nullable": true + }, + "invoicesInput": { + "type": "string", + "description": "Order invoice number for an `input` operation, when the customer returnes an item to the store.", + "nullable": true + }, + "workflowInErrorState": { + "type": "boolean", + "description": "Defines if the order processing in the workflow is in error (`true`) or not (`false`)." + }, + "workflowInRetry": { + "type": "boolean", + "description": "Defines if the order is in automatic processing retry in the workflow (`true`) or not (`false`)." + }, + "userProfileId": { + "type": "string", + "description": "User profile ID." + }, + "lastChange": { "type": "string", - "description": "Product name." + "description": "Order last change date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`." + }, + "isAllDelivered": { + "type": "boolean", + "description": "Defines if all order items have being delivered (`true`) or not (`false`)." + }, + "isAnyDelivered": { + "type": "boolean", + "description": "Defines if any order item has being delivered (`true`) or not (`false`)." + }, + "giftCardProviders": { + "type": "array", + "description": "Order [gift card](https://developers.vtex.com/docs/guides/gift-card-integration-guide) information, when applicable.", + "nullable": true, + "items": { + "type": "string", + "description": "Gift card name." + } + }, + "orderFormId": { + "type": "string", + "description": "ID of the shopping cart from which the order was created." + }, + "paymentApprovedDate": { + "type": "string", + "description": "Payment approval date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`." + }, + "readyForHandlingDate": { + "type": "string", + "description": "Order ready for handling date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`.", + "nullable": true + }, + "deliveryDates": { + "type": "array", + "description": "Array with delivery date information.", + "nullable": true, + "items": { + "type": "string", + "description": "Order delivey date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`." + } + }, + "ingestPipelineMetadata": { + "type": "array", + "description": "Array with order processing metadata.", + "items": { + "type": "string", + "description": "Metadata information." + } + }, + "marketplaceWorkflowInstanceId": { + "type": "string", + "description": "Marketplace workflow instance ID.", + "nullable": true + }, + "fulfillmentWorkflowInstanceId": { + "type": "string", + "description": "Seller workflow instance ID.", + "nullable": true + }, + "callCenterOperatorEmail": { + "type": "string", + "description": "Email of the call center operator responsible for the order, when applicable.", + "nullable": true + }, + "callCenterOperatorName": { + "type": "string", + "description": "Name of the call center operator responsible for the order, when applicable.", + "nullable": true + }, + "productNames": { + "type": "array", + "description": "List of the order product names.", + "items": { + "type": "string", + "description": "Product name." + } } } } @@ -4388,7 +4392,7 @@ "Orders" ], "summary": "Start handling order", - "description": "Change the status of an order to indicate that is is in `handling`.\n\r\n\r> Expect a `status 204` response with no content in case of a successful request.\n\r\n\r> The `Change order workflow status` resource is needed to use this API request. This is included in `OMS - Full access` and `IntegrationProfile - Fulfillment Oms`, among other default roles available in the Admin. Learn more about the [License manager roles and resources](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#).", + "description": "Changes the [order status](https://help.vtex.com/en/tutorial/order-flow-and-status--tutorials_196) in the workflow to the `handling` status.\r\n\r\n>ℹ️ Successful requests receive a `204` status code with no content.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| OMS | OMS access | **Change order workflow status** |\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| OMS - Full access | Change order workflow status |\r\n| IntegrationProfile - Fulfillment Gateway Oms | Change order workflow status |\r\n| IntegrationProfile - Fulfillment Oms | Change order workflow status |\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). To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).", "operationId": "StartHandling2", "parameters": [ { @@ -4403,19 +4407,18 @@ ], "responses": { "204": { - "description": "No content" + "description": "No Content" }, "429": { - "description": "Too many requests" + "description": "Too Many Requests" }, "403": { "description": "Forbidden" }, "404": { - "description": "Not found" + "description": "Not Found" } - }, - "deprecated": false + } } }, "/api/orders/pvt/document/{orderId}/cancel": { @@ -4424,7 +4427,7 @@ "Orders" ], "summary": "Cancel order", - "description": "You should use this endpoint to cancel an order by its `orderId`.\n\nA common scenario is one where the seller has a problem with the order fulfillment and needs to request the order cancellation to the marketplace. To do this, the seller would need to make this request, passing the `orderId` in the URL.\n\nYou should expect a response with the date when the notification was received, the orderId, and a receipt protocol code.\n\nBe aware that if the order status is already `Invoiced`, the order can only be canceled if - before using this request - you send a return invoice through the [Order Invoice Notification endpoint](https://developers.vtex.com/reference/invoice#invoicenotification).\n\r\n\r> The `Cancel order` resource is needed to use this API request. This is included in `OMS - Full access` and `IntegrationProfile - Fulfillment Oms`, among other default roles available in the Admin. Learn more about the [License manager roles and resources](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#).", + "description": "Requests order cancellation by searching by order ID.\r\n\r\nIt is possible for the seller to [decline an order cancellation request](https://help.vtex.com/tutorial/declining-order-cancelation--F2n0h1TeQ5td540Gjyff4), know more in [Order canceling improvements](https://developers.vtex.com/docs/guides/order-canceling-improvements).\r\n\r\n⚠️ You can only cancel an order in the `invoiced` [status](https://help.vtex.com/en/tutorial/order-flow-and-status--tutorials_196) if you send a return invoice first, using the [Order Invoice Notification](https://developers.vtex.com/docs/api-reference/orders-api-pii-version#post-/api/orders/pvt/document/-orderId-/invoices) endpoint. \r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| OMS | OMS access | **Cancel order** |\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| OMS - Full access | Cancel order |\r\n| Sales App - Sales Associate | Cancel order |\r\n| IntegrationProfile - Fulfillment Gateway | Cancel order |\r\n| IntegrationProfile - Fulfillment Gateway Oms | Cancel order |\r\n| IntegrationProfile - Fulfillment Oms | Cancel order |\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). To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).", "operationId": "CancelOrder2", "parameters": [ { @@ -4463,22 +4466,23 @@ "properties": { "date": { "type": "string", - "description": "Date and time when the notification was received." + "description": "Cancellation request date in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`." }, "orderId": { "type": "string", - "description": "Identification of the order in the seller." + "description": "Order ID in the seller environment." }, "receipt": { "type": "string", - "description": "Protocol code generated by the update. It may be `null`." + "description": "Protocol code generated by the cancellation request.", + "nullable": true } - }, - "example": { - "date": "2014-02-07T15:22:56.7612218-02:00", - "orderId": "123543123", - "receipt": "38e0e47da2934847b489216d208cfd91" } + }, + "example": { + "orderId": "1417440051885-01", + "receipt": "38e0e47da2934847b489216d208cfd91", + "date": "2024-09-26T00:00:00Z" } } } @@ -4492,8 +4496,7 @@ "404": { "description": "Value not found." } - }, - "deprecated": false + } } }, "/api/orders/pvt/document/{orderId}/invoices": { @@ -4502,7 +4505,7 @@ "Invoice" ], "summary": "Order invoice notification", - "description": "Once the order is invoiced, the seller should use this request to send the invoice information to the marketplace.\n\nWe strongly recommend that you always send the object of the invoiced items. With this practice, rounding errors will be avoided.\n\nIt is not allowed to use the same `invoiceNumber` in more than one request to the Order Invoice Notification endpoint.\n\nBe aware that this endpoint is also used by the seller to send the order tracking information. This, however, should be done in a separate moment, once the seller has the tracking information.\n\r\n\r> The `Notify invoice` resource is needed to use this API request. This is included in `OMS - Full access` and `IntegrationProfile - Fulfillment Oms`, among other default roles available in the Admin. Learn more about the [License manager roles and resources](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#).", + "description": "Endpoint used by the seller after order invoicing to send the invoice information to the marketplace.\r\n\r\nOnce the seller has the order tracking information, it is also possible to use this endpoint to send order tracking information to the marketplace.\r\n\r\n>⚠️ To avoid price rounding errors, we strongly recommend sending the object with the invoiced items in the request body.\r\n\r\n>❗ It is not allowed to use the same `invoiceNumber` in more than one 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| OMS | OMS access | **Notify invoice** |\r\n\r\nYou can [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) with that resource or use one of the following [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy):\r\n\r\n| **Role** | **Resource** | \r\n| --------------- | ----------------- | \r\n| OMS - Full access | Notify invoice |\r\n| IntegrationProfile - Fulfillment Gateway Oms | Notify invoice |\r\n| IntegrationProfile - Fulfillment Oms | Notify invoice |\r\n\r\n>❗ Assigning a [predefined role](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) to users or application keys usually grants permission to multiple [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3). If some of these permissions are not necessary, consider creating a custom role instead. For more information regarding security, see [Best practices for using application keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm). To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).", "operationId": "InvoiceNotification2", "parameters": [ { @@ -4519,30 +4522,114 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/InvoiceNotificationRequest" - }, - "example": { - "type": "Output", - "issuanceDate": "2010-01-31", - "invoiceNumber": "9999", - "invoiceValue": "10000", - "invoiceKey": null, - "invoiceUrl": null, - "courier": null, - "trackingNumber": null, - "trackingUrl": null, - "dispatchedDate": null, - "items": [ - { - "id": "1234", - "price": 10000, - "quantity": 1 + "type": "object", + "required": [ + "type", + "issuedDate", + "invoiceNumber", + "invoiceValue", + "items" + ], + "properties": { + "type": { + "type": "string", + "description": "Invoice type, which can be:\r\n- `Output`: Selling invoice type, used for the customer to receive the product.\r\n-`Input`: Returning invoice type, used for the customer to return a product to the store.", + "example": "Output" + }, + "issuedDate": { + "type": "string", + "description": "Invoice issuance date in the format `YYYY-MM-DD`.", + "example": "2024-09-20" + }, + "invoiceNumber": { + "type": "string", + "description": "Unique number that identifies the invoice.", + "example": "000059579" + }, + "invoiceValue": { + "type": "integer", + "description": "Total price being invoiced in cents. Do not use any decimal separator. For instance, `$24.99` should be represented as `2499`.", + "example": 2499 + }, + "extraValue": { + "type": "integer", + "description": "Extra value in the invoice in cents. Do not use any decimal separator. For instance, `$24.99` should be represented as `2499`.", + "example": 100 + }, + "invoiceKey": { + "type": "string", + "description": "Invoice key.", + "example": "33240945242914001845550010004817221546274961", + "nullable": true + }, + "invoiceUrl": { + "type": "string", + "description": "Invoice URL. It can be used to send the URL of an XML file, for example, which is useful for some integrations.", + "example": "https://ecommerce.str.com/logged/nf/v71021948str-01", + "nullable": true + }, + "courier": { + "type": "string", + "description": "The name of the carrier responsible for delivering the order.\n\r> This field should only be used when sending **tracking** information. When the request is used for sending the invoice, this field should be left empty (`\"\"`).", + "example": "OSAPLAG_EXPRESS", + "nullable": true + }, + "trackingNumber": { + "type": "string", + "description": "Code that identifies the order tracking.\n\r> This field should only be used when sending the **tracking** information. When the request is used for sending the invoice, this field should be left empty (`\"\"`).", + "example": "71021938", + "nullable": true + }, + "trackingUrl": { + "type": "string", + "description": "URL used to track the order.\n\r> This field should only be used when sending the **tracking** information. When the request is used for sending the invoice, this field should be left empty (`\"\"`).", + "example": "https://tracking.agj.com/order/v71021948str-01/status", + "nullable": true + }, + "items": { + "type": "array", + "description": "Array containing the SKUs that are being invoiced.", + "items": { + "type": "object", + "description": "Information about an item being invoiced.", + "required": [ + "itemIndex", + "price", + "quantity" + ], + "properties": { + "itemIndex": { + "type": "integer", + "description": "Index of the SKU being invoiced. The position starts in `0`, followed by `1`, `2`, and so on.", + "example": 0 + }, + "price": { + "type": "integer", + "description": "Total price of the SKU being invoiced in cents. Do not use any decimal separator. For instance, `$24.99` should be represented as `2499`.", + "example": 2499 + }, + "quantity": { + "type": "integer", + "description": "Quantity of the SKU being invoiced.", + "example": 3 + } + } + } + }, + "cfop": { + "type": "string", + "description": "[CFOP](https://www.gov.br/receitafederal/pt-br/acesso-a-informacao/acoes-e-programas/facilitacao/anexo-ecf-cfop) (_Código Fiscal de Operação e Prestação_) is a Brazilian fiscal code of operations and services that classifies business transactions types.", + "example": "5100" + }, + "volumes": { + "type": "integer", + "description": "Number of volumes in the invoice.", + "example": 3 } - ] + } } } - }, - "required": true + } }, "responses": { "200": { @@ -4554,37 +4641,37 @@ "properties": { "date": { "type": "string", - "description": "Date and time when the notification was received." + "description": "Date and time when the order invoice notification was received in [ISO 8601 time zone offset format](https://learn.microsoft.com/en-us/rest/api/storageservices/formatting-datetime-values), as in `YYYY-MM-DDThh:mm:ssZ`." }, "orderId": { "type": "string", - "description": "Identification of the order in the seller." + "description": "Order ID in the seller environment." }, "receipt": { "type": "string", - "description": "Protocol code generated by the update. It may be `null`." + "description": "Protocol code generated by the request.", + "nullable": true } - }, - "example": { - "date": "2014-02-07T15:22:56.7612218-02:00", - "orderId": "123543123", - "receipt": "38e0e47da2934847b489216d208cfd91" } + }, + "example": { + "date": "2024-09-25T18:03:19.7055982Z", + "orderId": "v71021948str-01", + "receipt": "38e0e47da2934847b489216d208cfd91" } } } }, "429": { - "description": "Too many requests" + "description": "Too Many Requests" }, "403": { "description": "Forbidden" }, "404": { - "description": "Not found" + "description": "Not Found" } - }, - "deprecated": false + } } }, "/api/orders/pvt/document/{orderId}/payment/{paymentId}/notify-payment": { @@ -4593,7 +4680,7 @@ "Payment" ], "summary": "Send payment notification", - "description": "Send a payment notification of a given order, by order ID and payment ID.\n\r\n\r> The `Notify payment` resource is needed to use this API request. This is included in `OMS - Full access` and `IntegrationProfile - Fulfillment Oms`, among other default roles available in the Admin. Learn more about the [License manager roles and resources](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#).\n\r\n\r> Learn more about [Transaction Details](https://help.vtex.com/en/tutorial/how-to-view-the-orders-details).\r\n\r\n\r\n## Request body properties\r\n\r\n| Attribute | Type | Description |\r\n| --------------- |:---------:| --------------------------------------:|\r\n| `orderId` | string | Order Id |\r\n| `paymentId` | string | Payment ID |", + "description": "Sends the payment notification of an order by searching by order ID and payment ID.\r\n\r\n> For more information about transaction details, check the article [Viewing the order's details in Orders](https://help.vtex.com/en/tutorial/viewing-the-orders-details-in-orders--tutorials_452).\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| OMS | OMS access | **Notify payment** |\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| OMS - Full access | Notify payment |\r\n| IntegrationProfile - Fulfillment Gateway | Notify payment |\r\n| IntegrationProfile - Fulfillment Gateway Oms | Notify payment |\r\n| IntegrationProfile - Fulfillment Oms | Notify payment |\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). To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).", "operationId": "SendPaymentNotification2", "parameters": [ { @@ -4625,8 +4712,7 @@ "429": { "description": "Too Many Requests" } - }, - "deprecated": false + } } } }, @@ -5460,18 +5546,8 @@ "description": "Pickup point address postal code." }, "country": { - "type": "object", - "description": "Information about the pickup point address country.", - "properties": { - "acronym": { - "type": "string", - "description": "Three-digit country code of the pickup point address in [ISO 3166 ALPHA-3](https://www.iban.com/country-codes) format." - }, - "name": { - "type": "string", - "description": "Country name of the pickup point address." - } - } + "type": "string", + "description": "Three-digit country code of the pickup point address in [ISO 3166 ALPHA-3](https://www.iban.com/country-codes) format." }, "city": { "type": "string", @@ -5499,7 +5575,8 @@ }, "reference": { "type": "string", - "description": "Pickup point address reference." + "description": "Pickup point address reference.", + "nullable": true }, "location": { "type": "object", @@ -5529,177 +5606,6 @@ } } }, - "PaymentData": { - "required": [ - "transactions" - ], - "type": "object", - "properties": { - "transactions": { - "type": "array", - "items": { - "required": [ - "isActive", - "transactionId", - "merchantName", - "payments" - ], - "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", - "items": { - "required": [ - "id", - "paymentSystem", - "paymentSystemName", - "value", - "installments", - "referenceValue", - "cardHolder", - "cardNumber", - "firstDigits", - "lastDigits", - "cvv2", - "expireMonth", - "expireYear", - "url", - "giftCardId", - "giftCardName", - "giftCardCaption", - "redemptionCode", - "group", - "tid", - "dueDate", - "connectorResponses" - ], - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Payment ID." - }, - "paymentSystem": { - "type": "string", - "description": "Payment system." - }, - "paymentSystemName": { - "type": "string", - "description": "Payment system name." - }, - "value": { - "type": "integer", - "format": "int32", - "description": "Payment value in cents." - }, - "installments": { - "type": "integer", - "format": "int32", - "description": "Payment installments." - }, - "referenceValue": { - "type": "integer", - "format": "int32", - "description": "Reference value for interest calculation in cents." - }, - "cardHolder": { - "type": "string", - "nullable": true, - "description": "Card holder" - }, - "cardNumber": { - "type": "string", - "nullable": true, - "description": "Card number." - }, - "firstDigits": { - "type": "string", - "nullable": true, - "description": "Card first digits." - }, - "lastDigits": { - "type": "string", - "nullable": true, - "description": "Card last digits." - }, - "cvv2": { - "type": "string", - "nullable": true, - "description": "Card verification code." - }, - "expireMonth": { - "type": "string", - "nullable": true, - "description": "Card expiration month." - }, - "expireYear": { - "type": "string", - "nullable": true, - "description": "Card expiration year." - }, - "url": { - "type": "string", - "description": "Payment URL." - }, - "giftCardId": { - "type": "string", - "nullable": true, - "description": "Gift card ID." - }, - "giftCardName": { - "type": "string", - "nullable": true, - "description": "Gift card name." - }, - "giftCardCaption": { - "type": "string", - "nullable": true, - "description": "Gift card caption." - }, - "redemptionCode": { - "type": "string", - "nullable": true, - "description": "Redemption code." - }, - "group": { - "type": "string", - "description": "Payment group." - }, - "tid": { - "type": "string", - "nullable": true, - "description": "Payment TID." - }, - "dueDate": { - "type": "string", - "description": "Due date." - }, - "connectorResponses": { - "type": "object", - "description": "Connector responses." - } - } - }, - "description": "Array with information on each payment for the order." - } - } - }, - "description": "Array with information on each transaction of the order." - } - } - }, "ChangesAttachment": { "type": "object", "description": "Information about changes in the order.", @@ -6160,470 +6066,6 @@ } } } - }, - "Facets1": { - "title": "Facets1", - "required": [ - "origin", - "currencyCode" - ], - "type": "object", - "properties": { - "origin": { - "$ref": "#/components/schemas/Origin1" - }, - "currencyCode": { - "$ref": "#/components/schemas/CurrencyCode1" - } - }, - "example": { - "origin": { - "Fulfillment": { - "Count": 68, - "Max": 1, - "Mean": 1, - "Min": 1, - "Missing": 0, - "StdDev": 0, - "Sum": 68, - "SumOfSquares": 68, - "Facets": null - }, - "Marketplace": { - "Count": 16, - "Max": 89, - "Mean": 7.4375, - "Min": 1, - "Missing": 0, - "StdDev": 21.92401651157926, - "Sum": 119, - "SumOfSquares": 8095, - "Facets": null - } - }, - "currencyCode": { - "BRL": { - "Count": 84, - "Max": 89, - "Mean": 2.2261904761904763, - "Min": 1, - "Missing": 0, - "StdDev": 9.660940100525016, - "Sum": 187, - "SumOfSquares": 8163, - "Facets": null - } - } - } - }, - "Origin1": { - "title": "Origin1", - "required": [ - "Fulfillment", - "Marketplace" - ], - "type": "object", - "properties": { - "Fulfillment": { - "$ref": "#/components/schemas/Fulfillment1" - }, - "Marketplace": { - "$ref": "#/components/schemas/Marketplace2" - } - }, - "example": { - "Fulfillment": { - "Count": 68, - "Max": 1, - "Mean": 1, - "Min": 1, - "Missing": 0, - "StdDev": 0, - "Sum": 68, - "SumOfSquares": 68, - "Facets": null - }, - "Marketplace": { - "Count": 16, - "Max": 89, - "Mean": 7.4375, - "Min": 1, - "Missing": 0, - "StdDev": 21.92401651157926, - "Sum": 119, - "SumOfSquares": 8095, - "Facets": null - } - } - }, - "Fulfillment1": { - "title": "Fulfillment1", - "required": [ - "Count", - "Max", - "Mean", - "Min", - "Missing", - "StdDev", - "Sum", - "SumOfSquares", - "Facets" - ], - "type": "object", - "properties": { - "Count": { - "type": "integer", - "format": "int32", - "description": "Count." - }, - "Max": { - "type": "integer", - "format": "int32", - "description": "Maximum." - }, - "Mean": { - "type": "number", - "description": "Mean." - }, - "Min": { - "type": "integer", - "format": "int32", - "description": "Minimum." - }, - "Missing": { - "type": "integer", - "format": "int32", - "description": "Missing." - }, - "StdDev": { - "type": "number", - "description": "Standard deviation." - }, - "Sum": { - "type": "integer", - "format": "int32", - "description": "Sum." - }, - "SumOfSquares": { - "type": "integer", - "format": "int64", - "description": "Sum of squares." - }, - "Facets": { - "type": "string", - "nullable": true, - "description": "Facets." - } - }, - "example": { - "Count": 68, - "Max": 1, - "Mean": 1, - "Min": 1, - "Missing": 0, - "StdDev": 0, - "Sum": 68, - "SumOfSquares": 68, - "Facets": null - } - }, - "Marketplace2": { - "title": "Marketplace2", - "required": [ - "Count", - "Max", - "Mean", - "Min", - "Missing", - "StdDev", - "Sum", - "SumOfSquares", - "Facets" - ], - "type": "object", - "properties": { - "Count": { - "type": "integer", - "format": "int32", - "description": "Count." - }, - "Max": { - "type": "integer", - "format": "int32", - "description": "Maximum." - }, - "Mean": { - "type": "number", - "description": "Mean." - }, - "Min": { - "type": "integer", - "format": "int32", - "description": "Minimum." - }, - "Missing": { - "type": "integer", - "format": "int32", - "description": "Missing." - }, - "StdDev": { - "type": "number", - "description": "Standard deviation." - }, - "Sum": { - "type": "integer", - "format": "int32", - "description": "Sum." - }, - "SumOfSquares": { - "type": "integer", - "format": "int64", - "description": "Sum of squares." - }, - "Facets": { - "type": "string", - "nullable": true, - "description": "Facets." - } - }, - "example": { - "Count": 16, - "Max": 89, - "Mean": 7.4375, - "Min": 1, - "Missing": 0, - "StdDev": 21.92401651157926, - "Sum": 119, - "SumOfSquares": 8095, - "Facets": null - } - }, - "CurrencyCode1": { - "title": "CurrencyCode1", - "required": [ - "BRL" - ], - "type": "object", - "properties": { - "BRL": { - "$ref": "#/components/schemas/BRL1" - } - }, - "example": { - "BRL": { - "Count": 84, - "Max": 89, - "Mean": 2.2261904761904763, - "Min": 1, - "Missing": 0, - "StdDev": 9.660940100525016, - "Sum": 187, - "SumOfSquares": 8163, - "Facets": null - } - } - }, - "BRL1": { - "title": "BRL1", - "required": [ - "Count", - "Max", - "Mean", - "Min", - "Missing", - "StdDev", - "Sum", - "SumOfSquares", - "Facets" - ], - "type": "object", - "properties": { - "Count": { - "type": "integer", - "format": "int32", - "description": "Count." - }, - "Max": { - "type": "integer", - "format": "int32", - "description": "Maximum." - }, - "Mean": { - "type": "number", - "description": "Mean." - }, - "Min": { - "type": "integer", - "format": "int32", - "description": "Minimum." - }, - "Missing": { - "type": "integer", - "format": "int32", - "description": "Missing." - }, - "StdDev": { - "type": "number", - "description": "Standard deviation." - }, - "Sum": { - "type": "integer", - "format": "int32", - "description": "Sum." - }, - "SumOfSquares": { - "type": "integer", - "format": "int64", - "description": "Sum of squares." - }, - "Facets": { - "type": "string", - "nullable": true, - "description": "Facets." - } - }, - "example": { - "Count": 84, - "Max": 89, - "Mean": 2.2261904761904763, - "Min": 1, - "Missing": 0, - "StdDev": 9.660940100525016, - "Sum": 187, - "SumOfSquares": 8163, - "Facets": null - } - }, - "InvoiceNotificationRequest": { - "title": "InvoiceNotificationRequest", - "required": [ - "type", - "issuedDate", - "invoiceNumber", - "invoiceValue", - "items" - ], - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "The type of invoice. There are two possible values: `\"Output\"` and `\"Input\"`. The `\"Output\"` type should be used when the invoice you are sending is a selling invoice. The `\"Input\"` type should be used when you send a return invoice.", - "example": "Output" - }, - "issuedDate": { - "type": "string", - "description": "Issuance date of the invoice in ISO format.", - "example": "2020-07-15" - }, - "invoiceNumber": { - "type": "string", - "description": "Number that identifies the invoice.", - "example": "123456789" - }, - "invoiceValue": { - "type": "string", - "description": "Total amount being invoiced in cents. Do not use any decimal separator. For instance, `$24.99` should be represented as `2499`.", - "example": 2499 - }, - "extraValue": { - "type": "integer", - "description": "Extra value in the invoice in cents. Do not use any decimal separator. For instance, `$24.99` should be represented as `2499`.", - "example": 100 - }, - "invoiceKey": { - "type": "string", - "nullable": true, - "description": "Invoice key." - }, - "invoiceUrl": { - "type": "string", - "description": "URL of the invoice. Can be used to send the URL of an XML file, for example, which is useful for some integrations." - }, - "courier": { - "type": "string", - "nullable": true, - "description": "The name of the carrier responsible for delivering the order.\n\r> This field should only be used when sending **tracking** information. When the request is used for sending the invoice, this field should be left empty (`\"\"`)." - }, - "trackingNumber": { - "type": "string", - "nullable": true, - "description": "Code that identifies the order tracking.\n\r> This field should only be used when sending the **tracking** information. When the request is used for sending the invoice, this field should be left empty (`\"\"`)." - }, - "trackingUrl": { - "type": "string", - "nullable": true, - "description": "URL used to track the order.\n\r> This field should only be used when sending the **tracking** information. When the request is used for sending the invoice, this field should be left empty (`\"\"`)." - }, - "items": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Item1" - }, - "description": "Array containing the SKUs that are being invoiced." - }, - "cfop": { - "type": "string", - "description": "Fiscal code used in Brazil.", - "example": "6.104" - }, - "volumes": { - "type": "integer", - "description": "Number of volumes in the invoice.", - "example": 3 - } - }, - "example": { - "type": "Output", - "issuedDate": "2019-01-30", - "invoiceNumber": "9999", - "invoiceValue": 2499, - "extraValue": 100, - "invoiceKey": null, - "invoiceUrl": null, - "courier": null, - "trackingNumber": null, - "trackingUrl": null, - "items": [ - { - "id": "1234", - "price": 10000, - "quantity": 1 - } - ] - } - }, - "Item1": { - "title": "Item1", - "required": [ - "itemIndex", - "price", - "quantity" - ], - "type": "object", - "properties": { - "itemIndex": { - "type": "string", - "description": "Index of the SKU being invoiced.", - "example": 67 - }, - "price": { - "type": "integer", - "format": "int32", - "description": "Total price of the SKU being invoiced in cents. Do not use any decimal separator. For instance, `$24.99` should be represented as `2499`.", - "example": 2499 - }, - "quantity": { - "type": "integer", - "format": "int32", - "description": "Quantity cof the SKU being invoiced.", - "example": 3 - } - }, - "example": { - "id": "1234", - "price": 10000, - "quantity": 1 - } } }, "parameters": { @@ -6652,12 +6094,12 @@ "orderId": { "name": "orderId", "in": "path", - "description": "ID of the order.", + "description": "Order ID.", "required": true, "style": "simple", "schema": { "type": "string", - "example": "70caf3941s6df1" + "example": "v71021948str-01" } }, "reason": { @@ -6674,12 +6116,12 @@ "paymentId": { "name": "paymentId", "in": "path", - "description": "ID of the payment.", + "description": "Payment ID.", "required": true, "style": "simple", "schema": { "type": "string", - "example": "45hsfg5jkyu1384jdsfgh654sfgj1" + "example": "B075A551595A43B0AD48DCD8EB481C7F" } } } diff --git a/VTEX - Payment Provider Protocol.json b/VTEX - Payment Provider Protocol.json index cb4a5c23e..2d54035ef 100644 --- a/VTEX - Payment Provider Protocol.json +++ b/VTEX - Payment Provider Protocol.json @@ -2704,7 +2704,7 @@ }, "delayToCancel": { "type": "integer", - "description": "Total time (in seconds) to wait for an authorization and make an automatic call to `/cancellations` to cancel the payment. The minimum value is 10 minutes (600 seconds). **NOTE 1**: If you set this field to a time period less than 24 hours (86399 seconds or less), the gateway will retry processing the payment every 1 hour. If you use a value of 24 hours (86400 seconds) or more in this field, the gateway will retry processing the payment every 4 hours. **NOTE 2**: For `delayToCancel` values between 5 minutes and 1 hour (300 and 3600 seconds), or when payment is made by [PIX](https://developers.vtex.com/docs/guides/payments-integration-pix-instant-payments-in-brazil) (Brazilian instant payment method), retry calls will occur every 5 minutes." + "description": "Total time (in seconds) to wait for an authorization and make an automatic call to `/cancellations` to cancel the payment. The minimum value is 10 minutes (600 seconds). **NOTE 1**: If you set this field to a time period less than 24 hours (86399 seconds or less), the gateway will retry processing the payment every 1 hour. If you use a value of 24 hours (86400 seconds) or more in this field, the gateway will retry processing the payment every 4 hours. **NOTE 2**: For `delayToCancel` values between 5 minutes and 1 hour (300 and 3600 seconds), or when payment is made by [PIX](https://developers.vtex.com/docs/guides/payments-integration-pix-instant-payments-in-brazil) (Brazilian instant payment method), retry calls will occur every 5 minutes. **NOTE 3**: The maximum value allowed for the `delayToCancel` field is 30 days (2592000 seconds)." }, "maxValue": { "type": "integer",