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 o campo situacaoPreVenda deve está igual a 1.
  • 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 e deverá ser feito pela rotina 4177 do módulo 041.
  • Para realizar o cancelamento o pedido no Winthor ele não deve estar faturado, caso esteja faturado o cliente deve se dirigir ao setor responsável por devolução/troca da empresa.
  • O atributo "idRetaguarda" que representa o código do pedido na retaguarda e que em paralelo representa o número do pedido no Winthor será obrigatório nesse processo, para que possa ser possível a identificação do pedido. 
  • 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";

...

  • (ProcessoOnlinePreVenda)

 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 o número do pedido que serão utilizados para reserva de estoquepara cancelamento no Winthor.

Totvs custom tabs box items
defaultyes
referenciapasso1

Os dados integrados são: 

0 = CANCELADA
1 = RECEBIDO
2 = DISPONIVEL
3 = RESGATADA

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

APIDescriçãoColunaTipoObrigatóriosituacaoPreVendaintSIM
numeroIdentificação do pedido no PDV.PCPEDC.NUMPEDHUBEStringSIM
observacoesPCPEDC.OBS
id Código do pedido(campo chave)
StringNÃO
idInquilinoCódigo do inquilino para uso do PDVSync.
StringNÃO
idProprietarioCódigo do proprietário.
StringNÃO
idRetaguardaCódigo do pedido na retaguarda.PCPEDC.NUMPEDStringSIM
situacao0 = Cancelado (Valor default 0)
intNÃO
offline
  • Caso envie true será replicado o valor da coluna PECPEDC.ORIGEMINTEGRACAO na PCNFCAN.ORIGEMINTEGRACAO.
  • Caso não envie esse campo o será replicado o valor da coluna PECPEDC.ORIGEMINTEGRACAO na PCNFCAN.ORIGEMINTEGRACAO com a adição do texto "ONLINE" (ex: na PECPEDC.ORIGEMINTEGRACAO estará "PDVSYNC" e na PCNFCAN.ORIGEMINTEGRACAO ficará "PDVSYNCONLINE")

Boolean
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.PVENDApreVendaItens.*.descontoValor de desconto. NÃOpreVendaItens.*.descontoPercentualPercentual de desconto. NÃOpreVendaItens.*.produto.idRetaguardaCódigo auxiliar mais o código do produto. Ex: 123-1.PCPEDI.CODPRODSIMpreVendaItens.*.vendedor.idRetaguardaNÃOpreVendaItens.*.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ÃOcliente.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ÃOcliente.telefoneCaso não preenchido será usado o campo celularNÃOcliente.celularCaso não preenchido será usado o campo telefoneNÃOcliente.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ÃOcliente.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ÃOcliente.complementoNÃOcliente.cpfCnpjNÃOcliente.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ÃOcliente.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ÃOcliente.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ÃOcliente.idRetaguardaCódigo clienteNÃOcliente.numeroNÃO
Totvs custom tabs box items
defaultno
referenciapasso2

Exemplo do envio da requisição:

Bloco de código
languagejs
titleURI
method:  'POSTPATCH',
url:  '/api/wholesale/v1/orders/pdvsync'
Bloco de código
languagejs
titleBody Request
{
    "situacaoPreVenda": "1",
   "numero": "1234556",
   "observacoes": "venda de teste",
   "operador": {
      "    	
   "idRetaguarda": "11000044"
   },
   "lojaoffline": {
      "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" }
      }
   ]
}false 
}
Bloco de código
languagejs
titleBody Response
{
    "success": true,
    "hasNext": false,
    "message": "Pedido 1000044 cancelado no Winthor com sucesso.",
    "data": {
        "idRetaguardaPedido": "54434",
        "message": "",
        "success": true
    }
}