Jump to content

SAFT-PT: debate de dúvidas e ideias


Recommended Posts

10 minutos atrás, Adão Marques disse:

esta ai parte do XML o unico erro esta apenas no campo ProductID e não sei como resolver!

 

<?xml version="1.0" encoding="UTF-8"?>

-<AuditFile xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">


-<Header>

<AuditFileVersion>1.01_01</AuditFileVersion>

<CompanyID>5000466638</CompanyID>

<TaxRegistrationNumber>5000466638</TaxRegistrationNumber>

<TaxAccountingBasis>F</TaxAccountingBasis>

<CompanyName>CRIMAKE - COMERCIO E SERVIÇOS, (SU), LDA</CompanyName>

<BusinessName>CRIMAKE - COMERCIO E SERVIÇOS, (SU), LDA</BusinessName>


-<CompanyAddress>

<AddressDetail>RUA 49,EDFº 64, 1º ANDAR, APTº 13 NOVA VIDA KILAMBA KIAXI</AddressDetail>

<City>Luanda</City>

<Country>AO</Country>

</CompanyAddress>

<FiscalYear>2020</FiscalYear>

<StartDate>2000-01-01</StartDate>

<EndDate>2020-12-23</EndDate>

<CurrencyCode>AOA</CurrencyCode>

<DateCreated>2020-12-23</DateCreated>

<TaxEntity>GLOBAL</TaxEntity>

<ProductCompanyTaxID>5000590126</ProductCompanyTaxID>

<SoftwareValidationNumber>31.1/AGT20</SoftwareValidationNumber>

<ProductID>CrimaGest/CRIMAKE - COMERCIO E SERVICOS, LDA</ProductID>

<ProductVersion>1.0</ProductVersion>

<Telephone>+244937299248</Telephone>

</Header>

Existem vários problemas aqui e nenhum é com o ProductID

  • SoftwareValidationNumber esta tag não existe, deverá ser SoftwareCertificateNumber e deve ser preenchido com o nº do certificado atribuido pela AT
  • CurrencyCode deve ser preenchido com EUR
  • StartDate não deve estar correta
  • O encoding deverá ser encoding="Windows-1252"
  • AuditFileVersion utilizado já não é aceite, já está na versão 1.04_01
Link to post
Share on other sites
  • Replies 6.6k
  • Created
  • Last Reply

Top Posters In This Topic

  • nunopicado

    1203

  • marcolopes

    480

  • car4321

    355

  • paulo brito

    285

Top Posters In This Topic

Popular Posts

Como aqui só se fala de tristezas. A todos um Santo Natal e Bom Ano 2015. Obrigado a todos aqueles que me ajudaram

Ainda em relação ao mail/carta para o pessoal da AT e afins, e apesar de não estar metido nesta alhada de softwares de facturação, deixo a minha sugestão. Em vez de cada um enviar um mail em nome pró

Em relação ao Número de Série penso que não é bem como foi aqui referido anteriormente: o grupo 4.1.4.19.12. Número de série do produto (ProductSerialNumber) não é obrigatório (não tem o asterisco). A

Adão Marques

eu tenha aqui um xml onde estou a mi basear e ele esta a funcionar eu até agora não consigo entender realmente o verdadeiro erro.

obs só o xml que servio como base:

