CTe

Alterar Endereço do Recebedor

Alterar Endereço do Recebedor

PROC001 Alterar Endereço do Recebedor


image-1762776253666.png

Projeto/Sistema:
CTe-GerencieAqui
Versão do Template:
1.2
Processo:
PROC001 Alterar Endereço do Recebedor
Versão do Documento:
1.0
Responsável(eis): 
Luís Leite

Data: 

09/02/2026

1. Introdução

Este processo visa exemplificar a criação da função de informar endereço alternativo do recebedor no CTe.

2. Processo

Processo

Envolvidos

Dados de Entrada

Dados de Saída

PROC001 Alterar Endereço do Recebedor:

-

Dados de endereço do Recebedor

Informação salva em banco e emitida em XML

Especificação Funcional


PROC001 Alterar Endereço do Recebedor:

Protótipo de Tela:

image-1770646566278.jpg

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

image-1770655866140.png

Imagem II - Dialog que deve ser aberta

Descrição dos Campos:

Campo

Tipo

Tamanho

Obrig. ?

Máscara

Observações

Alterar Endereço do Recebedor

Botão

-

-

-

-

 

CEP*

Texto

8

Sim

000.000-000

-

Cidade*

Texto

7

Sim

-

-

Logradouro*

Texto

2-255

Sim

-

-

Nº*

Texto

1-60

Sim

-

-

Bairro*

Texto

2-60

Sim

-

-

Excluir

Botão

-

-

-

-

Salvar

Botão

-

-

-

-

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:

Endereço do Tomador alterado com sucesso!

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:

Erro ao salvar, confira o preenchimento dos campos!

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:

Endereço alternativo retirado.

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

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 <enderReceb>, por padrão vão ir com os dados do cadastro, devem ser informados os dados de endereço alternativo caso estejam preenchidos.

<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

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

PROC001 - Importar múltiplos XMLs de NFe no CTe


image-1762776253666.png

Projeto/Sistema:
GerencieAqui
Versão do Template:
1.2
Processo:
PROC001 - Importar múltiplos XMLs de NFe no CTe
Versão do Documento:
1.0
Responsável(eis): 
Luís Leite

Data: 

09/01/2026

1. Introdução

Este processo visa exemplificar a documentação padrão

Processo

Envolvidos

Dados de Entrada

Dados de Saída

PROC001 - Importar múltiplos XMLs de NFe no CTe

-

Lista de arquivos XMLs

Informações salvas no banco de dados

Especificação Funcional


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

Tela:

image-1767961553705.png

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

Descrição dos Campos:

Campo

Tipo

Tamanho

Obrig. ?

Máscara

Observações

+ Importar XML

Botão

-

-

-

-

Regras de Interface:

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

Erro de importação, selecione 20 ou menos XMLs!

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

©SOFTEN SISTEMAS 2026

Configuração de imposto por CFOP

Configuração de imposto por CFOP

PROC001-Imposto por CFOP no CTe


image-1762776253666.png

Projeto/Sistema:
CTe - GerencieAqui
Versão do Template:
1.2
Processo:
PROC001 -Imposto por CFOP no CTe
Versão do Documento:
1.0
Responsável(eis): 
Luís Leite

Data: 

11/01/2026

1. Introdução

Este processo visa demonstrar a criação da tabela de impostos por CFOP para o CTe

2. Processo

Processo

Envolvidos

Dados de Entrada

Dados de Saída

PROC001-Imposto por CFOP no CTe

 

Regra de Impostos

Configurações de impostos de tabela de imposto e CFOP

PROC002 - Tabela de Imposto de CTe

 

Parametrização de impostos

Tabela de imposto cadastrada

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

 

Parametrização de impostos

Tabela de imposto cadastrada

Processos Relacionados

PROC002 - Tabela de Imposto de CTe

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

Especificação Funcional


PROC001-Imposto por CFOP no CTe:

Protótipo de Tela:

image-1770826756457.png

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

