Páginas filhas
  • DDVENDAS-57182 DT - Gravar pedido Balcão Reserva como Montado na API B2C

Versões comparadas

Chave

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

...

Produto:

Solucoes_totvs
SolucaoTOTVS Distribuição e Varejo

Solucoes_totvs_cross
SolucaoCross

Solucoes_totvs_parceiros
SolucaoParceiros

Solucoes_totvs_parceirosexptotvs
SolucaoParcsExpsTOTVS

Linha de Produto:

Linhas_totvs
LinhaLinha Winthor

Segmento:

Segmentos_totvs
SegmentoDistribuição

Módulo:

Modulos_cross_segmentos

Modulos_framework

Modulos_totvs_construcao

Modulos_totvs_juridico

Modulos_totvs_logistica

Modulos_totvs_manufatura

Modulos_totvs_rh

Modulos_totvs_saude

Modulos_totvs_prestadores_de_servicos
Vendas

Função:API B2C
País:Brasil
Requisito/Story/Issue (informe o requisito relacionado) :DDVENDAS-57182


02. SITUAÇÃO/REQUISITO

Havia Identificou-se a necessidade de permitir que a API B2C recebesse e gravasse os dados do consumidor final na tabela PCVENDACONSUM, vinculando essas informações ao mesmo número de pedido (NUMPED) gerado pela própria API durante o processo de integraçãoajustar o comportamento da API B2C para pedidos cuja origem seja Balcão Reserva. Anteriormente, esses pedidos eram gravados com a posição 'L' (Liberado). No entanto, para alinhar com o processo operacional esperado, a posição correta para esse tipo de pedido deve ser 'M' (Montado), desde que não existam bloqueios ou status intermediários (como validações fiscais ou comerciais) que impeçam essa definição.

03. SOLUÇÃO

Foi

...

A solução permite a persistência de diversos campos (como CPF, Endereço, Bairro, Telefone, Email, entre outros) diretamente na tabela PCVENDACONSUM. O sistema garante que:

...

As informações sejam gravadas utilizando o mesmo NUMPED do pedido gerado.

...

A integridade dos tipos de dados seja validada conforme a estrutura da tabela (ex: campos numéricos não aceitam texto).

implementada uma validação ao final do fluxo de gravação do pedido na API B2C. O sistema agora verifica se:

  1. O pedido possui número de carregamento (NUMCAR) preenchido;

  2. A posição atual do pedido ainda é 'L' (Liberado);

  3. A origem do pedido é Balcão Reserva (saleOrigin = 'R').

Caso todas as condições sejam verdadeiras, a API altera automaticamente a posição do pedido para 'M' (Montado). Essa lógica foi aplicada ao fim do processo para garantir que validações anteriores (bloqueios, pendências, etc.) sejam respeitadas e não forcem indevidamente o status de montado

...

.


Totvs custom tabs box
tabsSaiba como funciona,Passo a Passo
idspasso1,passo2
Totvs custom tabs box items
defaultyes
referenciapasso1

Para a utilização correta desta funcionalidade, certifique-se de que o ambiente esteja atualizado com as seguintes versões mínimas:

Serviço: winthor-pedido-venda - Versão 1.38.6.11 ou superior

Totvs custom tabs box items
defaultno
referenciapasso2
  • Realize a autenticação na API (WTA) para obter o token de acesso.

  • Monte o payload de inclusão de pedido para o endpoint da API B2C (/api/wholesale/v1/orders/).

  • Adicione o objeto JSON listconsumerData ao No corpo da requisição. Este grupo é opcional e aceita os seguintes campos :

    • CLIENTE (String)

    • CGCENT (String - CPF/CNPJ)

    • ENDERENT (String - Endereço)

    • BAIRROENT (String - Bairro)

    • TELENT (String - Telefone)

    • MUNICENT (String - Município)

    • ESTENT (String - Estado)

    • CEPENT (Number - CEP)

    • IEENT (String - Inscrição Estadual)

    • OBS (String - Observação)

    • NOMECONTATO (String)

    • TELEFONECONTATO (String)

    • OBSCONTATO (String)

    • CODCIDADE (Number - Código da Cidade)

    • EMAIL (String)

    • NUMEROENT (Number - Número do endereço)

    • RG (String)

    • DTNASC (Date)

    • IDENTIFICACAO_ESTRANGEIRO (String)

    • CONSUMIDORFINAL (String)

    • CONTRIBUINTE (String)

  • Envie a requisição.

  • Após o sucesso (Status 200), o sistema persistirá os dados enviados na tabela PCVENDACONSUM com o número do pedido gerado.
  • , certifique-se de enviar a tag de origem como Balcão Reserva:

    • "saleOrigin": "R"

  • Envie a requisição.

  • Ao receber o retorno de sucesso (200 OK), verifique o campo orderStatus.

    • Para pedidos Balcão Reserva (sem bloqueios), o status retornado será "M".

    • Na tabela PCPEDC, a coluna POSICAO também estará gravada como 'M'.

Exemplo de Payload (Trecho):

{
  "branchId": "1",
  "intermediaryCompanyName": "EMPRESA XXXX",
  "saleOrigin": "R",  <-- Origem Balcão Reserva
  "TotalPrice": 59.99,
  ...
}

Exemplo de Retorno Esperado:

{
  "orderId": "10000203",
  "orderStatus": "M", <-- Gravado como Montado
  "saleOrigin": "R",
  ...
}


04. DEMAIS INFORMAÇÕES

  • Pedidos com outras origens (ex: 'B' - Balcão, 'W' - Web, 'F', 'T') continuam seguindo o fluxo padrão, sendo gravados normalmente como 'L' (Liberado) ou conforme as regras vigentes do ERP.

  • Se houver qualquer bloqueio durante a integração que defina outro status para o pedido, a regra de conversão para 'M' não será aplicada, respeitando a validação de segurança

  • Caso algum campo seja enviado com tipo incompatível (ex: String em campo Numérico), a API retornará erro.

  • Campos não enviados no payload permanecerão nulos na base de dados.

  • Não existem validações de integridade relacional entre os campos deste grupo, apenas validação de tipo de dado.


Aviso

Importante!

As versões estarão disponíveis para download no CCW. 

https://centraldecontrole.pcinformatica.com.br/


Mantenha suas rotinas sempre atualizadas!

...

05. ASSUNTOS RELACIONADOS



Templatedocumentos