ValidateFin
Voltar ao blog
Peppol13 min de leituraPor Eliel Nicaise

Peppol BIS Billing 3.0: regras de negócio e validação

Guia técnico completo sobre as regras de negócio Peppol BIS Billing 3.0 (BR-, PEPPOL-): o que validam, como interpretá-las e como corrigir os erros.

Valide o seu ficheiro agora

Grátis, instantâneo e 100% no seu navegador - nenhum ficheiro é enviado.

Abrir o UBL / Peppol Validator

O que são as regras de negócio Peppol?

O Peppol BIS Billing 3.0 define dois conjuntos de regras de validação além da estrutura XSD: as regras EN 16931 (prefixo BR-) que implementam a norma europeia, e as regras específicas Peppol (prefixo PEPPOL-) que adicionam restrições suplementares.

Existem mais de 200 regras de negócio. Cada regra tem um identificador único (ex: BR-01, PEPPOL-EN16931-R001), uma descrição do que valida, e um nível de severidade: fatal (rejeição) ou warning (aviso).

As regras fatais devem ser cumpridas para que a fatura seja aceite na rede Peppol. As regras warning indicam boas práticas ou situações que podem causar problemas de processamento downstream.

Erros de validação Peppol mais frequentes

Os erros BR- e PEPPOL- mais encontrados na validação:

PEPPOL-EN16931-R003: Referência do comprador (BT-10) obrigatória

O Peppol BIS 3.0 torna a referência do comprador (cbc:BuyerReference ou cac:OrderReference/cbc:ID) obrigatória, embora seja opcional na EN 16931 de base. A referência do comprador é utilizada para encaminhar a fatura dentro da organização do comprador. A sua ausência causa a rejeição nos pontos de acesso Peppol.

O código do meio de pagamento deve pertencer ao subconjunto permitido UNCL4461

Enquanto a EN 16931 permite qualquer código de meio de pagamento UNCL4461, o Peppol BIS 3.0 restringe os códigos permitidos. Os códigos válidos mais comuns são 30 (Transferência a crédito), 49 (Débito direto) e 58 (Transferência a crédito SEPA). O código 1 (por instrumento não especificado de outra forma) não é aceite.

PEPPOL-EN16931-R010: Endereço eletrónico do comprador (EndpointID) obrigatório

O Peppol BIS 3.0 exige o endereço eletrónico do comprador (cbc:EndpointID com um identificador de esquema EAS válido) para que a fatura possa ser encaminhada para o destinatário na rede. Um endpoint de comprador em falta ou com esquema incorreto é uma das causas mais comuns de rejeição de faturas Peppol.

PEPPOL-EN16931-R004: O CustomizationID deve ser o valor Peppol correto

O cbc:CustomizationID deve ser exatamente: urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0. Mesmo variações menores (separador errado, número de versão) causam falha na identificação do esquema. Este valor é sensível a maiúsculas e minúsculas.

PEPPOL-EN16931-R120: Cálculo do montante líquido da linha de fatura

O montante líquido da linha de fatura (BT-131) deve ser igual à quantidade multiplicada pelo preço líquido (por quantidade base), mais os encargos ao nível da linha e menos os descontos ao nível da linha. Mesmo uma diferença de arredondamento de 0.01 numa única linha causa a rejeição no ponto de acesso do comprador.

Como interpretar e corrigir as regras

Cada mensagem de erro inclui o identificador da regra (ex: BR-01), o contexto XPath onde o erro foi encontrado, e uma descrição em inglês. O identificador permite consultar a documentação oficial Peppol.

Para regras BR- (EN 16931): consulte a especificação EN 16931-1 e o documento de aplicação EN 16931-3-2 (UBL). Para regras PEPPOL-: consulte o BIS Billing 3.0 disponível no site docs.peppol.eu.

O nosso validador UBL/Peppol executa todas as regras Schematron e apresenta os erros com o contexto XPath e a descrição completa, facilitando o diagnóstico e a correção.

Boas práticas para conformidade Peppol

Use sempre o perfil correto: o CustomizationID deve corresponder exatamente ao perfil Peppol BIS Billing 3.0. Uma diferença de maiúsculas/minúsculas ou um espaço extra causa rejeição.

Teste com amostras reais: use o nosso validador com faturas reais antes de ir a produção. Os erros de cálculo (totais de IVA, valor total da fatura) são frequentes e dependem dos dados específicos.

Mantenha as regras atualizadas: a OpenPeppol publica atualizações periódicas das regras Schematron. Verifique regularmente se o seu sistema usa as versões mais recentes.

Valide as suas faturas Peppol

O nosso validador executa todas as regras BR- e PEPPOL- em tempo real no seu browser. Nenhum dado é enviado para os nossos servidores.

Validar agora

Perguntas frequentes

Qual a diferença entre regras BR- e PEPPOL-?

As regras BR- implementam a norma europeia EN 16931. As regras PEPPOL- são específicas da rede Peppol e adicionam restrições suplementares ao EN 16931.

Uma fatura com warnings Peppol pode ser enviada?

Tecnicamente sim, os warnings não bloqueiam a transmissão. Mas devem ser analisados: podem causar problemas de processamento no sistema do destinatário.

Como obter a lista completa das regras Peppol?

Sim. A regra PEPPOL-EN16931-R003 do Peppol BIS 3.0 torna a referência do comprador (BT-10, mapeada para cbc:BuyerReference ou cac:OrderReference/cbc:ID) obrigatória. Peça aos seus compradores o valor de referência que preferem - normalmente é um número de ordem de compra ou um código de centro de custo utilizado para encaminhamento interno.

Por que a minha fatura falha na regra BR-CO-15?

BR-CO-15 verifica que o total de IVA da fatura (TaxTotal/TaxAmount) é igual à soma dos TaxSubtotal/TaxAmount. Verifique os cálculos e arredondamentos em cada linha.

Como corrijo o PEPPOL-EN16931-R004?

O CustomizationID identifica o perfil de conformidade. Para Peppol BIS Billing 3.0, deve ser exatamente 'urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0'.

As regras Peppol são as mesmas em todos os países?

As regras core BR- e PEPPOL- são as mesmas. Alguns países adicionam extensões nacionais (ex: NLCIUS para os Países Baixos, AUNZ para Austrália/Nova Zelândia).

Como testar as regras Peppol sem enviar para a rede?

Use o nosso validador local (processamento no browser). Também pode usar o Peppol Testbed oficial ou o validador da OpenPeppol para testes mais completos.

A versão das regras Schematron importa?

Sim, a OpenPeppol publica novas versões periodicamente. Certifique-se de que o seu sistema usa a versão mais recente para evitar falhas com Access Points atualizados.

Como validar faturas de crédito (notas de crédito) Peppol?

As notas de crédito Peppol usam o documento CreditNote UBL (não Invoice). As regras são similares mas algumas são específicas. O nosso validador suporta ambos os tipos.

Existem ferramentas open-source para validação Peppol?

Sim: phive (Java, da OpenPeppol), Mustang (Java, para Factur-X/ZUGFeRD com suporte Peppol), e Saxon (processador XSLT para executar as regras Schematron diretamente).