image-1774459872794.png

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

Descrição dos Campos:

Campo

Tipo

Tamanho

Obrig. ?

Máscara

Observações

Configurar CFOP

Botão

-

-

-

 

Configuração de Imposto CFOP - CTe

CFOP

Texto

3

-

-

-

UF

Texto

2

 

 

 

Tabela de Imposto

Select

-

-

-

-

Tipo CFOP

Select

-

-

-

-

Inserir

Botão

-

-

-

-

CFOP

Column Header

-

-

-

-

UF

Column Header

-

-

-

-

Tabela de Imposto

Column Header

-

-

-

-

Tipo CFOP

Column Header -

-

-

-

Botão de Exclusão

Column Header -

-

-

image-1770835066467.png

Fechar Botão -

-

-

-

Salvar

Botão

-

-

-

-

Regras de Interface:

1. Botão "Configurar CFOP":
Deve abrir a Dialog de configuração de Imposto CFOP - CTe.

2. Dialog "Configuração de Imposto CFOP - CTe" (Imagem II)

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.

2.3 Tabela de Imposto: Deve carregar todas as tabelas de impostos cadastradas na empresa.
2.4 Tipo CFOP:
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:

Erro! Verifique o preenchimento dos campos.

2.6 Listagem CFOP: Deve permitir a ordenação ASC e DESC.
2.7 Listagem UF:
Deve permitir a ordenação ASC e DESC.
2.8 Listagem Tabela de Imposto:
Deve permitir a ordenação ASC e DESC.
2.9 Listagem Tipo CFOP:
Deve permitir a ordenação ASC e DESC.
2.10 Botão "Exclusão" na Listagemimage-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.
2.11 Botão Fechar: Deve encerrar a tela.

Regras de Negócio:

1.Botão "Inserir": 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.
2. Botão "Exclusão" na Listagemimage-1770835088289.pngSe possível, deve excluir o registro do banco.
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.

A aplicação ocorrerá quando os dados do CT-e coincidirem com os filtros previamente configurados na regra, considerando obrigatoriamente:

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.

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:

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

©SOFTEN SISTEMAS 2026

Configuração de imposto por CFOP

PROC002 - Tabela de Imposto de CTe


image-1762776253666.png

Projeto/Sistema:
CTe - GerencieAqui
Versão do Template:
1.2
Processo:

PROC002 - Tabela de Imposto de CTe

Versão do Documento:
1.0
Responsável(eis): 
Luís Leite

Data: 

13/02/2026

1. Introdução

Este processo visa demonstrar a criação da tabela de impostos por CFOP para o CTe

2. Processo 

Processo

Envolvidos

Dados de Entrada

Dados de Saída

PROC001-Imposto por CFOP no CTe

 

Regra de Impostos

Configurações de impostos de tabela de imposto e CFOP

PROC002 - Tabela de Imposto de CTe

 

Parametrização de impostos

Tabela de imposto cadastrada

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

 

Parametrização de impostos

Tabela de imposto cadastrada

Processos Relacionados

PROC001 - Imposto por CFOP no CTe

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

Especificação Funcional


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

Protótipo de Tela:

image-1771588509558.png

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

Descrição dos Campos:

Campo

Tipo

Tamanho

Obrig. ?

Máscara

Observações

NFe

Botão

-

-

-

-

CTe

Botão

-

-

-

-

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:

ALTER TABLE imposto ADD tipoTabela INT;

PROC002.1 Tabela de Imposto de CTe

Protótipo de Tela:

image-1773407414807.png

 

Imagem I - Tabela de Imposto ICMS

image-1770993280307.png

Imagem II - Accordion imposto ICMS ST

Descrição dos Campos:

Campo

Tipo

Tamanho

Obrig. ?

Máscara

Observações

Nome da Tabela*

Texto

100

Sim

-

-

Situação Tributária

Select

-

-

-

-

Perc. da BC do ICMS

Decimal

3v2

Sim

