Árvore de páginas

PAGAMENTO INSTANTÂNEO (PIX)

Produto: Automação da Força de Vendas
Linha de Produto: TOTVS CRM
Segmento: Cross Segmentos
Módulo: Vendas - Pagamento
Aplicação: App móvel
Identificador: 15118344

    VISÃO GERAL

Com a atualização do TOTVS CRM, agora é possível realizar pagamentos instantâneos via PIX durante a geração de pedidos. Essa funcionalidade facilita e agiliza as transações financeiras, proporcionando uma experiência mais eficiente e moderna para os usuários.


    OBJETIVO

Integrar a funcionalidade de pagamento instantâneo PIX no sistema de vendas, permitindo que os pagamentos sejam realizados de forma rápida e segura, diretamente no momento da geração do pedido.

  ANTES DE COMEÇAR

Requisitos

A funcionalidade requer a configuração do plug-in de integração "TOTVS Pagamento Instantâneo

O sistema deve estar configurado para gerar QR Codes para pagamentos PIX.

Acompanhamento dos pagamentos na Listagem de Pedidos.

  DETALHES FUNCIONAIS

Funções

  1. Configuração de Plug-in de Integração:

    • Configurações para conectar o sistema ao TOTVS Pagamento Instantâneo.
    • Definição de parâmetros como URL, usuário, senha, cliente ID, cliente secret, carteira, Business Unit ID e POS ID.
  2. Geração de QR Code:

    • No final do pedido, um QR Code é gerado para o pagamento via PIX.
    • O QR Code é exibido junto com o código do PIX para cópia e pagamento.
  3. Gerenciamento de Pagamentos:

    • Acompanhamento do status de pagamento na Listagem de Pedidos.
    • Opções para cancelar ou finalizar pagamentos.
  4. Integração com E-mail:

    • Configuração de envio de informações de pagamento via e-mail.
    • Personalização do corpo do e-mail com tags específicas.
  5. Consulta e Atualização de Pagamentos:

    • Consultas automáticas e atualizações do status de pagamento.
    • Notificações via PUSH para atualizações de pagamento.
  6. Sincronização de Pedidos:

    • Sincronização automática dos pedidos durante operações de pagamento.
    • Garantia de que os pedidos pagos sejam atualizados e exportados para integração com o ERP.

  COMO USAR?

Passo a Passo

  1. Configurar o Plug-in:

    • Acesse a configuração do plug-in e insira as informações necessárias para a integração com o TOTVS Pagamento Instantâneo.
  2. Geração do Pedido:

    • Ao finalizar um pedido, selecione o tipo de cobrança configurado no plug-in.
    • O QR Code para pagamento PIX será gerado automaticamente.
  3. Gerenciamento de Pagamentos:

    • Acesse a Listagem de Pedidos para visualizar e gerenciar os pagamentos.
  4. Envio de E-mail:

    • Configure o envio automático de e-mails com detalhes do pagamento.
  5. Consulta de Pagamentos:

    • O sistema realiza consultas automáticas para atualizar o status de pagamento.
  6. Sincronização com ERP:

    • Após o pagamento, os pedidos são sincronizados instantaneamente para integração com o ERP.


 EXEMPLO PRÁTICO

Desafio Antigo:

Dificuldades com a gestão de pagamentos e atrasos nas transações financeiras.


Solução Atualizada:

