Páginas filhas
  • APIs Integrações - Embalagem/SKU

Versões comparadas

Chave

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

Objetivo

Este documento tem como objetivo explicar o funcionamento da integração da Embalagem.

Pré-Requisitos e Restrições

  • Necessário a instalação do serviço winthor-compras-produto. Para realizar a instalação desse serviço, segue link com as devidas explicações:

Comece por aqui -> Parametrizações WTA

  • A embalagem deve possuir o código EAN parametrizado no cadastro do produto (Rotina 203), campo CODAUXILIAR.

  • Os valores dos campos ("realHeight", "realLength", "realWeightKg", "realWidth") são correspondentes as rotinas 292 ou 2014.

Rotina 292: Cadastrar embalagens

Os campos em destaque representam os campos descritos acima da rotina 292

Caso tenha dúvidas de como utilizar a rotina 292, segue link abaixo para apoio:

Como parametrizar o processo de inclusão de embalagem na rotina 292?

Rotina 2014: Cadastro de embalagens

Os campos em destaque representam os campos descritos acima da rotina 2014

Caso tenha dúvidas de como utilizar a rotina 2014, segue link abaixo para apoio:

Como realizar o cadastro de embalagem por meio da rotina 2014?


  • Os valores dos campos ("Height", "Length", "WeightKg", "Width", "Volume") são correspondentes as rotinas 203 ou 282.

Caso tenha dúvidas de como utilizar a rotina 203, segue link abaixo para apoio:


Aviso
titleImportante

Quando não houver preenchimento do campo DATA, exemplo (data de cadastro, data de alteração), nossas APIs retornará por padrão a informação "1900-01-01T00:00:00".

Caso necessário, realizar o ajuste nos cadastros para que a API apresente a data desejada.

Recomendamos marcar como não o parâmetro 4591 - Permite editar o do código auxiliar do cadastro de embalagem da rotina 2014 (PERMTEDITCODAUX2014) na rotina 132 para não editar o CodAuxiliar do produto. 

Desta forma não incorre o risco de alterar um produto e perder a referencia no Ecommerce e não receber pedidos por exemplo.

Neste cenário deverá ser criado uma nova embalagem e nova associação de produto além de desabilitar o produto\sku antigo no Sistema de ecommerce.


Integração


Totvs custom tabs box
tabsDados integrados com Winthor, Envio Parâmetros, Resposta da Requisição, Passo 04
idspasso1,passo2,passo3

A integração consiste em enviar todas as embalagens que serão utilizados no E-Commerce.

Totvs custom tabs box items
defaultyes
referenciapasso1

Os dados integrados são: 

SKUPCEMBALAGEM
Retorno APICampos Banco Winthor
idpcembalagem.codauxiliar
lastChangepcembalagem.dtultalt
createDatepcprodut.dtcadastro
brandIdpcprodut.codmarca
categoryIdpcprodut.codcategoria
webDepartmentIdpcprodut.coddeptoweb
webSectionIdpcprodut.codsecaoweb
webCategoryIdpcprodut.codcategoriaweb
webSubcategoryIdpcprodut.codsubcategoriaweb
description2pcprodut.descricao2
description3pcprodut.descricao3
description4pcprodut.descricao4
description5pcprodut.descricao5
description6pcprodut.descricao6
description7pcprodut.descricao7
departmentIdpcprodut.codepto
isActivepcembalagem.excluido
isAvaiablepcembalagem.excluido
isKit
listOfEANpcembalagem.codauxiliar
namepcembalagem.embalagem
nameproductpcprodut.descricao
pricepcembalagem.pvenda
productRootIdpcembalagem.codprod
productSKUIdpcembalagem.codauxiliar + pcembalagem.codprod
productOriginalSKUId

pcembalagem.codauxiliaranterior + pcembalagem.codprod 

Obs. Caso o codauxiliaranterior não esteja preenchido, será retornado o codauxiliar;

Obs 2. O codauxiliaranterior é o campo destinado a armazenar o valor original do código auxiliar da embalagem, em caso de alteração do mesmo.

realWidthpcembalagem.largura
realWeightKgpcembalagem.pesobruto
realLengthpcembalagem.comprimento
realHeightpcembalagem.altura
sectionId
merchandiseTypepcprodut.tipomerc
unitMultiplierpcembalagem.qtunit
widthpcprodut.largura
weightKgpcprodut.pesobruto
lengthpcprodut.comprimento
heightpcprodut.altura
volumepcprodut.volume
rawMaterialBasicBasketProductIdpcformprod.codprodacab
rawMaterialBasicBasketQuantitypcformprod.qtprodmp
branchIdpcformprod.codfilial
Totvs custom tabs box items
defaultno
referenciapasso2

Exemplo do envio da requisição:

Bloco de código
languagejs
method: 'GET',
url: '/api/purchases/v1/skus/'   -> retorno da lista, inserindo os parâmetros conforme abaixo.

		OU 

url: '/api/purchases/v1/skus/id/{código auxiliar}/branchId/{código da filial}'  -> retorno da embalagem informada na própria requisição.
Bloco de código
languagejs
titleParams
companyId	: 1 					- campo requerido
lastChange  : 1900-01-01T00:00:00	- Informar data da última alteração
page		: 1						- Informar número de página
pageSize	: 10					- Informar quantidade por página
branchId	: 1						- Informar o código da filial
Totvs custom tabs box items
defaultno
referenciapasso3

Exemplo JSON da resposta:  

Bloco de código
languagejs
titleBody Response
{
    "active": false,
    "avaiable": false,
    "kit": false,
    "brandId": 0,
    "categoryId": 0,
    "webDepartmentId": 0,
    "webSectionId": 0,
    "webCategoryId": 0,
    "webSubcategoryId  ": 0,
    "createDate": "2012-01-01T00:00:00",
    "departmentId": 0,
    "description2": "string",
    "description3": "string",
    "description4": "string",
    "description6": "string",
    "description7": "string",
    "height": 0,
    "id": 0,
    "isActive": false,
    "isAvaiable": false,
    "isKit": false,
    "lastChange": "2021-07-23T15:25:19",
    "length": 0,
    "listOfEAN": [
        0
    ],
    "name": "string",
    "nameProduct": "string",
    "price": 0,
    "productRootId": 0,
    "productSKUId": "000-0",
    "productOriginalSKUId": "000-0",     
    "realHeight": 0,
    "realLength": 0,
    "realWeightKg": 0,
    "realWidth": 0,
    "sectionId": 0,
    "merchandiseType": "string",
    "unitMultiplier": 0,
    "volume": 0,
    "weightKg": 0,
    "width": 0
}

Para que seja realizada uma nova integração atualizando um registro já integrado, o sistema verifica a data de última atualização do registro. Portanto, ao realizar alguma alteração no registro, ele será encaminhado novamente para a view para manter a integridade dos dados do ERP com o E-commerce