Geral:API ALTERAÇÃO DE PREÇO E CADERNO DE OFERTAS - Como funciona?
Problema / Pergunta
Como funciona e devo utilizar a API para realizar as alterações de preço dos produtos e cadernos de ofertas?
Ambiente
- A7Pharma 3.23 >
Solução / Resposta
Para consumir essa API, o responsavel pela loja/rede devera estar acionando nosso departamento administrativo, para realizar a solicitação e aceite do termo de liberação de base de dados para quem ira fazer uso da mesma.
Contatos:
Telefone: (19) 3446.8773
Whatsapp: (19) 98311.1661
E-mail: financeiro@a7.net.br ou administrativo@a7.net.br
Nessa API só sera possível realizar alterações de ofertas por Tipo Oferta - preço, os demais tipos que possuímos no sistema, % desconto, leve e pague, dentre outros não estarão disponíveis. Assim como a inclusão dos itens, inclusão apenas por Tipo de item - embalagem, os demais tipos classificação, fabricante, dentre outros não estarão disponíveis.
Dados como ID caderno de ofertas, ID embalagem e ID item caderno oferta, estarão disponíveis via leitura na base de dados do cliente. Na descrição de cada campo onde poderão utilizar esses dados esta sendo informado de qual tabela esses dados serão providos.
INCLUSÃO/ALTERAÇÃO DE OFERTAS:
Método = Post
URL: https://ipDoServidor:8443/webapi/api/oferta/?idCadernoOferta=idDoCadernoOferta (ID poderá ser obtido na tabela cadernooferta)
idEmbalagem = id obtido através de leitura no banco de dados, provindos da tabela embalagem
precoOferta = campo onde ira definir o preço de oferta da embalagem
codigoBarras = EAN da embalagem
etiqueta = Código interno gerado pelo a7pharma, cada embalagem terá uma etiqueta sempre e o valor não ira se repetir.
EXEMPLO DE REQUISIÇÃO:
curl \
--request POST \
--header 'Content-type: application/json' \
--header "API-KEY: 0c63785d338ad50a6f3bb96c2a749dce9e1d66fc76e7821826b6155f5ad74489" \
--url "https://10.0.3.150:8443/webapi/api/oferta/?idCadernoOferta=800000162007" \
--data '[
{
"idEmbalagem" : 182849581,
"precoOferta" : 12.17
},
{
"etiqueta" : "043642",
"precoOferta" : 7.5
},
{
"etiqueta" : "012444",
"precoOferta" : null
},
{
"codigoBarras" : "7896094921979",
"precoOferta" : 23
}
]'
Poderá optar entre os 3 campos para identificar uma embalagem, sendo: etiqueta, idEmbalagem ou codigoBarras.
OBS: Deveram passar apenas um campo identificar da embalagem, podendo optar por qualquer um dos 3 acima, porem nunca passar mais de um campo para a mesma embalagem.
Operações bem sucedidas sera retornado o http code 200, caso contrario sera retornado um código diferente de 200, alem de mensagem com informações do erro, tendo a possibilidade de conter a stack do problema no servidor.
REMOÇÃO DE OFERTAS:
Repare que no terceiro bloco da requisição acima o valor do campo precoOferta foi passado como null, sendo assim, sempre que o sistema identificar o precoOferta for nulo, ele ira remover a embalagem do caderno de ofertas.
Método: DELETE
Url: https://ipDoServidor:8443/webapi/api/oferta/
Valores passados em data devera ser o id da tabela itemcadernooferta, identificar o id referente ao caderno do qual deseja remover, pois nessa tabela poderá possuir diversos registros referente a mesma embalagem, estando relacionado a cadernos diferentes.
EXEMPLO DE REQUISIÇÃO:
curl \
--request DELETE \
--header 'Content-type: application/json' \
--header "API-KEY: 0c63785d338ad50a6f3bb96c2a749dce9e1d66fc76e7821826b6155f5ad74489" \
--url "https://10.0.3.150:8443/webapi/api/oferta/" \
--data '[800000162008, 800000162011]'
ALTERAÇÃO DE PREÇO DE PRODUTO:
Método = Post
URL: https://ipDoServidor:8443/webapi/api/preco/?alterarIrmas=false
idEmbalagem = id obtido através de leitura no banco de dados, provindos da tabela embalagem
precoReferencialNovo = Campo onde ira definir o novo preço referencial da embalagem
precoVendaNovo = Campo onde ira definir o novo preço de venda da embalagem
codigoBarras = EAN da embalagem
etiqueta = Código interno gerado pelo a7pharma, cada embalagem terá uma etiqueta sempre e o valor não ira se repetir.
idUnidadeNegocioPreco = Campo que devera ser utilizado caso o lojista trabalhe com preços diferentes entre as unidades de negocio, valor devera ser o id da unidade de negocio, provindo da tabela unidadenegocio.
EXEMPLO DE REQUISIÇÃO:
curl \
--request POST \
--header 'Content-type: application/json' \
--header "API-KEY: 0c63785d338ad50a6f3bb96c2a749dce9e1d66fc76e7821826b6155f5ad74489" \
--url "https://10.0.3.150:8443/webapi/api/preco/?alterarIrmas=false" \
--data '[
{
"idEmbalagem" : 182849581,
"precoReferencialNovo" : 10.16,
"precoVendaNovo" : 14.23
},
{
"idEmbalagem" : 79509,
"precoVendaNovo" : 34.25
},
{
"idEmbalagem" : 200630,
"idUnidadeNegocioPreco" : 1,
"precoReferencialNovo" : 6.11
},
{
"etiqueta" : "043642",
"precoVendaNovo" : 8.2
},
{
"codigoBarras" : "7896094921979",
"precoReferencialNovo" : 22.51
}
]'
Poderá optar entre os 3 campos para identificar uma embalagem, sendo: etiqueta, idEmbalagem ou codigoBarras.
OBS: Deveram passar apenas um campo identificar da embalagem, podendo optar por qualquer um dos 3 acima, porem nunca passar mais de um campo para a mesma embalagem.