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

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:

Como realizar cadastros nas rotinas 202, 203, 302?

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

Como realizar o cadastro de Produto Armazenagem na rotina 282?


Importante

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.



Quando enviar o parâmetro na useAllPackages="Y" (Parâmetro não obrigatório) na URL e  o parâmetro da rotina 132 FIL_UTILIZAVENDAPOREMBALAGEM= Sim a API retornará todas as embalagens do produto que estiverem com o campo "Envia" marcados das rotina 292/2014.

A API também retornará o campo active=true/false conforme o campo ativo desta rotina.



Integração


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

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.enviaecommerce
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

Exemplo do envio da requisição:

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.
		
       OU

url: '/api/purchases/v1/skus/id/{código auxiliar}/branchId/{código da filial}/useAllPackages/{Y/N}{Retornar todas as embalagens}'  -> retorno da embalagem informada na própria requisição.


Quando o parâmetro 2291 FIL_UTILIZAVENDAPOREMBALAGEM da rotina 132 estiver como Sim e passar na URL o parâmetro useAllPackages=Y a API irá retornar todas as embalagens do produto cadastradas na rotinas de cadastro de embalagens 292 e 2014

Obs: o parâmetro useAllPackages não é obrigatório.


Params
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
useAllPackages : N						- retorna embalagens do produto cadastradas e ativas (Y= Sim N= Não)

Exemplo JSON da resposta:  

Body 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






  • Sem rótulos