0,00

-

Perc. do ICMS

Decimal

3v2

Sim

0,00

-

Perc. BC da ST

Decimal

3v2

Sim

0,00

-

Perc. do ICMS ST

Decimal

3v2

Sim

0,00

-

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

00 - Trib. Normal ICMS
20 - Trib. com BC reduzida do ICMS
40 - ICMS isenção
51 - ICMS diferido
60 - ICMS recolhido por 3 por ST
90 - ICMS outros
SN - Simples Nacional

 

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:

Excluído com sucesso!

Caso não seja possível:

Não foi possível excluir! Este registro está vinculado a outras operações

5. Botão Salvar:
Deve ser validado os campos e seus preenchimento, se for possível salvar, deve ser retornado o aviso:

Salvo com sucesso!

Caso seja alteração:

 Alterado com sucesso!

Caso não seja possível:

Não foi possível salvar! Verifique o preenchimento dos campos.

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

Configuração de imposto por CFOP

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


image-1762776253666.png

Projeto/Sistema:
CTe - GerencieAqui
Versão do Template:
1.2
Processo:
PROC003 - Tabela de Imposto de CTe - Reforma Tributária
Versão do Documento:
1.0
Responsável(eis): 
Luís Leite

Data: 

13/02/2026

1. Introdução

Este processo visa demonstrar a criação da tabela de impostos por CFOP para o CTe

2. Processo 

Processo

Envolvidos

Dados de Entrada

Dados de Saída

PROC001-Imposto por CFOP no CTe

 

Regra de Impostos

Configurações de impostos de tabela de imposto e CFOP

PROC002 - Tabela de Imposto de CTe

 

Parametrização de impostos

Tabela de imposto cadastrada

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

 

Parametrização de impostos

Tabela de imposto cadastrada

Processos Relacionados

PROC001 - Imposto por CFOP no CTe

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

Imagem I - Tabela de Imposto da rtc

image-1771420354414.png

Imagem II - Accordion imposto IBS e CBS

image-1771422702198.png

Imagem III - Accordion Diferido

image-1771518341674.png

Imagem IV - Accordion Estorno de Crédito

Descrição dos Campos:

Campo

Tipo

Tamanho

Obrig. ?

Máscara

Observações

Nome da Tabela*

Texto

100

Sim

-

-

Situação Tributária

Select

-

Sim

-

-

Classificação Tributária

Select

 -

Sim 

-

-

Perc. Da BC:

 Decimal

3v2 

Sim

 

 

IBS e CBS

Accordion

 -

 -

-

-

Aliq. IBS Estadual

Decimal

3v2

Sim

-

-

Red. Alíquota UF

Decimal

3v2

Sim

 

 

Aliq. IBS Municipal

 

Decimal

3v2

Sim

-

-

Red. Alíquota Mun.

Decimal

3v2

Sim

 

 

Aliq. CBS Decimal 3v2 Sim - -
Red. Aliq. CBS Decimal 3v2 Sim - -

Diferido

Accordion

 -

 -

-

-

Diferido IBS UF

Decimal

3v2

Sim

-

-

Diferido IBS Municipal

Decimal

3v2

Sim

-

-

Diferido CBS

Decimal

3v2

Sim

-

-

Estorno de Crédito

Accordion

 

 

 

 

Perc. IBS Estorno

Decimal

3v2

Sim

-

-

Perc. CBS Estorno

Decimal

3v2

Sim

-

-

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:

Excluído com sucesso!

Caso não seja possível:

Não foi possível excluir! Este registro está vinculado a outras operações

4. Botão Salvar:
Deve ser validado os campos e seus preenchimento, se for possível salvar, deve ser retornado o aviso:

Salvo com sucesso!

Caso seja alteração:

 Alterado com sucesso!

Caso não seja possível:

Não foi possível salvar! Verifique o preenchimento dos campos.

5. Accordion de Estorno de Crédito ainda precisa ser adicionado ao CTe.

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