# CTe

# Alterar Endereço do Recebedor



# PROC001 Alterar Endereço do Recebedor

<table border="1" id="bkmrk-%C2%A0-projeto%2Fsistema%3Age" style="border-collapse: collapse; width: 100.123%; height: 68px;"><tbody><tr style="border-style: solid;"><td rowspan="3" style="width: 26.6667%; height: 68px; border-color: black; border-top-style: hidden; border-left-style: hidden; border-bottom-style: hidden;">  
[![image-1762776253666.png](https://docs.softensistemas.com.br/uploads/images/gallery/2025-11/scaled-1680-/image-1762776253666.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2025-11/image-1762776253666.png)

</td><td style="width: 49.9999%; height: 10px; border-color: black; border-style: solid;"><span style="color: #000000;">**Projeto/Sistema:**</span>  
<span style="color: #000000;">CTe-GerencieAqui</span></td><td class="align-center" style="width: 23.3333%; height: 10px; border-color: black; border-style: solid;"><span style="color: #000000;">**Versão do *Template:***</span>  
<span style="color: #000000;">1.2</span></td></tr><tr style="border-style: solid;"><td style="width: 49.9999%; height: 29px; border-color: black; border-style: solid;"><span style="color: #000000;">**Processo:**</span>  
**PROC001 Alterar Endereço do Recebedor**</td><td class="align-center" style="width: 23.3333%; height: 29px; border-color: black; border-style: solid;"><span style="color: #000000;">**Versão do Documento:**</span>  
<span style="color: #000000;">1.0</span></td></tr><tr style="border-style: solid;"><td style="width: 49.9999%; height: 29px; border-color: black; border-style: solid;"><span style="color: #000000;">**Responsável(eis):** </span>  
<span style="color: #000000;">Luís Leite</span></td><td class="align-center" style="width: 23.3333%; height: 29px; border-color: black; border-style: solid;"><span style="color: #000000;">**Data:** </span>

<span style="color: #000000;">09/02/2026</span>

</td></tr></tbody></table>

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

<span style="color: #000000;">**Este processo visa exemplificar a criação da função de informar endereço alternativo do recebedor no CTe.**</span>

##### <span style="color: #000000;">**2. Processo**</span>

<table cellpadding="9" cellspacing="0" id="bkmrk-processo-envolvidos-" style="width: 100%;" width="100%"><tbody><tr valign="top"><td bgcolor="#acb9ca" style="border-style: solid; border-color: black; width: 27%;" width="27%"><span style="font-size: small; color: #000000;">**Processo**</span>

</td><td bgcolor="#acb9ca" style="border-style: solid; border-color: black; width: 19%;" width="19%"><span style="font-size: small; color: #000000;">**Envolvidos**</span>

</td><td bgcolor="#acb9ca" style="border-style: solid; border-color: black; width: 27%;" width="27%"><span style="font-size: small; color: #000000;">**Dados de Entrada**</span>

</td><td bgcolor="#acb9ca" style="border-style: solid; border-color: black; width: 27%;" width="27%"><span style="font-size: small; color: #000000;">**Dados de Saída**</span>

</td></tr><tr valign="top"><td style="border-style: solid; border-color: black; width: 27%;" width="27%">**PROC001 Alterar Endereço do Recebedor:**

</td><td style="border-style: solid; border-color: black; width: 19%;" width="19%"><span style="font-size: small; color: #000000;">-</span>

</td><td style="border-style: solid; border-color: black; width: 27%;" width="27%"><span style="font-size: small; color: #000000;">Dados de endereço do Recebedor</span>

</td><td style="border-style: solid; border-color: black; width: 27%;" width="27%"><span style="font-size: small; color: #000000;">Informação salva em banco e emitida em XML</span>

</td></tr></tbody></table>

#### **Especificação Funcional**

- - - - - -

#### **PROC001 Alterar Endereço do Recebedor:**

##### ***Protótipo de Tela:***

[![image-1770646566278.jpg](https://docs.softensistemas.com.br/uploads/images/gallery/2026-02/scaled-1680-/image-1770646566278.jpg)](https://docs.softensistemas.com.br/uploads/images/gallery/2026-02/image-1770646566278.jpg)

Imagem I - Botão "Alterar Endereço do Recebedor" renderizado

[![image-1770655866140.png](https://docs.softensistemas.com.br/uploads/images/gallery/2026-02/scaled-1680-/image-1770655866140.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2026-02/image-1770655866140.png)

Imagem II - *Dialog* que deve ser aberta

##### ***Descrição dos Campos:***

<table border="1" cellpadding="7" cellspacing="0" id="bkmrk-campo-tipo-tamanho-o" style="width: 843px; height: 350px;"><tbody><tr style="height: 35px;" valign="top"><td bgcolor="#acb9ca" style="width: 168px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Campo**</span>

</td><td bgcolor="#acb9ca" style="width: 102px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Tipo**</span>

</td><td bgcolor="#acb9ca" style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Tamanho**</span>

</td><td bgcolor="#acb9ca" style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Obrig. ?**</span>

</td><td bgcolor="#acb9ca" style="width: 119px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Máscara**</span>

</td><td bgcolor="#acb9ca" style="width: 201px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Observações**</span>

</td></tr><tr style="height: 35px;"><td style="width: 168px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Alterar Endereço do Recebedor</span>

</td><td style="width: 102px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Botão</span>

</td><td style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">-</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">-</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;">-

</td><td style="width: 201px; border-style: solid; border-color: black; height: 35px;">-

</td></tr><tr style="height: 35px;"><td colspan="6" style="width: 843px; border-style: solid; border-color: black; height: 35px;"> </td></tr><tr style="height: 35px;"><td style="width: 168px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">CEP\*</span>

</td><td style="width: 102px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Texto</span>

</td><td style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">8</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Sim</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;">000.000-000

</td><td style="width: 201px; border-style: solid; border-color: black; height: 35px;">-

</td></tr><tr style="height: 35px;"><td style="width: 168px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Cidade\*</span>

</td><td style="width: 102px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Texto</span>

</td><td style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">7</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Sim</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;">-

</td><td style="width: 201px; border-style: solid; border-color: black; height: 35px;">-

</td></tr><tr style="height: 35px;"><td style="width: 168px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Logradouro\*</span>

</td><td style="width: 102px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Texto</span>

</td><td style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">2-255</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Sim</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;">-

</td><td style="width: 201px; border-style: solid; border-color: black; height: 35px;">-

</td></tr><tr style="height: 35px;"><td style="width: 168px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Nº\*</span>

</td><td style="width: 102px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Texto</span>

</td><td style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">1-60</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Sim</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;">-

</td><td style="width: 201px; border-style: solid; border-color: black; height: 35px;">-

</td></tr><tr style="height: 35px;"><td style="width: 168px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Bairro\*</span>

</td><td style="width: 102px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Texto</span>

</td><td style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">2-60</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Sim</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;">-

</td><td style="width: 201px; border-style: solid; border-color: black; height: 35px;">-

</td></tr><tr style="height: 35px;"><td style="width: 168px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Excluir</span>

</td><td style="width: 102px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Botão</span>

</td><td style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">-</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 35px;">-

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;">-

</td><td style="width: 201px; border-style: solid; border-color: black; height: 35px;">-

</td></tr><tr style="height: 35px;"><td style="width: 168px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Salvar</span>

</td><td style="width: 102px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Botão</span>

</td><td style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">-</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 35px;">-

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;">-

</td><td style="width: 201px; border-style: solid; border-color: black; height: 35px;">-

</td></tr></tbody></table>

##### ***Regras de Interface:***

***1. Botão "Alterar Endereço do Recebedor":*** Só deve ser renderizado caso seja informado o recebedor no CT-e. *2. Botão "Alterar Endereço do Recebedor":*** Deve abrir a *Dialog* para o preenchimento de outro endereço diferente do cadastrado. Todos os campos são de preenchimento obrigatório. (Imagem II)  
***3. Botão Salvar:*** Caso seja possível salvar o registro de endereços, deve ser finalizada a *Dialog* e deve voltar o aviso:

<p class="callout success">Endereço do Tomador alterado com sucesso!</p>

Caso não seja possível devido a não preenchimento ou preenchimento incorreto dos campos, deve ser retornado aviso e manter a *Dialog* aberta:

<p class="callout danger">Erro ao salvar, confira o preenchimento dos campos!</p>

***4. Botão Excluir:*** Só deve ser renderizado somente se houver preenchimento nos campos da *Dialog*. A ação deve limpar o preenchimento dos campos e encerrar a *Dialog:*

<p class="callout success">Endereço alternativo retirado.</p>

##### ***Regras de Negócio:***

***1. Botão Salvar:* Deve validar o preenchimento de todos os campos, se estão respeitando os tamanhos de campo ou se estão em branco. Somente deve ser salvo em banco caso cumprir os requisitos, caso contrario retornar a rejeição conforme regras de interface.  
***2. Botão Excluir:***  
Deve remover o vínculo do outro endereço do Recebedor com o CTe.   
***3.*** Deve ser criada uma tabela na base de dados para armazenar o vínculo do endereço do recebedor com o CTe.

##### ***Questões Técnicas:***

***1.*** Alterar tabela de 'cte' para armazenar novos dados

```SQL
ALTER TABLE cte 
ADD recebxLgr varchar(255),
ADD recebNro varchar(60),
ADD recebBairro varchar(60),
ADD recebCEP char(8),
ADD recebMun bigint,
ADD CONSTRAINT fk_cte_recebMun
 FOREIGN KEY (recebMun) REFERENCES cidade(id);

```

***2.*** Exemplo XML de envio, os dados do endereço devem ser adicionados nas tags pai &lt;enderReceb&gt;, por padrão vão ir com os dados do cadastro, devem ser informados os dados de endereço alternativo caso estejam preenchidos.

```XML
<receb>
<CNPJ>07702969000153</CNPJ>
<IE>456064276113</IE>
<xNome>FUNDICAO REGALI BRASIL LTDA</xNome>
<enderReceb>
<xLgr>RUA DE TESTE RECEBDOR</xLgr>
<nro>10</nro>
<xBairro>RECEBDOR</xBairro>
<cMun>3525706</cMun>
<xMun>JOSE BONIFACIO</xMun>
<CEP>15200000</CEP>
<UF>SP</UF>
</enderReceb>
</receb>
```

©SOFTEN SISTEMAS 2026.

# Múltiplas importações de XML NFe para CTe



# PROC001 - Importar múltiplos XMLs de NFe no CTe

<table border="1" id="bkmrk-%C2%A0-projeto%2Fsistema%3Age" style="border-collapse: collapse; width: 100.123%; height: 68px;"><tbody><tr style="border-style: solid;"><td rowspan="3" style="width: 26.6667%; height: 68px; border-color: black; border-top-style: hidden; border-left-style: hidden; border-bottom-style: hidden;">  
[![image-1762776253666.png](https://docs.softensistemas.com.br/uploads/images/gallery/2025-11/scaled-1680-/image-1762776253666.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2025-11/image-1762776253666.png)

</td><td style="width: 49.9999%; height: 10px; border-color: black; border-style: solid;"><span style="color: #000000;">**Projeto/Sistema:**</span>  
<span style="color: #000000;">GerencieAqui</span></td><td class="align-center" style="width: 23.3333%; height: 10px; border-color: black; border-style: solid;"><span style="color: #000000;">**Versão do *Template:***</span>  
<span style="color: #000000;">1.2</span></td></tr><tr style="border-style: solid;"><td style="width: 49.9999%; height: 29px; border-color: black; border-style: solid;"><span style="color: #000000;">**Processo:**</span>  
PROC001 - Importar múltiplos XMLs de NFe no CTe</td><td class="align-center" style="width: 23.3333%; height: 29px; border-color: black; border-style: solid;"><span style="color: #000000;">**Versão do Documento:**</span>  
<span style="color: #000000;">1.0</span></td></tr><tr style="border-style: solid;"><td style="width: 49.9999%; height: 29px; border-color: black; border-style: solid;"><span style="color: #000000;">**Responsável(eis):** </span>  
<span style="color: #000000;">Luís Leite</span></td><td class="align-center" style="width: 23.3333%; height: 29px; border-color: black; border-style: solid;"><span style="color: #000000;">**Data:** </span>

<span style="color: #000000;">09/01/2026</span>

</td></tr></tbody></table>

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

<span style="color: #000000;">**Este processo visa exemplificar a documentação padrão**</span>

<table cellpadding="9" cellspacing="0" id="bkmrk-processo-envolvidos-" width="100%"><tbody><tr valign="top"><td bgcolor="#acb9ca" style="border-style: solid; border-color: black;" width="27%"><span style="font-size: small; color: #000000;">**Processo**</span>

</td><td bgcolor="#acb9ca" style="border-style: solid; border-color: black;" width="19%"><span style="font-size: small; color: #000000;">**Envolvidos**</span>

</td><td bgcolor="#acb9ca" style="border-style: solid; border-color: black;" width="27%"><span style="font-size: small; color: #000000;">**Dados de Entrada**</span>

</td><td bgcolor="#acb9ca" style="border-style: solid; border-color: black;" width="27%"><span style="font-size: small; color: #000000;">**Dados de Saída**</span>

</td></tr><tr valign="top"><td style="border-style: solid; border-color: black;" width="27%">PROC001 - Importar múltiplos XMLs de NFe no CTe

</td><td style="border-style: solid; border-color: black;" width="19%"><span style="font-size: small; color: #000000;">-</span>

</td><td style="border-style: solid; border-color: black;" width="27%">Lista de arquivos XMLs

</td><td style="border-style: solid; border-color: black;" width="27%"><span style="color: #000000; font-size: small;">Informações salvas no banco de dados</span>

</td></tr></tbody></table>

#### **Especificação Funcional**

- - - - - -

#### **PROC001 - Importar múltiplos XMLs de NFe no CTe:**

##### ***Tela:***

[![image-1767961553705.png](https://docs.softensistemas.com.br/uploads/images/gallery/2026-01/scaled-1680-/image-1767961553705.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2026-01/image-1767961553705.png)

Imagem I - Tela existente da importação de XML para CTe

##### ***Descrição dos Campos:***

<table border="1" cellpadding="7" cellspacing="0" id="bkmrk-campo-tipo-tamanho-o" style="width: 843px; height: 70px;"><tbody><tr style="height: 35px;" valign="top"><td bgcolor="#acb9ca" style="width: 168px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Campo**</span>

</td><td bgcolor="#acb9ca" style="width: 102px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Tipo**</span>

</td><td bgcolor="#acb9ca" style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Tamanho**</span>

</td><td bgcolor="#acb9ca" style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Obrig. ?**</span>

</td><td bgcolor="#acb9ca" style="width: 119px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Máscara**</span>

</td><td bgcolor="#acb9ca" style="width: 201px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Observações**</span>

</td></tr><tr style="height: 35px;"><td style="width: 168px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">+ Importar XML</span>

</td><td style="width: 102px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Botão</span>

</td><td style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">-</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">-</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;">-

</td><td style="width: 201px; border-style: solid; border-color: black; height: 35px;">-

</td></tr></tbody></table>

##### ***Regras de Interface:***

***1.*** Se selecionado mais de 20 arquivos para importação, deve ser retornado em tela o aviso:

<p class="callout danger">***Erro de importação, selecione 20 ou menos XMLs!***</p>

##### ***Regras de Negócio:***

***1.*** Deve ser validado para que a importação tenha um limite de quantidade de arquivos, máximo 20 XMLs.  
Caso seja selecionado mais de 20 XMLs, deve ser interrompida a importação. Dentro do limite de quantidade de arquivos, deve ser dado sequencia no processo de importação já existente.

***2.*** Caso o usuário realize a importação novamente, deve ser validado os arquivos a serem importados com os já salvos na listagem para importação a fim de não permitir importação duplicada. Deve ser comparado pelo nome do arquivo no diretório, caso esteja salvo em memoria para importação, não realizar novamente. (validar a possibilidade)

##### ***Questões Técnicas:***

***1.*** Deve ser alterado o componente de *upload*, mudando o atributo *multiples* para permitir multiplos arquivos no upload.  
Exemplo: [https://www.primefaces.org/docs/vdl/4.0/primefaces-p/fileUpload.html#:~:text=file%20upload%20events.-,multiple,-false](https://www.primefaces.org/docs/vdl/4.0/primefaces-p/fileUpload.html#:~:text=file%20upload%20events.-,multiple,-false)

©SOFTEN SISTEMAS 2026

# Configuração de imposto por CFOP



# PROC001-Imposto por CFOP no CTe

<table border="1" id="bkmrk-%C2%A0-projeto%2Fsistema%3Age" style="border-collapse: collapse; width: 100.123%; height: 68px;"><tbody><tr style="border-style: solid;"><td rowspan="3" style="width: 26.6667%; height: 68px; border-color: black; border-top-style: hidden; border-left-style: hidden; border-bottom-style: hidden;">  
[![image-1762776253666.png](https://docs.softensistemas.com.br/uploads/images/gallery/2025-11/scaled-1680-/image-1762776253666.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2025-11/image-1762776253666.png)

</td><td style="width: 49.9999%; height: 10px; border-color: black; border-style: solid;"><span style="color: #000000;">**Projeto/Sistema:**</span>  
<span style="color: #000000;">CTe - GerencieAqui</span></td><td class="align-center" style="width: 23.3333%; height: 10px; border-color: black; border-style: solid;"><span style="color: #000000;">**Versão do *Template:***</span>  
<span style="color: #000000;">1.2</span></td></tr><tr style="border-style: solid;"><td style="width: 49.9999%; height: 29px; border-color: black; border-style: solid;"><span style="color: #000000;">**Processo:**</span>  
PROC001 -Imposto por CFOP no CTe</td><td class="align-center" style="width: 23.3333%; height: 29px; border-color: black; border-style: solid;"><span style="color: #000000;">**Versão do Documento:**</span>  
<span style="color: #000000;">1.0</span></td></tr><tr style="border-style: solid;"><td style="width: 49.9999%; height: 29px; border-color: black; border-style: solid;"><span style="color: #000000;">**Responsável(eis):** </span>  
<span style="color: #000000;">Luís Leite</span></td><td class="align-center" style="width: 23.3333%; height: 29px; border-color: black; border-style: solid;"><span style="color: #000000;">**Data:** </span>

<span style="color: #000000;">11/01/2026</span>

</td></tr></tbody></table>

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

<span style="color: #000000;">**Este processo visa demonstrar a criação da tabela de impostos por CFOP para o CTe**</span>

##### <span style="color: #000000;">**2. Processo**</span>

<table cellpadding="9" cellspacing="0" id="bkmrk-processo-envolvidos-" style="width: 100%;" width="100%"><tbody><tr valign="top"><td bgcolor="#acb9ca" style="width: 27%; border-style: solid; border-color: black;" width="27%"><span style="color: #000000;">**Processo**</span>

</td><td bgcolor="#acb9ca" style="width: 19%; border-style: solid; border-color: black;" width="19%"><span style="color: #000000;">**Envolvidos**</span>

</td><td bgcolor="#acb9ca" style="width: 27%; border-style: solid; border-color: black;" width="27%"><span style="color: #000000;">**Dados de Entrada**</span>

</td><td bgcolor="#acb9ca" style="width: 27%; border-style: solid; border-color: black;" width="27%"><span style="color: #000000;">**Dados de Saída**</span>

</td></tr><tr valign="top"><td style="width: 27%; border-style: solid; border-color: black;" width="27%"><span style="color: #000000;">PROC001-Imposto por CFOP no CTe</span>

</td><td style="width: 19%; border-style: solid; border-color: black;" width="19%"></td><td style="width: 27%; border-style: solid; border-color: black;" width="27%"><span style="color: #000000;">Regra de Impostos</span>

</td><td style="width: 27%; border-style: solid; border-color: black;" width="27%"><span style="color: #000000;">Configurações de impostos de tabela de imposto e CFOP</span>

</td></tr><tr><td style="border-style: solid; border-color: black; width: 27%;"><span style="font-size: small; color: #000000;">PROC002 - Tabela de Imposto de CTe</span>

</td><td style="border-style: solid; border-color: black; width: 19%;"><span style="font-size: small; color: #000000;"> </span>

</td><td style="border-style: solid; border-color: black; width: 27%;"><span style="font-size: small; color: #000000;">Parametrização de impostos</span>

</td><td style="border-style: solid; border-color: black; width: 27%;"><span style="font-size: small; color: #000000;">Tabela de imposto cadastrada</span>

</td></tr><tr><td style="border-style: solid; border-color: black; width: 27%;"><span style="font-size: small; color: #000000;">PROC003 - Tabela de Imposto de CTe - Reforma Tributária</span>

</td><td style="border-style: solid; border-color: black; width: 19%;"><span style="font-size: small; color: #000000;"> </span>

</td><td style="border-style: solid; border-color: black; width: 27%;"><span style="font-size: small; color: #000000;">Parametrização de impostos</span>

</td><td style="border-style: solid; border-color: black; width: 27%;"><span style="font-size: small; color: #000000;">Tabela de imposto cadastrada</span>

</td></tr></tbody></table>

#### **Processos Relacionados**

[PROC002 - Tabela de Imposto de CTe](https://docs.softensistemas.com.br/books/cte/page/proc002-tabela-de-imposto-de-cte)

[PROC003 - Tabela de Imposto de CTe - Reforma Tributária](https://docs.softensistemas.com.br/books/cte/page/proc003-tabela-de-imposto-de-cte-reforma-tributaria)

#### **Especificação Funcional**

- - - - - -

#### **PROC001-Imposto por CFOP no CTe:**

##### ***Protótipo de Tela:***

[![image-1770826756457.png](https://docs.softensistemas.com.br/uploads/images/gallery/2026-02/scaled-1680-/image-1770826756457.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2026-02/image-1770826756457.png)

Imagem I - Botão "Configurar CFOP" em "Documentos Fiscais"

[![image-1774459872794.png](https://docs.softensistemas.com.br/uploads/images/gallery/2026-03/scaled-1680-/image-1774459872794.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2026-03/image-1774459872794.png)

Imagem II - *Dialog* de configuração de imposto por CFOP

##### ***Descrição dos Campos:***

<table border="1" cellpadding="7" cellspacing="0" id="bkmrk-campo-tipo-tamanho-o" style="width: 843px; height: 755px;"><tbody><tr style="height: 35px;" valign="top"><td bgcolor="#acb9ca" style="width: 168px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Campo**</span>

</td><td bgcolor="#acb9ca" style="width: 102px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Tipo**</span>

</td><td bgcolor="#acb9ca" style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Tamanho**</span>

</td><td bgcolor="#acb9ca" style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Obrig. ?**</span>

</td><td bgcolor="#acb9ca" style="width: 119px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Máscara**</span>

</td><td bgcolor="#acb9ca" style="width: 201px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Observações**</span>

</td></tr><tr style="height: 87px;"><td style="width: 168px; border-style: solid; border-color: black; height: 87px;"><span style="color: #000000;">Configurar CFOP</span>

</td><td style="width: 102px; border-style: solid; border-color: black; height: 87px;"><span style="color: #000000;">Botão</span>

</td><td style="width: 88px; border-style: solid; border-color: black; height: 87px;"><span style="color: #000000;">-</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 87px;"><span style="color: #000000;">-</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 87px;">-

</td><td style="width: 201px; border-style: solid; border-color: black; height: 87px;"></td></tr><tr style="height: 29px;"><td class="align-center" colspan="6" style="width: 843px; border-style: solid; border-color: black; height: 29px;">Configuração de Imposto CFOP - CTe</td></tr><tr style="height: 35px;"><td style="width: 168px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">CFOP</span>

</td><td style="width: 102px; border-style: solid; border-color: black; height: 35px;">Texto

</td><td style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">3</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">-</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;">-

</td><td class="align-center" style="width: 201px; border-style: solid; border-color: black; height: 35px;">-

</td></tr><tr style="height: 35px;"><td style="width: 168px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">UF</span>

</td><td style="width: 102px; border-style: solid; border-color: black; height: 35px;">Texto

</td><td style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">2</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;"> </span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;"></td><td style="width: 201px; border-style: solid; border-color: black; height: 35px;"></td></tr><tr style="height: 57px;"><td style="width: 168px; border-style: solid; border-color: black; height: 57px;"><span style="color: #000000;">Tabela de Imposto</span>

</td><td style="width: 102px; border-style: solid; border-color: black; height: 57px;">*Select*

</td><td style="width: 88px; border-style: solid; border-color: black; height: 57px;"><span style="color: #000000;">-</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 57px;"><span style="color: #000000;">-</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 57px;">-

</td><td class="align-center" style="width: 201px; border-style: solid; border-color: black; height: 57px;">-

</td></tr><tr style="height: 57px;"><td style="width: 168px; border-style: solid; border-color: black; height: 57px;"><span style="color: #000000;">Tipo CFOP</span>

</td><td style="width: 102px; border-style: solid; border-color: black; height: 57px;">*Select*

</td><td style="width: 88px; border-style: solid; border-color: black; height: 57px;"><span style="color: #000000;">-</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 57px;"><span style="color: #000000;">-</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 57px;">-

</td><td class="align-center" style="width: 201px; border-style: solid; border-color: black; height: 57px;">-

</td></tr><tr style="height: 57px;"><td style="width: 168px; border-style: solid; border-color: black; height: 57px;"><span style="color: #000000;">Inserir</span>

</td><td style="width: 102px; border-style: solid; border-color: black; height: 57px;"><span style="color: #000000;">Botão</span>

</td><td style="width: 88px; border-style: solid; border-color: black; height: 57px;"><span style="color: #000000;">-</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 57px;"><span style="color: #000000;">-</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 57px;">-

</td><td class="align-center" style="width: 201px; border-style: solid; border-color: black; height: 57px;">-

</td></tr><tr style="height: 35px;"><td style="width: 168px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">CFOP</span>

</td><td style="width: 102px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">*Column Header*</span>

</td><td style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">-</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 57px;"><span style="color: #000000;">-</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 57px;">-

</td><td class="align-center" style="width: 201px; border-style: solid; border-color: black; height: 57px;">-

</td></tr><tr style="height: 57px;"><td style="width: 168px; border-style: solid; border-color: black; height: 57px;"><span style="color: #000000;">UF</span>

</td><td style="width: 102px; border-style: solid; border-color: black; height: 57px;"><span style="color: #000000;">*Column Header*</span>

</td><td style="width: 88px; border-style: solid; border-color: black; height: 57px;"><span style="color: #000000;">-</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 57px;"><span style="color: #000000;">-</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 57px;">-

</td><td class="align-center" style="width: 201px; border-style: solid; border-color: black; height: 57px;">-

</td></tr><tr style="height: 57px;"><td style="width: 168px; border-style: solid; border-color: black; height: 57px;"><span style="color: #000000;">Tabela de Imposto</span>

</td><td style="width: 102px; border-style: solid; border-color: black; height: 57px;"><span style="color: #000000;">*Column Header*</span>

</td><td style="width: 88px; border-style: solid; border-color: black; height: 57px;"><span style="color: #000000;">-</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 57px;"><span style="color: #000000;">-</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 57px;">-

</td><td class="align-center" style="width: 201px; border-style: solid; border-color: black; height: 57px;">-

</td></tr><tr style="height: 57px;"><td style="width: 168px; border-style: solid; border-color: black; height: 57px;"><span style="color: #000000;">Tipo CFOP</span>

</td><td class="align-center" style="width: 102px; border-style: solid; border-color: black; height: 57px;"><span style="color: #000000;">*Column Header*</span></td><td class="align-center" style="width: 88px; border-style: solid; border-color: black; height: 57px;">-</td><td style="width: 165px; border-style: solid; border-color: black; height: 57px;"><span style="color: #000000;">-</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 57px;">-

</td><td class="align-center" style="width: 201px; border-style: solid; border-color: black; height: 57px;">-

</td></tr><tr><td style="width: 168px; border-style: solid; border-color: black;"><span style="color: #000000;">Botão de Exclusão</span>

</td><td class="align-center" style="width: 102px; border-style: solid; border-color: black;"><span style="color: #000000;">*Column Header*</span></td><td class="align-center" style="width: 88px; border-style: solid; border-color: black; height: 57px;">-</td><td style="width: 165px; border-style: solid; border-color: black; height: 57px;"><span style="color: #000000;">-</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 57px;">-

</td><td class="align-center" style="width: 201px; border-style: solid; border-color: black; height: 57px;">[![image-1770835066467.png](https://docs.softensistemas.com.br/uploads/images/gallery/2026-02/scaled-1680-/image-1770835066467.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2026-02/image-1770835066467.png)

</td></tr><tr style="height: 35px;"><td style="width: 168px; border-style: solid; border-color: black; height: 35px;">Fechar</td><td class="align-center" style="width: 102px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Botão</span></td><td class="align-center" style="width: 88px; border-style: solid; border-color: black; height: 35px;">-</td><td style="width: 165px; border-style: solid; border-color: black; height: 57px;"><span style="color: #000000;">-</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 57px;">-

</td><td class="align-center" style="width: 201px; border-style: solid; border-color: black; height: 57px;">-

</td></tr><tr style="height: 35px;"><td style="width: 168px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Salvar</span>

</td><td style="width: 102px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Botão</span>

</td><td style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">-</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">-</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;">-

</td><td class="align-center" style="width: 201px; border-style: solid; border-color: black; height: 35px;">-

</td></tr></tbody></table>

##### ***Regras de Interface:***

<span style="color: #000000;">***1.*** **Botão "Configurar CFOP":**  
Deve abrir a *Dialog* de configuração de Imposto CFOP - CTe.</span>

<span style="color: #000000;">***2.*** ***Dialog* "Configuração de Imposto CFOP - CTe"** (Imagem II)</span>

<span style="color: #000000;">**2.1 CFOP:** Deve conter o *Placeholder* "CFOP". Não permitir campo em branco.  
**2.2 UF:** Deve conter o *Placeholder* "UF". Não permitir campo em branco.</span>  
**<span style="color: #000000;">2.3 Tabela de Imposto</span><span style="color: #000000;">:</span>**<span style="color: #000000;"> Deve carregar todas as tabelas de impostos cadastradas na empresa.</span>**<span style="color: #000000;">  
2.4 Tipo CFOP: </span>**<span style="color: #000000;">Deve exibir as opções "Entrada" e "Saída", por padrão deve vir como "Saída".  
**2.5 Botão "Inserir":** Se for possível realizar a inserção, deve ser inserido na listagem. Caso não seja possível realizar a inserção, retornar o aviso em tela:</span>

<p class="callout danger"><span style="color: #000000;">Erro! Verifique o preenchimento dos campos.</span></p>

**<span style="color: #000000;">2.6 Listagem CFOP: </span>**<span style="color: #000000;">Deve permitir a ordenação ASC e DESC.</span>**<span style="color: #000000;">  
2.7 Listagem UF: </span>**<span style="color: #000000;">Deve permitir a ordenação ASC e DESC.</span>**<span style="color: #000000;">  
2.8 Listagem Tabela de Imposto: </span>**<span style="color: #000000;">Deve permitir a ordenação ASC e DESC.</span>**<span style="color: #000000;">  
2.9 Listagem Tipo CFOP: </span>**<span style="color: #000000;">Deve permitir a ordenação ASC e DESC.  
**2.10 Botão "Exclusão" na Listagem[![image-1770835088289.png](https://docs.softensistemas.com.br/uploads/images/gallery/2026-02/scaled-1680-/image-1770835088289.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2026-02/image-1770835088289.png):** Deve abrir uma tela para confirmação "Deseja excluir a regra?" Caso o usuário selecionar sim, deve realizar a exclusão do registro da listagem em tela. Caso clique em não, nada deve ocorrer.  
</span>**<span style="color: #000000;">2.11 Botão Fechar: </span>**<span style="color: #000000;">Deve encerrar a tela.</span>

##### ***Regras de Negócio:***

**<span style="color: #000000;">1</span>*****<span style="color: #000000;">.</span>*****<span style="color: #000000;">Botão "Inserir": </span>**<span style="color: #000000;">Deve validar se os campos estão preenchidos antes de realizar a inserção na listagem. Se possível inserir, deve ser feito a modificação na base de dados.  
</span>**<span style="color: #000000;">2. Botão "Exclusão" na Listagem</span>[![image-1770835088289.png](https://docs.softensistemas.com.br/uploads/images/gallery/2026-02/scaled-1680-/image-1770835088289.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2026-02/image-1770835088289.png)<span style="color: #000000;">: </span>**<span style="color: #000000;">Se possível, deve excluir o registro do banco.  
</span><span style="color: #000000;">**3. Aplicação automática da tabela de imposto no CT-e:** As tabelas de imposto configuradas deverão ser aplicadas automaticamente ao CT-e durante o preenchimento do documento, desde que os critérios definidos no cadastro da regra sejam atendidos.</span>  
<span style="color: #000000;">A aplicação ocorrerá quando os dados do CT-e coincidirem com os filtros previamente configurados na regra, considerando obrigatoriamente:</span>

- - <span style="color: #000000;">**CFOP** do documento</span>
    - <span style="color: #000000;">**UF de destino**</span>
    - <span style="color: #000000;">**Tipo de CFOP** (Entrada ou Saída)</span>

<span style="color: #000000;">Quando todos os filtros definidos na regra forem satisfeitos, a **tabela de imposto vinculada à configuração deverá ser aplicada automaticamente ao CT-e**, determinando os impostos correspondentes ao documento fiscal. Caso o usuário faça um **preenchimento que não corresponda aos filtros em questão**, **nenhuma tabela deve ser vinculada deixando sem preenchimento os tributos**. Retornar aviso que não há tabela de imposto que satisfaz os critérios do documento fiscal.</span>

```MarkDown
abrir novo CT-e

verificar se existem regras de imposto cadastradas para a empresa

se NÃO existir nenhuma regra:
    buscar último CT-e emitido

    se existir:
        copiar impostos do último CT-e
    senão:
        não preencher impostos automaticamente

se EXISTIR pelo menos uma regra cadastrada:
    validar regra de imposto por critérios no CTe em preenchimento
        critérios:
            empresa_id
            cfop
            uf_destino
            tipo_cfop

    se regra validar:
        aplicar tabela de imposto vinculada à regra

    senão:
        não preencher impostos automaticamente
        exibir aviso:
            "Não foi encontrada regra de imposto compatível com os critérios deste CT-e."
```

#####  

##### ***Questões Técnicas:***

***1. Criar a tabela na base de dados:***

```SQL
CREATE TABLE impostocfopcte (
  id BIGINT,
  empresaId BIGINT,
  cfop char(3),
  uf char(2),
  tbImposto BIGINT,
  tipoCfop BIGINT,
 );
```

©SOFTEN SISTEMAS 2026

# PROC002 - Tabela de Imposto de CTe

<table border="1" id="bkmrk-%C2%A0-projeto%2Fsistema%3Age" style="border-collapse: collapse; width: 100.123%; height: 68px;"><tbody><tr style="border-style: solid;"><td rowspan="3" style="width: 26.6667%; height: 68px; border-color: black; border-top-style: hidden; border-left-style: hidden; border-bottom-style: hidden;">  
[![image-1762776253666.png](https://docs.softensistemas.com.br/uploads/images/gallery/2025-11/scaled-1680-/image-1762776253666.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2025-11/image-1762776253666.png)

</td><td style="width: 49.9999%; height: 10px; border-color: black; border-style: solid;"><span style="color: #000000;">**Projeto/Sistema:**</span>  
<span style="color: #000000;">CTe - GerencieAqui</span></td><td class="align-center" style="width: 23.3333%; height: 10px; border-color: black; border-style: solid;"><span style="color: #000000;">**Versão do *Template:***</span>  
<span style="color: #000000;">1.2</span></td></tr><tr style="border-style: solid;"><td style="width: 49.9999%; height: 29px; border-color: black; border-style: solid;"><span style="color: #000000;">**Processo:**</span>  
PROC002 - Tabela de Imposto de CTe

</td><td class="align-center" style="width: 23.3333%; height: 29px; border-color: black; border-style: solid;"><span style="color: #000000;">**Versão do Documento:**</span>  
<span style="color: #000000;">1.0</span></td></tr><tr style="border-style: solid;"><td style="width: 49.9999%; height: 29px; border-color: black; border-style: solid;"><span style="color: #000000;">**Responsável(eis):** </span>  
<span style="color: #000000;">Luís Leite</span></td><td class="align-center" style="width: 23.3333%; height: 29px; border-color: black; border-style: solid;"><span style="color: #000000;">**Data:** </span>

<span style="color: #000000;">13/02/2026</span>

</td></tr></tbody></table>

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

<span style="color: #000000;">**Este processo visa demonstrar a criação da tabela de impostos por CFOP para o CTe**</span>

##### <span style="color: #000000;">**2. Processo** </span>

<table cellpadding="9" cellspacing="0" id="bkmrk-processo-envolvidos-" style="width: 100%;" width="100%"><tbody><tr valign="top"><td bgcolor="#acb9ca" style="width: 27%; border-style: solid; border-color: black;" width="27%"><span style="color: #000000;">**Processo**</span>

</td><td bgcolor="#acb9ca" style="width: 19%; border-style: solid; border-color: black;" width="19%"><span style="color: #000000;">**Envolvidos**</span>

</td><td bgcolor="#acb9ca" style="width: 27%; border-style: solid; border-color: black;" width="27%"><span style="color: #000000;">**Dados de Entrada**</span>

</td><td bgcolor="#acb9ca" style="width: 27%; border-style: solid; border-color: black;" width="27%"><span style="color: #000000;">**Dados de Saída**</span>

</td></tr><tr valign="top"><td style="width: 27%; border-style: solid; border-color: black;" width="27%"><span style="color: #000000;">PROC001-Imposto por CFOP no CTe</span>

</td><td style="width: 19%; border-style: solid; border-color: black;" width="19%"></td><td style="width: 27%; border-style: solid; border-color: black;" width="27%"><span style="color: #000000;">Regra de Impostos</span>

</td><td style="width: 27%; border-style: solid; border-color: black;" width="27%"><span style="color: #000000;">Configurações de impostos de tabela de imposto e CFOP</span>

</td></tr><tr><td style="border-style: solid; border-color: black; width: 27%;"><span style="font-size: small; color: #000000;">PROC002 - Tabela de Imposto de CTe</span>

</td><td style="border-style: solid; border-color: black; width: 19%;"><span style="font-size: small; color: #000000;"> </span>

</td><td style="border-style: solid; border-color: black; width: 27%;"><span style="font-size: small; color: #000000;">Parametrização de impostos</span>

</td><td style="border-style: solid; border-color: black; width: 27%;"><span style="font-size: small; color: #000000;">Tabela de imposto cadastrada</span>

</td></tr><tr><td style="border-style: solid; border-color: black; width: 27%;"><span style="font-size: small; color: #000000;">PROC003 - Tabela de Imposto de CTe - Reforma Tributária</span>

</td><td style="border-style: solid; border-color: black; width: 19%;"><span style="font-size: small; color: #000000;"> </span>

</td><td style="border-style: solid; border-color: black; width: 27%;"><span style="font-size: small; color: #000000;">Parametrização de impostos</span>

</td><td style="border-style: solid; border-color: black; width: 27%;"><span style="font-size: small; color: #000000;">Tabela de imposto cadastrada</span>

</td></tr></tbody></table>

#### **Processos Relacionados**

[PROC001 - Imposto por CFOP no CTe](https://docs.softensistemas.com.br/books/cte/page/proc001-imposto-por-cfop-no-cte)

[PROC003 - Tabela de Imposto de CTe - Reforma Tributária](https://docs.softensistemas.com.br/books/cte/page/proc003-tabela-de-imposto-de-cte-reforma-tributaria)

#### **Especificação Funcional**

- - - - - -

#### **PROC002 Dialog de seleção de tabela de Imposto:**

##### ***Protótipo de Tela:***

[![image-1771588509558.png](https://docs.softensistemas.com.br/uploads/images/gallery/2026-02/scaled-1680-/image-1771588509558.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2026-02/image-1771588509558.png)

*Imagem I - Dialog de seleção de tabela de imposto*

##### ***Descrição dos Campos:***

<table border="1" cellpadding="7" cellspacing="0" id="bkmrk-campo-tipo-tamanho-o"><tbody><tr style="height: 35px;" valign="top"><td bgcolor="#acb9ca" style="width: 168px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Campo**</span>

</td><td bgcolor="#acb9ca" style="width: 102px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Tipo**</span>

</td><td bgcolor="#acb9ca" style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Tamanho**</span>

</td><td bgcolor="#acb9ca" style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Obrig. ?**</span>

</td><td bgcolor="#acb9ca" style="width: 119px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Máscara**</span>

</td><td bgcolor="#acb9ca" style="width: 201px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Observações**</span>

</td></tr><tr style="height: 35px;"><td style="width: 168px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">NFe</span>

</td><td style="width: 102px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Botão</span>

</td><td style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">-</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">-</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;">-

</td><td style="width: 201px; border-style: solid; border-color: black; height: 35px;">-

</td></tr><tr style="height: 35px;"><td style="width: 168px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">CTe</span>

</td><td style="width: 102px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Botão</span>

</td><td style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">-</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">-</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;">-

</td><td style="width: 201px; border-style: solid; border-color: black; height: 35px;">-

</td></tr></tbody></table>

##### ***Regras de Interface:***

1\. Deve conter o texto de mensagem:   
"Considerando os módulos fiscais habilitados na empresa, selecione o tipo de tabela de imposto para cadastro:"

##### ***Regras de Negócio:***

***1.*** Esse fluxo só deve ser iniciado caso a empresa possua os dois módulos habilitados no sistema, ou seja, NF-e e CT-e**. Caso tenha apenas NF-e, deve seguir com o fluxo de abertua da tela de impostos de NFe (fluxo atual).**  
**Caso tenha apenas CT-e, deve seguinte o PROC002.1 Tabela de Imposto de CTe.**

**2.Botão NFe:**  
Deve dar continuidade com o fluxo já existente da tabela de imposto, abrindo a tela atual de cadastro de imposto.

**3.Botão CTe:**  
Dar continuidade no processo "PROC002.1 Tabela de Imposto de CTe" desta documentação.

**3**.No banco de dados será identificado o tipo da tabela.

##### ***Questões Técnicas:***

**1.** Criar identificador na tabela de imposto na base de dados:

```SQL
ALTER TABLE imposto ADD tipoTabela INT;
```

#### **PROC002.1 Tabela de Imposto de CTe**

##### ***Protótipo de Tela:***

[![image-1773407414807.png](https://docs.softensistemas.com.br/uploads/images/gallery/2026-03/scaled-1680-/image-1773407414807.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2026-03/image-1773407414807.png)

*Imagem I - Tabela de Imposto ICMS*

[![image-1770993280307.png](https://docs.softensistemas.com.br/uploads/images/gallery/2026-02/scaled-1680-/image-1770993280307.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2026-02/image-1770993280307.png)

*Imagem II - Accordion imposto ICMS ST*

##### ***Descrição dos Campos:***

<table border="1" cellpadding="7" cellspacing="0" id="bkmrk-campo-tipo-tamanho-o-0" style="width: 843px; height: 245px;"><tbody><tr style="height: 35px;" valign="top"><td bgcolor="#acb9ca" style="width: 168px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Campo**</span>

</td><td bgcolor="#acb9ca" style="width: 102px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Tipo**</span>

</td><td bgcolor="#acb9ca" style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Tamanho**</span>

</td><td bgcolor="#acb9ca" style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Obrig. ?**</span>

</td><td bgcolor="#acb9ca" style="width: 119px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Máscara**</span>

</td><td bgcolor="#acb9ca" style="width: 201px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Observações**</span>

</td></tr><tr style="height: 35px;"><td style="width: 168px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Nome da Tabela\*</span>

</td><td style="width: 102px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Texto</span>

</td><td style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">100</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Sim</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;">-

</td><td style="width: 201px; border-style: solid; border-color: black; height: 35px;">-

</td></tr><tr style="height: 35px;"><td style="width: 168px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Situação Tributária</span>

</td><td style="width: 102px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Select</span>

</td><td style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">-</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">-</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;">-

</td><td style="width: 201px; border-style: solid; border-color: black; height: 35px;">-

</td></tr><tr style="height: 35px;"><td style="width: 168px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Perc. da BC do ICMS</span>

</td><td style="width: 102px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Decimal</span>

</td><td style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">3v2</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Sim</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;">0,00

</td><td style="width: 201px; border-style: solid; border-color: black; height: 35px;">-

</td></tr><tr style="height: 35px;"><td style="width: 168px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Perc. do ICMS</span>

</td><td style="width: 102px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Decimal</span>

</td><td style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">3v2</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Sim</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;">0,00

</td><td style="width: 201px; border-style: solid; border-color: black; height: 35px;">-

</td></tr><tr style="height: 35px;"><td style="width: 168px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Perc. BC da ST</span>

</td><td style="width: 102px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Decimal</span>

</td><td style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">3v2</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Sim</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;">0,00

</td><td style="width: 201px; border-style: solid; border-color: black; height: 35px;">-

</td></tr><tr style="height: 35px;"><td style="width: 168px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Perc. do ICMS ST</span>

</td><td style="width: 102px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Decimal</span>

</td><td style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">3v2</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Sim</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;">0,00

</td><td style="width: 201px; border-style: solid; border-color: black; height: 35px;">-

</td></tr></tbody></table>

##### ***Regras de Interface:***

***1. A dialog deve conter a identificação do tipo de tabela de imposto, "Nova Tabela de Imposto de CTe" para o CTe e "Nova Tabela de Imposto de NFe" para as Notas Fiscais.***

***2. Situação Tributária:*** Deve conter as seguintes CSTs

<table border="1" class="align-center" id="bkmrk-00---trib.-normal-ic" style="border-collapse: collapse; width: 39.3827%; height: 113px;"><tbody><tr><td style="width: 100%; border-style: solid; border-color: black;"><span style="color: #000000;">00 - Trib. Normal ICMS</span></td></tr><tr><td style="width: 100%; border-style: solid; border-color: black;"><span style="color: #000000;">20 - Trib. com BC reduzida do ICMS</span></td></tr><tr><td style="width: 100%; border-style: solid; border-color: black;"><span style="color: #000000;">40 - ICMS isenção</span></td></tr><tr><td style="width: 100%; border-style: solid; border-color: black;"><span style="color: #000000;">51 - ICMS diferido</span></td></tr><tr><td style="width: 100%; border-style: solid; border-color: black;"><span style="color: #000000;">60 - ICMS recolhido por 3 por ST</span></td></tr><tr><td style="width: 100%; border-style: solid; border-color: black;"><span style="color: #000000;">90 - ICMS outros</span></td></tr><tr><td style="width: 100%; border-style: solid; border-color: black;"><span style="color: #000000;">SN - Simples Nacional</span></td></tr></tbody></table>

**3.** Os campos de preenchimento do percentual dos tributos devem iniciar com valor zero (0,00), não deve ser permitido deixar em branco/nulo.

**4. *Botão Excluir:*** Só deve ser renderizado ao abrir em edição uma tabela já salva em banco. Deve apresentar a mensagem de confirmação para o usuário **"**Você realmente deseja excluir este registro?" Caso clique em não, deve ser finalizada a tela de aviso. Caso clique em sim e seja possível a exclusão, deve ser retornado o aviso:

<p class="callout success">Excluído com sucesso!</p>

Caso não seja possível:

<p class="callout danger">Não foi possível excluir! Este registro está vinculado a outras operações</p>

<div aria-describedby="frmConfirmar:j_idt107_content" aria-hidden="false" aria-labelledby="frmConfirmar:j_idt107_title" aria-live="polite" aria-modal="true" id="bkmrk-5.-bot%C3%A3o-salvar%3Adeve"><div>**5. *Botão Salvar:*** Deve ser validado os campos e seus preenchimento, se for possível salvar, deve ser retornado o aviso:</div></div><div id="bkmrk--3"></div><p class="callout success">Salvo com sucesso!</p>

Caso seja alteração:

<p class="callout success"> Alterado com sucesso!</p>

Caso não seja possível:

<p class="callout danger">Não foi possível salvar! Verifique o preenchimento dos campos.</p>

##### ***Regras de Negócio:***

***1. Botão Excluir:*** Deve validar se existe vinculo na base de dados, caso exista, não deve ser feito nenhuma alteração. Permitida a exclusão, deve ser deletado o registro do banco de dados.

***2. Botão Salvar:*** Caso seja um novo cadastro, deve ser criado um novo registro no banco. Se for uma edição, o registro respectivo deve ser atualizado.

##### ***Questões Técnicas:***

***1. A tabela onde devem ser consultadas, salvas e alteradas as informações é 'imposto'***

©SOFTEN SISTEMAS 2026

# PROC003 - Tabela de Imposto de CTe - Reforma Tributária

<table border="1" id="bkmrk-%C2%A0-projeto%2Fsistema%3Age" style="border-collapse: collapse; width: 100.123%; height: 68px;"><tbody><tr style="border-style: solid;"><td rowspan="3" style="width: 26.6667%; height: 68px; border-color: black; border-top-style: hidden; border-left-style: hidden; border-bottom-style: hidden;">  
[![image-1762776253666.png](https://docs.softensistemas.com.br/uploads/images/gallery/2025-11/scaled-1680-/image-1762776253666.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2025-11/image-1762776253666.png)

</td><td style="width: 49.9999%; height: 10px; border-color: black; border-style: solid;"><span style="color: #000000;">**Projeto/Sistema:**</span>  
<span style="color: #000000;">CTe - GerencieAqui</span></td><td class="align-center" style="width: 23.3333%; height: 10px; border-color: black; border-style: solid;"><span style="color: #000000;">**Versão do *Template:***</span>  
<span style="color: #000000;">1.2</span></td></tr><tr style="border-style: solid;"><td style="width: 49.9999%; height: 29px; border-color: black; border-style: solid;"><span style="color: #000000;">**Processo:**</span>  
PROC003 - Tabela de Imposto de CTe - Reforma Tributária</td><td class="align-center" style="width: 23.3333%; height: 29px; border-color: black; border-style: solid;"><span style="color: #000000;">**Versão do Documento:**</span>  
<span style="color: #000000;">1.0</span></td></tr><tr style="border-style: solid;"><td style="width: 49.9999%; height: 29px; border-color: black; border-style: solid;"><span style="color: #000000;">**Responsável(eis):** </span>  
<span style="color: #000000;">Luís Leite</span></td><td class="align-center" style="width: 23.3333%; height: 29px; border-color: black; border-style: solid;"><span style="color: #000000;">**Data:** </span>

<span style="color: #000000;">13/02/2026</span>

</td></tr></tbody></table>

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

<span style="color: #000000;">**Este processo visa demonstrar a criação da tabela de impostos por CFOP para o CTe**</span>

##### <span style="color: #000000;">**2. Processo** </span>

<table cellpadding="9" cellspacing="0" id="bkmrk-processo-envolvidos-" style="width: 100%;" width="100%"><tbody><tr valign="top"><td bgcolor="#acb9ca" style="width: 27%; border-style: solid; border-color: black;" width="27%"><span style="color: #000000;">**Processo**</span>

</td><td bgcolor="#acb9ca" style="width: 19%; border-style: solid; border-color: black;" width="19%"><span style="color: #000000;">**Envolvidos**</span>

</td><td bgcolor="#acb9ca" style="width: 27%; border-style: solid; border-color: black;" width="27%"><span style="color: #000000;">**Dados de Entrada**</span>

</td><td bgcolor="#acb9ca" style="width: 27%; border-style: solid; border-color: black;" width="27%"><span style="color: #000000;">**Dados de Saída**</span>

</td></tr><tr valign="top"><td style="width: 27%; border-style: solid; border-color: black;" width="27%"><span style="color: #000000;">PROC001-Imposto por CFOP no CTe</span>

</td><td style="width: 19%; border-style: solid; border-color: black;" width="19%"></td><td style="width: 27%; border-style: solid; border-color: black;" width="27%"><span style="color: #000000;">Regra de Impostos</span>

</td><td style="width: 27%; border-style: solid; border-color: black;" width="27%"><span style="color: #000000;">Configurações de impostos de tabela de imposto e CFOP</span>

</td></tr><tr><td style="border-style: solid; border-color: black; width: 27%;"><span style="font-size: small; color: #000000;">PROC002 - Tabela de Imposto de CTe</span>

</td><td style="border-style: solid; border-color: black; width: 19%;"><span style="font-size: small; color: #000000;"> </span>

</td><td style="border-style: solid; border-color: black; width: 27%;"><span style="font-size: small; color: #000000;">Parametrização de impostos</span>

</td><td style="border-style: solid; border-color: black; width: 27%;"><span style="font-size: small; color: #000000;">Tabela de imposto cadastrada</span>

</td></tr><tr><td style="border-style: solid; border-color: black; width: 27%;"><span style="font-size: small; color: #000000;">PROC003 - Tabela de Imposto de CTe - Reforma Tributária</span>

</td><td style="border-style: solid; border-color: black; width: 19%;"><span style="font-size: small; color: #000000;"> </span>

</td><td style="border-style: solid; border-color: black; width: 27%;"><span style="font-size: small; color: #000000;">Parametrização de impostos</span>

</td><td style="border-style: solid; border-color: black; width: 27%;"><span style="font-size: small; color: #000000;">Tabela de imposto cadastrada</span>

</td></tr></tbody></table>

#### **Processos Relacionados**

[PROC001 - Imposto por CFOP no CTe](https://docs.softensistemas.com.br/books/cte/page/proc001-imposto-por-cfop-no-cte)

[PROC002 - Tabela de Imposto de CTe](https://docs.softensistemas.com.br/books/cte/page/proc002-tabela-de-imposto-de-cte)

#### **Especificação Funcional**

- - - - - -

#### **PROC003 - Tabela de Imposto de CTe - Reforma Tributária:**

##### ***Protótipo de Tela:***

[![image-1773407908225.png](https://docs.softensistemas.com.br/uploads/images/gallery/2026-03/scaled-1680-/image-1773407908225.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2026-03/image-1773407908225.png)

*Imagem I - Tabela de Imposto da rtc*

[![image-1771420354414.png](https://docs.softensistemas.com.br/uploads/images/gallery/2026-02/scaled-1680-/image-1771420354414.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2026-02/image-1771420354414.png)

*Imagem II - Accordion imposto IBS e CBS*

[![image-1771422702198.png](https://docs.softensistemas.com.br/uploads/images/gallery/2026-02/scaled-1680-/image-1771422702198.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2026-02/image-1771422702198.png)

*Imagem III - Accordion Diferido*

[![image-1771518341674.png](https://docs.softensistemas.com.br/uploads/images/gallery/2026-02/scaled-1680-/image-1771518341674.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2026-02/image-1771518341674.png)

*Imagem IV - Accordion Estorno de Crédito*

##### ***Descrição dos Campos:***

<table border="1" cellpadding="7" cellspacing="0" id="bkmrk-campo-tipo-tamanho-o" style="width: 843px; height: 460px;"><tbody><tr style="height: 35px;" valign="top"><td bgcolor="#acb9ca" style="width: 169px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Campo**</span>

</td><td bgcolor="#acb9ca" style="width: 101px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Tipo**</span>

</td><td bgcolor="#acb9ca" style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Tamanho**</span>

</td><td bgcolor="#acb9ca" style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Obrig. ?**</span>

</td><td bgcolor="#acb9ca" style="width: 119px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Máscara**</span>

</td><td bgcolor="#acb9ca" style="width: 201px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Observações**</span>

</td></tr><tr style="height: 35px;"><td style="width: 169px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Nome da Tabela\*</span>

</td><td style="width: 101px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Texto</span>

</td><td style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">100</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Sim</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;">-

</td><td style="width: 201px; border-style: solid; border-color: black; height: 35px;">-

</td></tr><tr style="height: 35px;"><td style="width: 169px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Situação Tributária</span>

</td><td style="width: 101px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Select</span>

</td><td style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">-</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Sim</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;">-

</td><td style="width: 201px; border-style: solid; border-color: black; height: 35px;">-

</td></tr><tr style="height: 35px;"><td style="width: 169px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Classificação Tributária</span>

</td><td style="width: 101px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Select</span>

</td><td style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;"> -</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Sim </span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;">-

</td><td style="width: 201px; border-style: solid; border-color: black; height: 35px;">-

</td></tr><tr style="height: 35px;"><td style="width: 169px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;"> Perc. Da BC:</span>

</td><td style="width: 101px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;"> Decimal</span>

</td><td style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">3v2 </span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Sim</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;"></td><td style="width: 201px; border-style: solid; border-color: black; height: 35px;"></td></tr><tr style="height: 35px;"><td style="width: 169px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">IBS e CBS</span>

</td><td style="width: 101px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Accordion</span>

</td><td style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;"> -</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;"> -</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;">-

</td><td style="width: 201px; border-style: solid; border-color: black; height: 35px;">-

</td></tr><tr style="height: 35px;"><td style="width: 169px; height: 35px; border-style: solid; border-color: black;">Aliq. IBS Estadual

</td><td style="width: 101px; height: 35px; border-style: solid; border-color: black;"><span style="color: #000000;">Decimal</span>

</td><td style="width: 88px; height: 35px; border-style: solid; border-color: black;">3v2

</td><td style="width: 165px; height: 35px; border-style: solid; border-color: black;"><span style="color: #000000;">Sim</span>

</td><td style="width: 119px; height: 35px; border-style: solid; border-color: black;">-

</td><td style="width: 201px; height: 35px; border-style: solid; border-color: black;">-

</td></tr><tr style="height: 35px;"><td style="width: 169px; border-style: solid; border-color: black; height: 35px;">Red. Alíquota UF</td><td style="width: 101px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Decimal</span>

</td><td style="width: 88px; border-style: solid; border-color: black; height: 35px;">3v2

</td><td style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Sim</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;"></td><td style="width: 201px; border-style: solid; border-color: black; height: 35px;"></td></tr><tr style="height: 55px;"><td style="width: 169px; height: 55px; border-style: solid; border-color: black;">Aliq. IBS Municipal </td><td style="width: 101px; height: 55px; border-style: solid; border-color: black;"><span style="color: #000000;">Decimal</span>

</td><td style="width: 88px; height: 55px; border-style: solid; border-color: black;">3v2

</td><td style="width: 165px; height: 55px; border-style: solid; border-color: black;"><span style="color: #000000;">Sim</span>

</td><td style="width: 119px; height: 55px; border-style: solid; border-color: black;">-

</td><td style="width: 201px; height: 55px; border-style: solid; border-color: black;">-

</td></tr><tr style="height: 55px;"><td style="width: 169px; border-style: solid; border-color: black; height: 55px;"><span style="color: #000000;">Red. Alíquota Mun.</span>

</td><td style="width: 101px; height: 55px; border-style: solid; border-color: black;"><span style="color: #000000;">Decimal</span>

</td><td style="width: 88px; height: 55px; border-style: solid; border-color: black;">3v2

</td><td style="width: 165px; height: 55px; border-style: solid; border-color: black;"><span style="color: #000000;">Sim</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 55px;"></td><td style="width: 201px; border-style: solid; border-color: black; height: 55px;"></td></tr><tr style="height: 35px;"><td style="width: 169px; border-style: solid; border-color: black; height: 35px;">Aliq. CBS</td><td class="align-center" style="width: 101px; border-style: solid; border-color: black; height: 35px;">Decimal</td><td class="align-center" style="width: 88px; border-style: solid; border-color: black; height: 35px;">3v2</td><td class="align-center" style="width: 165px; border-style: solid; border-color: black; height: 35px;">Sim</td><td class="align-center" style="width: 119px; border-style: solid; border-color: black; height: 35px;">-</td><td class="align-center" style="width: 201px; border-style: solid; border-color: black; height: 35px;">-</td></tr><tr style="height: 35px;"><td style="width: 169px; border-style: solid; border-color: black; height: 35px;">Red. Aliq. CBS</td><td class="align-center" style="width: 101px; border-style: solid; border-color: black; height: 35px;">Decimal</td><td class="align-center" style="width: 88px; border-style: solid; border-color: black; height: 35px;">3v2</td><td class="align-center" style="width: 165px; border-style: solid; border-color: black; height: 35px;">Sim</td><td class="align-center" style="width: 119px; border-style: solid; border-color: black; height: 35px;">-</td><td class="align-center" style="width: 201px; border-style: solid; border-color: black; height: 35px;">-</td></tr><tr style="height: 35px;"><td style="width: 169px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Diferido</span>

</td><td style="width: 101px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">Accordion</span>

</td><td style="width: 88px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;"> -</span>

</td><td style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;"> -</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;">-

</td><td style="width: 201px; border-style: solid; border-color: black; height: 35px;">-

</td></tr><tr><td style="width: 169px; border-style: solid; border-color: black;"><span style="color: #000000;">Diferido IBS UF</span>

</td><td style="width: 101px; border-style: solid; border-color: black;"><span style="color: #000000;">Decimal</span>

</td><td style="width: 88px; border-style: solid; border-color: black;"><span style="color: #000000;">3v2</span>

</td><td style="width: 165px; border-style: solid; border-color: black;"><span style="color: #000000;">Sim</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;">-

</td><td style="width: 201px; border-style: solid; border-color: black; height: 35px;">-

</td></tr><tr><td style="width: 169px; border-style: solid; border-color: black;"><span style="color: #000000;">Diferido IBS Municipal</span>

</td><td style="width: 101px; border-style: solid; border-color: black;"><span style="color: #000000;">Decimal</span>

</td><td style="width: 88px; border-style: solid; border-color: black;"><span style="color: #000000;">3v2</span>

</td><td style="width: 165px; border-style: solid; border-color: black;"><span style="color: #000000;">Sim</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;">-

</td><td style="width: 201px; border-style: solid; border-color: black; height: 35px;">-

</td></tr><tr><td style="width: 169px; border-style: solid; border-color: black;"><span style="color: #000000;">Diferido CBS</span>

</td><td style="width: 101px; border-style: solid; border-color: black;"><span style="color: #000000;">Decimal</span>

</td><td style="width: 88px; border-style: solid; border-color: black;"><span style="color: #000000;">3v2</span>

</td><td style="width: 165px; border-style: solid; border-color: black;"><span style="color: #000000;">Sim</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;">-

</td><td style="width: 201px; border-style: solid; border-color: black; height: 35px;">-

</td></tr><tr><td style="width: 169px; border-style: solid; border-color: black;"><span style="color: #000000;">Estorno de Crédito</span>

</td><td style="width: 101px; border-style: solid; border-color: black;"><span style="color: #000000;">Accordion</span>

</td><td style="width: 88px; border-style: solid; border-color: black;"><span style="color: #000000;"> </span>

</td><td style="width: 165px; border-style: solid; border-color: black;"><span style="color: #000000;"> </span>

</td><td style="width: 119px; border-style: solid; border-color: black;"></td><td style="width: 201px; border-style: solid; border-color: black;"></td></tr><tr><td style="width: 169px; border-style: solid; border-color: black;"><span style="color: #000000;">Perc. IBS Estorno</span>

</td><td style="width: 101px; border-style: solid; border-color: black;"><span style="color: #000000;">Decimal</span>

</td><td style="width: 88px; border-style: solid; border-color: black;"><span style="color: #000000;">3v2</span>

</td><td style="width: 165px; border-style: solid; border-color: black;"><span style="color: #000000;">Sim</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;">-

</td><td style="width: 201px; border-style: solid; border-color: black; height: 35px;">-

</td></tr><tr><td style="width: 169px; border-style: solid; border-color: black;"><span style="color: #000000;">Perc. CBS Estorno</span>

</td><td style="width: 101px; border-style: solid; border-color: black;"><span style="color: #000000;">Decimal</span>

</td><td style="width: 88px; border-style: solid; border-color: black;"><span style="color: #000000;">3v2</span>

</td><td style="width: 165px; border-style: solid; border-color: black;"><span style="color: #000000;">Sim</span>

</td><td style="width: 119px; border-style: solid; border-color: black; height: 35px;">-

</td><td style="width: 201px; border-style: solid; border-color: black; height: 35px;">-

</td></tr></tbody></table>

##### ***Regras de Interface:***

**1.** Os campos de preenchimento do percentual dos tributos devem iniciar com valor zero (0,00), não deve ser permitido deixar em branco/nulo.

**2. *Botão Excluir:*** Só deve ser renderizado ao abrir em edição uma tabela já salva em banco. Deve apresentar a mensagem de confirmação para o usuário **"**Você realmente deseja excluir este registro?" Caso clique em não, deve ser finalizada a tela de aviso. Caso clique em sim e seja possível a exclusão, deve ser retornado o aviso:

<p class="callout success">Excluído com sucesso!</p>

Caso não seja possível:

<p class="callout danger">Não foi possível excluir! Este registro está vinculado a outras operações</p>

<div aria-describedby="frmConfirmar:j_idt107_content" aria-hidden="false" aria-labelledby="frmConfirmar:j_idt107_title" aria-live="polite" aria-modal="true" id="bkmrk-4.-bot%C3%A3o-salvar%3Adeve"><div>**4. *Botão Salvar:*** Deve ser validado os campos e seus preenchimento, se for possível salvar, deve ser retornado o aviso:</div></div><div id="bkmrk--0"></div><p class="callout success">Salvo com sucesso!</p>

Caso seja alteração:

<p class="callout success"> Alterado com sucesso!</p>

Caso não seja possível:

<p class="callout danger">Não foi possível salvar! Verifique o preenchimento dos campos.</p>

<span style="color: #000000; background-color: #ccffcc;">***5. Accordion de Estorno de Crédito ainda precisa ser adicionado ao CTe.***</span>

##### ***Regras de Negócio:***

***1. Botão Excluir:*** Deve validar se existe vinculo na base de dados, caso exista, não deve ser feito nenhuma alteração. Permitida a exclusão, deve ser deletado o registro do banco de dados.

***2. Botão Salvar:*** Caso seja um novo cadastro, deve ser criado um novo registro no banco. Se for uma edição, o registro respectivo deve ser atualizado.

##### ***Questões Técnicas:***

***1. A tabela onde devem ser consultadas, salvas e alteradas as informações é 'impostortc'***

©SOFTEN SISTEMAS 2026

