Jump to content
Fabio Jr

Como gerar Facturas e Facturas Simplificada em Portugal

Recommended Posts

Fabio Jr

Bom dia, estou desenvolvendo um sistema de emissão de bilhetes/fichas que deve sofrer umas adaptações para o funcionamento em portugal e me deparei com umas duvidas quanto a parte de emissão de faturas. Se puderem me ajudar, ficaria muito grato.

1 - Na Despacho n.º 8632/2014, de 3 de julho vi algumas regras a serem seguidas para emissão da factura. No entanto fiquei com duvida em alguns aspectos:

a) A numeração da fatura, vi que deverá possuir o formato: 'Tipo' 'N.º de Serie'/'N.º Sequencial' sem as aspas simples( ' ). No entanto, em relação ao numero de serie fiquei sem entender se era um numero que eu criava, ou se devo registra-lo de acordo com o tipo em algum lugar na AT, ou se devo requisitado de alguma API ou WebService deles?

b) No caso do código Hash, ele deve ser gerado com base na chave publica ou privada? No caso da primeira nota a ser emitida, devo omitir a informação separada por hífen (Ex. AxAx- Processado por programa certificado de n.º XXXX/AT)? Porque pelo que entendi o código AxAx é feito com base na posição ( 1ª, 11ª, 21ª e 31ª ) do hash gerado ou estou enganado?

 c) Após o armazenamento e emissão da nota, poderia imprimir as respectivas quantidades de fichas descritas na Factura para retirada das bebidas, por exemplo. Ou teria que desmembrar a fatura em três tratando-as individualmente para que o cliente tivesse a comodidade de retirar-las mais tarde?

d) Toda fatura obrigatoriamente deve ser assinada, ou somente o ficheiro que sera enviado para SAF-T(PT)? No seu devido fechamento mensal, que ainda não conseguir entender se é dia 8, 20 ou 25 do mês subsequente.

e) No caso de cancelamento de 1 item, devo cancelar a fatura inteira e gerar uma nota de crédito, ou posso realizar o cancelamento de um item demonstrando valor negativo na nota? Fiquei confuso na documentação em um momento fala que não e em outro fala que o valor negativo não pode superar o valor da fatura, enfim.

2 - Ao realizar uma tentativa de validação de certificado, com software disponibilizado pela AT, me deparei com seguinte erro: "cvc-identity-constraint.4.3: Key 'InvoiceProductCodeConstraint' with value 'MO' not found for identity constraint of element 'AuditFile'.". Saberiam como resolver?

3 - Conheceriam alguma API de integração, ou biblioteca em C# que pudesse facilitar o processo da emissão de faturas?

Desde já grato pela vossa atenção,

Fabio

Edited by Fabio Jr
titulo errado

Share this post


Link to post
Share on other sites
nelsonr

Bom dia Fabio,

posso tentar ajudar nas tuas duvidas, mas convém consultares a documentação oficial da AT:
http://info.portaldasfinancas.gov.pt/pt/apoio_contribuinte/Pages/certificacao-de-software.aspx
http://info.portaldasfinancas.gov.pt/pt/apoio_contribuinte/SAFT_PT/Paginas/news-saf-t-pt.aspx

1.
a) A melhor forma de teres a certeza do formato é analisares o ficheiro de validação do SAF-T para o campo DocumentNumber. Mas basicamente a série é uma forma de identificar unicamente a numeração. Por exemplo podes ter a série por posto e juntas o ano, ficando P12018 (ex: FR P12018/1). Não podes ter o caracter de espaço na série.

b) O código hash é gerado com a chave privada, usando alguns campos do documento (dataemissão;datahorasistema;numero;total;hashdocanterior). No caso do primeiro documento, como não tens documento anterior, omites esse conteúdo. Essa parte de extrair 4 caracteres do hash será apenas na impressão do documento para entregar ao cliente.

c) Não entendi a duvida mas os documentos fechados e assinados não podem ser alterados.

d) Todos os documentos que possam ser entregues a clientes têm de ser assinados (faturas, contas, etc). O prazo de envio do SAF-T é atualmente até ao dia 20 do mês seguinte.

e) Para cancelamento de algum produto, deve ser feita uma nota de crédito. A anulação julgo que só em casos extremos (por exemplo, engano no NIF)

2. Esse erro indica que estás a exportar um produto (com o código MO) na parte dos documentos, que não referenciaste no inicio do SAF-T, na parte dos produtos

3. Não tenho conhecimento se existe alguma API que facilite, mas tenta ver o tópico SAFT-PT: debate de dúvidas e ideias  no forum, tem lá bastante informação que ajudou-me na altura que fiz.


Espero que ajude,
nelsonr

Edited by nelsonr
  • Vote 2

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.