<?xml version="1.0" encoding="UTF-8"?>
<AuditFile xmlns="urn:OECD:StandardAuditFile-Tax:AO_1.01_01" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Header>
<AuditFileVersion>1.01_01</AuditFileVersion>
<CompanyID>5000237809</CompanyID>
<TaxRegistrationNumber>5000237809</TaxRegistrationNumber>
<TaxAccountingBasis>F</TaxAccountingBasis>
<CompanyName>INFORPROJECT-COMERCIO E PRESTACAO DE SERVICOS, LDA</CompanyName>
<CompanyAddress>
<AddressDetail>Rua 88 - Casa n. 811D - Patriota - Luanda</AddressDetail>
<City>LUANDA</City>
<PostalCode>00000</PostalCode>
<Country>AO</Country>
</CompanyAddress>
<FiscalYear>2020</FiscalYear>
<StartDate>2020-01-01</StartDate>
<EndDate>2020-10-26</EndDate>
<CurrencyCode>AOA</CurrencyCode>
<DateCreated>2020-10-27</DateCreated>
<TaxEntity>Global</TaxEntity>
<ProductCompanyTaxID>508439183</ProductCompanyTaxID>
<SoftwareValidationNumber>159/AGT/2019</SoftwareValidationNumber>
<ProductID>ProFact/INFORPROJECT -COMERCIO E PRESTACAO DE SERVICOS, LDA</ProductID>
<ProductVersion>9</ProductVersion>
<Email>jfumega@gmail.com</Email>
</Header>

de qualquer forma agradeço a ajuda mano, esta mxm a ser muito dificel

Link to post
Share on other sites
7 minutos atrás, Adão Marques disse:

eu tenha aqui um xml onde estou a mi basear e ele esta a funcionar eu até agora não consigo entender realmente o verdadeiro erro.

obs só o xml que servio como base:

<?xml version="1.0" encoding="UTF-8"?>

-<AuditFile xmlns="urn:OECD:StandardAuditFile-Tax:AO_1.01_01" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">


-<Header>

<AuditFileVersion>1.01_01</AuditFileVersion>

<CompanyID>5000237809</CompanyID>

<TaxRegistrationNumber>5000237809</TaxRegistrationNumber>

<TaxAccountingBasis>F</TaxAccountingBasis>

<CompanyName>INFORPROJECT-COMERCIO E PRESTACAO DE SERVICOS, LDA</CompanyName>


-<CompanyAddress>

<AddressDetail>Rua 88 - Casa n. 811D - Patriota - Luanda</AddressDetail>

<City>LUANDA</City>

<PostalCode>00000</PostalCode>

<Country>AO</Country>

</CompanyAddress>

<FiscalYear>2020</FiscalYear>

<StartDate>2020-01-01</StartDate>

<EndDate>2020-10-26</EndDate>

<CurrencyCode>AOA</CurrencyCode>

<DateCreated>2020-10-27</DateCreated>

<TaxEntity>Global</TaxEntity>

<ProductCompanyTaxID>508439183</ProductCompanyTaxID>

<SoftwareValidationNumber>159/AGT/2019</SoftwareValidationNumber>

<ProductID>ProFact/INFORPROJECT -COMERCIO E PRESTACAO DE SERVICOS, LDA</ProductID>

<ProductVersion>9</ProductVersion>

<Email>jfumega@gmail.com</Email>

</Header>

de qualquer forma agradeço a ajuda mano, esta mxm a ser muito dificel

Como é que estás a validar o ficheiro?

Link to post
Share on other sites
17 minutos atrás, Adão Marques disse:

estou a visualizar apartir deste site: https://validadorsaft.pt/Validator/MfxRmWcP9vtLyq2CfErJQ7sr8sZUiHdmPaVrPtno

e deste https://invoice.minfin.gov.ao/portalSupplier/#/home 

e nos dois estão a dar 1 erro

Pois o SAF-T AO não te posso ajudar as indicações que te dei são para o SAF-T PT. 

Atenção que o link que envias-te, https://validadorsaft.pt é para a versão SAF-T PT

Link to post
Share on other sites
Adão Marques
3 minutos atrás, kalin disse:

Pois o SAF-T AO não te posso ajudar as indicações que te dei são para o SAF-T PT. 

Atenção que o link que envias-te, https://validadorsaft.pt é para a versão SAF-T PT

sim , https://validadorsaft.pt link é para o saf-t pt quando testei o outro saft q tenho como base, ele funcionou corretamente!

mas ainda assim muito obrigado

Edited by Adão Marques
Link to post
Share on other sites
Luís Pontes

Bom dia a todos!

