Páginas filhas
  • API - Cadastro de Produtos- Versão 1


CONTEÚDO

  1. Visão Geral
  2. Autenticação
  3. Cadastro de Produto
  4. Dicionário de Dados

01. VISÃO GERAL

A API de Produto do ChefWeb tem a função de possibilitar o cadastro e/ou atualização dos dados mínimos necessários para cadastrar Produtos no TOTVS Chef.

02. AUTENTICAÇÃO 

Geração Token

Para realizar qualquer acesso às consultas disponibilizadas é necessário solicitar um Token de autenticação, através da API "Gerar Token". Nessa chamada devem ser informados o usuário, a senha e o número de série do cliente que deseja consultar. O método retornará Token de acesso, com duração de 2 minutos. Este Token será composto de um código aleatório, do tipo string (Exemplo: ZQGL16Q3D43mhSi8nw8s3j2HhZPQ9Ei6), que deverá ser utilizado em uma chamada da API.

Não é possível reutilizar o Token de autenticação, sendo assim para cada chamada, dos métodos da API, deverá ser solicitado um novo.

Caso o Token gerado não seja utilizado em até 2 minutos ele estará automaticamente cancelado. 

Servidor

url_do_servidorchefweb.chef.totvs.com.br/chefwebapi


URL do Serviço: POST:http://{url_do_servidor}/api/Token/GerarToken

"Usuario": Usuário utilizado para acessar o ambiente no ChefWeb

“Senha”: Senha utilizada do usuário para acessar o ChefWeb

"NumeroSerialLoja": Informar o Diretório Site do ambiente que deseja consultar as informações de venda

"Chave": Manter Padrão "Chave"


Request

{

"Usuario": "totvschef",

"Senha": 123456,

"NumeroSerialLoja":"96700001",

"Chave": "Serial Number"

}

Response

O serviço retorna um JSON no formato abaixo:
1- Válido

{

   "Token": "69e9dde6-c91c-4c50-af1c-fc2dbe7875ba"

   "DataExpiração": "2017-12-22T10:41:53.4976772-02:00",

   "Sucesso": : true

   "Erro"::  []

}

03. CADASTRO DE PRODUTO

URL do Serviço POST:http://{url_do_servidor}/api/produto/salvarProduto

Request

A requisição deve ser preenchida obedecendo os seguintes critérios:

Token: Token de autenticação - Obrigatório

CodigoLoja: Código da Loja - Obrigatório

DataInicial: Data inicial do período critério de busca - Obrigatório

DataFinal: Data Final do período critério de busca - Obrigatório


{
  "serialLoja": "1234567",
  "token": "String",
  "codigoProduto": 123,
  "gerarCodigoProduto": false,
  "nomeProduto": "String",
  "quantidadeEstoque": 0.0,
  "quantidadeMinima": 0.0,
  "naoExibirNoCardapio": false,
  "precoVenda": 0.0,
  "precoCompra": 0.0,
  "divididoPor": 1.0,
  "pesavel": false,
  "pesoLiquido": 0.0,
  "descricaoProduto": "String",
  "margemLucro": 0.0,
  "permitirVendaFracionada": false,
  "localImpressao": "String",
  "idNCM": 1,
  "idCEST": 1,
  "idUnidade": 1,
  "idUnidadeCompra": 1,
  "idGrupo": 1,
  "idSubGrupo": 1
}


Response

O retorno do servidor será um JSON contendo uma lista de vendas conforme os critérios preenchidos no "Request":


{
   "codigo": 12345,
   "sucesso": true,
   "mensagens": [ ]
}






04. DICIONÁRIO DE DADOS

  • Número de Série: É o número de licença que identifica cada cliente TOTVS Varejo Food Service Retaguarda em nosso ambiente.


Nome

Tipo

ObrigatórioDescrição
tokenStringSimToken gerado atrás da API de obtenção - API Token.
codigoProdutoNumberSim

Código único do produto. Deve possuir até 14 caracteres.

Campo utilizado como "chave-primária" do cadastro e não pode ser duplicado. 

Caso enviado com valor 0 e o campo "gerarCodigoProduto" enviado com valor true será gerado um código para o produto incrementando o valor +1 ao código de produto de maior valor registrado na base.

gerarCodigoProdutoBooleanSimDefine se deve ser gerado um novo código de produto para o registro enviado. Caso o valor esteja true, será gerado um código para o produto incrementando o valor +1 ao código de produto de maior valor registrado na base.

nomeProduto

String

SimCampo que define o nome do produto que será exibido no PDV. Deve possuir até 100 caracteres.
quantidadeEstoqueDecimalNãoCampo para indicar a quantidade disponível em estoque do produto.
quantidadeMinimaDecimalNãoIndica a quantidade mínima de estoque do produto.
naoExibirNoCardapioBooleanNãoCampo que define se o campo deve ou não ser exibido no cardápio. Caso esteja preenchido com true o produto não será exibido no cardápio.
precoVendaDecimalSimPreço padrão de venda do produto. Deve ser maior que zero.
precoCompraDecimalNãoPreço pago na compra do produto.
divididoPorDecimalNãoCaso a unidade de entrada seja diferente da de saída, define por qual fator a unidade de entrada deve ser dividida no momento da venda. Ex: Unidade de entrada: CX; Unidade de saída: UN; DivididoPor: 12; Cada CX será equivalerá a 12 UN.
pesavelBooleanNãoIndica se o produto é ou não um produto pesável, ou seja, se é vendido por g/kg.
pesoLiquidoDecimalNãoPeso liquido do produto.
descricaoProdutoStringNãoDescrição do produto para exibição no PDV. Deve possuir até 100 caracteres.
margemLucroDecimalNãoValor percentual da margem de lucro do produto.
permitirVendaFracionadaBooleanNãoDefine se o produto pode ser vendido em unidades fracionadas, ou apenas em múltiplos da unidade utilizada.
localImpressaoStringNãoCampo para especificar se deve ser impresso o cupom em impressora não fiscal em outro local de impressão cadastrado no TOTVS Chef. Caso não seja preenchido, por padrão receberá o valor "NENHUM".
idNCMNumberSimId de registro de NCM cadastrado no TOTVS Chef para definir qual o código NCM será utilizado para o produto.
idCESTNumberNãoId de registro de CEST cadastrado no TOTVS Chef para definir qual o código CEST será utilizado para o produto.
idUnidadeNumberSimId de registro de Unidade de Medida cadastrado no TOTVS Chef para definir a unidade de medida que será utilizada na venda do produto.
idUnidadeCompraNumberSimId de registro de Unidade de Medida cadastrado no TOTVS Chef para definir a unidade de medida utilizada no momento da compra do produto.
idGrupoNumberSimId de registro de Grupo cadastrado no TOTVS Chef para definir o grupo ao qual o produto faz parte.
idSubGrupoNumberSimId de registro de Subgrupo cadastrado no TOTVS Chef para definir o subgrupo ao qual o produto faz parte.
serialLojaStringNãoCampo que determina para qual loja/gerenciador de franquia a informação será direcionada. Caso não seja preenchido, a informação será armazenada na loja "central".