Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Geração da chave de acesso na criação de um novo documento (NF-e/NFC-e) #14

Open
renatonlima opened this issue Mar 29, 2019 · 1 comment

Comments

@renatonlima
Copy link
Member

Na criação de uma nova NF-e/NFC-e deveria ao criar o Objeto NFeType ser gerado o conteúdo do campo id que contém a chave de acesso da NF-e de forma automática, pois o valor do campo id é um conjunto de informação da NFe:

  • cUF - Código da UF do emitente do Documento Fiscal;
  • AAMM - Ano e Mês de emissão da NF-e;
  • CNPJ - CNPJ do emitente;
  • mod - Modelo do Documento Fiscal;
  • serie - Série do Documento Fiscal;
  • nNF - Número do Documento Fiscal;
  • tpEmis – forma de emissão da NF-e;
  • cNF - Código Numérico que compõe a Chave de Acesso;
  • cDV - Dígito Verificador da Chave de Acesso.

Cálculo do Dígito Verificador da Chave de Acesso da NF-e

O dígito verificador da chave de acesso da NF-e é baseado em um cálculo do módulo 11. O
módulo 11 de um número é calculado multiplicando-se cada algarismo pela sequência de
multiplicadores 2,3,4,5,6,7,8,9,2,3, ..., posicionados da direita para a esquerda.

A somatória dos resultados das ponderações dos algarismos é dividida por 11 e o DV (dígito
verificador) será a diferença entre o divisor (11) e o resto da divisão:
DV = 11 - (resto da divisão)
Quando o resto da divisão for 0 (zero) ou 1 (um), o DV deverá ser igual a 0 (zero).
Exemplo: consideremos que a chave de acesso tem a seguinte sequência de caracteres:

image

@rvalyi
Copy link
Member

rvalyi commented Mar 29, 2019

valeu @renatonlima por iser, faz parte das coisas que podemos botar nas subclasses do nfelib.

Eu queria que o modulo Odoo l10n_br_account_nfe seja bastante independente do nfelib (ao contrario dos modulos Odoo totalmente casados com o pysped que alguns fizeram por examplo). Digamos que podemos depender do nfelib que eh simples e ao contrario das outras lib tem testes. Mas seria bom que ficasse facil de sobrecarregar se algum inconciente quiser usar uma outra lib tipo pypsed ou sei la o que, apenas para dizer que nao obrigamos a usar o nfelib na parte da serializacao. Entao tem que pensar nisso, mas acho que eh possivel, basta chamar esses metodos do nfelib dentro de metodos possiveis de sobrecarregar nos Objetos Odoo e ai blz.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants