Faturação eletrónica francesa: pôr o PrestaShop em conformidade
A fatura em PDF do PrestaShop não é uma fatura eletrónica à luz da reforma francesa. O que falta mesmo na base de dados e o plano de conformidade, passo a passo.

Porque é que a sua fatura em PDF não chega
A faturação eletrónica é hoje o tema que mais preocupa quem vende para França: a reforma francesa obriga as empresas a trocar faturas em formato estruturado e abrange qualquer loja PrestaShop que fature clientes em França. E assenta num equívoco muito comum: «já emito faturas em PDF, portanto estou preparado».
Uma fatura eletrónica, no sentido da reforma, não é um PDF. É um documento estruturado, legível por uma máquina, transmitido através de uma plataforma acreditada. O formato mais divulgado em França, o Factur-X, é um PDF/A-3 com um ficheiro XML normalizado incorporado. O PDF continua legível por um humano; é o XML que tem valor de troca.
Ora, o PrestaShop gera as faturas com o PDF/HTMLTemplateInvoice.php, que produz um PDF clássico. Nenhuma versão padrão do PrestaShop produz nativamente um Factur-X.
Os dois regimes que não se devem confundir
É a distinção pior explicada e, ainda assim, a mais estruturante.
As vendas B2B enquadram-se na faturação eletrónica propriamente dita: a fatura tem de passar por uma plataforma acreditada, que a entrega ao comprador e à administração fiscal.
As vendas B2C enquadram-se no e-reporting: não envia uma fatura ao cliente particular, mas tem de declarar periodicamente os dados das transações à administração fiscal.
A grande maioria das lojas PrestaShop vende em B2C, com uma parte de B2B mais ou menos significativa. Na prática, isso significa que a maioria dos comerciantes tem de tratar os dois regimes, com cadeias técnicas diferentes.
O que falta mesmo na sua base de dados
Antes de escolher uma ferramenta, faça o inventário dos dados. A fatura estruturada exige campos que o PrestaShop nem sempre recolhe.
Identificação do comprador profissional. O SIREN ou o SIRET passa a ser central no encaminhamento das faturas B2B. O PrestaShop guarda o número de IVA intracomunitário (vat_number na morada e no cliente), mas não o SIRET. É preciso acrescentar um campo e, sobretudo, torná-lo obrigatório na encomenda para os clientes profissionais.
Distinção B2B / B2C fiável. Muitas lojas identificam um profissional pela simples presença de um nome de empresa. Não chega. É preciso um critério explícito, normalmente assente num grupo de clientes dedicado.
Detalhe do IVA por linha. O XML exige a taxa e o montante de IVA por linha, bem como as menções de isenção quando se aplicam. As lojas que praticam a autoliquidação intracomunitária ou que fazem entregas fora da União têm de confirmar que a menção legal correspondente é corretamente aplicada.
Numeração. A sequência de faturação tem de ser contínua e sem falhas. As lojas que migraram ou que usam vários módulos de faturação têm muitas vezes quebras de sequência a corrigir antes de mais nada.
Os pontos de rutura técnicos
Três configurações bloqueiam sistematicamente a instalação de um conector:
- Uma personalização do
HTMLTemplateInvoice. Muito frequente sempre que uma agência retocou a fatura. O conector deixa de encontrar a estrutura esperada. - Um módulo de faturação de terceiros que substitui por completo a geração nativa. Nesse caso é preciso confirmar se o editor prevê uma evolução; caso contrário, mudar de ferramenta.
- O multiloja, quando várias entidades jurídicas coabitam na mesma instalação. Cada entidade tem de ser ligada separadamente.
O plano de conformidade
- Auditar os dados existentes. Quantas encomendas B2B, que proporção de clientes profissionais sem número de IVA preenchido, que quebras na sequência de faturação.
- Escolher a plataforma. É uma decisão tão contabilística como técnica: o seu contabilista e o seu software de contabilidade têm de estar envolvidos. O conector PrestaShop escolhe-se a seguir, não ao contrário.
- Completar a recolha de dados. Acrescentar o SIRET, consolidar o grupo de clientes profissionais, controlar as taxas de IVA por linha.
- Limpar as personalizações da faturação que impedem a injeção do XML.
- Testar com um conjunto de encomendas reais: B2B França, B2C França, B2B intracomunitário, venda fora da União, nota de crédito e reembolso parcial. É nas notas de crédito que falha a maioria das implementações.
- Prever o arquivo. As faturas estruturadas têm de ser conservadas e recuperáveis durante todo o prazo legal.
O calendário certo
A armadilha clássica é tratar o assunto como um módulo a instalar na véspera do prazo. As correções de dados demoram muito mais tempo do que a ligação técnica: completar SIRET em falta numa base de clientes existente obriga a uma campanha de contacto.
Comece pela auditoria dos dados, mesmo que a escolha da plataforma ainda não esteja fechada. É trabalho útil, seja qual for a solução escolhida.
Se a sua loja ainda corre numa versão antiga, a conformidade é a ocasião para tratar também a questão da versão: veja o nosso artigo sobre o fim de suporte do PrestaShop 8.
Auditar a sua cadeia de faturação
Auditamos os seus dados de faturação, corrigimos os pontos bloqueantes e integramos o conector escolhido. Veja a nossa oferta de gestão de loja online.
Este artigo apresenta as implicações técnicas da reforma francesa para uma loja PrestaShop. Não substitui o parecer do seu contabilista sobre a sua situação fiscal.
Leia também
Vulnerabilidade ps_facetedsearch: a atualização PrestaShop que não pode adiar
Uma falha com pontuação 10 em 10 permite assumir o controlo de uma loja através de um simples URL. Veja como confirmar se a sua está exposta e se já foi visitada.
Ler 30 de julho de 2026PrestaShop pirateada: detetar e remover um skimmer bancário
Um skimmer rouba números de cartão durante semanas sem abrandar a loja. Os sinais a procurar, os comandos de diagnóstico e o procedimento de limpeza completo.
Ler 29 de julho de 2026Update Assistant bloqueado: reparar uma atualização do PrestaShop 9
Cache impossível de esvaziar, serviço Symfony inexistente, processo que para a meio: os erros reais do Update Assistant e o método para passar à linha de comandos.
Ler