Jump to content
marcolopes

AT - questões legais

Recommended Posts

hobbit
1 hora atrás, hobbit disse:

Boa Tarde:

Deixo aqui duas pequenas notas.

A primeira é sobre outra potencial biblioteca além do xzing e que dá o mesmo resultado. https://www.nayuki.io/page/qr-code-generator-library

A segunda é que caso estejamos a tentar garantir que o nosso resultado é idêntico ao do documento da AT é preciso cuidado com a aplicação que usamos para  Copy-Paste. A exemplo, no QRCode mais pequeno, o Adobe funciona mas o FoxReader não, porque come um espaço e o QRCode fica diferente.

Adobe: A:123456789*B:999999990*C:PT*D:FS*E:N*F:20190812*G:FS(espaço) CDVF/12345*H:CDF7T5HD-12345*I1:PT*I7:0.65*I8:0.15*N:0.15*O:0.80*Q:YhGV*R:9999*S:NU;0.80

FoxReader: A:123456789*B:999999990*C:PT*D:FS*E:N*F:20190812*G:FSCDVF/12345*H:CDF7T5HD-12345*I1:PT*I7:0.65*I8:0.15*N:0.15*O:0.80*Q:YhGV*R:9999*S:NU;0.80

 

Boa programação.

Boa Tarde:

Se calhar não terei sido claro :)

O tema era só copiarmos os dados do exemplo da AT no PDF disponibilizado pela AT para testarmos e não se reparar que conforme a aplicação o leitor de PDF traz ou não o espaço. E ai o nosso QRCode poderá não ficar igual ao da AT.

 

Share this post


Link to post
Share on other sites
marcolopes
15 minutes ago, hobbit said:

Boa Tarde:

Se calhar não terei sido claro :)

O tema era só copiarmos os dados do exemplo da AT no PDF disponibilizado pela AT para testarmos e não se reparar que conforme a aplicação o leitor de PDF traz ou não o espaço. E ai o nosso QRCode poderá não ficar igual ao da AT.

 

ahhhhh! ok...

De qualquer forma o facto do QRcode NÃO ser VISUALMENTE igual não significa que não esteja a cumprir as regras técnicas! Depende da MASK que é usada (0 a 7 em termos técnicos)

Desde que os parâmetros exigidos pela AT sejam usados o QRCODE gerado estará sempre de acordo com os requisitos (Version=9, ECC=M, Size=2, Margin=2)

 

Edited by marcolopes
  • Vote 1

The simplest explanation is usually the correct one

JAVA Utilities: https://github.com/marcolopes/dma

Share this post


Link to post
Share on other sites
CrominhO
10 horas atrás, bioshock disse:

Pá, eu diminuí o tamanho, porque o tamanho que eles pedem é demasiado grande, parece um bruta-montes no PDF 🤣

(...)

yep, fica mesmo enorme e feio, mas a questão é se consegues ler depois, e ainda depende do leitor 😕  ... Tás a conseguir ler com o telemóvel com tamanho inferior a 30? , eu consigo ler a 20 mas depois já depende da impressão também 😐 ... e não saímos disto, parece que eles querem garantir que todos são lidos por todos os telefones, agora é horrível, especialmente nos A5


As mentes humanas são realmente um local estranho!

Share this post


Link to post
Share on other sites
americob
9 horas atrás, CrominhO disse:

yep, fica mesmo enorme e feio, mas a questão é se consegues ler depois, e ainda depende do leitor 😕  ... Tás a conseguir ler com o telemóvel com tamanho inferior a 30? , eu consigo ler a 20 mas depois já depende da impressão também 😐 ... e não saímos disto, parece que eles querem garantir que todos são lidos por todos os telefones, agora é horrível, especialmente nos A5

A questão não é se se consegue ler QrCode com menos de 3 cm, as regras são bem explicitas: Dimensões de imagem: mínimo 30x30 milímetros; e f) Margem de Segurança (Margin): 0,25 cm.

Agora, se criares um em versão 10, 11, 12, ... etc, eu interpreto que o podes "reduzir" para os 3 cm sem problemas. Embora, já tenha ouvido falar de interpretações que só é 3 cm para a versão 9 que é o seu "tamanho normal" e que, com a subida de versão por causa do tamanho da string, deve ser o "tamanho normal" de cada versão.

Realmente, 3 cm para o QrCode + 0.25 cm para a margem, fica ali um quadrado de 3.5 x 3.5, numa pagina que já só é de 14.5 x 21 fica uma boa caca, mas são regras e quem não quiser arriscar, cumpre!

A lei é bem explícita, a responsabilidade pela legibilidade do QrCode é do produtor do software e do utilizador.

 

  • Vote 1