ainda ando às voltas com o HASH :(
Mas as chaves estão criadas e a funcionar! :)

Tenho uma dúvida que é: tenho os documentos desordenados no ficheiro XML, ou seja:

FT PT004/0006
NC PT004/0002
DN PT004/0001
FT PT004/0007
FT PT004/0008
FT PT004/0001
NC PT004/0001 ...

Todos começam no 0001 mas depois estão desordenados. Para a criação da HASH e a sua leitura, é importante estarem ordenados por mesmo tipo de documento/mesma série?

Ou seja, assim:

FT PT004/0001
FT PT004/0002
FT PT004/0003
FT PT004/0004
NC PT004/0001
NC PT004/0002
DN PT004/0001 ....

Obrigado,

Luís Pontes

Link to post
Share on other sites
Vitor Pereira
8 horas atrás, Luís Pontes disse:

Bom dia a todos!

ainda ando às voltas com o HASH :(
Mas as chaves estão criadas e a funcionar! :)

Tenho uma dúvida que é: tenho os documentos desordenados no ficheiro XML, ou seja:

FT PT004/0006
NC PT004/0002
DN PT004/0001
FT PT004/0007
FT PT004/0008
FT PT004/0001
NC PT004/0001 ...

Todos começam no 0001 mas depois estão desordenados. Para a criação da HASH e a sua leitura, é importante estarem ordenados por mesmo tipo de documento/mesma série?

Ou seja, assim:

FT PT004/0001
FT PT004/0002
FT PT004/0003
FT PT004/0004
NC PT004/0001
NC PT004/0002
DN PT004/0001 ....

 

Boa tarde

A exportação para o SAFT tem obrigatoriamente de ser ordenada de forma numérica e série a série, exatamente como o ultimo exemplo mencionado

Nunca e em caso algum se pode fazer a exportação por datas, onde se vão cruzar documentos de séries diferentes !!

 

Link to post
Share on other sites
Luís Pontes
Em 02/02/2021 às 17:10, Vitor Pereira disse:

 

Boa tarde

A exportação para o SAFT tem obrigatoriamente de ser ordenada de forma numérica e série a série, exatamente como o ultimo exemplo mencionado

Nunca e em caso algum se pode fazer a exportação por datas, onde se vão cruzar documentos de séries diferentes !!

 

Bom dia @Vitor Pereira e muito obrigado :)

Sendo assim, primeiro terá que ficar ordenado por Document type e só depois pela data da Invoice, (partindo do principio que a ordem das invoices estará correcto e por exemplo a FT PT004/0001 terá sempre que ter uma data mais antiga que a FT PT004/0002). Estou a pensar bem?

Obrigado,

Luís Pontes

Link to post
Share on other sites
Vitor Pereira
Em 05/02/2021 às 13:04, Luís Pontes disse:

Bom dia @Vitor Pereira e muito obrigado :)

Sendo assim, primeiro terá que ficar ordenado por Document type e só depois pela data da Invoice, (partindo do principio que a ordem das invoices estará correcto e por exemplo a FT PT004/0001 terá sempre que ter uma data mais antiga que a FT PT004/0002). Estou a pensar bem?

Luís, acho que deves esquecer a ordenação pelas datas pois estás a complicar um pouco:

1º - Na exportação para o SAFT, as datas dos documentos só servem como limitadores do período que queremos exportar

2º - A Lei não permite que o Numero de um Documento dentro de uma Série evolua e a data regrida, logo ao exportares por ordem Numérica, Série a Série, tudo fica resolvido e ordenado por data, muito embora a AT não pede para se exportar por Datas mas sim pela Ordem Numérica do Documento ( claro, sempre uma Série de cada vez )

Espero ter ajudado 

Link to post
Share on other sites
SofiaMV
On 12/12/2019 at 10:36 PM, samuquinha said:

Bom dia,

Ainda não consegui encontrar informação de como se obtem/gera este código.

Pelo Decreto-Lei n.º 28/2019, de 15 de fevereiro é a partir de 2020, mas ainda não consegui encontrar nenhuma actualização sobre o assunto no site da OCC, que disse:

"

A partir de 2020, nas faturas e demais documentos fiscalmente relevantes deve
constar um código de barras bidimensional (código QR) e um código único
de documento. Esta matéria carece ainda de regulamentação por portaria do
membro do Governo responsável pela área das finanças.
Os sujeitos passivos devem comunicar por via eletrónica à AT, antes da sua
utilização, a identificação das séries utilizadas na emissão de faturas e demais
documentos fiscalmente relevantes por cada estabelecimento e meio de processamento
utilizado. Por cada série documental comunicada, a AT atribui um
código, que deve integrar o código único de documento. Estes procedimentos
serão implementados apenas em 2020.

"

 

Onde está documentação sobre este assunto????

Virá da lapónia???

Ola!

Acredito que seja muito tarde pra responder, mas a documentação encontra-se nas seguintes ligas:

https://dre.pt/home/-/dre/140210523/details/maximized

https://info.portaldasfinancas.gov.pt/pt/apoio_contribuinte/Novas_regras_faturacao/Documents/Especificacoes_Tecnicas_Codigo_QR.pdf

Link to post
Share on other sites
paulolellis

Boa tarde,

   Alguém sabe onde posso encontrar as informações de quais IPs/ Portos devem ser abertos no Firewall para que possa realizar a submissão dos ficheiros XML do SAF-T através da linha de comando (FACTEMICLI-2.5.16-9655-cmdClient.jar)? 

 

    Obrigado,

        Paulo

Link to post
Share on other sites
americob
3 horas atrás, paulolellis disse:

Boa tarde,

   Alguém sabe onde posso encontrar as informações de quais IPs/ Portos devem ser abertos no Firewall para que possa realizar a submissão dos ficheiros XML do SAF-T através da linha de comando (FACTEMICLI-2.5.16-9655-cmdClient.jar)? 

 

    Obrigado,

        Paulo

Eu tenho isso implementado nos meus programas e não tenho ouvido falar de problemas a enviar, a não ser quando a AT muda de versão e diz que está desatualizado mas não diz qual é a nova versão, porque dizendo, o meu programa faz o download e passa a usar a nova versão.

Como é usado por muita gente e sem fazer qualquer alteração ao firewall, não deve ser preciso fazer nada, deve usar uma porta habitualmente aberta do género da 80.

Apenas numa máquina, quando instalei o OpenJdk, deixou de funcionar. Tem de ter o Java jre1.8.0 para funcionar. Na linha de comandos faz "java -version" e já vês qual é versão que tens.

  • Vote 1
Link to post
Share on other sites
Luís Pontes
Em 05/02/2021 às 17:56, Vitor Pereira disse:

Luís, acho que deves esquecer a ordenação pelas datas pois estás a complicar um pouco:

1º - Na exportação para o SAFT, as datas dos documentos só servem como limitadores do período que queremos exportar

2º - A Lei não permite que o Numero de um Documento dentro de uma Série evolua e a data regrida, logo ao exportares por ordem Numérica, Série a Série, tudo fica resolvido e ordenado por data, muito embora a AT não pede para se exportar por Datas mas sim pela Ordem Numérica do Documento ( claro, sempre uma Série de cada vez )

Espero ter ajudado 

Boa tarde @Vitor Pereira

Sim ajudaste :)

Uma pergunta, provavelmente básica e por isso peço desculpa, na geração do HASH, é possível haver valores negativos?

Obrigado,

Luís Pontes

Link to post
Share on other sites
samuquinha
Em 12/02/2021 às 06:01, SofiaMV disse:

Boa tarde,

Informação a mais, nunca é demais.

Obrigado pela atenção

Link to post
Share on other sites
Miguel Frias
3 hours ago, Luís Pontes said:

Boa tarde @Vitor Pereira

Sim ajudaste :)

