Para realização do cálculo, é considerado a linguagem de programação MD5 conforme definido, considerando os campos descritos abaixo para concatenar a informação para aplicação da linguagem:

Exemplo:

Dados concatenado: 111111111111110000000000000154369040000153312960000038328242021100199999999999999

Dados abertos:

CNPJ Participante: 11111111111111

Número do documento: 000000000

Valor do documento: 000015436904

Base de cálculo do ICMS: 000015331296

Valor do ICMS: 000003832824

Data do documento: 20211001

CNPJ Emitente: 99999999999999 (Dados do estabelecimento)

Hash Code aplicado: XXX111X1XX1XXXXXXX11X1X1XX11X111

image.png

Essas informações são definidas na CAT 79/2003, conforme descrito abaixo.

“§ 2º – A chave de codificação digital referida no inciso IV será:

1 – gerada com base nos seguintes dados constantes do documento fiscal:

a) CNPJ ou CPF do destinatário ou do tomador do serviço;

b) número do documento fiscal;

c) valor total da nota;

d) base de cálculo do ICMS;

e) valor do ICMS;

f) data de emissão; (Alínea acrescentada pela Portaria CAT-122/16, de 26-12-2016; DOE 27-12-2016; Efeitos a partir de 01-01-2017)

g) CNPJ do emitente do documento fiscal; (Alínea acrescentada pela Portaria CAT-122/16, de 26-12-2016; DOE 27-12-2016; Efeitos a partir de 01-01-2017)

2 – obtida com a aplicação do algoritmo MD5 – “Message Digest” 5 de domínio público;”

Fonte: https://legislacao.fazenda.sp.gov.br/Paginas/pcat792003.aspx