Share this post


Link to post
Share on other sites
Sergio.
Em 09/10/2020 às 15:00, bioshock disse:

Pá, eu diminuí o tamanho, porque o tamanho que eles pedem é demasiado grande, parece um bruta-montes no PDF 🤣

Já alguém colocou a aparecer nas impressões o QRCode? Já tenho tudo feito, mas ainda não pus aparecer por não haver ATCUD..

Boas,

Essa é a minha duvida, se podemos fazer isso??. Também acho o tamanho um exagero e pelo pouco que sei sobre o assunto a versão 9 será sempre mais pequena que a versão 17 por exemplo, motivo pelo qual fixar o tamanho não me parece correto, claro que sempre se pode "obrigar" o tamanho mas fico na duvida se de acordo com "Especificacoes Tecnicas Codigo QR" se é legal o fazer?

Obrigado,

Share this post


Link to post
Share on other sites
avilacha

Sobre o tamanho de 30x30mm:

Os exemplos de 30,162mm das Especificações técnicas medem cerca de 28x28mm, impresso em A4 sem ajuste de tamanho.

Será que a minha régua tem milímetros dos grandes ?

 

Share this post


Link to post
Share on other sites
avilacha

Para quem necessite de programar as Epson que suportam QRCode (TM-T88 IV e outras):


// PROTO TAL_QRCode( cTexto ) -> Obtem códigos para imprimir QRCode em talão
function TAL_QRCode( cTexto )
   local cStr := ""
   local pL:= 0, pH := 0
   local nLen := len( cTexto )
// _TODO_
// if STAR ....

// if EPSON TM88
   //calcular pL e pH
   nLen += 3
   while nLen >= 256
      pH++
      nLen -= 256
   enddo
   pL := nLen // o que resta

// // Modelo de QRCode   // 49 = Modelo 1 [ 50 = modelo 2 ]
// cStr += chr(29) + "(k"+chr(4)+chr(0)+chr(49)+chr(65)+chr(50)+chr(0)

   // Modulo tamanho. Documento simples com 123 caracteres dá:
   // Mod. 2=Especificado pela AT -> 12mm
   // Mod. 3=melhor -> 17mm
   // Mod. 4=ideal segundo norma QRCode -> 23mm
   // Mód. 5=um mono grande -> 28mm
   // Mod. 6=um monstro -> 35mm
   cStr += chr(29) + "(k"+chr(3)+ chr(0)+ chr(49)+chr(67)+chr(4)

   // Error Correction = M  (48=L(7%)  49=M(15%)  50=Q(25%)  51=H(30%)
   cStr += chr(29) + "(k"+chr(3)+ chr(0)+ chr(49)+chr(69)+chr(49)

   // Gravar dados
   cStr += chr(29) + "(k"+chr(pL)+chr(pH)+chr(49)+chr(80)+chr(48)+cTexto

   // Imrimir
   cStr += chr(29) + "(k"+chr(3)+ chr(0)+ chr(49)+chr(81)+chr(48)
return( cStr )

 

  • Vote 1

Share this post


Link to post
Share on other sites
hobbit
Em 09/10/2020 às 18:58, marcolopes disse:

ahhhhh! ok...

De qualquer forma o facto do QRcode NÃO ser VISUALMENTE igual não significa que não esteja a cumprir as regras técnicas! Depende da MASK que é usada (0 a 7 em termos técnicos)

Desde que os parâmetros exigidos pela AT sejam usados o QRCODE gerado estará sempre de acordo com os requisitos (Version=9, ECC=M, Size=2, Margin=2)

 

Bom Dia Marco Lopes:

Obrigado.

Já agora, uma das APIs permite gerir o MASK. Tem a opção automático e de 0 a 7. Existe alguma MASK mais otimizada em função de algo, ou somente no sentido de garantir que o QRCode fica mais fácil de ler, eventualmente baseado no padrão.

Obrigado desde já

Carlos

 

Share this post


Link to post
Share on other sites
jasb

Boa tarde,

Pessoal, ainda não saiu nada relativo ao ATCUD, a nivel de informação técnica?
Estou no site das finanças e não encontro nada.

Obrigado,

Share this post


Link to post
Share on other sites
bubbu78

Boa tarde,

Surgiu-me agora uma questão que nunca tinha acontecido e me deixou com a pulga atrás da orelha.

Um cliente enganou-se e emitiu uma fatura com IVA a 23% e isenção de IVA, apercebeu-se logo do erro e anulou o documento.

Agora a enviar o SAFT, dá um erro de assert que deduzo que seja por isso, pois se retirar a parte do TaxExemptionCode e Reason e validar já passa.

