CTe
- Alterar Endereço do Recebedor
- Múltiplas importações de XML NFe para CTe
- Configuração de imposto por CFOP
Alterar Endereço do Recebedor
PROC001 Alterar Endereço do Recebedor
| 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:
Imagem I - Botão "Alterar Endereço do Recebedor" renderizado
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
PROC001 - Importar múltiplos XMLs de NFe no CTe
| 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:
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
PROC001-Imposto por CFOP no CTe
| 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:
Imagem I - Botão "Configurar CFOP" em "Documentos Fiscais"
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 | - |
- |
- |
|
| 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 Listagem: 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 Listagem: Se 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:
-
-
CFOP do documento
-
UF de destino
-
Tipo de CFOP (Entrada ou Saída)
-
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
PROC002 - Tabela de Imposto de CTe
| 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:
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:
Imagem I - Tabela de Imposto ICMS
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
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
PROC003 - Tabela de Imposto de CTe - Reforma Tributária
| 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:
Imagem I - Tabela de Imposto da rtc
Imagem II - Accordion imposto IBS e CBS
Imagem III - Accordion Diferido
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
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