Uma pergunta, provavelmente básica e por isso peço desculpa, na geração do HASH, é possível haver valores negativos?

?? O hash é uma string baseada num conjunto de campos, depois cifrados com a chave privada do produtor de software e posteriormente codificada em base64. Nada tem a ver com valor negativo. Exemplo:

 

ikzvGwmcBz6zTArBcTywdijA+onaPDXSnkgPjyIFYAqv1vcaiWnBJObI4RsQuvSuHQi742FR++pp+i24lIpGQ83DVHp9zU8ZNTtPaGOmqI45Oc1qvWUkiNBmPu7rWOdiu+gBEmcYL8/kEme7JNLpgBttLVfYRhijJC0Cvmm6EYk=

 

Hash curta: i6dX

Link to post
Share on other sites
antseq
18 horas atrás, Luís Pontes disse:

Boa tarde @Vitor Pereira

Sim ajudaste :)

Uma pergunta, provavelmente básica e por isso peço desculpa, na geração do HASH, é possível haver valores negativos?

Na geração do hash utilizas os campos do saft:
"InvoiceDate";"SystemEntryDate";"InvoiceNo";"GrossTotal";"Hash-Anterior"

SAFT - aspectos genéricos 
L) Na exportação dos valores não são aceites valores negativos. Quando existirem saldos contabilísticos ou transações nos documentos comerciais com valores negativos, deve ser ajustada a sua representação a débito ou a crédito e os restantes campos de montantes ou valores deverão ser exportados em valor absoluto

Respondendo a questão "NÃO é possível haver valores negativos" na geração ("GrossTotal") do hash.

cps,

Link to post
Share on other sites
Luís Pontes

Boa tarde a todos,

para validar o encoding do ficheiro SAFT, na AT executam o seguinte comando em linux:

File –i <nome do ficheiro>

luispontes@LUISPONT:/home$ file -i 8196194_A_SAFT-PT004V-2020.xml
8196194_A_SAFT-PT004V-2020.xml: text/xml; charset=unknown-8bit
 

Eu executei e o charset dá unknown-8bit em vez do windows-1252. É possível executar um teste parecido em Windows?

Obrigado,

Luís Pontes

Link to post
Share on other sites
americob
46 minutos atrás, Luís Pontes disse:

Boa tarde a todos,

para validar o encoding do ficheiro SAFT, na AT executam o seguinte comando em linux:

File –i <nome do ficheiro>

luispontes@LUISPONT:/home$ file -i 8196194_A_SAFT-PT004V-2020.xml
8196194_A_SAFT-PT004V-2020.xml: text/xml; charset=unknown-8bit
 

Eu executei e o charset dá unknown-8bit em vez do windows-1252. É possível executar um teste parecido em Windows?

Eu ouvi dizer que é irrelevante. O único controle que fazem é se na Declaration (primeira linha) está o "windows-1252".

Mas isto é o "covidizer".

Edit: Parece-me, também que estás a confundir charset com encoding.

Edited by americob
add
Link to post
Share on other sites
Luís Pontes
6 minutos atrás, americob disse:

Eu ouvi dizer que é irrelevante. O único controle que fazem é se na Declaration (primeira linha) está o "windows-1252".

Mas isto é o "covidizer".

Edit: Parece-me, também que estás a confundir charset com encoding.

Boa tarde @americob

pois não nego que possa estar a confundir :

O meu XML tem a primeira linha correcta:

<?xml version="1.0" encoding="Windows-1252"?>

E no notepad++ aparece como Windows-1252 (vale o que vale esta validação)

Mas na validação do ficheiro, a AT respondeu-me que faz uma validação do encoding com um comando em linux:

File –i <nome do ficheiro>,

Ou em  java com a biblioteca guessencoding

Eu fiz no linux e realmente aparece charset=unknown-8bit

Mas não sei bem como resolver. Dai a miha questão se existem validações do encoding tb em windows.

Obrigado,

Luís Pontes

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.