e
View file | ||
---|---|---|
|
Versão antiga do Jira | ||||||
---|---|---|---|---|---|---|
|
Objetivo
Detalhar o uso de API de Vendas no Sispetro.
Uso Geral
Obter token autenticação
Introdução
Qualquer webservice do projeto SispetroWeb exigirá um token de autenticação. Este token é gerado a partir deste webservice e será válido por 24 horas. Assim, recomendamos que o sistema consumidor dos webservices aqui descritos salvem o token armazenando também a data e hora em que ele foi gerado para que, quando chegar próximo de sua validade, seja obtido novo token.
Para mais informações, ver Documentação - API Obtenção de Token
Métodos do setor de Vendas
1. Inclusão/Alteração de Pedido de Venda
Introdução
Este webservice tem por finalidade a inclusão ou alteração de UM pedido de venda na empresa conectada ao token obtido no passo anterior.
Endereço
Inclusão: <endereço do SispetroWeb>/pedido_venda
Alteração: <endereço do SispetroWeb>/pedido_venda/<ID do Pedido>
Parâmetros
Será necessário enviar um header com o token e no corpo do webservice (body) os dados relativos ao pedido que se deseja incluir.
Headers
...
Nome
...
Descritivo
...
Exemplo
...
Observações
...
Authorization
...
Conteúdo do token obtido no passo de autenticação do usuário
...
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZF91c3VhcmlvIjozMiwiY25waiI6IjAxLjgwNC4zNDUvMDAwMS02MCIsImV4cCI6MTUwMDA1MzYxN30.-ZvhWFYI8fyx66b3kZY1UVUrfaWUTioV3_M6K2wiPGM
...
Content-Type
...
tipo do formato de envio
...
application/json
...
Accept
...
tipo do formato de envio
...
application/json
Body
Layout abaixo em formato JSON.
...
Chave
...
Conteudo
...
Pai
...
Obrigatório
...
pedido_venda
...
fixo
...
-
...
Sim
...
id
...
id do pedido (caso alteração)
...
pedido_venda
...
Se edição, é obrigatório. Se inclusão, deixar null ou não enviar.
...
CodEnt
...
Código do Cliente
...
pedido_venda
...
Sim
...
CodPg
...
Código da Condição de Pagamento escolhida
...
pedido_venda
...
Sim
...
RetiraEntrega
...
"R" para pedidos do tipo RETIRA (cliente irá providenciar frete) ou "E" para pedidos do tipo ENTREGA (empresa irá enviar pedido por sua conta cobrando frete)
...
pedido_venda
...
Sim
...
CodTransp
...
Código da Transportadora escolhida
...
pedido_venda
...
Sim
...
SeqFrota
...
Código do veículo escolhido
...
pedido_venda
...
Sim
...
DepositoPadrao
...
Código do depósito de onde o produto foi vendido
...
pedido_venda
...
Sim
...
DtPrevFat
...
Data de Entrega do Pedido no formato YYYY-MM-DD (2020-12-25 por exemplo)
...
pedido_venda
...
Sim
...
Segurado
...
Se pedido foi segurado ou não. 0 = não, 1 = sim
...
pedido_venda
...
Sim
...
ObsLongo
...
Observações genéricas no pedido
...
pedido_venda
...
Não
...
SeqContrato
...
Número do Contrato de Venda se houver
...
pedido_venda
...
Não
...
RefPed
...
Número de Referência do Pedido de uso livre.
...
pedido_venda
...
Não
...
CdTpCobr
...
Código do Tipo de Cobrança. Se não informado será usado o Tipo de Cobrança vinculado ao Cliente.
...
pedido_venda
...
Não
...
Vendedor
...
Código do Vendedor. Se não informado será usado o Código do Vendedor vinculado ao Cliente.
...
pedido_venda
...
Não
...
CdPrefEnt
...
Código do Endereço Preferencial de Entrega. Se não informado será usado o Endereço de Entrega configurado para o Cliente.
...
pedido_venda
...
Não
...
CdPrefFat
...
Código do Endereço Preferencial de Faturamento. Se não informado será usado o Endereço de faturamento configurado para o Cliente.
...
pedido_venda
...
Não
...
CdPrefCob
...
Código do Endereço Preferencial de Cobrança. Se não informado será usado o Endereço de Cobrança configurado para o Cliente.
...
pedido_venda
...
Não
...
itensPedido
...
fixo. Matriz contendo os itens do pedido
...
pedido_venda
...
Sim
...
id
...
id do item do pedido (somente edição)
...
itensPedido
...
Sim, se edição. Se inclusão, enviar null ou não enviar
...
CodEntFaturada
...
Código do cliente faturado caso seja diferente do cliente do pedido. Igualar ao cliente do pedido caso sejam iguais.
...
itensPedido
...
Sim
...
CodProd
...
Código do Produto
...
itensPedido
...
Sim
...
Qtde
...
Quantidade movimentada
...
itensPedido
...
Sim
...
PrecoCIF
...
Valor unitário do produto considerando frete e seguro
...
itensPedido
...
Sim
...
FreteUnitReal
...
Valor unitário do frete
...
itensPedido
...
Sim
...
Seguro_Aliquota
...
Valor percentual do seguro
...
itensPedido
...
Não
...
PrecoFOB
...
Preço de Tabela. Se não informado será usado o preço de tabela configurado para o depósito/cliente/produto.
...
itensPedido
...
Não
...
versao_retorno_api
...
0 = padrão (layout do registro), 1 = versão estendida com dados de NF, etc
...
pedido_venda
...
Não
...
salva_custo
...
0 = não salva custo (padrão), 1 = calcula e salva o custo total em cada item do pedido
...
pedido_venda
...
Não
Método
Inclusão: POST
Alteração: PUT
Exemplo de arquivo JSON em
View file | ||
---|---|---|
|
Exemplo de chamada de WebService
Bloco de código |
---|
# alteração
curl
-H 'Content-Type: application/json'
-H 'Accept: application/json'
-H 'Authorization: eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZF91c3VhcmlvIjo4NCwiY25waiI6IjAwLjAwMC4wMDAvMDAwMC0wMSIsImRlcG9zaXRvX3BhZHJhbyI6bnVsbCwiZXhwIjoxNzE3NzY3NDAyfQ.j_CChFzlGOMkfvQ1psP8gaxZiKQ8yiD1pJnyVeUWkg0'
-X PUT http://localhost/pedido_venda/55631 -d @inclusao_pedido.json
# inclusão
curl
-H 'Content-Type: application/json'
-H 'Accept: application/json'
-H 'Authorization: eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZF91c3VhcmlvIjo4NCwiY25waiI6IjAwLjAwMC4wMDAvMDAwMC0wMSIsImRlcG9zaXRvX3BhZHJhbyI6bnVsbCwiZXhwIjoxNzE3NzY3NDAyfQ.j_CChFzlGOMkfvQ1psP8gaxZiKQ8yiD1pJnyVeUWkg0'
-X POST http://localhost/pedido_venda -d @inclusao_pedido.json |
Retorno Bem Sucedido
Serão retornados todos os dados relativos ao Pedido de Venda incluído com sucesso. O status da resposta sempre será 200.
Layout do arquivo Json
...
Chave
...
Conteudo
...
Pai
...
pedido_venda
...
valor fixo
...
...
CodEmpresa
...
Código da Empresa
...
pedido_venda
...
NomeUsualEmpresa
...
Nome Usual da Empresa
...
pedido_venda
...
NumPed
...
Número do Pedido
...
pedido_venda
...
RetiraEntrega
...
R - Retira, E - Entrega
...
pedido_venda
...
CodPg
...
Código da condição de Pagamento
...
pedido_venda
...
CodTransp
...
Código do Motorista
...
pedido_venda
...
DepositoPadrao
...
Código do Depósito
...
pedido_venda
...
DtPrevFat
...
Data de Previsão do Faturamento
...
pedido_venda
...
CodEnt
...
Código do Cliente do Pedido
...
pedido_venda
...
SeqFrota
...
Sequencial do Frota Principal
...
pedido_venda
...
segurado
...
Indica se o pedido será segurado (0 - não segurado, 1 - Segurado)
...
pedido_venda
...
CodTpCobr
...
Código do Tipo de Cobrança
...
pedido_venda
...
ObsLongo
...
Observações do Pedido
...
pedido_venda
...
SeqContrato
...
Sequencial do Contrato
...
pedido_venda
...
ValFrete
...
Valor total do Frete
...
pedido_venda
...
EnderecoEntrega
...
Endereço de Entrega
...
pedido_venda
...
NumeroEntrega
...
Número do Endereço de Entrega
...
pedido_venda
...
BairroEntrega
...
Bairro da Entrega
...
pedido_venda
...
CEPEntrega
...
CEP da Entrega
...
pedido_venda
...
MunicipioEntrega
...
Descrição do Município de Entrega
...
pedido_venda
...
UFEntrega
...
UF de Entrega
...
pedido_venda
...
EnderecoCobranca
...
Endereço de Cobrança
...
pedido_venda
...
NumeroCobranca
...
Número do Endereço de Cobrança
...
pedido_venda
...
BairroCobranca
...
Bairro da Cobrança
...
pedido_venda
...
CEPCobranca
...
CEP da Cobrança
...
pedido_venda
...
MunicipioCobranca
...
Descrição do Município de Cobrança
...
pedido_venda
...
UFCobranca
...
UF de Cobrança
...
pedido_venda
...
EnderecoFat
...
Endereço de Faturamento
...
pedido_venda
...
NumeroFat
...
Número do Endereço de Faturamento
...
pedido_venda
...
BairroFat
...
Bairro de Faturamento
...
pedido_venda
...
CEPFat
...
CEP do Faturamento
...
pedido_venda
...
MunicipioFat
...
Descrição do Município de Faturamento
...
pedido_venda
...
UFFat
...
UF de Faturamento
...
pedido_venda
...
ValPedido
...
Valor total do Pedido
...
pedido_venda
...
LibFinancEm
...
Data da aprovação financeira
...
pedido_venda
...
DataEntrega
...
Data de Entrega
...
pedido_venda
...
IDTabelaPreco
...
Id da Tabela de Preço
...
pedido_venda
...
StatusPedido
...
Status do Pedido (C - Cancelado)
...
pedido_venda
...
item_pedido
...
list
...
pedido_venda
...
CodProd
...
Código do Produto
...
item_pedido
...
Qtde
...
Quantidade
...
item_pedido
...
PrecoCIF
...
Preço do Pedido
...
item_pedido
...
CodEntFaturada
...
Código do Cliente Faturado
...
item_pedido
...
FreteUnitPadrao
...
Frete unitário padrão
...
item_pedido
...
FreteUnitReal
...
Frete unitário do pedido
...
item_pedido
...
PrecoTabela
...
Preço de Tabela
...
item_pedido
...
Seguro_Aliquota
...
Alíquota do Seguro
...
item_pedido
...
Seguro_ValUnitario
...
Valor unitário do Seguro
...
item_pedido
...
id
...
ID do item
...
item_pedido
...
QtdeFaturada
...
Quantidade Faturada
...
item_pedido
...
CustoFinancReal
...
Custo Financeiro do Item
...
item_pedido
...
Custo
...
Valor total do custo do item
...
item_pedido
...
PercDesconto
...
Percentual de desconto aplicado ao item
...
item_pedido
...
entidade
...
grupo
...
pedido_venda
...
RzSocial
...
Razão Social
...
entidade
...
CGC
...
CNPJ ou CPF
...
entidade
...
SeqTipo
...
Sequencial do Tipo de Cliente
...
entidade
...
DescricaoTipoCliente
...
Descrição do Tipo de Cliente
...
entidade
...
IdRegiaoVendas
...
ID da Região de Vendas
...
entidade
...
produto
...
grupo
...
pedido_venda
...
NomeUsual
...
Nome Usual do Produto
...
produto
...
CodigoNCM
...
Código NCM do Produto
...
produto
...
notas_fiscais
...
list
...
pedido_venda
...
CodEmpresa
...
Código da Empresa
...
notas_fiscais
...
NumPed
...
Número do Pedido
...
notas_fiscais
...
id_pedido
...
ID do Pedido
...
notas_fiscais
...
id_nf
...
ID da Nota Fiscal
...
notas_fiscais
...
CodProd
...
Código do Produto
...
notas_fiscais
...
Descricao
...
Descrição do Produto
...
notas_fiscais
...
qtde
...
Quantidade
...
notas_fiscais
...
ValorTotal
...
Valor Total
...
notas_fiscais
...
PrecoReal
...
Preço unitário
...
notas_fiscais
...
NumeroNF
...
Número da Nota Fiscal
...
notas_fiscais
...
DataNF
...
Data da Nota Fiscal
...
notas_fiscais
...
ValNF
...
Valor da Nota Fiscal
...
notas_fiscais
...
ChaveAcesso
...
Chave de Acesso
...
notas_fiscais
...
CodNatOp
...
Código da Natureza de Operação
...
notas_fiscais
...
TipoPedido
...
Tipo da Nota Fiscal
...
notas_fiscais
...
Vendedor
...
Código do Vendedor
...
pedido_venda
...
DataPed
...
Data do Pedido
...
pedido_venda
...
PrazoPagto
...
Prazo de Pagamento
...
pedido_venda
...
RefPed
...
Número de Referência do Pedido
...
pedido_venda
...
TipoOperacao
...
Tipo de Operação do Pedido (0 - Venda Direta, 1 - Normal, 2 - VEF - Venda de Entrega Futura, 3 - REF - Retirada de Venda de Entrega Futura)
...
pedido_venda
Exemplo de arquivo em
View file | ||
---|---|---|
|
Exemplo de retorno de WebService
Bloco de código |
---|
{
"pedido_venda": {
"CodEmpresa": 1,
"NumPed": 34613,
"CodEnt": 1,
"RefPed": "teste",
"DataPed": "2023-11-27T10:14:27.000+00:00",
"Usuario": "FUTURA",
"StatusPedido": "R",
"ValFrete": "0.0",
"CodTpCobr": "46",
"ValPedido": "20913.0",
"DtPrevFat": "2023-11-27",
"CodTransp": "00032",
"Vendedor": "0001",
"StatusFat": "T",
"RazaoSocial": "DEMO DISTRIBUIDORA LTDA",
"LibFinancEm": "2023-11-27T10:14:27.000+00:00",
"QtdeSeparada": "0.0",
"EnderecoCobranca": "Rua Carvalho",
"BairroCobranca": "Pinheiros",
"CEPCobranca": "05424-020",
"MunicipioCobranca": "SAO PAULO",
"UFCobranca": "SP",
"EnderecoEntrega": "Rua Carvalho",
"BairroEntrega": "Pinheiros",
"CEPEntrega": "05424-020",
"MunicipioEntrega": "SAO PAULO",
"UFEntrega": "SP",
"EnderecoFat": "Rua Carvalho",
"BairroFat": "Pinheiros",
"CEPFat": "05424-020",
"MunicipioFat": "SAO PAULO",
"UFFat": "SP",
"CodPg": "998",
"ObsLongo": null,
"RetiraEntrega": "R",
"Aprovado": 1,
"DepositoPadrao": "1",
"PrazoPagto": 10,
"segurado": 0,
"Documento": "07.452.833/0011-04",
"SeqFrota": 4,
"SeqContrato": null,
"VendaDireta": 0,
"NumeroEntrega": "64",
"NumeroCobranca": "64",
"NumeroFat": "64",
"Seguro_Perfil": 2,
"web_origem_pedido": 0,
"id": 55561,
"TipoOperacao": 1,
"IDTabelaPreco": 87,
"item_pedido": [
{
"CodProd": "01",
"Qtde": "15000.0",
"PrecoCIF": "1.3942",
"QtdeFaturada": "15000.0",
"PercDesconto": "0.0",
"CodEntFaturada": 1,
"FreteUnitPadrao": "0.0",
"FreteUnitReal": "0.0",
"PrecoTabela": "1.3942",
"Custo": "27572.64",
"Seguro_Aliquota": "0.0",
"Seguro_ValUnitario": "0.0",
"id": 56713,
"entidade": {
"RzSocial": "DEMO DISTRIBUIDORA LTDA",
"CGC": "07.452.833/0011-04",
"SeqTipo": 1,
"IDRegiaoVendas": 1,
"DescricaoTipoCliente": "NORMAL"
}
}
],
"nota_fiscal": [
{
"id_pedido": 55561,
"NumeroNF": 33397,
"DataNF": "2023-11-27",
"ValNF": "26163.0",
"CodNatOp": "V02",
"TipoPedido": "VD",
"ChaveAcesso": "35231103980754000305551030000333971631236090",
"id_itemnf": 41888,
"id_nf": 40111,
"NumPed": 34613,
"CodEmpresa": 1,
"CodProd": "01",
"Descricao": "GASOLINA C ",
"qtde": "15000.0",
"ValorTotal": "26163.0",
"PrecoReal": "1.7442"
}
],
"NomeUsualEmpresa": "BASE DEMO"
}
} |
Retorno Sem Sucesso
Será retornado um objeto JSON com o motivo da não inclusão (poderá ser um erro de autenticação caso o token tenha expirado ou seja inválido ou alguma regra de negócio não atendida. O status da resposta sempre será diferente de 200.
Bloco de código |
---|
{"error":"Frota deve ser preenchido e valido","status":422} |
2. Dados de venda de cliente
Introdução
Este webservice tem por finalidade obter os dados para venda a UM determinado cliente/produto.
Endereço
<endereço do SispetroWeb>/entidade/get_dados_venda_api
Parâmetros
Será necessário enviar um header com o token e no corpo do webservice (body) os dados relativos à venda para busca de preços.
Nota |
---|
Por uma questão de consumo de recursos do banco, esta API só irá retornar no máximo 15 produtos diferentes para o cliente (os primeiros 15 cadastrados na tabela de preços dele). |
Headers
...
Nome
...
Descritivo
...
Exemplo
...
Observações
...
Authorization
...
Conteúdo do token obtido no passo de autenticação do usuário
...
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZF91c3VhcmlvIjozMiwiY25waiI6IjAxLjgwNC4zNDUvMDAwMS02MCIsImV4cCI6MTUwMDA1MzYxN30.-ZvhWFYI8fyx66b3kZY1UVUrfaWUTioV3_M6K2wiPGM
...
Content-Type
...
tipo do formato de envio
...
application/json
...
Accept
...
tipo do formato de envio
...
application/json
Params
...
Item
...
Chave
...
Conteúdo
...
Obrigatório
...
1
...
codEnt
...
Código da Entidade que se deseja os dados
...
Sim
...
2
...
codEmpresa
...
Código da Empresa onde ocorrerá a venda
...
Sim
...
3
...
dtPrevFat
...
Data prevista para Faturamento (devido vigência de preços). Formato: dd/mm/yyyy
...
Não. Se não informada será considerada a data atual.
...
4
...
retiraEntrega
...
E ou R para indicar se é retira ou entrega
...
Não. Se não informado será considerado como Retira.
...
5
...
codDep
...
Código do Depósito onde ocorrerá a venda.
...
Não. Se não informado será considerado o depósito padrão de vendas da empresa.
...
6
...
codTransp
...
Código do Motorista
...
Não. Se não informado será considerado o Motorista vinculado ao cliente.
...
7
...
seqFrota
...
Sequencial do frota principal
...
Não. Se não informado será considerado o Frota vinculado ao cliente.
...
8
...
codProd
...
Código do produto
...
Opcional, se passar, calcula somente para o produto. Caso contrário, calcula para todos os produtos de venda do cliente.
...
9
...
codPg
...
Código das condições de pagamento.
...
Opcional, se passar, calcula para essa condição de pagamento, caso contrário, calcula para a condição de pagamento padrão do cliente.
Método
GET
Exemplo de envio:
View file | ||
---|---|---|
|
View file | ||
---|---|---|
|
Exemplo de chamada de WebService
Bloco de código |
---|
curl --location 'http://localhost/entidade/get_dados_venda_api
-d @dados_preco.json
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZF91c3VhcmlvIjo4NCwiY25waiI6IjAwLjAwMC4wMDAvMDAwMC0wMSIsImRlcG9zaXRvX3BhZHJhbyI6bnVsbCwiZXhwIjoxNzE3NzY3NDAyfQ.j_CChFzlGOMkfvQ1psP8gaxZiKQ8yiD1pJnyVeUWkg0' |
Retorno Bem Sucedido
Serão retornados todos os dados necessários para fazer uma venda para o cliente e produto informados. O status da resposta sempre será 200.
...
Chave
...
Conteudo
...
Pai
...
CodEnt
...
Código do Cliente
...
CodEmpresa
...
Código da empresa
...
CodDep
...
Código do depósito considerado
...
DtPrevFat
...
Data prevista do faturamento considerada
...
RetiraEntrega
...
Indica se foi considerado Retira ou Entrega
...
CodTransp
...
Motorista para o qual foi considerado o frete
...
SeqFrota
...
Frota para o qual foi considerado o frete
...
CodPgCli
...
Código da Condição de Pagamento do Cliente
...
PrazoCli
...
Prazo da Condição de Pagamento do Cliente
...
precos
...
list
...
CodProd
...
Código do Produto
...
precos
...
CodPgProd
...
Código da Condição de Pagamento considerada para o produto
...
precos
...
Preco
...
Preço sugestão (já somado com Custo Financeiro)
...
precos
...
PrecoMinimo
...
Preço mínimo (já somado com Custo Financeiro)
...
precos
...
PrecoMaximo
...
Preço mínimo (já somado com Custo Financeiro)
...
precos
...
PrecoMinimoAvista
...
Preço mínimo a vista (conforme tabela de preços)
...
precos
...
CustoFinancReal
...
Custo Financeiro calculado a partir da Condições de Pagamento ou do cliente
...
precos
...
Seguro_Aliquota
...
Alíquota do Seguro (será sempre calculado independente do Pedido ser segurado)
...
precos
...
Seguro_ValUnitario
...
Valor unitário do Seguro (será sempre calculado independente do Pedido ser segurado)
...
precos
...
FreteUnitPadrao
...
Frete unitário padrão
...
precos
...
Custo
...
Custo de Vendas total desse item.
...
precos
...
endereco_entrega
...
grupo
...
Endereco
...
Endereço de Entrega
...
endereco_entrega
...
Numero
...
Número do Endereço de Entrega
...
endereco_entrega
...
Complemento
...
Complemento do Endereço de Entrega
...
endereco_entrega
...
Bairro
...
Bairro da Entrega
...
endereco_entrega
...
CodigoDNC
...
Código IBGE do Município de Entrega
...
endereco_entrega
...
Municipio
...
Descrição do Município de Entrega
...
endereco_entrega
...
UF
...
UF de Entrega
...
endereco_entrega
...
CEP
...
CEP da Entrega
...
endereco_entrega
...
CodPais
...
Código do País
...
endereco_entrega
...
Latitude
...
Latitude
...
endereco_entrega
...
Longitude
...
Longitude
...
endereco_entrega
...
Fone
...
Telefone
...
endereco_entrega
...
CNPJ
...
CNPJ do Endereço
...
endereco_entrega
...
IE
...
IE do Endereço
...
endereco_entrega
...
RzSocial
...
Razão Social do Endereço
...
endereco_entrega
Exemplo de retorno de WebService
Bloco de código |
---|
{
"dadosVenda": [
{
"CodPgProd": "998",
"CodProd": "01",
"Custo": 1.843334,
"CustoFinancReal": 0.2,
"EnderecoEntrega": "fgdfgfd, - - / - ",
"FreteUnitReal": 0,
"Preco": 1.91,
"PrecoMaximo": -1,
"PrecoMinimo": -1,
"Produto": "GASOLINA C",
"Seguro_Aliquota": 10,
"Seguro_ValorUnitario": 0.191
}
],
"CodEnt": 1,
"CodEmpresa": 1,
"CodDep": "1",
"DtPrevFat": "2024-08-21",
"RetiraEntrega": "R",
"CodTransp": "00032",
"SeqFrota": 772,
"CodPgCli": "998",
"PrazoCli": 10,
"endereco_entrega": {
"Endereco": "fgdfgfd",
"Numero": null,
"Complemento": null,
"Bairro": null,
"CodigoDNC": null,
"Municipio": null,
"UF": null,
"CEP": null,
"CodPais": null,
"Latitude": null,
"Longitude": null,
"Fone": null,
"CNPJ": "12764122000133",
"IE": null,
"RzSocial": "DEMO DISTRIBUIDORA LTDA"
}
} |
Retorno Sem Sucesso
Será retornado um objeto JSON com o motivo da falha (normalmente um erro de autenticação caso o token tenha expirado ou seja inválido ou alguma regra de negócio não atendida. O status da resposta sempre será diferente de 200.
Bloco de código |
---|
{
"error": "Unauthorized",
"status": 401
} |
3. Pedidos de Venda alterados
Introdução
Este webservice tem por finalidade obter os pedidos a partir de uma Data e hora.
Endereço
<endereço do SispetroWeb>/pedido_venda/pedidos_alterados
Parâmetros
Será necessário enviar um header com o token. Como parâmetros enviar:
...
Nome
...
Descritivo
...
Exemplo
...
Observações
...
data_hora_inicial
...
Data e hora inicial (Formato: yyyy-mm-dd hh:mm)
...
“2023-10-23 13:37”
...
Obrigatório
Headers
...
Nome
...
Descritivo
...
Exemplo
...
Observações
...
Authorization
...
Conteúdo do token obtido no passo de autenticação do usuário
...
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZF91c3VhcmlvIjozMiwiY25waiI6IjAxLjgwNC4zNDUvMDAwMS02MCIsImV4cCI6MTUwMDA1MzYxN30.-ZvhWFYI8fyx66b3kZY1UVUrfaWUTioV3_M6K2wiPGM
...
Content-Type
...
tipo do formato de envio
...
application/json
...
Accept
...
tipo do formato de envio
...
application/json
Método
GET
Exemplo de chamada de WebService
Bloco de código |
---|
curl -X GET -H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZF91c3VhcmlvIjo4NCwiY25waiI6IjAwLjAwMC4wMDAvMDAwMC0wMSIsImRlcG9zaXRvX3BhZHJhbyI6bnVsbCwiZXhwIjoxNzE3NzY3NDAyfQ.j_CChFzlGOMkfvQ1psP8gaxZiKQ8yiD1pJnyVeUWkg0'
http://localhost/pedidos_alterados\?data_hora_inicial\=2024-01-01%2010:00 |
Retorno Bem Sucedido
Serão retornados todos os dados relativos aos pedidos alterados a partir da data/hora informada. O status da resposta sempre será 200.
Layout de matriz (um para cada pedido modificado) em formato JSON.
...
Item
...
Chave
...
Conteudo
...
Pai
...
1
...
IDPedido
...
Código da entidade alterada ou excluída
...
2
...
FlagOperacao
...
I = inclusão, U = alteração ou E = exclusão
...
3
...
pedido_venda
...
mesmo layout de retorno de um pedido https://futura.atlassian.net/wiki/spaces/ESP/pages/4691329025/API+para+Vendas#1.-Inclus%C3%A3o-Pedido-de-Venda
Nota |
---|
Se o flagOperação for igual a 'E' (exclusão), não retorna a estrutura pedido_venda. |
Retorno Sem Sucesso
Será retornado um objeto JSON com o motivo da falha (normalmente um erro de autenticação caso o token tenha expirado ou seja inválido ou alguma regra de negócio não atendida. O status da resposta sempre será diferente de 200.
Bloco de código |
---|
{
"error": "Unauthorized",
"status": 401
} |
4. Cancelamento do Pedido de Venda
Introdução
Este webservice tem por finalidade executar o cancelamento de um pedido de venda.
Endereço
<endereço do SispetroWeb>/pedido_venda/<ID do pedido>
Parâmetros
Será necessário enviar um header com o token. Como parâmetros enviar:
...
Nome
...
Descritivo
...
Exemplo
...
Observações
...
idPedido
...
ID do pedido que se deseja cancelar.
...
12500
...
Obrigatório
...
versao_retorno_api
...
0=(padrão) layout com registro do pedido, 1=layout estendido conforme https://futura.atlassian.net/wiki/spaces/ESP/pages/4691329025/API+para+Vendas#1.-Inclus%C3%A3o-Pedido-de-Venda
...
1
Headers
...
Nome
...
Descritivo
...
Exemplo
...
Observações
...
Authorization
...
Conteúdo do token obtido no passo de autenticação do usuário
...
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZF91c3VhcmlvIjozMiwiY25waiI6IjAxLjgwNC4zNDUvMDAwMS02MCIsImV4cCI6MTUwMDA1MzYxN30.-ZvhWFYI8fyx66b3kZY1UVUrfaWUTioV3_M6K2wiPGM
...
Content-Type
...
tipo do formato de envio
...
application/json
...
Accept
...
tipo do formato de envio
...
application/json
Método
DELETE
Exemplo de chamada de WebService
Bloco de código |
---|
curl
-H 'Content-Type: application/json'
-H 'Accept: application/json'
-H 'Authorization: eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZF91c3VhcmlvIjo4NCwiY25waiI6IjAwLjAwMC4wMDAvMDAwMC0wMSIsImRlcG9zaXRvX3BhZHJhbyI6bnVsbCwiZXhwIjoxNzE3NzY3NDAyfQ.j_CChFzlGOMkfvQ1psP8gaxZiKQ8yiD1pJnyVeUWkg0'
-X DELETE http://localhost:3000/pedido_venda/55631?versao_retorno_api=1 |
Retorno Bem Sucedido
...
Objetivo
Este webservice tem por finalidade obter os dados para venda a UM determinado cliente/produto.
Uso Geral
1. Obter token autenticação
Introdução
Qualquer webservice do projeto SispetroWeb exigirá um token de autenticação. Este token é gerado a partir deste webservice e será válido por 24 horas. Assim, recomendamos que o sistema consumidor dos webservices aqui descritos salvem o token armazenando também a data e hora em que ele foi gerado para que, quando chegar próximo de sua validade, seja obtido novo token.
Para mais informações, ver API Obtenção de Token
Métodos do setor de Vendas
2. Dados de venda de cliente
Endereço
<endereço do SispetroWeb>/entidade/get_dados_venda_api
Parâmetros
Será necessário enviar um header com o token e no corpo do webservice (body) os dados relativos à venda para busca de preços.
Nota |
---|
Por uma questão de consumo de recursos do banco, esta API só irá retornar no máximo 15 produtos diferentes para o cliente (os primeiros 15 cadastrados na tabela de preços dele). |
Headers
Nome | Descritivo | Exemplo | Observações |
---|---|---|---|
Authorization | Conteúdo do token obtido no passo de autenticação do usuário | eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZF91c3VhcmlvIjozMiwiY25waiI6IjAxLjgwNC4zNDUvMDAwMS02MCIsImV4cCI6MTUwMDA1MzYxN30.-ZvhWFYI8fyx66b3kZY1UVUrfaWUTioV3_M6K2wiPGM | |
Content-Type | tipo do formato de envio | application/json | |
Accept | tipo do formato de envio | application/json |
Params
Chave | Conteúdo | Obrigatório | ||
---|---|---|---|---|
codEnt | Código da Entidade que se deseja os dados | Sim | ||
codEmpresa | Código da Empresa onde ocorrerá a venda | Sim | ||
dtPrevFat | Data prevista para Faturamento (devido vigência de preços). Formato: dd/mm/yyyy | Não. Se não informada será considerada a data atual. | ||
retiraEntrega | E ou R para indicar se é retira ou entrega | Não. Se não informado será considerado como Retira. | ||
codDep | Código do Depósito onde ocorrerá a venda. | Não. Se não informado será considerado o depósito padrão de vendas da empresa.
| ||
codTransp | Código do Motorista | Não. Se não informado será considerado o Motorista vinculado ao cliente. | ||
seqFrota | Sequencial do frota principal | Não. Se não informado será considerado o Frota vinculado ao cliente. | ||
codProd | Código do produto | Opcional, se passar, calcula somente para o produto. Caso contrário, calcula para todos os produtos de venda do cliente. | ||
codPg | Código das condições de pagamento. | Opcional, se passar, calcula para essa condição de pagamento, caso contrário, calcula para a condição de pagamento padrão do cliente. | ||
seqEnderecoEntrega | Sequencial do endereço de entrega que será considerado para o frete, etc | Opcional, caso não seja passado, será considerado o sequencial de endereço do cadastro do cliente.
|
Método
GET
Exemplo de envio:
View file | ||
---|---|---|
|
View file | ||
---|---|---|
|
Exemplo de chamada de WebService
Bloco de código |
---|
curl --location 'http://localhost/entidade/get_dados_venda_api -X GET
-d @dados_preco.json
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZF91c3VhcmlvIjo4NCwiY25waiI6IjAwLjAwMC4wMDAvMDAwMC0wMSIsImRlcG9zaXRvX3BhZHJhbyI6bnVsbCwiZXhwIjoxNzE3NzY3NDAyfQ.j_CChFzlGOMkfvQ1psP8gaxZiKQ8yiD1pJnyVeUWkg0' |
Retorno Bem Sucedido
Serão retornados todos os dados necessários para fazer uma venda para o cliente e produto informados. O status da resposta sempre será 200.
Chave | Conteudo | Pai |
---|---|---|
CodEnt | Código do Cliente | |
CodEmpresa | Código da empresa | |
CodDep | Código do depósito considerado | |
DtPrevFat | Data prevista do faturamento considerada | |
RetiraEntrega | Indica se foi considerado Retira ou Entrega | |
CodTransp | Motorista para o qual foi considerado o frete | |
SeqFrota | Frota para o qual foi considerado o frete | |
CodPgCli | Código da Condição de Pagamento do Cliente | |
PrazoCli | Prazo da Condição de Pagamento do Cliente | |
DescricaoCondPagto | Descrição da Condição de Pagamento do Cliente | |
DescricaoDeposito | Descrição do Depósito considerado | |
precos | list | |
CodProd | Código do Produto | precos |
CodPgProd | Código da Condição de Pagamento considerada para o produto | precos |
Preco | Preço sugestão (já somado com Custo Financeiro) | precos |
PrecoMinimo | Preço mínimo (já somado com Custo Financeiro) | precos |
PrecoMaximo | Preço mínimo (já somado com Custo Financeiro) | precos |
PrecoMinimoAvista | Preço mínimo a vista (conforme tabela de preços) | precos |
CustoFinancReal | Custo Financeiro calculado a partir da Condições de Pagamento ou do cliente | precos |
Seguro_Aliquota | Alíquota do Seguro (será sempre calculado independente do Pedido ser segurado) | precos |
Seguro_ValUnitario | Valor unitário do Seguro (será sempre calculado independente do Pedido ser segurado) | precos |
FreteUnitPadrao | Frete unitário padrão | precos |
Custo | Custo de Vendas total desse item. | precos |
endereco_entrega | grupo | |
Endereco | Endereço de Entrega | endereco_entrega |
Numero | Número do Endereço de Entrega | endereco_entrega |
Complemento | Complemento do Endereço de Entrega | endereco_entrega |
Bairro | Bairro da Entrega | endereco_entrega |
CodigoDNC | Código IBGE do Município de Entrega | endereco_entrega |
Municipio | Descrição do Município de Entrega | endereco_entrega |
UF | UF de Entrega | endereco_entrega |
CEP | CEP da Entrega | endereco_entrega |
CodPais | Código do País | endereco_entrega |
Latitude | Latitude | endereco_entrega |
Longitude | Longitude | endereco_entrega |
Fone | Telefone | endereco_entrega |
CNPJ | CNPJ do Endereço | endereco_entrega |
IE | IE do Endereço | endereco_entrega |
RzSocial | Razão Social do Endereço | endereco_entrega |
Exemplo de retorno de WebService
Bloco de código |
---|
{
"dadosVenda": [
{
"CodPgProd": "998",
"CodProd": "01",
"Custo": 1.843334,
"CustoFinancReal": 0.2,
"EnderecoEntrega": "fgdfgfd, - - / - ",
"FreteUnitReal": 0,
"Preco": 1.91,
"PrecoMaximo": -1,
"PrecoMinimo": -1,
"Produto": "GASOLINA C",
"Seguro_Aliquota": 10,
"Seguro_ValorUnitario": 0.191
}
],
"CodEnt": 1,
"CodEmpresa": 1,
"CodDep": "1",
"DtPrevFat": "2024-08-21",
"RetiraEntrega": "R",
"CodTransp": "00032",
"SeqFrota": 772,
"CodPgCli": "998",
"PrazoCli": 10,
"endereco_entrega": {
"Endereco": "fgdfgfd",
"Numero": null,
"Complemento": null,
"Bairro": null,
"CodigoDNC": null,
"Municipio": null,
"UF": null,
"CEP": null,
"CodPais": null,
"Latitude": null,
"Longitude": null,
"Fone": null,
"CNPJ": "12764122000133",
"IE": null,
"RzSocial": "DEMO DISTRIBUIDORA LTDA"
}
} |
A quantidade de casas decimais do CustoFinancReal depende do perfil #CasasPrUnit. limitada a 06 casas decimais. Para mais informações, ver https://futura.atlassian.net/wiki/spaces/ESPSPT/pages/46913290252918974349/API+para+Vendas#1.-Inclus%C3%A3o-Pedido-de-Venda . O status da resposta sempre será 200. Painel+Vendas?search_id=b452df13-384c-4fe4-bb1b-274a818be835&additional_analytics=queryHash---a4db473c943dcc1d157ebd8f9d806eeed8cb81aa9aa2c3d3343436fc622c0e7c
A quantidade de casas decimais do FreteUnitPadrao depende do perfil #Casas decimais Frete Unitario limitada a 06 casas decimais. Para mais informações, ver Painel Fretes
Retorno Sem Sucesso
Será retornado um objeto JSON com o motivo da não alteração falha (poderá ser normalmente um erro de autenticação caso o token tenha expirado ou seja inválido ou alguma regra de negócio não atendida. O status da resposta sempre será diferente de 200.
Bloco de código |
---|
{ "error": "Unauthorized"Pedido, já tem nota fiscal vinculada","status":422 401 } |