{
    "info": {
        "_postman_id": "0dce6656-3c07-4fd2-8ce5-d9a5e7858a11",
        "name": "Stoxis External API",
        "description": "Collection oficial da API externa do Stoxis. Inclui autenticacao OAuth2 com client_id dedicado para integracoes externas e todos os endpoints externos documentados no manual do sistema.",
        "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
    },
    "variable": [
        {
            "key": "baseUrl",
            "value": "https://api.stoxis.com.br"
        },
        {
            "key": "apiVersion",
            "value": "v1"
        },
        {
            "key": "oauthClientId",
            "value": "stoxis-external-api"
        },
        {
            "key": "username",
            "value": "erp-parceiro"
        },
        {
            "key": "password",
            "value": "SuaSenha@123"
        },
        {
            "key": "accessToken",
            "value": ""
        },
        {
            "key": "refreshToken",
            "value": ""
        },
        {
            "key": "storeId",
            "value": ""
        },
        {
            "key": "productId",
            "value": "00000000-0000-0000-0000-000000000002"
        },
        {
            "key": "serviceId",
            "value": "00000000-0000-0000-0000-00000000000A"
        },
        {
            "key": "clientEntityId",
            "value": "00000000-0000-0000-0000-000000000003"
        },
        {
            "key": "supplierId",
            "value": "00000000-0000-0000-0000-000000000004"
        },
        {
            "key": "financialAccountId",
            "value": "00000000-0000-0000-0000-000000000005"
        },
        {
            "key": "saleId",
            "value": "00000000-0000-0000-0000-000000000006"
        },
        {
            "key": "categoryId",
            "value": "00000000-0000-0000-0000-000000000007"
        },
        {
            "key": "paymentMethodId",
            "value": "00000000-0000-0000-0000-000000000008"
        },
        {
            "key": "cashRegisterId",
            "value": "00000000-0000-0000-0000-000000000009"
        }
    ],
    "item": [
        {
            "name": "OAuth2",
            "item": [
                {
                    "name": "Gerar access token",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application/x-www-form-urlencoded"
                            }
                        ],
                        "body": {
                            "mode": "urlencoded",
                            "urlencoded": [
                                {
                                    "key": "grant_type",
                                    "value": "password",
                                    "type": "text"
                                },
                                {
                                    "key": "client_id",
                                    "value": "{{oauthClientId}}",
                                    "type": "text"
                                },
                                {
                                    "key": "username",
                                    "value": "{{username}}",
                                    "type": "text"
                                },
                                {
                                    "key": "password",
                                    "value": "{{password}}",
                                    "type": "text"
                                },
                                {
                                    "key": "scope",
                                    "value": "openid profile email roles offline_access",
                                    "type": "text"
                                }
                            ]
                        },
                        "url": {
                            "raw": "{{baseUrl}}/connect/token",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "connect",
                                "token"
                            ]
                        },
                        "description": "Gera o primeiro access token para uma integracao externa usando o client_id dedicado stoxis-external-api."
                    },
                    "event": [
                        {
                            "listen": "test",
                            "script": {
                                "type": "text/javascript",
                                "exec": [
                                    "var json = pm.response.json();",
                                    "if (json.access_token) {",
                                    "    pm.collectionVariables.set('accessToken', json.access_token);",
                                    "}",
                                    "if (json.refresh_token) {",
                                    "    pm.collectionVariables.set('refreshToken', json.refresh_token);",
                                    "}"
                                ]
                            }
                        }
                    ]
                },
                {
                    "name": "Renovar access token",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application/x-www-form-urlencoded"
                            }
                        ],
                        "body": {
                            "mode": "urlencoded",
                            "urlencoded": [
                                {
                                    "key": "grant_type",
                                    "value": "refresh_token",
                                    "type": "text"
                                },
                                {
                                    "key": "client_id",
                                    "value": "{{oauthClientId}}",
                                    "type": "text"
                                },
                                {
                                    "key": "refresh_token",
                                    "value": "{{refreshToken}}",
                                    "type": "text"
                                }
                            ]
                        },
                        "url": {
                            "raw": "{{baseUrl}}/connect/token",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "connect",
                                "token"
                            ]
                        },
                        "description": "Renova a sessao sem reenviar usuario e senha."
                    },
                    "event": [
                        {
                            "listen": "test",
                            "script": {
                                "type": "text/javascript",
                                "exec": [
                                    "var json = pm.response.json();",
                                    "if (json.access_token) {",
                                    "    pm.collectionVariables.set('accessToken', json.access_token);",
                                    "}",
                                    "if (json.refresh_token) {",
                                    "    pm.collectionVariables.set('refreshToken', json.refresh_token);",
                                    "}"
                                ]
                            }
                        }
                    ]
                }
            ]
        },
        {
            "name": "Produtos",
            "item": [
                {
                    "name": "Listar produtos",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            },
                            {
                                "key": "X-Store-Id",
                                "value": "{{storeId}}",
                                "disabled": true
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/products?page=1&pageSize=20&name=&brand=&inStockOnly=",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "products"
                            ],
                            "query": [
                                {
                                    "key": "page",
                                    "value": "1"
                                },
                                {
                                    "key": "pageSize",
                                    "value": "20"
                                },
                                {
                                    "key": "name",
                                    "value": "",
                                    "disabled": true
                                },
                                {
                                    "key": "brand",
                                    "value": "",
                                    "disabled": true
                                },
                                {
                                    "key": "inStockOnly",
                                    "value": "true",
                                    "disabled": true
                                }
                            ]
                        }
                    }
                },
                {
                    "name": "Obter produto por ID",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/products/{{productId}}",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "products",
                                "{{productId}}"
                            ]
                        }
                    }
                },
                {
                    "name": "Criar produto",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\n  \"name\": \"Camiseta Basica\",\n  \"description\": \"Produto criado pela API externa\",\n  \"internalCode\": \"SKU-1000\",\n  \"barcode\": \"7890000000001\",\n  \"categoryId\": \"{{categoryId}}\",\n  \"brand\": \"Stoxis\",\n  \"unitOfMeasure\": \"UN\",\n  \"productType\": \"Product\",\n  \"origin\": \"National\",\n  \"costPrice\": 45.90,\n  \"salePrice\": 79.90,\n  \"minimumPrice\": 69.90,\n  \"manageStock\": true,\n  \"currentStock\": 25,\n  \"minimumStock\": 5,\n  \"maximumStock\": 100,\n  \"allowNegativeStock\": false,\n  \"isActive\": true,\n  \"isComposite\": false,\n  \"nfeTaxRules\": [],\n  \"weight\": 0.25,\n  \"width\": 30,\n  \"height\": 2,\n  \"length\": 25\n}"
                        },
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/products",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "products"
                            ]
                        }
                    }
                },
                {
                    "name": "Atualizar produto",
                    "request": {
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\n  \"name\": \"Camiseta Basica Premium\",\n  \"description\": \"Produto atualizado pela API externa\",\n  \"internalCode\": \"SKU-1000\",\n  \"barcode\": \"7890000000001\",\n  \"categoryId\": \"{{categoryId}}\",\n  \"brand\": \"Stoxis\",\n  \"unitOfMeasure\": \"UN\",\n  \"productType\": \"Product\",\n  \"origin\": \"National\",\n  \"costPrice\": 48.90,\n  \"salePrice\": 84.90,\n  \"minimumPrice\": 74.90,\n  \"manageStock\": true,\n  \"currentStock\": 30,\n  \"minimumStock\": 5,\n  \"maximumStock\": 120,\n  \"allowNegativeStock\": false,\n  \"isActive\": true,\n  \"isComposite\": false,\n  \"nfeTaxRules\": [],\n  \"weight\": 0.25,\n  \"width\": 30,\n  \"height\": 2,\n  \"length\": 25\n}"
                        },
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/products/{{productId}}",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "products",
                                "{{productId}}"
                            ]
                        }
                    }
                },
                {
                    "name": "Excluir produto",
                    "request": {
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/products/{{productId}}",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "products",
                                "{{productId}}"
                            ]
                        }
                    }
                }
            ]
        },
        {
            "name": "Serviços",
            "item": [
                {
                    "name": "Listar serviços",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            },
                            {
                                "key": "X-Store-Id",
                                "value": "{{storeId}}",
                                "disabled": true
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/services?page=1&pageSize=20&name=&internalCode=&minPrice=&maxPrice=",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "services"
                            ],
                            "query": [
                                {
                                    "key": "page",
                                    "value": "1"
                                },
                                {
                                    "key": "pageSize",
                                    "value": "20"
                                },
                                {
                                    "key": "name",
                                    "value": "",
                                    "disabled": true
                                },
                                {
                                    "key": "internalCode",
                                    "value": "",
                                    "disabled": true
                                },
                                {
                                    "key": "minPrice",
                                    "value": "",
                                    "disabled": true
                                },
                                {
                                    "key": "maxPrice",
                                    "value": "",
                                    "disabled": true
                                }
                            ]
                        }
                    }
                },
                {
                    "name": "Obter serviço por ID",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/services/{{serviceId}}",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "services",
                                "{{serviceId}}"
                            ]
                        }
                    }
                },
                {
                    "name": "Criar serviço",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\n  \"name\": \"Consultoria Tecnica\",\n  \"description\": \"Servico criado pela API externa\",\n  \"internalCode\": \"SRV-1000\",\n  \"serviceCode\": \"CONSULT\",\n  \"municipalServiceCode\": \"1701\",\n  \"nbsCode\": \"1.0901.10.00\",\n  \"issRate\": 5,\n  \"price\": 180,\n  \"allowPriceChange\": true,\n  \"durationMinutes\": 60,\n  \"isActive\": true,\n  \"nfseTaxRules\": []\n}"
                        },
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/services",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "services"
                            ]
                        }
                    }
                },
                {
                    "name": "Atualizar serviço",
                    "request": {
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\n  \"name\": \"Consultoria Tecnica Premium\",\n  \"description\": \"Servico atualizado pela API externa\",\n  \"internalCode\": \"SRV-1000\",\n  \"serviceCode\": \"CONSULT\",\n  \"municipalServiceCode\": \"1701\",\n  \"nbsCode\": \"1.0901.10.00\",\n  \"issRate\": 5,\n  \"price\": 220,\n  \"allowPriceChange\": true,\n  \"durationMinutes\": 90,\n  \"isActive\": true,\n  \"nfseTaxRules\": []\n}"
                        },
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/services/{{serviceId}}",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "services",
                                "{{serviceId}}"
                            ]
                        }
                    }
                },
                {
                    "name": "Excluir serviço",
                    "request": {
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/services/{{serviceId}}",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "services",
                                "{{serviceId}}"
                            ]
                        }
                    }
                }
            ]
        },
        {
            "name": "Clientes",
            "item": [
                {
                    "name": "Listar clientes",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/clients?page=1&pageSize=20&name=&isActive=",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "clients"
                            ],
                            "query": [
                                {
                                    "key": "page",
                                    "value": "1"
                                },
                                {
                                    "key": "pageSize",
                                    "value": "20"
                                },
                                {
                                    "key": "name",
                                    "value": "",
                                    "disabled": true
                                },
                                {
                                    "key": "isActive",
                                    "value": "true",
                                    "disabled": true
                                }
                            ]
                        }
                    }
                },
                {
                    "name": "Obter cliente por ID",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/clients/{{clientEntityId}}",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "clients",
                                "{{clientEntityId}}"
                            ]
                        }
                    }
                },
                {
                    "name": "Criar cliente",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\n  \"person\": {\n    \"personType\": \"PF\",\n    \"name\": \"Maria\",\n    \"lastName\": \"Silva\",\n    \"email\": \"maria.silva@cliente.com\",\n    \"phone\": \"11999990000\",\n    \"whatsApp\": \"11999990000\",\n    \"status\": \"Active\",\n    \"notes\": \"Cliente criado pela API\",\n    \"addresses\": [\n      {\n        \"zipCode\": \"01310100\",\n        \"street\": \"Avenida Paulista\",\n        \"number\": \"1000\",\n        \"neighborhood\": \"Bela Vista\",\n        \"city\": \"Sao Paulo\",\n        \"state\": \"SP\",\n        \"country\": \"Brasil\",\n        \"addressType\": \"Main\"\n      }\n    ],\n    \"contacts\": [],\n    \"bankAccounts\": []\n  },\n  \"creditLimit\": 1000,\n  \"acceptsMarketing\": true,\n  \"referredBy\": \"Integracao ERP\"\n}"
                        },
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/clients",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "clients"
                            ]
                        }
                    }
                },
                {
                    "name": "Atualizar cliente",
                    "request": {
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\n  \"person\": {\n    \"personType\": \"PF\",\n    \"name\": \"Maria\",\n    \"lastName\": \"Silva\",\n    \"email\": \"financeiro@cliente.com\",\n    \"phone\": \"11999990000\",\n    \"whatsApp\": \"11999990000\",\n    \"status\": \"Active\",\n    \"notes\": \"Cliente atualizado pela API\"\n  },\n  \"creditLimit\": 2500,\n  \"acceptsMarketing\": false,\n  \"referredBy\": \"Portal B2B\"\n}"
                        },
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/clients/{{clientEntityId}}",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "clients",
                                "{{clientEntityId}}"
                            ]
                        }
                    }
                },
                {
                    "name": "Excluir cliente",
                    "request": {
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/clients/{{clientEntityId}}",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "clients",
                                "{{clientEntityId}}"
                            ]
                        }
                    }
                }
            ]
        },
        {
            "name": "Fornecedores",
            "item": [
                {
                    "name": "Listar fornecedores",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/suppliers?page=1&pageSize=20&name=&isActive=",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "suppliers"
                            ],
                            "query": [
                                {
                                    "key": "page",
                                    "value": "1"
                                },
                                {
                                    "key": "pageSize",
                                    "value": "20"
                                },
                                {
                                    "key": "name",
                                    "value": "",
                                    "disabled": true
                                },
                                {
                                    "key": "isActive",
                                    "value": "true",
                                    "disabled": true
                                }
                            ]
                        }
                    }
                },
                {
                    "name": "Obter fornecedor por ID",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/suppliers/{{supplierId}}",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "suppliers",
                                "{{supplierId}}"
                            ]
                        }
                    }
                },
                {
                    "name": "Criar fornecedor",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\n  \"person\": {\n    \"personType\": \"PJ\",\n    \"name\": \"Distribuidora Central\",\n    \"companyName\": \"Distribuidora Central LTDA\",\n    \"tradeName\": \"Distribuidora Central\",\n    \"cpfCnpj\": \"12345678000199\",\n    \"email\": \"contato@fornecedor.com\",\n    \"phone\": \"1133334444\",\n    \"whatsApp\": \"11988887777\",\n    \"status\": \"Active\",\n    \"addresses\": [],\n    \"contacts\": [],\n    \"bankAccounts\": []\n  },\n  \"mainContact\": \"Carlos Souza\",\n  \"contactRole\": \"Comercial\",\n  \"category\": \"Vestuario\",\n  \"deliveryDays\": 7,\n  \"paymentDays\": 30,\n  \"minimumOrderQuantity\": 10,\n  \"minimumPurchaseValue\": 500\n}"
                        },
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/suppliers",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "suppliers"
                            ]
                        }
                    }
                },
                {
                    "name": "Atualizar fornecedor",
                    "request": {
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\n  \"person\": {\n    \"personType\": \"PJ\",\n    \"name\": \"Distribuidora Central\",\n    \"companyName\": \"Distribuidora Central LTDA\",\n    \"tradeName\": \"Distribuidora Central\",\n    \"cpfCnpj\": \"12345678000199\",\n    \"email\": \"fiscal@fornecedor.com\",\n    \"phone\": \"1133334444\",\n    \"whatsApp\": \"11988887777\",\n    \"status\": \"Active\"\n  },\n  \"mainContact\": \"Carlos Souza\",\n  \"contactRole\": \"Financeiro\",\n  \"category\": \"Vestuario\",\n  \"deliveryDays\": 5,\n  \"paymentDays\": 28,\n  \"minimumOrderQuantity\": 5,\n  \"minimumPurchaseValue\": 350\n}"
                        },
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/suppliers/{{supplierId}}",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "suppliers",
                                "{{supplierId}}"
                            ]
                        }
                    }
                },
                {
                    "name": "Excluir fornecedor",
                    "request": {
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/suppliers/{{supplierId}}",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "suppliers",
                                "{{supplierId}}"
                            ]
                        }
                    }
                }
            ]
        },
        {
            "name": "Estoque",
            "item": [
                {
                    "name": "Listar movimentacoes de estoque",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/inventory/movements?productId={{productId}}",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "inventory",
                                "movements"
                            ],
                            "query": [
                                {
                                    "key": "productId",
                                    "value": "{{productId}}",
                                    "disabled": true
                                }
                            ]
                        }
                    }
                },
                {
                    "name": "Registrar movimentacao manual",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            },
                            {
                                "key": "X-Store-Id",
                                "value": "{{storeId}}",
                                "disabled": true
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\n  \"productId\": \"{{productId}}\",\n  \"productVariantId\": null,\n  \"movementType\": \"ManualAdjustment\",\n  \"quantity\": 5,\n  \"unitCost\": 45.90,\n  \"referenceId\": null,\n  \"notes\": \"Ajuste manual realizado pela integracao externa\"\n}"
                        },
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/inventory/movements",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "inventory",
                                "movements"
                            ]
                        }
                    }
                },
                {
                    "name": "Listar alertas de estoque minimo",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/inventory/stock-alerts",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "inventory",
                                "stock-alerts"
                            ]
                        }
                    }
                }
            ]
        },
        {
            "name": "Financeiro",
            "item": [
                {
                    "name": "Listar contas financeiras",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/financial-accounts?page=1&pageSize=20&type=Receivable&status=Pending",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "financial-accounts"
                            ],
                            "query": [
                                {
                                    "key": "page",
                                    "value": "1"
                                },
                                {
                                    "key": "pageSize",
                                    "value": "20"
                                },
                                {
                                    "key": "type",
                                    "value": "Receivable",
                                    "disabled": true
                                },
                                {
                                    "key": "status",
                                    "value": "Pending",
                                    "disabled": true
                                }
                            ]
                        }
                    }
                },
                {
                    "name": "Obter conta financeira por ID",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/financial-accounts/{{financialAccountId}}",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "financial-accounts",
                                "{{financialAccountId}}"
                            ]
                        }
                    }
                },
                {
                    "name": "Criar conta financeira",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\n  \"description\": \"Recebimento pedido #1234\",\n  \"type\": \"Receivable\",\n  \"categoryId\": \"{{categoryId}}\",\n  \"clientId\": \"{{clientEntityId}}\",\n  \"supplierId\": null,\n  \"totalAmount\": 249.90,\n  \"dueDate\": \"2026-05-10T00:00:00Z\",\n  \"notes\": \"Criado pela integracao externa\",\n  \"totalInstallments\": 1\n}"
                        },
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/financial-accounts",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "financial-accounts"
                            ]
                        }
                    }
                },
                {
                    "name": "Atualizar conta financeira",
                    "request": {
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\n  \"description\": \"Recebimento pedido #1234 ajustado\",\n  \"categoryId\": \"{{categoryId}}\",\n  \"clientId\": \"{{clientEntityId}}\",\n  \"supplierId\": null,\n  \"totalAmount\": 259.90,\n  \"dueDate\": \"2026-05-12T00:00:00Z\",\n  \"notes\": \"Valor ajustado pela integracao\"\n}"
                        },
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/financial-accounts/{{financialAccountId}}",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "financial-accounts",
                                "{{financialAccountId}}"
                            ]
                        }
                    }
                },
                {
                    "name": "Registrar pagamento",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\n  \"amount\": 259.90,\n  \"paymentDate\": \"2026-05-12T14:30:00Z\"\n}"
                        },
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/financial-accounts/{{financialAccountId}}/pay",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "financial-accounts",
                                "{{financialAccountId}}",
                                "pay"
                            ]
                        }
                    }
                },
                {
                    "name": "Excluir conta financeira",
                    "request": {
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/financial-accounts/{{financialAccountId}}",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "financial-accounts",
                                "{{financialAccountId}}"
                            ]
                        }
                    }
                }
            ]
        },
        {
            "name": "Vendas",
            "item": [
                {
                    "name": "Listar vendas",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            },
                            {
                                "key": "X-Store-Id",
                                "value": "{{storeId}}",
                                "disabled": true
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/sales?page=1&pageSize=20&status=Completed",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "sales"
                            ],
                            "query": [
                                {
                                    "key": "page",
                                    "value": "1"
                                },
                                {
                                    "key": "pageSize",
                                    "value": "20"
                                },
                                {
                                    "key": "status",
                                    "value": "Completed",
                                    "disabled": true
                                }
                            ]
                        }
                    }
                },
                {
                    "name": "Obter venda por ID",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/sales/{{saleId}}",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "sales",
                                "{{saleId}}"
                            ]
                        }
                    }
                },
                {
                    "name": "Criar venda",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            },
                            {
                                "key": "X-Store-Id",
                                "value": "{{storeId}}",
                                "disabled": true
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\n  \"clientId\": \"{{clientEntityId}}\",\n  \"cashRegisterId\": \"{{cashRegisterId}}\",\n  \"salespersonId\": null,\n  \"notes\": \"Venda criada pela API externa\",\n  \"items\": [\n    {\n      \"itemType\": \"Product\",\n      \"productId\": \"{{productId}}\",\n      \"productVariantId\": null,\n      \"serviceItemId\": null,\n      \"description\": \"Camiseta Basica\",\n      \"quantity\": 2,\n      \"unitPrice\": 79.90,\n      \"discount\": 0,\n      \"surcharge\": 0,\n      \"tax\": 0\n    }\n  ],\n  \"payments\": [\n    {\n      \"paymentMethodId\": \"{{paymentMethodId}}\",\n      \"amount\": 159.80,\n      \"installments\": 1,\n      \"notes\": \"Pagamento via PIX\"\n    }\n  ]\n}"
                        },
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/sales",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "sales"
                            ]
                        }
                    }
                },
                {
                    "name": "Cancelar venda",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/sales/{{saleId}}/cancel",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "sales",
                                "{{saleId}}",
                                "cancel"
                            ]
                        }
                    }
                }
            ]
        },
        {
            "name": "Lojas",
            "description": "Endpoints de consulta de lojas. Use o ID retornado como valor do header X-Store-Id nas operacoes multi-loja.",
            "item": [
                {
                    "name": "Listar lojas",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/stores",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "stores"
                            ]
                        },
                        "description": "Retorna todas as lojas do tenant. O campo 'id' de cada loja deve ser usado como valor do header X-Store-Id nas requisicoes que exigem contexto de loja (vendas, estoque, etc.)."
                    }
                },
                {
                    "name": "Obter loja por ID",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/stores/{{storeId}}",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "stores",
                                "{{storeId}}"
                            ]
                        }
                    }
                }
            ]
        },
        {
            "name": "Categorias de Produto",
            "description": "Endpoints de consulta de categorias de produto. Use o ID retornado ao criar/atualizar produtos.",
            "item": [
                {
                    "name": "Listar categorias de produto",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/product-categories",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "product-categories"
                            ]
                        },
                        "description": "Retorna todas as categorias de produto do tenant. O campo 'id' de cada categoria deve ser usado no campo 'categoryId' ao criar ou atualizar produtos."
                    }
                },
                {
                    "name": "Obter categoria de produto por ID",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/product-categories/{{categoryId}}",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "product-categories",
                                "{{categoryId}}"
                            ]
                        }
                    }
                }
            ]
        },
        {
            "name": "Formas de Pagamento",
            "description": "Endpoints de consulta de formas de pagamento. Use o ID retornado ao registrar pagamentos em vendas.",
            "item": [
                {
                    "name": "Listar formas de pagamento",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/payment-methods?activeOnly=true",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "payment-methods"
                            ],
                            "query": [
                                {
                                    "key": "activeOnly",
                                    "value": "true",
                                    "description": "Filtra apenas formas de pagamento ativas. Omitir para retornar todas."
                                }
                            ]
                        },
                        "description": "Retorna as formas de pagamento do tenant. O campo 'id' de cada forma de pagamento deve ser usado no campo 'paymentMethodId' ao criar vendas."
                    }
                },
                {
                    "name": "Obter forma de pagamento por ID",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/payment-methods/{{paymentMethodId}}",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "payment-methods",
                                "{{paymentMethodId}}"
                            ]
                        }
                    }
                }
            ]
        },
        {
            "name": "Caixas",
            "description": "Endpoints de consulta de caixas. O 'cashRegisterId' de um caixa aberto e obrigatorio para criar vendas.",
            "item": [
                {
                    "name": "Listar caixas",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/cash-registers?page=1&pageSize=20",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "cash-registers"
                            ],
                            "query": [
                                {
                                    "key": "page",
                                    "value": "1"
                                },
                                {
                                    "key": "pageSize",
                                    "value": "20"
                                }
                            ]
                        },
                        "description": "Retorna todos os caixas do tenant (paginado). Para criar uma venda, use o 'id' de um caixa com status 'Open' no campo 'cashRegisterId'."
                    }
                },
                {
                    "name": "Obter caixa por ID",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/cash-registers/{{cashRegisterId}}",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "cash-registers",
                                "{{cashRegisterId}}"
                            ]
                        }
                    }
                },
                {
                    "name": "Obter caixa ativo",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Authorization",
                                "value": "Bearer {{accessToken}}"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/{{apiVersion}}/external/cash-registers/active",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "{{apiVersion}}",
                                "external",
                                "cash-registers",
                                "active"
                            ],
                            "query": [
                                {
                                    "key": "terminalId",
                                    "value": "",
                                    "disabled": true,
                                    "description": "Opcional — filtra pelo terminal PDV especifico."
                                }
                            ]
                        },
                        "description": "Retorna o caixa atualmente aberto. Retorna 204 No Content se nao houver nenhum caixa aberto. Use o 'id' retornado como 'cashRegisterId' ao criar vendas."
                    }
                }
            ]
        }
    ]
}