# SINTEGRA & SPED

# SPED

Detalhes sobre a geração e validação do arquivo SPED

# Informacional e Comandos - SPED

O SPED é um Sistema Público de Escrituração Digital, ou seja, um sistema que tem como principal objetivo facilitar o arquivamento, o envio e a validação dos deveres tributários de uma companhia.

Este arquivo auxilia no controle e gerenciamento das questões fiscais e contábeis da empresa, ele também vai fazer um controle mais assertivo dos tributos a serem recolhidos.

<p class="callout info">O governo exige que as empresas que exercem sua função nos regimes de tributação em lucro presumido e em lucro real precisam fazer a entrega desse documento. Já as organizações inseridas do Simples Nacional são isentas da entrega.</p>

- - - - - -

##### **No** **SIEM:**

Será necessário, assim como no SINTEGRA, primeiro a correção de certas informações que estão na base de dados.  
Assegure que o sistema se encontra em uma versão recente e válida para a geração.

Para que a geração seja feita sem prejudicar o cliente, retire uma cópia da base de dados atuais da máquina do cliente e, se necessário, uma cópia dos arquivos XML caso o mesmo também deseje o envio destes junto ao arquivo de SPED.

As SQL que serão utilizadas na base de dados onde será feita a geração do SPED seguem a ordem abaixo:

**Alteração da CFOP para códigos de entrada:**  
É necessário que as notas de compra registradas na Estoque\_Movimento estejam com códigos de CFOP de entrada.  
A SQL abaixo faz essa mudança nos códigos mais comuns. Ela é dividida em duas partes

Primeiro sendo executado:

```SQL
UPDATE Estoque_Movimento SET Estoque_Movimento.CFOP = IIf([Estoque_Movimento.CFOP]="5405","1403",IIf([Estoque_Movimento.CFOP]="5403","1403",IIf([Estoque_Movimento.CFOP]="5102","1102",IIf([Estoque_Movimento.CFOP]="5101","1101",IIf([Estoque_Movimento.CFOP]="6101","2101",IIf([Estoque_Movimento.CFOP]="6102","2102",IIf([Estoque_Movimento.CFOP]="5929","1949",IIf([Estoque_Movimento.CFOP]="6929","2949",IIf([Estoque_Movimento.CFOP]="5152","1152",IIf([Estoque_Movimento.CFOP]="5409","1409",IIf([Estoque_Movimento.CFOP]="6403","2403",IIf([Estoque_Movimento.CFOP]="5910","1910",IIf([Estoque_Movimento.CFOP]="5105","1102",IIf([Estoque_Movimento.CFOP]="6105","2101"))))))))))))))
WHERE (((Estoque_Movimento.CFOP)="5405" Or (Estoque_Movimento.CFOP)="5403" Or (Estoque_Movimento.CFOP)="5102" Or (Estoque_Movimento.CFOP)="5101" Or (Estoque_Movimento.CFOP)="6101" Or (Estoque_Movimento.CFOP)="6102" Or (Estoque_Movimento.CFOP)="5929" Or (Estoque_Movimento.CFOP)="6929" Or (Estoque_Movimento.CFOP)="5152" Or (Estoque_Movimento.CFOP)="5409" Or (Estoque_Movimento.CFOP)="6403" Or (Estoque_Movimento.CFOP)="5910" Or (Estoque_Movimento.CFOP)="5105" Or (Estoque_Movimento.CFOP)="6105"));
```

E em seguida:

```SQL
UPDATE Estoque_Movimento SET Estoque_Movimento.CFOP = IIf([Estoque_Movimento.CFOP]="5401","1401",IIf([Estoque_Movimento.CFOP]="6401","2401",IIf([Estoque_Movimento.CFOP]="5908","1901",IIf([Estoque_Movimento.CFOP]="6106","2102",IIf([Estoque_Movimento.CFOP]="6404","2403",IIf([Estoque_Movimento.CFOP]="6910","2910"))))))
WHERE (((Estoque_Movimento.CFOP)="5401" Or (Estoque_Movimento.CFOP)="6401" Or (Estoque_Movimento.CFOP)="5908" Or (Estoque_Movimento.CFOP)="6106" Or (Estoque_Movimento.CFOP)="6404" Or (Estoque_Movimento.CFOP)="6910"));
```

Outros códigos que comumente são utilizados são

5.108 &gt; 1.102  
5.106 &gt; 1.102  
5.123 &gt; 1.122  
5.405 &gt; 1.403  
5.655 &gt; 1.652  
5.929 &gt; 1.949  
6.409 &gt; 2.402  
6.656 &gt; 2.653

