# 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