No entanto, pode efetivamente haver situações, como na reabilitação urbana em que um produto faturado normalmente a 23% é faturado a 6% e temos de indicar que é ao abrigo daquele decreto. Nesse caso, vai IVA e motivo de isenção...

Está a escapar-me alguma coisa?

Share this post


Link to post
Share on other sites
marcolopes
2 hours ago, hobbit said:

Bom Dia Marco Lopes:

Obrigado.

Já agora, uma das APIs permite gerir o MASK. Tem a opção automático e de 0 a 7. Existe alguma MASK mais otimizada em função de algo, ou somente no sentido de garantir que o QRCode fica mais fácil de ler, eventualmente baseado no padrão.

Obrigado desde já

Carlos

"Tecnicamente" foi pensado para dar opções e permitir que o QRCode tenha melhor leitura... mas presumo que a MASK 0 seja a que garante melhor qualidade (caso contrário não seria a default mask, digo eu!). Está aqui um bom artigo: https://merricx.github.io/qrazybox/help/getting-started/about-qr-code.html


The simplest explanation is usually the correct one

JAVA Utilities: https://github.com/marcolopes/dma

Share this post


Link to post
Share on other sites
psantos
4 hours ago, avilacha said:

Sobre o tamanho de 30x30mm:

Os exemplos de 30,162mm das Especificações técnicas medem cerca de 28x28mm, impresso em A4 sem ajuste de tamanho.

Será que a minha régua tem milímetros dos grandes ?

 

 

A vs 9 tem 53x53 pixel.
Com 2 pontos por módulo ficam 106x106 pixel.
Convertendo para mm dá 28.045 mm...

Por isso perguntei, lá atrás, se os 30mm eram com as margens (o que não faz muito sentido)...

 

Share this post


Link to post
Share on other sites
MJR

Boa tarde, com a entrada do ATCUD é necessário o envio deste no saft?

Share this post


Link to post
Share on other sites
marcolopes
1 minute ago, MJR said:

Boa tarde, com a entrada do ATCUD é necessário o envio deste no saft?

É um dos campos que está presente para exportação... portanto, sim.

  • Vote 1

The simplest explanation is usually the correct one

JAVA Utilities: https://github.com/marcolopes/dma

Share this post


Link to post
Share on other sites
jorang
1 minuto atrás, MJR disse:

Boa tarde, com a entrada do ATCUD é necessário o envio deste no saft?

Já é obrigatório, desde a Portaria n.º 302/2016, de 2 de dezembro.

"Este campo deve conter o Código Único do Documento. O campo deve ser preenchido com «0» (zero) até à sua regulamentação."

Share this post


Link to post
Share on other sites
americob
43 minutos atrás, bubbu78 disse:

Boa tarde,

Surgiu-me agora uma questão que nunca tinha acontecido e me deixou com a pulga atrás da orelha.

Um cliente enganou-se e emitiu uma fatura com IVA a 23% e isenção de IVA, apercebeu-se logo do erro e anulou o documento.

Agora a enviar o SAFT, dá um erro de assert que deduzo que seja por isso, pois se retirar a parte do TaxExemptionCode e Reason e validar já passa.

No entanto, pode efetivamente haver situações, como na reabilitação urbana em que um produto faturado normalmente a 23% é faturado a 6% e temos de indicar que é ao abrigo daquele decreto. Nesse caso, vai IVA e motivo de isenção...

Está a escapar-me alguma coisa?

O pessoal costuma trocar muito o "mencionar na fatura" com o TaxExemptionReason.

Na minha opinião, na optica de informático, o TaxExemptionReason só pode ser usado numa isenção e nunca numa redução de taxa, porque o sistema não permite.

Na minha opinião, na optica de CC, o TaxExemptionReason não dispensa a menção obrigatória na fatura quanto ao motivo de isenção e/ou redução de taxa. Pode-se aproveitar a menção do TaxExemptionReason para cumprir a obrigação de mencionar na fatura o normativo legal aplicado naquela fatura para ser isenta, mas por exemplo quando o motivo é "M99" - Outras situações ..., continua a ser obrigatório especificar que é por causa do "nº X do artigo Y do DL Z/202?" que se aplica aquela isenção. O mesmo se aplica no caso de uma redução de taxa.

Por enquanto não tenho tido conhecimento de casos que algum inspetor da AT tenha chateado, mas pode obrigar a liquidar o IVA (ou a diferença se for redução) e, como só é detetado passado anos, já é difícil conseguir pedir o dinheiro ao cliente.