Com o pagamento instantâneo via PIX, os processos de pagamento são agilizados, proporcionando maior eficiência e satisfação do cliente.


  DETALHES TÉCNICOS

  1. Cadastro de plugin de integração "TOTVS Pagamento Instantâneo"
    • Pelo tools, opção 5, deverá ser inserido um registro na tabela "pluginintegracao" com código "receitaws".
    • O sistema deverá criar um novo card de plugin de integração de nome "TOTVS Pagamento Instantâneo". Ao clicar no botão "Configurar", será aberta a tela de configurações.
    • Título "TOTVS Pagamento Instantâneo"
    • "Manual de utilização": hiperlink para a página Plugin de integração TOTVS Pagamento Instantâneo
    • Grupo de elementos "Configurações do Pentaho", com os campos:
      • URL: campo de texto para receber a URL da API do Pentaho.(http://host:port)
      • Usuário: campo de texto para o usuário da autenticação básica do Pentaho.
      • Senha: campo de texto, com máscara de password, para a senha da autenticação básica do Pentaho.
    • Grupo de elementos "Configurações do TPI"
      • Tenant URL: campo de texto para a URL da API do TOTVS Pagamento Instantâneo (TPI) (TPI) estará sendo servida (Ex: https://produtosfa.rac.staging.totvs.app).
      • Usuário: campo de texto para o usuário da autenticação básica do TPI.
      • Senha: campo de texto, com máscara de password, para a senha da autenticação básica do TPI.
      • Client ID: campo de texto para o identificador do sistema solicitante da requisição.
      • Client secret: campo de texto, com máscara de password, para a senha do sistema solicitante da requisição.
      • Carteira: campo de texto para o código da carteira digital, identificador "pix".
      • Business Unit ID: campo de texto para o identificador da unidade de negócio geradora de transações de pagamento.
      • POS ID: campo de texto para o identificador do ponto de venda cadastrado.
    • Grupo de elementos "Configurações do SFA"
      • Tipos de Cobrança: Campo pesquisa multipla escolha, buscando todos os tipos de cobrança ativos.
      • Timeout ao gerar transação: Campo numérico para determinar o tempo de espera para a criação da transação.
      • Timeout consulta pagamento: Campo numérico para determinar o tempo de espera para a consulta de pagamento.
  2. Configuração de envio de e-mail para contexto "Plugin TOTVS Pagamento Instantâneo"
    • As configurações são acessadas somente por usuários administradores e estão localizadas em: Menu principal > Configuração > Email > Configuração de envio.
    • As configurações detalhadas incluem ajustes e novos campos para suportar a funcionalidade.
    • Contexto [Ajuste]
      • Adição de um novo contexto chamado “Plugin TOTVS Pagamento instantâneo”.
      • Este contexto é apresentado apenas quando a configuração do plugin TOTVS Pagamento Instantâneo está ativa.
    • Condição para envio [Ajuste]
      • Novo registro para "Envio de QR Code PIX - sob demanda".
      • O envio de e-mail é realizado conforme a solicitação do usuário responsável pelo pedido.
    • Arquivo do relatório [Novo campo]
      • Campo para anexar um modelo de relatório nos e-mails enviados.
    • Enviar para (Contexto) [Ajuste]
      • Adição de registros para diferentes destinatários, incluindo cliente, profissional logado, entre outros.
      • Opção de "Exibir tela de confirmação/edição de e-mail" com configurações relacionadas.
    • Assunto [Novo campo]
      • Permite configurar um assunto padrão de envio para os e-mails.
      • Possibilidade de incluir uma TAG relacionada ao número do pedido.
    • CONFIGURAÇÃO DO CORPO DO E-MAIL
      • Permite a configuração de um corpo de e-mail personalizado.
      • Inclusão de tags no corpo, como "NÚMERO DO PEDIDO", "IMAGEM QR CODE", e "PIX COPIA E COLA".
  3. Acompanhamento / Operações de pagamento após a finalização do pedido
    • Após a finalização do pedido, o sistema disponibilizará ícone de label "Pagamento" na listagem de pedidos e no "Roda teto" do pedido, exibindo o status do último registro de pagamento vinculado ao pedido.
    • O ícone utilizado para acesso será o arquivo presente neste link.
    • Os status possíveis são:
      • PENDENTE: com ícone de "dinheiro preto", representa o pagamento gerado mas ainda pendente de aprovação.
      • APROVADO: com ícone de "check verde", representa o pagamento já validado como aprovado.
      • CANCELADO: com ícone "X vermelho", representa o pagamento cancelado pelo operador.
      • EXPIRADO: com ícone de "ampulheta" , representa o pagamento não pago a tempo e expirado.
      • REEMBOLSADO: com ícone de "dinheiro amarelo", representa o pagamento que foi reembolsado.
    • Ao clicar no ícone de "status de pagamento" relacionado a um pedido, o sistema exibirá tela conforme o protótipo.
    • No Android, a consulta dos registros será online, para garantir que os dados estejam sempre atualizados.
    • Os campos disponíveis serão:
      • Identificador transação.
      • Status pagamento.
      • Data criação.
      • Data última atualização.
      • Histórico do pagamento.
      • Exibir QR Code.
      • Consultar pagamento.
      • Cancelar pagamento.
    • Haverá botão "Novo pagamento" que deverá ser exibido sob certas condições.
    • 
                  /* select case when count(
                    select pp.idpedidopagamento from pedidopagamento pp
                    inner join tiposituacaopagamento tsp on tsp.idpedidopagamento = pp.idpedidopagamento
                    inner join pedido p on p.idpedido = pp.idpedido
                    inner join tiposituacaopedido tsped on tsped.idtiposituacaopedido = p.idtiposituacaopedido
                    where pp.idpedido = ?
                    and tsp.sgltiposituacaopagamento in ('APR','PEND')
                    and tsped.sgltiposituacaopedido = 'PP'
                    and p.sglorigempedido in ('SIM3GAND','SIM3GWEB')
                    and p.numeropedidoerp is null
                    )=0 then 'Sim' end as exibebotao */
                 

    • Na listagem de pedidos, o sistema deverá possuir filtro avançado de status de pagamento.
    •     
      /* select descricao from tiposituacaopagamento where idnativo = 1 */
      
           

  4. Fluxo de pagamento quando há aprovações de pedidos
    • Ao finalizar um pedido com tipos de cobrança vinculados ao plugin de integração TPI, e que o pedido seja encaminhado para aprovação, o sistema não criará o pagamento. Em vez disso, informará o usuário com a mensagem: "A geração do pagamento do pedido deverá ser gerada após a aprovação do pedido, para que seja devidamente encaminhado para faturamento."
    • Nesse cenário, o pedido passará pelo fluxo de aprovação padrão, com os possíveis status de:
      • PENDENTE
      • APROVADO
      • REPROVADO
      • CONTESTADO
      • CANCELADO
    • Um pedido é declarado totalmente aprovado quando apenas possui aprovações nos status de APROVADO ou CANCELADO.
    • Além dos filtros definidos anteriormente, o botão "Novo pagamento" na tela de "Pagamento do pedido" só deve ser exibido para pedidos nas situações acima mencionadas, ou que não contenham aprovações vinculadas.
    • Isso permite que, após a aprovação, o usuário precise clicar no botão "Novo pagamento" para gerar um QR Code, compartilhar com o cliente e, posteriormente, consultar o pagamento pelo ícone "Consultar pagamento".
    • Na notificação gerada pela aplicação quando o pedido é aprovado, o sistema deve verificar se o plugin "TOTVS Pagamento instantâneo" está ativo e se o pedido está vinculado com um dos tipos de cobrança configurados no plugin. Se positivo, o sistema deverá adicionar a mensagem "Será necessário gerar um pagamento para o pedido X através da tela de 'Pagamentos do pedido'".
  5. Consulta de status de pagamento de maneira agendada
  6. Para evitar que pedidos fiquem travados no fluxo de integração com o ERP por falta de consulta do usuário, o serviço de integração consultará os status dos pagamentos de transações com status de PENDENTE. Esta consulta será realizada com frequência definida baseada no recurso infraestrutural do servidor. Ao identificar um pagamento aprovado, o sistema atualizará os status dos pagamentos de maneira ativa e notificará o usuário via notificação PUSH.

    O sistema de integração deve consultar pagamentos pendentes utilizando a consulta:

    /* CONSULTA_PAGAMENTOS_PENDENTES select pp.tokentransacao from pedido p inner join pedidopagamento pp on pp.idpedido = p.idpedido inner join tiposituacaopagamento tsp on tsp.idstiposituacaopagamento = pp.idstiposituacaopagamento where tsp.sgltiposituacaopagamento = 'PEND' */
              

    Com os tokens retornados, o sistema de integração consultará na API da transformação COMMONS_Bloco_TPIGETSTATUS para verificar o status atualizado do pagamento.

    Com o status do pagamento em memória, o sistema de integração atualizará a coluna pedidopagamento.idstiposituacaopagamento, conforme o de-para especificado.


    Status do retorno Código
    pending PEND
    approved APR
    expired EXP
    refunded REEMB
    cancelled CAN

    Se houve alteração de status, o sistema de integração deverá inserir novo registro na tabela observacaopagamento, segundo o seguinte de-para:


    Campo Valor/Descrição
    PARADE idobservacaopagamento nextval('seqpkobservacaopagamento')
    observacao "O status do pagamento foi atualizado para ${retorno.status > tiposituacaopagamento.descricao}"
    idpedidopagamento CONSULTA_PAGAMENTOS_PENDENTES.tokentransacao
    idtiposituacaopagamento retorno.status > tiposituacaopagamento.idtiposituacaopagamento
    idusuario lookup para tabela usuario where login = 'admin'
    datahora current_timestamp

  7. Persistência e integração de dados de pagamento
  8. A presente documentação apenas define que os tokens de pagamento serão armazenados em banco de dados do SFA, vinculados com os pedidos de venda.
    A integração de dados de pagamento com o ERP deverá ocorrer sob demanda, de maneira configurável ou customizada, mediante identificação dos campos de destino pelo cliente que utiliza o plugin de integração.


  9. Sincronização de pedido instantaneamente durante operações de pagamento
  10. Para evitar que um pedido já pago permaneça sem sincronização no Android, o sistema implementará a função de "Sincronização instantânea" via função de "envio de dados" da Sincronização para processos online como a geração de pagamento.

    O envio de dados acontecerá de maneira síncrona nos seguintes gatilhos, enviando apenas os dados (DATS) de pedido e suas dependências:

    • Inicio do processo de finalização, enviando o pedido gravado antes da criação do pagamento.
    • Após recebimento do QR Code, enviando o registro da tabela de pagamentos do pedido.
    • Após recebimento da atualização do status de pagamento, enviando o registro da tabela de pagamentos do pedido.
    • Após recebimento da confirmação do cancelamento do pedido, enviando o registro da tabela de pagamentos do pedido.
    • Após a finalização do pedido, seja ele pago ou selecionado para cobrança posterior, atualizando o registro de status do pedido para PENDENTE.
    • Geração de novo pagamento, enviando o registro da tabela de pagamentos do pedido.

    Com isso, o pedido devidamente pago será atualizado pela integração, de maneira agendada ou instantaneamente via consulta de pagamentos, permitindo que o pedido esteja em condições de ser exportado na próxima execução da integração.

    Observação: Anteriormente, no Android, pedidos finalizados ainda eram editáveis até a sincronização. Agora, esses pedidos que já foram transmitidos ao servidor não serão mais editáveis, como ocorre na Web.

PERGUNTAS FREQUENTES

  • question_answerPosso configurar o envio de informações de pagamento por e-mail?
    Sim, é possível configurar o envio automático de e-mails com as informações do processo de pagamento via PIX. Esta configuração é acessível apenas para usuários administradores.
   
  • Sem rótulos