Ir para o conteúdo

Pagamentos Recorrentes (via API)

  • Este tópico contém 5 respostas, 3 vozes e foi atualizado pela última vez 6 anos, 7 meses atrás por Mauricio.
Visualizando 4 respostas da discussão
  • Autor
    Posts
    • #9489
      Bianca Fontana
      Participante

        Bom dia a todos!

        Primeiramente parabéns pelo trabalho. Uma ótima iniciativa fornecer o módulo sem custos.

        Realizei a instalação do mesmo para gerenciar alguns clientes que desejo criar assinaturas. Porem, surgiu uma pequena dúvida em relação a geração das assinaturas de forma automática.

        Atualmente, possuo um sistema que realiza uma chamada para a API padrão do WHMCS e cria uma Order para um determinado Produto/Serviço utilizando o método de pagamento do módulo de cartão de crédito. Com a criação desta Order, naturalmente é criada uma Invoice. Após visualização e pagamento desta Invoice vejo que a mesma foi relacionada com pagamento avulso, ao invés de uma assinatura.

        Detalhamento da lógica que estou aplicando (apenas para esclarecimento):
        1) O sistema gera a Order e Invoice via API
        2) O cliente realiza o pagamento da Invoice
        3) Gerencianet envia callback
        4) Módulo Gofas faz a modificação da invoice para “pago”
        5) Um módulo nosso realiza o callback para nosso sistema assim que o pagamento é compensado e dispara a função “CreateAccount”
        6) O sistema por sua vez aceita a Order automaticamente e libera o acesso ao cliente.

        Observações:

        1) Verifiquei que a Invoice gerada possui apenas 01 item, em conformidade com este tópico:
        https://gofas.net/foruns/topico/pagamento-recorrente-assinatura/

        2) Verifiquei o código fonte do módulo, apenas para conhecer seu funcionamento, e constatei que
        o mesmo cria a assinatura quando o cliente visualiza a invoice (viewinvoice.php)

        Dadas estas informações, haveria a possibilidade do módulo criar a assinatura na primeira Invoice? Ou somente a partir da segunda?

        Obrigado a todos.
        Lucas

      • #9491
        Mauricio
        Mestre

          Olá Bianca/Lucas! Gratidão pelo interesse no nosso trabalho e pelo feedback positivo!

          Para descobrirmos por que a assinatura não foi criada, ative a opção “debug” nas configurações do módulo e na sessão “Dados da Fatura – WMHCS API”, procure (CTRL + F) pelo parâmetro subscription_id, ele é criado pelo WHMCS quando o serviço é recorrente.

          Se existe o subscription_id mas mesmo assim a assinatura não foi ativada, as possíveis causas são:

          1) A assinatura não foi criada pois teve crédito aplicado à fatura, nesse caso, o módulo cria um pagamento único para evitar que o mesmo desconto seja aplicado a todos os pagamentos subsequentes;

          2) A fatura possui desconto, da mesma forma do crédito, por padrão o módulo cria um pagamento único para evitar desconto nos próximos pagamentos automáticos. Mas no caso de desconto, se você gostaria de criar a assinatura mesmo assim, a partir da versão 1.2.1 introduzimos a opção “desconto recorrente”, ao assinalar essa opção nas configurações do módulo, havendo desconto (itens com valor negativo) o mesmo será aplicado a todos os pagamentos subsequentes.

          3) A fatura possui outros ítens, como por exemplo, quando um cliente contrata uma hospedagem mensal + o registro de um domínio anual, ou um addon de pagamento único, etc.

          Todas essas verificações são para contornar algumas características da API Gerencianet, que ainda não permite, por exemplo, a criação de uma assinatura com o primeiro pagamento de um valor e os próximos pagamentos de valor diferente do primeiro. Mas a boa notícia é que logo será adicionada essa funcionalidade e em breve será possível criar assinaturas com pagamentos de valores “flexíveis” e alterar o valor dos pagamentos de assinaturas a qualquer momento.

          Nos enviando o debug completo da fatura (use gist ou pastebin) e uma captura de tela das configurações do módulo eu consigo identificar os motivos, vamos conversando.

        • #9493
          Bianca Fontana
          Participante

            Olá Mauricio, boa tarde!

            Consegui identificar o “problema” enquanto preparava as informações que me solicitou. Acontece que eu havia configurado o sistema para calcular
            “Pró-Rata”, e o mesmo criava a Invoice com o cálculo proporcional de dias faltantes para o dia 01 do mês seguinte. Acredito que isto era interpretado como Desconto (ou apenas valor da Invoice diferente do valor do plano normal) e era designado como cobrança avulsa. Desabilitei o Pró-Rata e a subscription foi gerada normalmente no Gerencianet.

            Bom, não sei se vocês já haviam notado isso, mas obrigado pelo rápido feedback e espero que minha dúvida venha a ajudar futuros usuários do módulo.

            Obrigado novamente!

            Lucas

          • #9504
            Mauricio
            Mestre

              Opa, que bom que deu certo!
              Realmente, em qualquer caso diferente de desconto e sem a opção “desconto recorrente ativa”, que o valor da Invoice é diferente do valor do plano normal, a assinatura não é criada. Mas logo a Gerencianet vai disponibilizar o recurso de “assinatura flexível” e atualizaremos o módulo de forma que seja cobrado um valor inicial diferente dos próximos pagamentos automáticos.

              Gratidão pelo retorno, com certeza seu tópico ajudará outros usuários, salvei nos meus “favoritos” para utilizar como resposta às perguntas frequentes =)

            • #9574
              Wagner
              Participante

                Mauricio,

                Para simular a opção de recorrência é necessário esperar 30 dias ou se eu já der um “Generate Due Invoices” ele já vai dar baixar e faturar a nova fatura?

                • #9575
                  Mauricio
                  Mestre

                    Sim, para simular a opção de recorrência realmente como deve funcionar é necessário esperar 30 dias, quando a API Gerencianet dispara uma notificação para seu WHMCS confirmando o pagamento, nesse momento o módulo localiza a nova fatura gerada para o serviço em questão e adiciona a transação relacionada ao mesmo. Obs.: só funciona corretamente em produção, no modo desenvolvimento as assinaturas só disparam as primeiras notificações, de confirmação do pagamento e da assinatura.

              Visualizando 4 respostas da discussão
              • Você deve fazer login para responder a este tópico.
              Role para cima