Ainda no outro dia vi um que faturava com o M05 - artigo 14 do CIVA, em vez do M16 - artigo 14 do RITI, eu sei que a diferença são só 4 letras, mas pode custar muito caro.

 

  • Vote 2

Share this post


Link to post
Share on other sites
nunopicado

Pessoal, qual é o vosso entendimento do campo L do QRCode?

Citação

Não Sujeito / Não tributável em IVA
Valor total relativo a operações não sujeitas / não tributáveis em IVA

Nomeadamente, em quê que isto difere, na prática, do I2?


"A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!"

> Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.

Share this post


Link to post
Share on other sites
jorang
6 minutos atrás, nunopicado disse:

Pessoal, qual é o vosso entendimento do campo L do QRCode?

Nomeadamente, em quê que isto difere, na prática, do I2?

Boa questão. Talvez o campo L leve com tudo o que for M99.

Share this post


Link to post
Share on other sites
bioshock
On 10/10/2020 at 1:15 AM, CrominhO said:

yep, fica mesmo enorme e feio, mas a questão é se consegues ler depois, e ainda depende do leitor 😕  ... Tás a conseguir ler com o telemóvel com tamanho inferior a 30? , eu consigo ler a 20 mas depois já depende da impressão também 😐 ... e não saímos disto, parece que eles querem garantir que todos são lidos por todos os telefones, agora é horrível, especialmente nos A5

Olha, testei melhor e com as dimensões que estou a utilizar (64x64px) estou a tentar muitas dificuldades em ler. Portanto vou ter de aumentar isto...

Eles falam em 30x30mm o que equivale a 113~px, mas na 1ª vez que tinha experimentado pareceu-me demasiado grande, vou ter de ver melhor e imprimir. Já estás a mostrar isso nos teus documentos impressos?

On 10/10/2020 at 11:05 AM, americob said:

A questão não é se se consegue ler QrCode com menos de 3 cm, as regras são bem explicitas (...) mas são regras e quem não quiser arriscar, cumpre! A lei é bem explícita, a responsabilidade pela legibilidade do QrCode é do produtor do software e do utilizador.

 

On 10/11/2020 at 4:38 PM, Sergio. said:

Essa é a minha duvida, se podemos fazer isso??. Também acho o tamanho um exagero e pelo pouco que sei sobre o assunto a versão 9 será sempre mais pequena que a versão 17 por exemplo, motivo pelo qual fixar o tamanho não me parece correto, claro que sempre se pode "obrigar" o tamanho mas fico na duvida se de acordo com "Especificacoes Tecnicas Codigo QR" se é legal o fazer?

Relativamente ao tópico da "legalidade", não está de certo com as normas não utilizar o valor que eles mencionam, mas eu relembro que há uma grande quantidade de softwares que não cumpre na íntegra o Despacho n.º 8632/2014 - e que são concorrentes de todos nós - e nunca foram sancionados. Para mim, relativamente ao QRCode, o que faz sentido é que através de uma App telemóvel seja possível ler sem grande dificuldade. A partir do momento que não houver essa dificuldade deixo de me preocupar.

  • Vote 2

Share this post


Link to post
Share on other sites
CrominhO
Em 10/10/2020 às 11:05, americob disse:

(...)A lei é bem explícita, a responsabilidade pela legibilidade do QrCode é do produtor do software e do utilizador.

 

Mas eu não disse que não Américo, estava apenas a falar nos testes que temos feito. E por mais testes que façamos, se partilharmos com os restantes aqui no P@P os resultados, menos testes temos que fazer. 🙂  Não disse que ia meter 20, só testei e queria ver mais resultados, até porque as variáveis são tantas, desde o software que utilizas para ler no telemovel à propria camara, que convem mesmo testar tudo  🙂 

3 horas atrás, bioshock disse:

(...)Eles falam em 30x30mm o que equivale a 113~px, mas na 1ª vez que tinha experimentado pareceu-me demasiado grande, vou ter de ver melhor e imprimir. Já estás a mostrar isso nos teus documentos impressos?

 

Nopes Bio, só na versão de Testes. 

Já estava a mostrar QRcode mas noutras situações que não tinham nada a ver com isto. Cartão de cliente, referencias e afins, mas aí, é completamente diferente, porque a informação é bem menor e porque o sitio onde saíem nos reports não tem nada a ver. Agora nesta situação não. 

Mas gostei da Analise que alguem fez aqui no P@P, preparar tudo nas Aplicações, assim que o utilizador inserir o código da Série ele começa a mostrar. Dá um pouquito mais de trabalho ao inicio, mas parece-me que retira trabalho no final. 🙂 

  • Vote 1

As mentes humanas são realmente um local estranho!

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.