No País Basco, nas províncias de Guipúzcoa, Vizcaya e Álava, de acordo com a Resolução 47/2019 de 17 de junho, publicado pelo Boletín Oficial del País Vasco, existe um projeto de estudo e implementação de instrumentos de controlo dos sistemas de faturação e cobrança TicketBAI.
O TicketBAI é um sistema que permite controlar as receitas produzidas quer pelas empresas quer por trabalhadores independentes e tem como objetivo:
lutar contra a fraude fiscal;
reduzir os custos de cumprimento das obrigações fiscais;
proteger o consumidor.
Configuração de Parâmetros
Para utilizar o sistema TicketBAI, siga os seguintes passos:
Aceder ao ecrã Parâmetros em Sistema;
No nó Configuração geral, no parâmetro SIF: Sistema Informático de Facturación escolher a opção Ticketbai - sistema TickectBAI para la comunicación de documentos de facturación;
Reentrar no Desktop para ficar disponível os parâmetros de configuração do TicketBAI;
Configurar os seguintes parâmetros:
TicketBAI: Autoridade tributária para efeitos do TicketBAI
TicketBAI: Chave privada do Certificado Digital
TicketBAI: Caminho do certificado digital (pfx) para assinar e comunicar documentos de faturação
Validar os parâmetros preenchidos automaticamente no momento da escolha da Autoridade tributária para efeitos do TicketBAI:
TicketBAI: Webservice de comunicação de documentos de faturação - URL de anulação
TicketBAI: Webservice de comunicação de documentos de faturação - URL de emissão
TicketBAI: Webservice de comunicação de documentos de faturação - URL do Código QR
É necessário instalar o certificado digital para a comunicação via Webservice (para o obter deverá aceder ao site da Autoridade Tributária correspondente das províncias de Guipúzcoa, Vizcaya ou Álava).
Configuração de Séries de documentos
A comunicação de documentos de faturação utilizando web service permite o envio de documentos cujo o tipo esteja configurado na série de faturação com:
Tipo de fatura F1 ou F2 (Fatura ou Fatura simplificada);
Tipo de fatura R (Fatura retificativa).
Na configuração da série, ao selecionar o Tipo de fatura R | Fatura rectificativa passa a estar disponível a caixa seleção Modo de fatura retificativa para selecionar as opções S - Substituição ou I- Diferença.
Emissão e Comunicação de Documentos de Faturação
Para emitir e comunicar os documentos de faturação, siga os seguintes passos:
Aceder a Gestão | Clientes | Faturação a clientes;
Clicar em Introduzir (ou teclas ALT+N);
Preencher os campos obrigatórios;
Clicar em Gravar.
Assim que o documento é gravado, é:
produzido e assinado o ficheiro XML de emissão;
gravado na BD a assinatura do documento, o TBAI-código único do documento e o ficheiro XML;
efetuada a comunicação do ficheiro XML no âmbito do TicketBAI. De imediato é retornado o resultado dessa comunicação, que pode resultar em:
Documento comunicado com sucesso: ícone verde no canto superior direito do ecrã.
Documento comunicado com avisos: ícone verde no canto superior direito do ecrã. É apresentada uma mensagem a informar que o documento foi comunicado com avisos, sendo necessário consultar o resultado da comunicação. Neste resultado surge o(s) aviso(s) com descrição para uma correta comunicação de documentos.
Documento comunicado com erros: ícone vermelho no canto superior direito do ecrã. É apresentada uma mensagem a mencionar que ocorreu um erro ao produzir e enviar o documento de faturação, sendo igualmente possível consultar o resultado da comunicação. Neste resultado surge a descrição do erro, a ser corrigido, de forma a comunicar com sucesso o documento.
Os documentos de faturação que foram comunicados com sucesso não podem ser apagados, mas podem ser anulados, sendo necessário comunicar também os documentos anulados. É possível alterar apenas campos sem relevância fiscal. Já os documentos de faturação que foram comunicados com erros não podem ser apagados nem anulados.
No ecrã Emissão Automática de Faturação é possível emitir e comunicar os documentos.
As opções:
Dar documento como comunicado manualmente no âmbito do TicketBAI e Dar documento como anulado manualmente no âmbito do TicketBAI só ficam disponíveis se o documento foi comunicado com erros e são utilizadas para registar na aplicação que o documento foi comunicado, manualmente, através do portal da autoridade tributária;
Gerar ficheiro XML de emissão TicketBAI e Gerar ficheiro XML de anulação TicketBAI permitem produzir os ficheiros XML de emissão ou anulação com a estrutura de dados correta. Deste modo, é possível comunicar manualmente através do respetivo portal da autoridade tributária.
Para que seja possível comunicar documentos de faturação, é necessário instalar manualmente a versão mais atual do Chilkat da seguinte forma:
Copiar o ficheiro “ChilkatAx-9.5.0-win32.dll” para a pasta da aplicação;
Registá-lo com recurso ao regsvr32 (abrir linha de comandos em modo Administrador e digitar: regsvr32 caminho_da_pasta_da_ aplicaçãoChilkatAx-9.5.0-win32.dll).
Monitor de Comunicação de Documentos de Faturação
Nos casos em que a comunicação, ao gravar pelo ecrã de faturação, falha pela ligação à internet ou por o Web Service estar indisponível, é necessário comunicar os documentos via Monitor da seguinte forma:
Aceder ao Monitor de Comunicação de Documentos de Faturação (TicketBAI) no menu Supervisor;
Selecionar o(s) documento(s) em que o Estado seja Emitido com erros ou Anulado com erros;
Clicar em Enviar;
No final da operação, é apresentada uma lista de resultados indicando os documentos que foram enviados com sucesso ou os documentos que originaram erros.
Caso a comunicação falhe por outro motivo, terá que aceder ao documento de faturação, corrigir os dados necessários conforme o erro apresentado e gravar o registo. Ao gravar, é efetuada uma nova comunicação do documento já com os dados corrigidos.
Código QR e TBAI
No âmbito do TicketBAI é obrigatória nos documentos de faturação impressos (IDUs em Modo Gráfico) a inclusão do código QR, o TBAI - código único do documento e no caso de documentos anulados, no campo Documento Anulado.
Nas impressões em Modo Gráfico são efetuadas as seguintes validações aos campos Código QR e TBAI:
Se o campo Código QR estiver presente no IDU e não tiver a DLL registada, surge a mensagem: O componente QRCoderGen.dll não está corretamente registado.;
Ao arrastar o campo Código QR para o IDU é também arrastado o campo TBAI;
Se a posição do TBAI for alterada, o mesmo é mantido junto do Código QR e vice-versa;
O TBAI ao ser eliminado o Código QR também é eliminado e vice-versa;
O Código QR deve ter no mínimo 3 cm e no máximo 4 cm, ou seja, caso diminua/aumente o tamanho do campo Código QR, a aplicação irá validar se o mesmo é inferior a 3 cm ou superior a 4 cm e se for, irá redimensionar o tamanho do Código QR para a dimensão mínima (3 cm);
Se o IDU estiver configurado com orientação vertical:
os campos só podem ser introduzidos na banda Rodapé da página;
o TBAI fica centrado em relação ao Código QR;
o Código QR tem que ser o último campo presente no IDU.
Se o IDU estiver configurado com orientação horizontal:
os campos podem ser introduzidos em qualquer banda menos na banda das Linhas;
o TBAI fica alinhado à direita em relação ao Código QR;
o Código QR tem que ser o campo mais à direita presente no IDU.
Se existirem campos de dados sobrepostos com Código QR e TBAI é apresentada a mensagem "Foi detetada sobreposição com o campo . Não é possível existir sobreposição entre campos obrigatórios.".
Estrutura de Dados
Estrutura de dados do campo TBAI - código único do documento (total de 39 caracteres)
TBAI-NNNNNNNNN-DDMMAA-FFFFFFFFFFFFF-CRC
"TBAI" -> Valor fixo (4 caracteres)
"-" -> Separador (1 caracter)
"NNNNNNNNN" -> NIF (9 caracteres) ->> e1.ncont and estab=0
"-" -> Separador (1 caracter)
"DDMMAA" -> Data da factura (6 caracteres) ->> ft.cdata formato DDMMAA EX: 010121
"-" -> Separador (1 caracter)
"FFFFFFFFFFFFF" -> 13 primeiros caracteres da assinatura ->> TAG: do documento XML
"-" -> Separador (1 caracter)
"CRC" -> 3 caracteres obtidos através dos 36 caracteres anteriores pelo algoritmo CRC-8
Estrutura de dados do campo Código QR TicketBAI (URL)
Guipúzcoa: https://tbai.egoitza.gipuzkoa.eus/qr/
Álava: https://ticketbai.araba.eus/TBAI/QRTBAI
Vizcaya: https://batuz.eus/QRTBAI/
Parâmetros do URL:
id= Campo TBAI --->> FT3.ATCUD
s = Campo --->> FT.NMDOC
nf= Campo --->> FT.FNO
i = Campo --->> FT.ETOTAL
cr= 3 caracteres obtidos através do algoritmo CRC-8 do conteúdo URL sem este último parâmetro (sem "&cr=182")