01. DADOS GERAIS
Produto: | TOTVS Moda |
---|---|
Segmento: | Varejo |
Módulo: | Comercial |
Função: | Integração de Pré-Postagem Nacional(PPN) dos Correios API com TOTVS Moda |
País: | Brasil |
Requisito/Story/Issue (informe o requisito relacionado) : | DVACOM-13894, DVACOM-15723, DVACOM-15175 |
02. SITUAÇÃO/REQUISITO
Foi solicitada a possibilidade de registrar via integração o PPN (Pré-Postagem Nacional) dos correios com o TOTVS Moda com o objetivo de dar mais agilidade no processo de expedição.
03. SOLUÇÃO
Foram realizadas as implementações necessárias para que a integração do PPN do TOTVS Moda com os correios possa ser utilizada, são elas:
- No componente INTFM010 foi adicionada a nova função "Geração de PPN", onde o mesmo deverá ter os seguintes campos configurados:
- DS_URL → URL para geração de PPN. Informação disponível no manual dos correios;
- DS_URLTOKEN → URL responsável pela a busca do token. Informação disponível no manual dos correios;
- DS_USUARIOAPI → Usuário para autenticação (Mesma utilizada para logar no site Correios API).
- DS_SENHAAPI → Senha para autenticação. Esta senha é gerada dentro do site Correios API como Código de acesso api, na parte de Gestão de acesso a APIs.
- Foi criado o componente GERFM283 para cadastro do cartão postal dos correios utilizado no envio da PPN, onde:
- "Cartão postagem" → Número do cartão de postagem vinculado ao contrato;
- "Descrição" → Descrição desejada do cartão postagem;
- "Pessoa" → Cadastro da pessoa vinculada ao cartão;
- "Código administrativo" → Código administrativo do contrato;
- "Contrato" → Número do contrato da empresa;
- "Identificador serviço" → Serviço disponível no contrato dos correios;
- "Diretoria regional" → Número da diretoria regional do contrato do cliente;
- "Serviço de postagem" → Código do serviço de postagem;
- "Data emissão" → Data de emissão do cartão postal dos correios.
- No componente PEDFM111 foram adicionados os seguintes campos: "Forma pagamento PPN", "Tipo objeto PPN" e "ID PPN" sendo os dois primeiros para configurações e o terceiro será preenchido quando a integração for efetuada;
- No componente PEDFP158 foi incluída a opção "Gerar PPN" e quando a mesma for selecionada juntamente com o pedido de venda desejado, o PPN será gerado caso o pedido selecionado tenha uma embalagem vinculada na contagem para extrair as suas dimensões. Caso o mesmo não possua será apresentado componente GERFP008 informando que não é possível continuar.
- No componente PEDFP158 foram incluídas também as opções: "Tipo objeto", "Imprimir" e "Nr. vias". A opção "Tipo objeto" é utilizada para ser informado no JSON do PPN (tag "tipo_objeto"), caso não seja configurado no pedido. Já o "Imprimir" será utilizado para indicar que no final do processo de envio da PPN seja impresso um relatório com os itens enviados e o campo "Nr. vias" para indicar o número de vias que será impresso o relatório (quando o "Imprimir" for selecionado e o campo "Nr. vias" não for preenchido, será considerado que é para ser impresso apenas uma via do relatório).
Observação: O código de serviço utilizado para gerar o PPN é de acordo com a configuração do ID de serviço realizado através do componente GERFM283, se referindo a um cadastro oriundo dos correios. Porém caso o cliente possua mais de um código de serviço de envio em seu cartão postagem, o código de serviço poderá ser posto nos dados adicionais do pedido, que o sistema respeitará a informação do pedido para a geração do PPN.
Imagem 01 - Acima é demonstrado o parâmetro utilizado na busca do telefone identificado como celular no sistema. Tipo de telefone criado no componente PESFL019. No cadastro de pessoa, o telefone celular deverá ser cadastrado no padrão DDFFFFFFFFF. Sendo os dois primeiros dígitos o DDD do celular e o restante sendo o número do celular, sem separadores. Caso não seja configurado o parâmetro, o sistema irá enviar o primeiro telefone que encontrar no cadastro e caso seja configurado e o cadastro não possua, o elemento de celular não enviado ao PPN (o telefone celular não é uma informação obrigatória, não dando problemas não ter os elementos para geração da PPN.
Imagem 02 - Demonstra o componente INTFM010, onde está realizada a configuração para a geração de PPN. As URLs acima são de ambiente de homologação. É necessário verificar com os Correios a URL da API e URL do Token para o ambiente de produção.
Imagem 03 - Demonstra o componente INTFM010, onde está realizada a configuração para o cancelamento de PPN. A URL acima é referente ao ambiente de homologação. É necessário verificar com os Correios a URL da API para o ambiente de produção.
Imagem 04 - Demonstra o GERFM283, onde são configurados os cartões de postagem do Correios, que deverão ser selecionados no PEDFP158 e utilizados na geração da PPN.
Imagem 05 - Caso seja informada uma data de emissão maior que a data atual do sistema, a mensagem acima é apresentada não permitindo o cadastro do cartão postagem.
Imagem 06 - Após configurado o cartão de postagem do Correios, ao enviar uma PPN, deverá ser selecionado o cartão de postagem que deverá ser utilizado no envio, no filtro "Cartão postagem" do PEDFP158.
Abaixo será demonstrado um exemplo onde o pedido de venda utilizado possui embalagem vinculada para a geração do PPN.
Imagem 01 - Demonstra o componente PEDFM001, onde está sendo consultado o pedido de venda "18722". Em seguida está sendo acionado o botão "Opção adicional...", então o componente PEDFM103 é apresentado e o botão "Dados adicionais..." acionado.
Imagem 02 - Ao acionar o botão mencionado anteriormente, o componente PEDFM111 é apresentado, onde está sendo selecionado no campo "Tipo objeto PPN" a opção "Envelope".
Observação: Considerar que o pedido demonstrado anteriormente, teve uma contagem criada e que o mesmo foi faturado e sua transação encerrada e que a contagem do mesmo possui a embalagem "1013" vinculada.
Imagem 03 - Demonstra o componente PEDFP158, onde está sendo selecionada a opção "Gerar PPN", selecionado o pedido "18722" e acionado o botão "Processar".
Imagem 04 - Ao acionar o botão mencionado anteriormente, a mensagem acima é apresentada onde está sendo selecionada a opção "Sim".
Imagem 05 - Ao selecionar a opção mencionada anteriormente, a mensagem acima é apresentada informando que o processo foi concluído com sucesso.
Imagem 06 - Ao consultar novamente os dados adicionais do pedido de venda "18722" através do componente PEDFM111, pode ser visto que o mesmo está apresentado o número de objeto transporte e que o ID PPN foi gerado corretamente, demonstrado assim que a integração foi realizada com sucesso.
Abaixo será demonstrado um exemplo onde o pedido de venda utilizado não possui uma embalagem vinculada para a geração do PPN.
Imagem 07 - Demonstra o componente PEDFM001, onde está sendo consultado o pedido de venda "18723". Em seguida está sendo acionado o botão "Opção adicional...", então o componente PEDFM103 é apresentado e o botão "Dados adicionais..." acionado.
Imagem 08 - Ao acionar o botão mencionado anteriormente, o componente PEDFM111 é apresentado, onde está sendo selecionado no campo "Tipo objeto PPN" a opção "Envelope".
Observação: Considerar que o pedido demonstrado anteriormente, teve uma contagem criada e que o mesmo foi faturado e sua transação encerrada e que a contagem do mesmo não possui nenhuma embalagem vinculada.
Imagem 09 - Demonstra o componente PEDFP158, onde está sendo selecionada a opção "Gerar PPN", selecionado o pedido "18723" e acionado o botão "Processar".
Imagem 10 - Ao acionar o botão mencionado anteriormente, a mensagem acima é apresentada onde está sendo selecionada a opção "Sim".
Imagem 11 - Pelo fato da contagem do pedido de venda selecionado não possuir nenhuma embalagem vinculada ao mesmo, o componente GERFP008 é apresentado informando que não é possível gerar o PPN dos correios.
Também será possível a geração do PPN diretamente de dentro do PEDFM236, logo após o faturamento, para isso a transportadora deve ser a mesma informada no CD_TRANSP_CORREIO, e deve haver uma contagem finalizada, então o PEDFP158 ser aberto automaticamente como mostra o GIF abaixo
Gif 01 - Demonstração da geração de PPN diretamente do PEDFM236
Imagem 12 - Na imagem acima é demonstrado as dimensões exigidas para cada tipo de pacote ou caixa, caso estejam foram de padrão, o JSON enviado não será aceito.
Imagem 13 - Demonstra o componente GERFM047, onde está sendo informada a contagem "127122" referente ao pedido de venda "11804" e está sendo adicionado o tipo de embalagem "1013" e realizada a gravação.
Imagem 14 - Está sendo acessado novamente o componente PEDFP158, selecionado novamente o pedido de venda "18723"e acionado o botão "Processar".
Imagem 15 - Pelo fato da contagem referente ao pedido ter tido um tipo de embalagem vinculado, o processo é concluído com sucesso.
Imagem 16 - Ao acessar o componente PEDFM111, pode ser visto que a integração do PPN foi realizada com sucesso.
Imagem 17 - Na tecla "Opções..." do PEDFM236 foram incluídas as chamadas de "Dados adicionais..." e de "Gerar PPN...".
OBS: Conforme documentação da PPN, não é necessário gerar o código de rastreio previamente para envio da PPN. Os Correios sabem que toda PPN é relacionada a um código de rastreio, desta forma ao enviar um pedido para gerar a PPN, os Correios irão gerar este código de rastreio e devolver ao sistema, ficando asism gravado no pedido o número do objeto.
No PEDFP158 foi implementado para que ao realizar o envio da PPN, seja impresso um relatório com os itens enviados, para isto foram criadas as opções "Imprimir" e "Nr. vias".
A opção "Imprimir" será utilizada para indicar se será impresso ou não o relatório dos itens enviados e o campo "Nr. vias" será utilizado para indicar a quantidade de vias que será impresso o relatório (quando o "Imprimir" for selecionado e o campo "Nr. vias" não for preenchido, será considerado que é para ser impresso apenas uma via do relatório).
Gif 01 - Demonstração do envio da PPN realizando a impressão do relatório dos itens enviados em duas vias.
Foi feita uma alteração para que o código do PPN seja listado como coluna na impressão.
Imagem 01 - Demonstração do modelo de impressão da lista de postagem de PPN.
O elemento "codigoFormatoObjetoInformado" no json do PPN poderá ser definida no pedido ao informar o campo "Tipo objeto PPN" no PEDFM111.
No PEDFP158 foi adicionado o filtro "Tipo objeto", para que caso o pedido não tenha o tipo de objeto definido no campo "Tipo objeto PPN" no PEDFM111, ao ser processado a PPN no PEDFP158, o tipo informado no filtro será utilizado para a geração do json para os pedidos que não possua esta informação e nestes pedidos serão gravados o tipo informado no filtro "Tipo objeto" do PEDFP158 no campo "Tipo objeto PPN" do PEDFM111 do pedido.
Demonstração do funcionamento do filtro "Tipo objeto" do PEDFP158:
Imagem 01 - Pedido 18733 lançado com campo "Tipo objeto PPN" no PEDFM111 como "Envelope".
Imagem 02 - Pedido 18734 lançado sem o tipo de objeto no campo "Tipo objeto PPN" no PEDFM111.
Imagem 03 - No PEDFP158 foi gerado a PPN dos dois pedidos informando o filtro "Tipo objeto" como "Pacote/Caixa". Este tipo neste filtro somente será gerado para o pedido 18734 que não possui um tipo configurado no pedido.
Imagem 04 - No pedido 18733 foi gravado os dados da PPN e manteve o tipo de objeto que estava configurado antes do envio no PEDFP158.
Imagem 05 - No pedido 18734 foi gravado os dados da PPN, e como não possuía o tipo de objeto gravado no pedido ("Tipo objeto PPN" do PEDFM111), foi utilizado e gravado o tipo informado no filtro "Tipo objeto" do PEDFP158.
O PPN será cancelado automaticamente quando a transação relacionada ao pedido for cancelada. Também será limpos os campos CAMPO dos dados adicionais do pedido. Para que seja possível o cancelamento, deve ser feita a configuração no INTFM010 conforme descrito no na aba de configurações deste documento.
Observação: Caso ocorra algum erro no cancelamento da PPN, este processo não será impeditivo no cancelamento da transação. Desta forma o usuário precisará entrar em contato com os Correios e solicitar o cancelamento da PPN passando o ID da PPN. E para gerar um novo PPN, precisará apenas apagar o código de objeto nos dados adicionais do pedido, o ID da PPN será atualizado automaticamente.
Gif 01 - Demonstração do processo de cancelamento de transação de PPN.