Caso ainda tenha dúvidas de qual código poderá ser substituído, confira a [tabela de CFOP](https://www.sefaz.pe.gov.br/Legislacao/Tributaria/Documents/Legislacao/Tabelas/CFOP.htm#Sa%C3%ADdas_Outros_Estados_6000). Também poderá consultar com outros técnicos especializados na geração do arquivo.

<p class="callout info">Feito o comando de correção das CFOP, lembre-se de abrir a **Estoque\_Movimento** e validar se não ficou nenhum código de saída nas operações de compra!</p>

**Alteração CST IPI**

Assim como na CFOP, os códigos de CST do IPI, PIS e COFINS também devem representar operações de entrada.  
Para a correção dos códigos de IPI, siga o comando:

```SQL
UPDATE Estoque_Movimento SET Estoque_Movimento.CSTIPI = IIf([Estoque_Movimento.CSTIPI]="0","03",IIf([Estoque_Movimento.CSTIPI]="50","00",IIf([Estoque_Movimento.CSTIPI]="51","01",IIf([Estoque_Movimento.CSTIPI]="52","02",IIf([Estoque_Movimento.CSTIPI]="53","03",IIf([Estoque_Movimento.CSTIPI]="54","04",IIf([Estoque_Movimento.CSTIPI]="55","05",IIf([Estoque_Movimento.CSTIPI]="99","49"))))))))
WHERE (((Estoque_Movimento.CSTIPI)="0" Or (Estoque_Movimento.CSTIPI)="50" Or (Estoque_Movimento.CSTIPI)="51" Or (Estoque_Movimento.CSTIPI)="52" Or (Estoque_Movimento.CSTIPI)="53" Or (Estoque_Movimento.CSTIPI)="54" Or (Estoque_Movimento.CSTIPI)="55" Or (Estoque_Movimento.CSTIPI)="99"));
```

Comumente, os códigos alterados são os abaixo:

00 &gt; 03  
50 &gt; 00  
51 &gt; 01  
52 &gt; 02  
53 &gt; 03  
54 &gt; 04  
55 &gt; 05  
99 &gt; 49

Sendo os valores à esquerda, saída, e na direita, entrada.

**Alteração PIS e COFINS**

```SQL
UPDATE Estoque_Movimento SET Estoque_Movimento.CSTPIS = IIf([Estoque_Movimento.CSTPIS]="00","71",IIf([Estoque_Movimento.CSTPIS]="01","50",IIf([Estoque_Movimento.CSTPIS]="02","50",IIf([Estoque_Movimento.CSTPIS]="03","99",IIf([Estoque_Movimento.CSTPIS]="04","50",IIf([Estoque_Movimento.CSTPIS]="05","75",IIf([Estoque_Movimento.CSTPIS]="06","73",IIf([Estoque_Movimento.CSTPIS]="07","71",IIf([Estoque_Movimento.CSTPIS]="08","74",IIf([Estoque_Movimento.CSTPIS]="09","72",IIf([Estoque_Movimento.CSTPIS]="49","99"))))))))))), Estoque_Movimento.CSTCOFINS = IIf([Estoque_Movimento.CSTCOFINS]="00","71",IIf([Estoque_Movimento.CSTCOFINS]="01","50",IIf([Estoque_Movimento.CSTCOFINS]="02","50",IIf([Estoque_Movimento.CSTCOFINS]="03","99",IIf([Estoque_Movimento.CSTCOFINS]="04","50",IIf([Estoque_Movimento.CSTCOFINS]="05","75",IIf([Estoque_Movimento.CSTCOFINS]="06","73",IIf([Estoque_Movimento.CSTCOFINS]="07","71",IIf([Estoque_Movimento.CSTCOFINS]="08","74",IIf([Estoque_Movimento.CSTCOFINS]="09","72",IIf([Estoque_Movimento.CSTCOFINS]="49","99")))))))))))
WHERE (((Estoque_Movimento.CSTPIS)="00" Or (Estoque_Movimento.CSTPIS)="01" Or (Estoque_Movimento.CSTPIS)="02" Or (Estoque_Movimento.CSTPIS)="03" Or (Estoque_Movimento.CSTPIS)="04" Or (Estoque_Movimento.CSTPIS)="05" Or (Estoque_Movimento.CSTPIS)="06" Or (Estoque_Movimento.CSTPIS)="07" Or (Estoque_Movimento.CSTPIS)="08" Or (Estoque_Movimento.CSTPIS)="09" Or (Estoque_Movimento.CSTPIS)="49") AND ((Estoque_Movimento.CSTCOFINS)="00" Or (Estoque_Movimento.CSTCOFINS)="01" Or (Estoque_Movimento.CSTCOFINS)="02" Or (Estoque_Movimento.CSTCOFINS)="03" Or (Estoque_Movimento.CSTCOFINS)="04" Or (Estoque_Movimento.CSTCOFINS)="05" Or (Estoque_Movimento.CSTCOFINS)="06" Or (Estoque_Movimento.CSTCOFINS)="07" Or (Estoque_Movimento.CSTCOFINS)="08" Or (Estoque_Movimento.CSTCOFINS)="09" Or (Estoque_Movimento.CSTCOFINS)="49"));
```

Novamente, seguindo a mesma regra apresentada para o IPI, os códigos de PIS e COFINS geralmente utilizados nas operações de entrada são os abaixo:

00 &gt; 71  
01 &gt; 50  
02 &gt; 50  
03 &gt; 99  
04 &gt; 50  
05 &gt; 75  
06 &gt; 73  
07 &gt; 71  
08 &gt; 74  
09 &gt; 72  
49 &gt; 99

- - - - - -

**Mudança Tipo de Estoque**

Também é necessário o comando para preencher a informação de tipo de estoque valido para o SPED

```SQL
UPDATE Estoque_Itens SET Estoque_Itens.TipoEstoqueSPED = "00"
WHERE (((Estoque_Itens.TipoEstoqueSPED)="" Or (Estoque_Itens.TipoEstoqueSPED) Is Null));
```

**NCM com menos de 8 dígitos**

E para a correção da quantidade de caracteres no NCM

```SQL
UPDATE Estoque_Itens SET Estoque_Itens.NCM = "00000000"
WHERE (((Len([Estoque_Itens]![NCM]))<>8));
```

**Ajustar IE com dígitos faltantes: MG**

Para ajustar o cadastro de clientes PJ que sejam de Minas Gerais e os quais a IE está com dígitos faltantes.

```sql
UPDATE (Cad_Estado INNER JOIN Cad_Cidade ON Cad_Estado.Código = Cad_Cidade.Região) INNER JOIN Cad_Cliente ON Cad_Cidade.Código = Cad_Cliente.Cidade SET Cad_Cliente.RG = "00" & [Cad_Cliente]![RG]
WHERE (((Cad_Cliente.RG) Is Not Null And (Cad_Cliente.RG)<>"ISENTO") AND ((Cad_Estado.Estado)="MG") AND ((Cad_Cliente.TPessoa)=2) AND ((Len([Cad_Cliente]![RG]))=11));
```

**Ajustar IE com dígitos faltantes: ES** Para ajustar o cadastro de clientes PJ que sejam do Espirito Santo e os quais a IE está com dígitos faltantes.

```sql
UPDATE Cad_Estado INNER JOIN (Cad_Cidade INNER JOIN Cad_Cliente ON Cad_Cidade.Código = Cad_Cliente.Cidade) ON Cad_Estado.Código = Cad_Cidade.Região SET Cad_Cliente.RG = "0" & [Cad_Cliente]![RG]
WHERE (((Cad_Cliente.RG) Is Not Null And (Cad_Cliente.RG)<>"ISENTO") AND ((Cad_Estado.Estado)="ES") AND ((Cad_Cliente.TPessoa)=2) AND ((Len([Cad_Cliente]![RG]))=8));
```

**Ajustar IE com dígitos faltantes: RS**

Para ajustar o cadastro de clientes PJ que sejam do Rio Grande do Sul e os quais a IE está com dígitos faltantes.

```SQL
UPDATE Cad_Estado INNER JOIN (Cad_Cidade INNER JOIN Cad_Cliente ON Cad_Cidade.Código = Cad_Cliente.Cidade) ON Cad_Estado.Código = Cad_Cidade.Região SET Cad_Cliente.RG = "0" & [Cad_Cliente]![RG]
WHERE (((Cad_Cliente.RG) Is Not Null And (Cad_Cliente.RG)<>"ISENTO") AND ((Cad_Estado.Estado)="RS") AND ((Cad_Cliente.TPessoa)=2) AND ((Len([Cad_Cliente]![RG]))=9));
```

- - - - - -

##### **Bloco K**

O bloco K é a versão digital em substituição ao Livro Registro de Controle de Produção e Estoque.  
Ele tem o objetivo de prestar informações mensais da produção e respectivo consumo de insumos, bem como do estoque escriturado, com obrigatoriedade para os estabelecimentos industriais ou a eles equiparados pela legislação federal. Além disso, para os estabelecimentos atacadistas, podendo, a critério do Fisco, ser exigida de estabelecimento de contribuintes de outros setores

Caso o cliente precise do bloco K, realize os seguintes comandos:

**Na Estoque\_Itens é preciso marcar todas as linhas na coluna SPED\_ProdFinal**.  
Os comandos abaixo fazem o preenchimento de acordo com a marcação do tipo de estoque do item:

```SQL
UPDATE Estoque_Itens SET Estoque_Itens.SPED_ProdFInal = 1;
```

```sql
UPDATE Estoque_Itens SET Estoque_Itens.TipoEstoqueSPED = "00"
WHERE (((Estoque_Itens.Mercadoria)=True));
```

```SQL
UPDATE Estoque_Itens SET Estoque_Itens.TipoEstoqueSPED = "01"
WHERE (((Estoque_Itens.Materia_Prima)=True));
```

```sql
UPDATE Estoque_Itens SET Estoque_Itens.TipoEstoqueSPED = "04"
WHERE (((Estoque_Itens.Produto)=True));
```

Também será necessário entrar no SIEM e habilitar as Config. II:

- SPED: OMITIR REG ORDEM PRODUCAO (K200)
- SPED: K230 SOMENTE PRODUTO FINAL SEM ORDEM PRODUCAO

Com o valor **1 - Sim.**

- - - - - -

##### **Bloco H**

O Bloco H é um dos registros transmitido como um dos módulos da EFD, sendo o registro destinado a informar para a Receita Federal tudo sobre o inventário físico das empresas.

Se for realizada a geração do arquivo com o Bloco H, realize o comando abaixo

**Inserir o mesmo código do produto na coluna SPEDContaContabil**

```SQL
UPDATE Estoque_Itens SET Estoque_Itens.SPEDContaContabil = [Estoque_Itens]![Código]
WHERE (((Estoque_Itens.SPEDContaContabil)="" Or (Estoque_Itens.SPEDContaContabil) Is Null));
```

# Comandos Reg. Específicos - SPED

Para a correção de alguns registros e blocos específicos no SPED é necessário realizar certos comandos dentro da base de dados para observar dados.

Abaixo estarão linhas de comandos para ajudar na visualização dessas informações para preenchimento adequado no arquivo de remessa.

- - - - - -

##### **E520 - Apuração de IPI**

A apuração dos valores de IPI precisa, assim como a maioria dos campos, dos dados fiscais das operações de entrada e saída.  
Utilize a SQL abaixo na base de dados para obter os valores respectivos e data.

**- IPI SAÍDA**

```sql
SELECT Faturamento_NotaFiscal_movimento.CFOP_ITEM, Faturamento_NotaFiscal_movimento.TIPO_IPI, Sum(Faturamento_NotaFiscal_movimento.Valor_Total) AS SomaDeValor_Total, Sum(Faturamento_NotaFiscal_movimento.VL_BC_IPI) AS SomaDeVL_BC_IPI, Sum(Faturamento_NotaFiscal_movimento.VL_IPI) AS SomaDeVL_IPI
FROM Faturamento_NotaFiscal INNER JOIN Faturamento_NotaFiscal_movimento ON Faturamento_NotaFiscal.Código = Faturamento_NotaFiscal_movimento.NotaFiscal
GROUP BY Faturamento_NotaFiscal_movimento.CFOP_ITEM, Faturamento_NotaFiscal_movimento.TIPO_IPI, Month([Faturamento_NotaFiscal]![DataEmissao]) & "/" & Year([Faturamento_NotaFiscal]![DataEmissao]), Faturamento_NotaFiscal.Cancelado, Faturamento_NotaFiscal.NFe_stAutorizado
HAVING (((Sum(Faturamento_NotaFiscal_movimento.VL_IPI))>0) AND ((Month([Faturamento_NotaFiscal]![DataEmissao]) & "/" & Year([Faturamento_NotaFiscal]![DataEmissao]))="1/2024") AND ((Faturamento_NotaFiscal.Cancelado)=False) AND ((Faturamento_NotaFiscal.NFe_stAutorizado)=True));
```

**- IPI ENTRADA**

```SQL
SELECT Estoque_Movimento.CFOP, Estoque_Movimento.CSTIPI, Sum(Estoque_Movimento.Valor_Total) AS SomaDeValor_Total, Sum(Estoque_Movimento.vBCIPI) AS SomaDevBCIPI, Sum(Estoque_Movimento.vlIPI) AS SomaDevlIPI
FROM Estoque_Movimento
GROUP BY Estoque_Movimento.CFOP, Estoque_Movimento.CSTIPI, Month([Estoque_Movimento]![Data]) & "/" & Year([Estoque_Movimento]![Data])
HAVING (((Sum(Estoque_Movimento.vlIPI))>0) AND ((Month([Estoque_Movimento]![Data]) & "/" & Year([Estoque_Movimento]![Data]))="1/2024"));
```

<p class="callout warning">Não se esqueça de ajustar a data para a referente ao mês de apuração do arquivo dentro da SQL ou no Modo Design da consulta.  
  
[![image-1711112209193.png](https://docs.softensistemas.com.br/uploads/images/gallery/2024-03/scaled-1680-/image-1711112209193.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2024-03/image-1711112209193.png)</p>

O preenchimento dos valores apresentados na SQL devem ser preenchidos no Registro **E510** e a somatória dos valores no **E520**.

- - - - - -

##### **E200 - Apuração ICMS ST**

ICMS ST Saída

```sql
SELECT IIf([Cad_Estado]![Código]=[Cad_Estado_1]![Código],"ESTADUAL","INTERESTADUAL") AS OPERAÇÃO, Sum(Faturamento_NotaFiscal_movimento.VL_ICMS_SUB) AS SomaDeVL_ICMS_SUB, Month([Faturamento_NotaFiscal]![DataEmissao]) & "/" & Year([Faturamento_NotaFiscal]![DataEmissao]) AS MÊS
FROM (((Cad_Cidade INNER JOIN (Cd_Empresa INNER JOIN (Cad_Cliente INNER JOIN (Faturamento_NotaFiscal INNER JOIN Faturamento_NotaFiscal_movimento ON Faturamento_NotaFiscal.Código = Faturamento_NotaFiscal_movimento.NotaFiscal) ON Cad_Cliente.Código = Faturamento_NotaFiscal.Cliente) ON Cd_Empresa.Código = Faturamento_NotaFiscal.Empresa) ON Cad_Cidade.Código = Cd_Empresa.Cidade) INNER JOIN Cad_Cidade AS Cad_Cidade_1 ON Cad_Cliente.Cidade = Cad_Cidade_1.Código) INNER JOIN Cad_Estado ON Cad_Cidade.Região = Cad_Estado.Código) INNER JOIN Cad_Estado AS Cad_Estado_1 ON Cad_Cidade_1.Região = Cad_Estado_1.Código
GROUP BY IIf([Cad_Estado]![Código]=[Cad_Estado_1]![Código],"ESTADUAL","INTERESTADUAL"), Faturamento_NotaFiscal.Cancelado, Faturamento_NotaFiscal.NFe_stAutorizado, Month([Faturamento_NotaFiscal]![DataEmissao]) & "/" & Year([Faturamento_NotaFiscal]![DataEmissao])
HAVING (((Faturamento_NotaFiscal.Cancelado)=False) AND ((Faturamento_NotaFiscal.NFe_stAutorizado)=True) AND ((Month([Faturamento_NotaFiscal]![DataEmissao]) & "/" & Year([Faturamento_NotaFiscal]![DataEmissao]))="6/2022"))
ORDER BY IIf([Cad_Estado]![Código]=[Cad_Estado_1]![Código],"ESTADUAL","INTERESTADUAL");
```

ICMS ST Entrada

```sql
SELECT Month([Estoque_Movimento]![Data]) & "/" & Year([Estoque_Movimento]![Data]) AS MÊS, Sum(Estoque_Movimento.vlST) AS SomaDevlST
FROM Estoque_Movimento
GROUP BY Month([Estoque_Movimento]![Data]) & "/" & Year([Estoque_Movimento]![Data])
HAVING (((Month([Estoque_Movimento]![Data]) & "/" & Year([Estoque_Movimento]![Data]))="6/2022"));
```

# Geração do Arquivo

Para a geração do arquivo de SPED no SIEM, é preciso que o módulo esteja habilitado para o cliente.  
Ele pode ser localizado na aba Fiscal

[![image-1699359113396.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-11/scaled-1680-/image-1699359113396.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-11/image-1699359113396.png)

Antes da geração do arquivo, é preciso que as informações da empresa e do contador estejam preenchidas de acordo.  
Por isso, selecione em **Outros Lançamentos** a opção **Dados da Empresa** e confira se os dados estão de acordo:

[![image-1699359166052.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-11/scaled-1680-/image-1699359166052.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-11/image-1699359166052.png)

Todos os campos devem estar preenchidos, com exceção dos campos de endereço quando não existem.  
Exemplo: Complemento

[![image-1699359208758.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-11/scaled-1680-/image-1699359208758.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-11/image-1699359208758.png)

- - - - - -

Feita a conferência de dados da empresa, confira o **Período de Apuração.**  
O mesmo deve indicar o mês a qual será gerado o SPED, e após usar da função **Exibir**, os registros de entrada e saída serão exibidos.

Basta usar agora a opção **Gerar arquivo EFD** para o próximo passo

[![image-1699359375503.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-11/scaled-1680-/image-1699359375503.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-11/image-1699359375503.png)

Aqui deve ser informado o tipo de SPED a ser gerado.  
Caso não contenha Bloco H e nem Bloco K, a opção **Inventário** deve permanecer como "NÃO GERAR REGISTRO"

[![image-1699359498122.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-11/scaled-1680-/image-1699359498122.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-11/image-1699359498122.png)

Se é preciso ter as informações desses blocos, utilize a opção "FINAL DE PERIODO" e em **Dt.Estoque** preencha com o ultimo dia do mês de apuração.

[![image-1699359515245.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-11/scaled-1680-/image-1699359515245.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-11/image-1699359515245.png)

O arquivo gerado será encaminhado para uma pasta de nome SPED em seu Disco C

# Validação dos Arquivos

Para fazer a validação do arquivo de SPED é necessário algumas ferramentas fornecidas pelo próprio governo.  
Sendo os principais o **EFD ICMS IPI** **(Escrituração Fiscal Digital)** e o **EFD Contribuições** que farão a validação principal do arquivo.

Algumas outras ferramentas vão auxiliar na edição e correção do mesmo em diferentes situações, são eles:

- **PRN - Edite**
- **NotePad++**

Caso não tenha nenhum deles instalado em seu computador, poderá obter uma cópia no link [**AQUI**](https://drive.google.com/drive/folders/1kQlWr5wAx-oHb7ges3KDTIXBwev1P0Pm?usp=drive_link "Drive Sped")

##### **EFD ICMS/IPI**

Para a validação do arquivo de ICMS, após a geração do mesmo pelo SIEM, abra o aplicativo da Escrituração Digital e use a função **Importar Escrituração Fiscal**

[![image-1699878334709.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-11/scaled-1680-/image-1699878334709.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-11/image-1699878334709.png)

Uma nova tela será aberta para a importação do arquivo.  
Por padrão, o sistema era fazer a geração deles no Disco C:\\ do computador, na pasta SPED.

[![image-1699878382592.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-11/scaled-1680-/image-1699878382592.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-11/image-1699878382592.png)

Basta selecionar o arquivo desejado para a geração da escrituração e abrir.  
Aqui já será feita a primeira validação de conteúdo caso confirme o aviso.

[![image-1699878436069.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-11/scaled-1680-/image-1699878436069.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-11/image-1699878436069.png)

<p class="callout warning">Se alguma informação diferente for exibida nessa tela, dizendo que "não foi possível fazer a importação do arquivo", provavelmente há um erro na estrutura.  
Isso pode ser causado por preenchimento incorreto nos **Dados da Empresa (Contabilidade)** ou por ter esquecido alguma operação de importação.  
  
Uma tela de erro será exibida mostrando oque precisa ser corrigido antes da importação.</p>

Após a validação do arquivo, se ainda houverem correções necessárias no arquivo, a mensagem de erro irá aparecer:

[![image-1702929282383.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-12/scaled-1680-/image-1702929282383.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-12/image-1702929282383.png)

A tela de Pendências seguirá a mensagem com a contagem de erros e as informações da empresa emitente.  
Marque a caixa de **ERROS** localizado no topo da tela e a opção **EXIBIR** ao lado para começar as correções.

[![image-1702929802913.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-12/scaled-1680-/image-1702929802913.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-12/image-1702929802913.png)

<p class="callout info">Boa parte dos erros vindos no arquivo de SPED são ajustados com as SQL informadas nos passos anteriores.  
**Certifique-se de ter passado por todas elas!**</p>

A resolução dos erros mais comuns será abordado em outra documentação!

- - - - - -

Feito a correção dos erros, use a função de validação para conferir os dados.

[![image-1702930026357.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-12/scaled-1680-/image-1702930026357.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-12/image-1702930026357.png)

  
Em alguns casos uma mensagem de avisos pode constar após esse passo

[![image-1702930190963.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-12/scaled-1680-/image-1702930190963.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-12/image-1702930190963.png)

Porém a mesma é usada para notificar de que há Advertências, apenas avisos, e não influenciam a validação do arquivo.  
Se não houver mais erros, a caixa **ERROS** ficará apagada. Isso indica que o Arquivo de Entrega está pronto para ser gerado

[![image-1702930304041.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-12/scaled-1680-/image-1702930304041.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-12/image-1702930304041.png)

Basta selecionar a opção de **Gerar arquivo de Escrituração para Entrega** ou então fazer o caminho abaixo

[![image-1702930379981.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-12/scaled-1680-/image-1702930379981.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-12/image-1702930379981.png)

**Ou**

[![image-1702930462042.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-12/scaled-1680-/image-1702930462042.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-12/image-1702930462042.png)

Pronto!  
Basta selecionar onde irá fazer o salvamento do arquivo e encaminhar para o cliente.

# Erros SPED

Identificação e resolução de erros simples e comuns SPED

# K010 - Registro filho obrigatório não informado

<span style="color: #000000;">[![image-1730996094518.png](https://docs.softensistemas.com.br/uploads/images/gallery/2024-11/scaled-1680-/image-1730996094518.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2024-11/image-1730996094518.png)</span>

<span style="color: #000000;">A imagem retrata uma rejeição comum na geração do arquivo EFD ICMS com Bloco K.</span>  
<span style="color: #000000;">No aplicativo do EFD é necessário informar o tipo de estoque do Bloco K.</span>

<span style="color: #000000;">Como o Bloco K é o Registro Pai, o K010 é obrigatório.</span>  
<span style="color: #000000;">Os arquivos gerados para o SIEM sempre irão seguir o leiaute de "saldo de estoque".</span>  
<span style="color: #000000;">Então para a correção no arquivo siga como abaixo:</span>

##### <span style="color: #000000;">**Correção:**</span>

<span style="color: #000000;">Abra o link do erro e adicione um novo registro no K010</span>

<span style="color: #000000;">[![image-1730996190678.png](https://docs.softensistemas.com.br/uploads/images/gallery/2024-11/scaled-1680-/image-1730996190678.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2024-11/image-1730996190678.png)</span>

<span style="color: #000000;">Informe o código **2 - Leiaute restrito aos saldos de estoque.**   
Salve o novo registro e faça a validação do arquivo.</span>

# 0150 - Campo obrigatório para contribuintes domiciliados no Brasil (8-COD_MUN)

<span style="color: #000000;">Os participantes vindos do SIEM que são de fora do país vem com o preenchimento da cidade como Exterior e o preenchimento de CPF/CNPJ com vários zeros. Porém, na apuração do EFD é preciso que seja informado adequadamente o país.</span>

<span style="color: #000000;">[![image-1730996376276.png](https://docs.softensistemas.com.br/uploads/images/gallery/2024-11/scaled-1680-/image-1730996376276.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2024-11/image-1730996376276.png)</span>

##### <span style="color: #000000;">**Correção:**</span>

<span style="color: #000000;">Selecione o país no lugar de "Exterior" de acordo com os dados de endereço do cliente.  
No exemplo acima, como o cliente é da cidade de Saltillo, o país é o México</span>

<span style="color: #000000;">[![image-1730996428803.png](https://docs.softensistemas.com.br/uploads/images/gallery/2024-11/scaled-1680-/image-1730996428803.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2024-11/image-1730996428803.png)</span>

<span style="color: #000000;">A correção deste erro já estará realizada. Porém, pode perceber pela imagem que ainda consta uma inconsistência no campo de CPF, visto que removemos o país do Brasil.</span>

<p class="callout info"><span style="color: #000000;">O erro referente à essa situação:  
  
[![image-1730996568978.png](https://docs.softensistemas.com.br/uploads/images/gallery/2024-11/scaled-1680-/image-1730996568978.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2024-11/image-1730996568978.png)</span></p>

<span style="color: #000000;">Quando o participante não é do Brasil, é preciso deixar o CPF/CNPJ em branco. Visto que esses documentos são exclusivos do território brasileiro</span>

<span style="color: #000000;">[![image-1730996590242.png](https://docs.softensistemas.com.br/uploads/images/gallery/2024-11/scaled-1680-/image-1730996590242.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2024-11/image-1730996590242.png)</span>

<span style="color: #000000;">Feita a correção, faça a validação do arquivo</span>

# SINTEGRA



# Informacional e Geração do Arquivo

Sistema Integrado de Informações sobre Operações Interestaduais com Mercadorias e Serviços (SINTEGRA) é um sistema que unifica todas as informações referentes a operações de entrada e saída de mercadorias e prestação de serviços dos contribuintes do ICMS.

De forma geral, seu objetivo é unificar todas as informações de entrada e saída da empresa em um local para encaminhar ao fisco.  
A utilização do Sintegra é obrigatória a todas as empresas que emitem nota fiscal e/ou realizem escrituração em livros fiscais por meio do sistema eletrônico de dados, ainda que com apoio de terceiros, como escritórios de contabilidade.

Somente estão dispensados dessa obrigatoriedade MEI's (Microempreendedores Individuais) que podem emitir nota fiscal avulsa diretamente do site da Receita Federal.

- - - - - -

##### **No SIEM:**

Para a geração correta do arquivo e a correção prévia de possíveis críticas do validador, algumas informações deverão ser revisadas e ajustadas pelo sistema e/ou banco de dados.

**Alterar CFOP NF-e de Compra:**

Visto que não é costume de muitas empresas alterar as CFOP das notas de compra, poderá usar as seguintes SQL para fazer a alteração.  
Primeiro:

```sql
UPDATE Estoque_Movimento SET Estoque_Movimento.CFOP = IIf([Estoque_Movimento.CFOP]="5405","1403",IIf([Estoque_Movimento.CFOP]="5403","1403",IIf([Estoque_Movimento.CFOP]="5102","1102",IIf([Estoque_Movimento.CFOP]="5101","1101",IIf([Estoque_Movimento.CFOP]="6101","2101",IIf([Estoque_Movimento.CFOP]="6102","2102",IIf([Estoque_Movimento.CFOP]="5929","1949",IIf([Estoque_Movimento.CFOP]="6929","2949",IIf([Estoque_Movimento.CFOP]="5152","1152",IIf([Estoque_Movimento.CFOP]="5409","1409",IIf([Estoque_Movimento.CFOP]="6403","2403",IIf([Estoque_Movimento.CFOP]="5910","1910",IIf([Estoque_Movimento.CFOP]="5105","1102",IIf([Estoque_Movimento.CFOP]="6105","2101"))))))))))))))
WHERE (((Estoque_Movimento.CFOP)="5405" Or (Estoque_Movimento.CFOP)="5403" Or (Estoque_Movimento.CFOP)="5102" Or (Estoque_Movimento.CFOP)="5101" Or (Estoque_Movimento.CFOP)="6101" Or (Estoque_Movimento.CFOP)="6102" Or (Estoque_Movimento.CFOP)="5929" Or (Estoque_Movimento.CFOP)="6929" Or (Estoque_Movimento.CFOP)="5152" Or (Estoque_Movimento.CFOP)="5409" Or (Estoque_Movimento.CFOP)="6403" Or (Estoque_Movimento.CFOP)="5910" Or (Estoque_Movimento.CFOP)="5105" Or (Estoque_Movimento.CFOP)="6105"));
```

Segundo:

```SQL
UPDATE Estoque_Movimento SET Estoque_Movimento.CFOP = IIf([Estoque_Movimento.CFOP]="5401","1401",IIf([Estoque_Movimento.CFOP]="6401","2401",IIf([Estoque_Movimento.CFOP]="5908","1901",IIf([Estoque_Movimento.CFOP]="6106","2102",IIf([Estoque_Movimento.CFOP]="6404","2403",IIf([Estoque_Movimento.CFOP]="6910","2910"))))))
WHERE (((Estoque_Movimento.CFOP)="5401" Or (Estoque_Movimento.CFOP)="6401" Or (Estoque_Movimento.CFOP)="5908" Or (Estoque_Movimento.CFOP)="6106" Or (Estoque_Movimento.CFOP)="6404" Or (Estoque_Movimento.CFOP)="6910"));
```

Após a operação, confira na **Estoque\_Movimento** se todas as NF-e de Compra estão com CFOP de entrada.

[![image-1696623257396.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/scaled-1680-/image-1696623257396.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/image-1696623257396.png)

<p class="callout info">Poderá habilitar um filtro na coluna **COMPRA** para exibir apenas as notas de compra e um na coluna **DATA** para limitar a busca apenas às notas do período em que fará a geração.</p>

  
Alguns códigos que não estão incluídos na expressão acima:

5.405 &gt; 1.403  
5.929 &gt; 1.949  
6.409 &gt; 2.402  
6.656 &gt; 2.653  
5.655 &gt; 1.652

<p class="callout warning">É interessante ter em mente que estes foram alguns exemplo, nem sempre uma CFOP de saída terá uma CFOP de entrada respectiva, recomendamos sempre analisar pela descrição e também com a contabilidade, este site ajuda muito para analisar:  
  
[http://www.nucleutecnologia.com.br/CFOP.html#In%C3%ADcio\_Entrada\_Estado](http://www.nucleutecnologia.com.br/CFOP.html#In%C3%ADcio_Entrada_Estado)</p>

**Diminuir Número da NF-e maior que 6:**

A NF-e pode ter o seu número em até 9 dígitos registrados no SIEM. Porém o programa do SINTEGRA aceita apenas que o numero da nota totalize 6 caracteres. Por conta disso, as notas que tem uma numeração acima desse limite tem que ser formatados.

O comando abaixo realiza essa correção:

```SQL
UPDATE Estoque_Movimento INNER JOIN Estoque_Nota_Entrada ON Estoque_Movimento.CODIGO_NF_COMPRA = Estoque_Nota_Entrada.CODIGO SET Estoque_Nota_Entrada.Nota = Right([Estoque_Nota_Entrada.Nota],6), Estoque_Movimento.NF = Right([Estoque_Nota_Entrada.Nota],6)
WHERE (((Len([Estoque_Nota_Entrada.Nota]))>6) AND ((Month([Estoque_Nota_Entrada]![Data]) & "/" & Year([Estoque_Nota_Entrada]![Data]))="1/2024"));
```

Será necessário fazer um ajuste nessa SQL para o mês atual  
É possível ajustar direto na expressão alterando a seção `<strong>([Estoque_Nota_Entrada]![Data]))="3/2023"))</strong>`  
Só alterar onde está 3

Ou pelo Design da Consulta no Access

[![image-1697030599357.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/scaled-1680-/image-1697030599357.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/image-1697030599357.png)

  
**Inserir "ISENTO" na IE:**

Para a validação do arquivo, algumas informações não podem ficar em branco. Esse é o caso da IE dos clientes  
Aonde está informado valores nulos ou zerados na Inscrição Estadual deve ficar como "Isento" no arquivo.

A SQL abaixa faz a correção necessária:

```SQL
UPDATE Cad_Cliente SET Cad_Cliente.RG = "ISENTO"
WHERE (((Cad_Cliente.RG)="")) OR (((Cad_Cliente.RG) Is Null));
```

**Adicionar dígitos em IE de MG:**

Para os destinatário de MG pode ser que o cliente tenha cadastrado com dígitos a menos  
É necessário que tenham 13 dígitos nas Inscrições para passar pelo validador.

Use o comando abaixo para a correção:

```SQL
UPDATE (Cad_Estado INNER JOIN Cad_Cidade ON Cad_Estado.Código = Cad_Cidade.Região) INNER JOIN Cad_Cliente ON Cad_Cidade.Código = Cad_Cliente.Cidade SET Cad_Cliente.RG = "00" & [Cad_Cliente]![RG]
WHERE (((Cad_Cliente.RG) Is Not Null And (Cad_Cliente.RG)<>"ISENTO") AND ((Cad_Estado.Estado)="MG") AND ((Cad_Cliente.TPessoa)=2) AND ((Len([Cad_Cliente]![RG]))=11));
```

**Adicionar dígitos em IE de ES:**

Para os destinatário de MG pode ser que o cliente tenha cadastrado com dígitos a menos  
É necessário que tenham 9 dígitos nas Inscrições para passar pelo validador.

```sql
UPDATE Cad_Estado INNER JOIN (Cad_Cidade INNER JOIN Cad_Cliente ON Cad_Cidade.Código = Cad_Cliente.Cidade) ON Cad_Estado.Código = Cad_Cidade.Região SET Cad_Cliente.RG = "0" & [Cad_Cliente]![RG]
WHERE (((Cad_Cliente.RG) Is Not Null And (Cad_Cliente.RG)<>"ISENTO") AND ((Cad_Estado.Estado)="ES") AND ((Cad_Cliente.TPessoa)=2) AND ((Len([Cad_Cliente]![RG]))=8));
```

- - - - - -

Feito as correções necessárias no sistema, faça a geração do arquivo de Sintegra para a validação.

<p class="callout warning">Lembre-se que é necessário ter a permissão **Gerar arquivo Sintegra** do módulo **Fiscal** no usuário para conseguir exportar.</p>

O caminho para a exportação é simples:

**Relatórios &gt; Gerar Arquivo Sintegra**

A opção é encontrada na Aba Fiscal

[![image-1697202182831.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/scaled-1680-/image-1697202182831.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/image-1697202182831.png)

Uma nova tela será exibida requisitando as informações de geração.  
Marque o período que está sendo faturado e as opções necessárias.

<p class="callout info">A opção **61 - Reg. de NFC-e não está funcionando na versão atual do SIEM.   
A geração do Sintegra para NFC-e será abordada futuramente</p>

[![image-1697202146061.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/scaled-1680-/image-1697202146061.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/image-1697202146061.png)

Gerando o arquivo, ele será encaminhado para a pasta padrão: **C:\\Sintegra\\**  
Mas a mesma pode ser alterada no campo **Local do Arquivo** caso desejar.

# 61 - Reg. de NFCe

O Reg. 61 do SINTEGRA é o responsável por indicar quantas NFC-e foram emitidas durante os dias.  
Nele é informado intervalo de números do dia. Por exemplo:

DIA 01/09/2023 - Números 1003 até 1015

Também conta com a soma do total dos cupons desse período e do valor de ICMS

- - - - - -

##### **Geração:**

Inicie com a geração normal do arquivo, como já demonstrado anteriormente.  
Porém deixe marcado a caixa do Reg. 61 que ele já será informado no arquivo de acordo

[![image-1731068811819.png](https://docs.softensistemas.com.br/uploads/images/gallery/2024-11/scaled-1680-/image-1731068811819.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2024-11/image-1731068811819.png)

A informação do Reg. 61 já será incluso.

- - - - - -

##### **Conferência:**

Anteriormente, não era gerado o Registro de forma adequada e era preciso conferir os valores e intervalos individualmente.  
Hoje o SIEM já conta com a função corrigida, mas caso precise conferir a somatório dos valores do Registro, use a função abaixo:

Realize a seguinte consulta pelo SIEM.mdb

```SQL
SELECT Faturamento_NotaFiscal.DataEmissao, Min(Right([Faturamento_NotaFiscal.Código],7)) AS Primeiro, Max(Right([Faturamento_NotaFiscal.Código],7)) AS Último, Sum([Faturamento_Notafiscal_movimento.Valor_Total]+[Faturamento_notaFiscal_movimento.vOutro]-[Faturamento_notafiscal_movimento.vDesc]) AS [Valor do Dia], Sum(Faturamento_NotaFiscal_movimento.VL_BC_ICMS) AS SomaDeVL_BC_ICMS, Sum(Faturamento_NotaFiscal_movimento.VL_ICMS) AS SomaDeVL_ICMS, Faturamento_NotaFiscal_movimento.ALIQUOTA_ICMS
FROM Faturamento_NotaFiscal INNER JOIN Faturamento_NotaFiscal_movimento ON Faturamento_NotaFiscal.Código = Faturamento_NotaFiscal_movimento.NotaFiscal
GROUP BY Faturamento_NotaFiscal.DataEmissao, Faturamento_NotaFiscal_movimento.ALIQUOTA_ICMS, Left([Faturamento_NotaFiscal.Código],2), Faturamento_NotaFiscal.Cancelado, (Month([Faturamento_NotaFiscal]![DataEmissao]) & "/" & Year([Faturamento_NotaFiscal]![DataEmissao])), Faturamento_NotaFiscal.NFe_stAutorizado
HAVING (((Left([Faturamento_NotaFiscal.Código],2))=65) AND ((Faturamento_NotaFiscal.Cancelado)=False) AND (((Month([Faturamento_NotaFiscal]![DataEmissao]) & "/" & Year([Faturamento_NotaFiscal]![DataEmissao])))="3/2024") AND ((Faturamento_NotaFiscal.NFe_stAutorizado)=True));
```

<p class="callout warning">Lembre-se de alterar o mês na consulta referente ao mês desejado</p>

Essa SQL não é uma atualização e sim para fazer a visualização das informações a serem aplicadas.

O resultado do **SELECIONAR** será a quantidade de linhas de cupom do período.  
Dependendo da quantidade de dias em que o cliente emitiu cupons será gerado os registros.

[![image-1697209456811.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/scaled-1680-/image-1697209456811.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/image-1697209456811.png)

No exemplo acima, o cliente emitiu cupons em 20 dias. Por isso foram geradas 20 linhas

- - - - - -

##### **Correção arquivo .txt**

Se os valores estiverem divergentes dos apresentados na somatória de registros do 61 no validador, será preciso fazer as correções direto no arquivo .txt.

Abra o arquivo de SINTEGRA pelo NotePad++  
Identifique os Registros 54 e 75, será necessário abrir um espaço entre eles referente à quantidade de linhas que veio da consulta anterior.

Como na nossa consulta exemplo foram geradas 20 linhas, abriremos vinte espaços.  
Poderá preencher eles já com o número de registro 61

[![image-1697213291364.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/scaled-1680-/image-1697213291364.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/image-1697213291364.png)

Salve o arquivo e poderá abrir ele agora pelo **PRNEdite**  
Por esse programa, poderemos editar o registro com as informações que obtemos da consulta referente a cada linha.

Basta selecionar o registro 61 e preencher de acordo com cada resultado

<p class="callout info">Lembrando que cada dia é referente à uma linha</p>

1. O formato de data sempre será YMD (Ano, mês e dia)  
    Então no exemplo: 01/09/2023 passa a ser 20230901
2. Apenas o Modelo é necessário preencher
3. O número inicial e final estão descrito como "Primeiro" e "Ultimo" na consulta.  
    O digito inicial é a série, o qual **não se dever preencher**.
4. O valor total, de BC e de ICMS deve ser acompanhado das casas decimais.  
    Ou seja, no caso como o valor é de R$ 325,00, preenchemos 32500

[![image-1697213662002.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/scaled-1680-/image-1697213662002.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/image-1697213662002.png)

Feito o preenchimento de todos os valores contidos na consulta, seu resultado deve se parecer com a foto abaixo:

[![image-1697213947248.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/scaled-1680-/image-1697213947248.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/image-1697213947248.png)

Com todos os registros preenchidos, verifique a ultima linha do arquivo ainda pelo PRNEdite  
Nela será possível verificar a quantidade de cada registro e precisaremos definir corretamente aqueles relacionados ao 61

Não faremos a edição pelo PRN, apenas a verificação.

<p class="callout danger">O exemplo abaixo é no caso da **FALTA** do Registro 61 estar sendo apresentado nos totais.  
Mas se ele estiver incluso, basta editar o mesmo (Se necessário)</p>

No exemplo podemos conferir alguns registros que não tem valores, como por exemplo: 74, 60 e 70  
Basta que tenha um deles em mente para editar depois

[![image-1697214515091.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/scaled-1680-/image-1697214515091.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/image-1697214515091.png)

Feito a identificação abra o mesmo arquivo do SINTEGRA agora pelo NotePad++ novamente  
A enorme coluna da ultima linha é referente a cada um desses registros e ele vai seguir na ordem demonstrada pelo PRN.

Selecione a que quer substituir, no caso exemplo faremos com o 5º Tipo e altere para 61  
E nos dois últimos campos antes da mudança de tipo, defina a quantidade de registros

[![image-1697214707667.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/scaled-1680-/image-1697214707667.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/image-1697214707667.png)

Salve e valide o arquivo editado no Validador SINTEGRA.  
Com a opção Listar Registros habilitado, confira se o total está de acordo com o obtido na consulta do banco de dados

[![image-1697214810103.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/scaled-1680-/image-1697214810103.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/image-1697214810103.png)

Caso ainda não tenha feito a correção das outras críticas poderá estar seguindo normalmente  
Ou se ja tiver corrigido e o arquivo tiver sido aceito, basta encaminhar para o cliente.

# Validação Sintegra 2017

Feita a geração do arquivo do SINTEGRA por dentro do sistema, abra o validador e selecione o local do arquivo .txt criado.

[![image-1697202800696.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/scaled-1680-/image-1697202800696.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/image-1697202800696.png)

Após uma breve confirmação, será exibido a tela de Resumo com a quantidade de **Advertências** e também de linhas **Rejeitadas.**  
Use a aba de **Críticas** para conferir as informações a serem corrigidas

[![image-1697205373660.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/scaled-1680-/image-1697205373660.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/image-1697205373660.png)

A maior parte das rejeições que vem dessa tela são por conta da falta do uso das SQL antes apresentadas.  
Então confira sempre que foram utilizadas todas as necessárias para a correção antes de fazer a validação.

Poderá notar que cada crítica fica dividida em colunas

- Linha
- Mensagem de Erro
- Registro
- Campo

Caso precise fazer a correção em linha específica é recomendado usar o **NotePad++**  
Por isso prestar atenção nas informações disponibilizadas pelo validador é de extrema importância.

<p class="callout info">Mais detalhes sobre a resolução das críticas será apresentado em outro capítulo</p>

Feito toda a correção do arquivo, a validação deverá constar como seguinte:

[![image-1697205544455.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/scaled-1680-/image-1697205544455.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/image-1697205544455.png)

Caso o arquivo tenha sido aceito, basta encaminhar esse mesmo .txt para o cliente.

# Críticas SINTEGRA



# Inscrição Invalida para UF

Uma crítica comum para a validação do SINTEGRA é a de Inscrição Invalida  
Cada estado tem um tamanho definido para a IE. Por conta disso, se as vezes durante o cadastro no SIEM não atingir esse tamanho determinado, será rejeitado pelo validador.

[![image-1697046314127.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/scaled-1680-/image-1697046314127.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/image-1697046314127.png)

No exemplo tem as críticas para **MG** e **RO**  
Poderá consultar o Sintegra do estado referente para conferir o tamanho. Por exemplo, MG tem o tamanho definido de 13 dígitos

**Resolução:**

Abra o TXT do Sintegra pelo NotePad++ e identifique a Linha dos erros  
No exemplo acima, temos as linhas 15, 23 e 27

[![image-1697046184023.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/scaled-1680-/image-1697046184023.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-10/image-1697046184023.png)

<p class="callout warning">Os dados sensíveis dos clientes foram censurados para a segurança dos envolvidos.  
Em respeito à LGPD</p>

Pode reparar que o tamanho da linha 15 não está igual ao restante  
Nesse caso, a IE estava incorreta e faltando dígitos. Bastou consultar o CNPJ no CCC e corrigir  
  
Caso mesmo assim o tamanho não esteja batendo, adicione um ou dois zeros no inicio da IE  
**Não se esqueça de apagar o espaçamento em excesso para alinhar a coluna à frente.**

# Conteúdo Invalido - Situação Tributaria

O erro de **Conteúdo Invalido** que vai constar no **Reg. 54** refere à Situação Tributária é vinculado às notas de compra do fornecedor.

Em sua maioria, o motivo de rejeição é o uso de uma CST não aceita no arquivo de SINTEGRA.  
Como é o caso das novas CST Monofásicas (Exemplo: 61)

[![image-1699983367386.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-11/scaled-1680-/image-1699983367386.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-11/image-1699983367386.png)

- - - - - -

Para a resolução poderá fazer o ajuste no documento pela ferramenta que melhor o auxiliar  
Uma sugestão seria o PRN Edite, por sua facilidade em identificar cada campo do registro.

Basta selecionar o Registro 54 que necessita de correção e ajustar a CST para uma válida:

[![image-1699983554990.png](https://docs.softensistemas.com.br/uploads/images/gallery/2023-11/scaled-1680-/image-1699983554990.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2023-11/image-1699983554990.png)

Os códigos aceitos para o Registro 54 são os listados abaixo:

- 00
- 10
- 20
- 30
- 40
- 41
- 50
- 51
- 60
- 70
- 90

Se for utilizado qualquer código diferente dos citados acima, será necessário conferir um código que substitua ele.

<p class="callout warning">É recomendado conferir essa informação com a contabilidade do contribuinte.</p>

