Skip to content

Releases: nfe/whmcs-addon

v3.1.1

11 Feb 21:16
6eb900c

Choose a tag to compare

Esta versão adiciona melhorias na interface administrativa, aprimora o fluxo de cancelamento de notas fiscais e inclui ferramentas de diagnóstico para a configuração de webhooks.

Novos Recursos

Visualização de Informações do Webhook na Página Sobre

Administradores agora podem visualizar informações detalhadas sobre o webhook configurado diretamente na página "Sobre" do módulo, facilitando o diagnóstico de problemas de integração.

Informações Exibidas:

  • URL do Webhook: Endpoint local para recebimento de callbacks da NFE.io
  • ID do Webhook: Identificador único do webhook registrado na API
  • Secret (mascarado): Primeiros 8 caracteres do secret para verificação de segurança
  • Última Verificação: Timestamp da última validação manual realizada

Verificação Manual do Webhook:

Um novo botão "Verificar Status na API" permite que administradores validem sob demanda se o webhook está corretamente configurado na API NFE.io, incluindo:

  • Verificação de existência do webhook na API
  • Validação de consistência da URL entre configuração local e API
  • Verificação de status ativo do webhook
  • Logs detalhados de todas as operações de verificação

Esta funcionalidade auxilia no diagnóstico de problemas relacionados ao recebimento de callbacks, reduzindo o tempo de troubleshooting e melhorando a transparência da configuração do sistema.

Melhorias

Tratamento de cancelamento de notas fiscais

