Páginas filhas
  • APIs Integrações - Cancelar pedido PDVSync - INTERNA

Versões comparadas

Chave

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

...

  • Necessário a instalação do  serviço winthor-pedido-venda
  • Para reservar o estoque cancelar um pedido o campo situacaoPreVenda deve está igual a 10.
  • Os pedidos será gravado como bloqueado.
  • Caso o atributo "operador.idRetaguarda" não seja enviado na requisição, a API consultará o RCA definido no parâmetro "4012 - Código do RCA para cadastro de clientes" da rotina 132- Parâmetros da Presidência.
  • A tabela PCLOGPEDIDOAPI, é responsável por guardar os retornos dos pedidos importados via integração, sendo Operação (I - inclusão, A - alteração, C - cancelamento) e Status (A - Aceito, R - Rejeitado, P - Processando).
  • O cancelamento do pedido será total.
  • Para realizar o cancelamento o pedido no Winthor não deve está faturado.
  • O atributo "idRetaguarda" que informa o código do pedido no Winthor e obrigatório nesse processo. 
  • Essa API será utilizada pelo PDVSync para cancelamento online, e também pelo WSH do Winthor para cancelamentos offlineNo envio do JSON deve-se enviar no campo  preVendaItens.produto.idRetaguarda o código auxiliar seguido do código do produto. Exemplo: 100-1. Lembrando que o IdRetaguarda dos produtos na base do PDV já seguem esse padrão e são enviadas pelo WSH assim.
  • API criada com base da documentação fornecida pelo PDVSync: https://pdvsync-core-controle-dev-aadivv24nq-ue.a.run.app/swagger/index.html?urls.primaryName=V2
  • Caso o cadastro do cliente esteja completo o cliente já vai ser inserido neste processo de reserva de estoque.
  • Ao enviar o cliente, será validado o parâmetro  4672 - Aceita validar CEP online nas APIs do WinThor da rotina 132 permite validar se o CEP informado está valido em API terceiros (ViaCEP e ByJG). Caso falso, essa validação não ocorrerá. O padrão do parâmetro é "Sim";

'

 Integração


Totvs custom tabs box
tabsDados integrados c/ Winthor, Gravação Pedido/Retorno
idspasso1,passo2

A integração consiste em receber e enviar dados do pedido que serão utilizados para reserva de estoque

Totvs custom tabs box items
defaultyes
referenciapasso1

Os dados integrados são: 

APIDescriçãoColunaTipoObrigatório
situacaoPreVenda0 = CANCELADA

1 = RECEBIDO

2 = DISPONIVEL

3 = RESGATADA

intSIM
numeroIdentificação do pedido no PDV.PCPEDC.NUMPEDHUBEStringSIM
observacoes
PCPEDC.OBS

operador.idRetaguardaMatricula do funcionário. Caso não informado irá usar o RCA do parâmetro 4012.PCPEDC.CODUSURlongNÃO
loja.idRetaguardaCódigo da filial.

SIM
preVendaItens.*.quantidadeDeve ser maior que zero. PCPEDI.QTintSIM
preVendaItens.*.precoDeve ser maior que zero. PCPEDI.PVENDA

preVendaItens.*.descontoValor de desconto. 

NÃO
preVendaItens.*.descontoPercentualPercentual de desconto. 

NÃO
preVendaItens.*.produto.idRetaguardaCódigo auxiliar mais o código do produto. Ex: 123-1.PCPEDI.CODPROD
SIM
preVendaItens.*.vendedor.idRetaguarda


NÃO
preVendaItens.*.lojaEntrega.idRetaguardaCódigo da filial retira.

NÃO 
cliente

Caso não seja informado o cliente será usado o cliente consumidor final.

Caso o cliente esteja com o cadastro completo, ele já será gravado na base do winthor .



NÃO
cliente.bairroEste campo é obrigatório para gravar o cliente, caso não seja informado o cliente não será gravado e será usado o cliente consumidor final para gerar a reserva de estoque 

NÃO
cliente.telefoneCaso não preenchido será usado o campo celular

NÃO
cliente.celularCaso não preenchido será usado o campo telefone

NÃO
cliente.cepEste campo é obrigatório para gravar o cliente, caso não seja informado o cliente não será gravado e será usado o cliente consumidor final para gerar a reserva de estoque 

NÃO
cliente.cidadeEste campo é obrigatório para gravar o cliente, caso não seja informado o cliente não será gravado e será usado o cliente consumidor final para gerar a reserva de estoque 

NÃO
cliente.complemento


NÃO
cliente.cpfCnpj

Este campo é obrigatório para gravar o cliente, caso não seja informado o cliente não será gravado e será usado o cliente consumidor final para gerar a reserva de estoque 


Caso já exista um cliente com mesmo CGC e o idRetaguarda não seja informado será usado o cliente mais antigo que contém o mesmo CGC



NÃO
cliente.emailEste campo é obrigatório para gravar o cliente, caso não seja informado o cliente não será gravado e será usado o cliente consumidor final para gerar a reserva de estoque 

NÃO
cliente.endereco Este campo é obrigatório para gravar o cliente, caso não seja informado o cliente não será gravado e será usado o cliente consumidor final para gerar a reserva de estoque 

NÃO
cliente.estadoEste campo é obrigatório para gravar o cliente, caso não seja informado o cliente não será gravado e será usado o cliente consumidor final para gerar a reserva de estoque 

NÃO
cliente.idRetaguardaCódigo cliente

NÃO
cliente.numero


NÃO





Totvs custom tabs box items
defaultno
referenciapasso2

Exemplo do envio da requisição:

Bloco de código
languagejs
titleURI
method: 'POST',
url: '/api/wholesale/v1/orders/pdvsync'
Bloco de código
languagejs
titleBody Request
{
   "situacaoPreVenda": "1",
   "numero": "1234556",
   "observacoes": "venda de teste",
   "operador": {
      "idRetaguarda": "1"
   },
   "loja": {
      "idRetaguarda": "1"
   },
   "preVendaItens": [
      {
         "quantidade": 1.0,
         "preco": 24.9,
         "desconto": 0.0,
         "descontoPercentual": 0.0,
         "produto": {
            "idRetaguarda": "2-2"
         },
         "vendedor": {
            "idRetaguarda": "string"
         },
         "lojaEntrega": {  "idRetaguarda": "1" }
      }
   ]
}
Bloco de código
languagejs
titleBody Response
{
   "success": true,
   "hasNext": false,
   "message": "",
   "data": {
      "idRetaguardaPedido": "54434",
      "message": "",
      "success": true
   }
}