Páginas filhas
  • APIs Integrações - Estoque Disponível

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Totvs custom tabs box
tabsDados integrados com Winthor, Envio Parâmetros, Resposta da Requisição, Regras para o retorno, Vídeo de Demonstração
idspasso1,passo2,passo3,passo4,passo5

A integração consiste em enviar todo estoque disponível que serão utilizados no E-Commerce.

Totvs custom tabs box items
defaultyes
referenciapasso1

Os dados integrados são: 

STOCKPCEST
APIReferência Winthor
createDatepcest.dtprimcompra

pcprodut.dtcadastro
lastChangepcpest.dthoraultaltdisp

pcprodut.dtultalter

pcprodut.dtcadastro
productIdpcprodut.codauxiliar + pcprodut.codprod
quantitypkg_estoque.estoque_disponivel
unlimitedQuantitypcprodut.exibesemestoqueecommerce = S retorna "true"
pcprodut.exibesemestoqueecommerce = N retorna "false"
pcprodut.exibesemestoqueecommerce = NULL retorna "false"
warehouseBranchIdpcest.codfilial
warehouseBranchNamepcfilial.razaosocial
unitMultiplierpcembalagem.qtunit
Totvs custom tabs box items
defaultno
referenciapasso2

Exemplo do envio da requisição:

Bloco de código
languagejs
titleURI Parameters
method: 'GET'
url: '/api/stock-vtex/v1/available/{código da filial}/{código do produto}' -> Envio de parâmetros na URI (Retorno JSON será o mesmo demonstrado)

OU

/api/stock-vtex/v1/available/list?branchId=1,2&usesPackagingSales=true  

OU

url: '/api/stock-vtex/v1/available/list' -> Exige os parâmetros abaixo.
Bloco de código
languagejs
titleParams
branchId 	 		: 1						- Código Filial/Multifilial  *requerido
callOrigin 	 		: W 					- Origem 'Web' - valor fixo - caso no cadastro do produto esteja com o campo ENVIARECOMMERCE=S.
lastChange 	 		: 2021-08-03T16:14:03 	- Data da última alteração
order		 		: lastChange (padrão)	- Ordenação da busca 
categoryId	 		: 0						- Código da Categoria
subcategoryId		: 0						- Código da SubCategoria
sectionId	 		: 0						- Código da Seção
departmentId 		: 0						- Código do Departamento
providerId	 		: 0						- Código do fornecedor
productId 	 		: 0						- Código do Produto
page	     		: 0						- Número da página
pageSize  	 		: 0						- Tamanho da página
usesPackagingSales 	: true					- Indica que a quantidade de estoque disponível retornada será particionada por embalagem
resale  			: true					- indicaIndica se deve ou não ser retornado produtos marcados como revenda. Se nulo, todos os produtos serão retornados;
merchandiseType		: string				- Indica os tipos de mercadoria que deveramdeverão ser retornados (PA, KT, CB, etc). Se enviado um tipo de mercadoria inexistente, a consulta retornará vazia;
Totvs custom tabs box items
defaultno
referenciapasso3

Exemplo JSON da resposta:  

Bloco de código
languagejs
titleBody Response
{
    "first": false,
    "items": [
        {
            "createDate": "2020-01-07T00:00:00",
            "lastChange": "2021-08-03T16:56:42",
            "productId": "000-0",  (Código auxiliar | Código Produto)
            "quantity": 0,
            "unlimitedQuantity": false,
            "warehouseBranchId": "string",
            "warehouseBranchName": "string",
            "unitMultiplier": 0   -> Quantidade por embalagem
        }
    ],
    "hasNext": false
}
Totvs custom tabs box items
defaultno
referenciapasso4

Regras para o retorno dos campos da requisição:

Campo "quantity"

  • Caso o parâmetro "usesPackagingSales" seja enviado como true, o campo retornará de acordo com a seguinte regra:

% Por Peso:

Corresponde ao fator de conversão multiplicado por 100, e dividido pela somatória dos fatores de conversão;

Valor aplicado

Corresponde ao percentual por peso da embalagem dividido por 100 e multiplicado pela quantidade de estoque do produto;

Resto

Corresponde ao resto da divisão do valor aplicado pelo fator de conversão;

Valor resultante

Corresponde ao valor aplicado menos o resto. Na API, é o valor que representa a quantidade particionada por peso de embalagem, e será retornada no campo "quantity";

Quantidade total

Corresponde a soma dos valores resultantes das embalagens;

Diferença

Corresponde a quantidade de estoque do produto menos a quantidade total. O resultado da operação deverá ser somado a quantidade total da embalagem com fator de conversão igual a 1;

Totvs custom tabs box items
defaultno
referenciapasso5

Demonstração utilizando o Postman para realizar as requisições na API. 

...