O fluxo de cancelamento de notas fiscais foi aprimorado para lidar melhor com cenários de falha parcial ou inconsistências entre o módulo e a API:

  • Identificação de cancelamentos parciais: quando apenas parte da série de NFs é cancelada com sucesso, o módulo exibe uma mensagem de aviso listando as notas que falharam e orientando a verificação da empresa emissora configurada.
  • Novo status "Falha no Cancelamento" na listagem de notas, permitindo que administradores identifiquem visualmente notas cuja tentativa de cancelamento não foi concluída com sucesso (referência: #180).
  • Ajuste na regra de reemissão para considerar notas com status "Cancelled" e "CancelFailed" como elegíveis, evitando que o fluxo fique travado quando a nota já não existe mais na API, mas permanece registrada localmente.
  • Mensagens mais claras quando a API informa que a nota não foi encontrada, sugerindo a verificação de possíveis alterações na empresa emissora configurada para a fatura.

Correções

  • Conversão explícita para string ao salvar o ID e o secret do webhook no armazenamento legado, evitando inconsistências de tipo em ambientes mais recentes. Referência: #182.
  • Conversão explícita para string dos campos de configuração de empresa (ID da empresa, CNPJ, código de serviço, código NBS, indicador de operação e classificação tributária) antes da persistência, garantindo maior consistência dos dados e compatibilidade com os novos campos adicionados para a Reforma Tributária.

v3.1.0

30 Dec 21:07
57ce5c0

Choose a tag to compare

A versão 3.1.0 implementa o suporte à Reforma Tributária Brasileira, com a inclusão de novos campos obrigatórios para a emissão de notas fiscais de serviço.

Novos Recursos

Reforma Tributária Brasileira

A versão implementa os requisitos da Reforma Tributária Brasileira, adicionando novos campos obrigatórios para a emissão de notas fiscais de serviço. Estes campos são necessários para empresas optantes do Lucro Real ou Lucro Presumido e devem ser preenchidos tanto na configuração global quanto no cadastro individual de serviços.

Aplicabilidade:

Estes campos são obrigatórios apenas para empresas com regime tributário de Lucro Real ou Lucro Presumido. Empresas com outros regimes não serão impedidas de configurar estes campos, mas não será necessário preenchê-los. Esta regra poderá sofrer alterações de acordo com as mudanças relacionadas a RTC, sempre verifique os canais de comunicação da NFE.io e/ou órgãos oficiais para informações atualizadas.

Novos Campos Adicionados:

  • NBS (Nomenclatura Brasileira de Serviços): Classificação obrigatória que identifica o tipo de serviço prestado. Consulte a tabela de correlação NBS/LC116 para encontrar o código apropriado para seu serviço.

  • Classificação Tributária (CBS/IBS): Define a alíquota aplicável ao serviço conforme a Contribuição Social (CBS) e Imposto sobre Bens e Serviços (IBS). Consulte a tabela de referência CST para determinar a classificação correta.

  • Indicador de Operação (indOp): Especifica o tipo de operação de fornecimento do serviço. Consulte a tabela de referência do Indicador de Operação para selecionar a operação adequada.

Para detalhes completos sobre a Reforma Tributária e seus requisitos, consulte a documentação oficial da NFe.io.

Configuração Global (Empresa):

Os campos podem ser configurados globalmente na seção de configuração da empresa, estabelecendo valores padrão para todos os serviços daquele emissor.

Configuração Emissor - NBS e Classificação Tributária

Modal de Configuração do Emissor

Configuração por Serviço:

Além da configuração global, cada serviço pode ter seus próprios valores para NBS, Classificação Tributária e Indicador de Operação, permitindo maior flexibilidade e precisão na classificação de diferentes tipos de serviços.

Configuração de Serviço - NBS e Classificação Tributária

Referência: #169

Full Changelog: v3.0.0...v3.1.0

v3.0.0

28 Apr 05:22

Choose a tag to compare

A versão 3.0.0 traz melhorias significativas, incluindo suporte a multiempresas, novas funcionalidades e aprimoramentos na usabilidade.

Novos Recursos

Multiempresas

Agora, é possível configurar múltiplos emissores com suporte a multiempresas. Contas da NFe.io com mais de uma empresa cadastrada podem utilizar este recurso para definir diferentes emissores na configuração do módulo. Isso permite associar um cliente do WHMCS a um emissor específico, que será utilizado como emitente para as notas fiscais, independentemente da empresa padrão configurada para emissão.

Configuração Multiempresas

  • Emissor Padrão: Configurações que utilizarem mais de um emissor cadastrado precisarão definir um como padrão. Este emissor será utilizado para todos os clientes que não possuírem uma associação personalizada.

  • Associar Clientes: A nova tela "Associar Clientes" em Configurações permite a associação de um cliente a um emissor específico, garantindo que todos os produtos ou serviços faturados neste cliente tenham como emitente a empresa associada.

Associar Clientes

  • Códigos Personalizados: Com o recurso multiempresa, os códigos personalizados agora podem ser associados a um emissor específico. Isso possibilita definir diferentes códigos de serviços personalizados para diferentes produtos e emissores. Ao cadastrar um novo código de serviço, será necessário selecionar a qual dos emissores cadastrados ele se destina.

Códigos Personalizados

  • Alíquotas: As alíquotas dos códigos personalizados agora estão associadas a um emissor. Ao cadastrar uma nova alíquota, o emissor vinculado ao código de serviço selecionado será exibido.

Alíquotas

Detalhes da Nota

Uma nova opção "Detalhes" foi adicionada junto às ações da nota. Agora é possível visualizar mais detalhes da nota, como códigos ou mensagens retornadas da API de emissão.

Detalhes da Nota

Melhorias

Visualização de Notas

A tabela de visualização de notas emitidas pelo módulo recebeu uma reorganização das colunas e ações, visando adequar as informações e melhorar o layout das ações disponíveis. Os diferentes botões de ações foram agrupados em um sub-menu para uma melhor exibição.

Visualização de Notas

Códigos Personalizados

Foram introduzidas melhorias na gestão dos códigos personalizados dos produtos, incluindo novas janelas de cadastramento e confirmações na exclusão de registros.

Alíquotas

Melhorias na gestão de alíquotas foram implementadas. Agora, além de novas janelas para cadastramento e exclusão, a tabela exibirá apenas as alíquotas cadastradas, ao contrário da versão anterior que mostrava todos os códigos de serviços personalizados, mesmo sem uma alíquota cadastrada.

Demais Melhorias

  • Alguns métodos que dependiam de código legado foram reescritos para melhor manutenção.
  • Melhorias no código de tratamento do callback para maior legibilidade e performance.
  • Registro do número da RPS retornado na emissão da NF no banco de dados do módulo.
  • Os processos de download do PDF e XML foram atualizados, agora retornando os arquivos pelo SDK da NFe.io.

Notas sobre Atualização e Migração

  • Algumas reestruturações removeram a dependência de arquivos de versões legadas. É recomendado a exclusão do diretório NFEioServiceInvoices existente no WHMCS antes de realizar o upload novamente do diretório.
  • Esta versão implementa novas colunas nas tabelas existentes, além de novas que serão responsáveis pelos dados das empresas emissoras cadastradas e pela associação de clientes.
  • Importante: Sempre realize um backup antes de qualquer atualização.

v3.0.0-rc

23 Apr 19:22

Choose a tag to compare

v3.0.0-rc Pre-release
Pre-release

Full Changelog: v2.2.1...v3.0.0-rc

v2.2.1

31 Mar 13:36
3dea761

Choose a tag to compare

Correções

Full Changelog: v2.2.0...v2.2.1

v2.2.0

13 Jun 15:33
020540e

Choose a tag to compare

Esta versão implementa novos recursos e traz melhorias em rotinas existentes.

Novos Recursos

Validações para CPF e CNPJ

Foi incluída uma nova classe de auxílio Validations no módulo NFEioServiceInvoices. Essa classe contém métodos para validar CPFs e CNPJs com base no algoritmo de validação, conforme regras de verificação, ao invés da definição de validade de documento pelo tamanho de caracteres, garantindo a integridade dos dados tratados.

Agora quando o número de documento não for válido, seja um CPF ou CNPJ, o processo de emissão da nota será encerrado e uma mensagem com o motivo será mostrado ao usuário, além de um registro detalhado no log do módulo quando em modo depuração.

Screenshot of WHMCS - NFE io NFSe (1)

Screenshot of WHMCS - System Module Debug Log

Validação e manipulação de webhook (hmac)

Foi adicionado um novo método de validação de webhook na classe de validação e uma nova manipulação de webhook no arquivo callback. Agora, é possível verificar a assinatura do webhook (HMAC) e certificar-se de que é de uma fonte confiável antes de processá-lo.

Também foi melhorado o retorno de erros e códigos de respostas para as chamadas da API ao callback, com isso é possível permitir que a API realize novas tentativas de envio em casos de impossibilidade do processamento na primeira chamada, evitando que atualizações de informações no módulo não sejam prejudicadas por qualquer impossibilidade momentânea do módulo em escutar os retornos.

Opção para atualização da nota

Foi adicionado na interface do administrador uma nova opção que permite a atualização do status da nota de forma manual. Com isso, é possível buscar as informações diretamente na API para refletir estas informações no WHMCS.
Este recurso é útil em casos onde as informações do status da nota não foram sincronizados com o módulo.

image

Melhorias

Tratamento de status do cancelamento da nota via API

Refatorado a manipulação do status da nota quando é realizada cancelamento para atender a estrutura atual de retorno da API de cancelamento. Antes, ao cancelar uma nota via API, o objeto de retorno possuía um atributo "message" onde o processo de atualização de notas cancelava se baseava. Agora, a API de cancelamento está retornando a nf no objeto e código de status 202. Devido a isso as notas canceladas não estavam sendo registradas adequadamente.

Screenshot from 2024-04-27 21-37-02

Melhoria no tratamento de erros e registro de status do fluxo

Foi adicionado o registro do valor de flowStatus dos retornos do webhook, garantindo que em cenários de falha ou problemas, a informação deste atributo esteja registrada corretamente para solução de problemas. Com isso será possível analisar as mensagens de retorno de forma mais eficiente e também utilizar seus valores para processamento nas rotinas de mensagens de retorno implementadas nestas atualizações.

image

Também foi padronizado os identificadores e adicionado novos registros de log para permitir uma melhor depuração, tanto do retorno do webhook quanto em rotinas internas do módulo.

NOTA: A mensagem ApiNoResponse é uma mensagem interna utilizada para identificar quando uma ação de cancelamento não retornou o devido status pela nota já se encontrar cancelada na API ou tiver sua emissão não concluída e o usuário tenta cancelar da mesma forma.

Modais de confirmação

Foi adicionado modais de confirmação para as ações de cancelamento e reemissão de notas fiscais.
Agora, ao realizar uma destas ações, o usuário será questionado se deseja prosseguir com a ação.

Correções

Corrigido problema no registro de timestamp das informações no banco de dados

Foi corrigido um problema na definicao do tipo de valor padrao para os campo de created_at e updated_at nas tabelas do módulo. As informações nao estavam sendo registradas devidamente por algumas definicoes manuais de data de rotinas legadas e também devido a falta de uma definicao de valores padroes para estas colunas do tipo timestamp que poderia gerar uma atribuição equivocada de valores nestes campos.

Detalhes da análise e correcao podem ser encontradas na questao 156 #156

Corrigido problema de re-emissão duplicada na fatura

Foi corrigido uma condição que poderia levar a emissão duplicada de notas quando administrador tenta gerar novas notas
a partir da visualização de uma fatura. #160

v2.1.9

13 Jun 15:29
020540e

Choose a tag to compare

O que mudou

Novas funcionalidades e melhorias

Changelog

v2.1.8...v2.1.9

v2.1.8

16 Mar 00:51

Choose a tag to compare

What's Changed

Full Changelog: v2.1.7...v2.1.8

v2.1.7

08 Feb 13:53
fc89a90

Choose a tag to compare

Correções

  • [BUG] Checagem e criação de webhook

Full Changelog: v2.1.6...v2.1.7

v2.1.6

24 Oct 19:13

Choose a tag to compare

Correções

  • [BUG] Nota Fiscal com status "processando" quando emissão falha #143
  • Melhora a exibição das mensagens de status na interface web para os administradores.

Full Changelog: v2.1.5...v2.1.6