DC-e - Documentação de Conteúdo Eletrônica

Configurações Vinculadas

Configurações Vinculadas

PROC000 - Criação das configurações associadas


logosoften1.png

Projeto/Sistema:
DC-e GerencieAqui
Versão do Template:
1.2
Processo:
Criação das configurações associadas
Versão do Documento:
1.1
Responsável(eis): 
Daniela Taino

Data: 

20/04/2026

1. Introdução

      Essa documentação visa descrever as configurações que deverão ser criadas para possibilitar a emissão de um novo tipo de documento no GerencieAqui, a DC-e (Declaração de Conteúdo Eletrônica).

2. Processos

Processo

Envolvidos

Dados de Entrada

Dados de Saída

PROC000 - Criação das Configurações Associadas   Parâmetros de configuração

Sistema habilitado para emissão

PROC001 - Listagem de DC-e   Listagem dos DC-e lançadas

 

PROC002 - Nova DC-e -

Novas DC-e ou edição de DC-e já lançadas

DC-e cadastrada ou alterada

Processos Relacionados


PROC001 - Listagem de DC-e

PROC002 - Nova DC-e

Especificação Funcional


PROC000.1 Documentos Fiscais

 

Protótipo de Tela:

 

 

image-1776212245558.png

Imagem I - Opção a ser inserida nas configurações "Documentos Fiscais".

 

Descrição dos Campos:

Campo

Tipo

Tamanho

Obrig. ?

Máscara

Observações

Identificação do Ambiente RadioButton - Sim   A escolher entre: Produção e Homologação
Tipo de Emissão RadioButton - Sim   A escolher entre: Própria e Transportadora
Série Número 3 Não    
Nº da última DC-e emitida Número 9 Não    
 
Regras de Interface:

1. Identificação do Ambiente: valor padrão: Homologação.
1. Tipo de Emissão: valor padrão: Transportadora.
2. Série:
valor padrão: 0. 
3. Nº da última DC-e emitida:
valor padrão: vazio.

Regras de Negócio:

1. A section será adicionada a página existente com as configurações fiscais, Todas as regras de interface e negócio já existentes, devem ser mantidas. Inserir do lado do card "Geral".

 

PROC000.2 Configurações Adicionais 

 

Protótipo de Tela:

 

image-1775783226154.png

Imagem II - Section a ser inserida na página "Configurações Gerais"

 

Descrição dos Campos:

Campo

Tipo

Tamanho

Obrig. ?

Máscara

Observações

DC-e RadioButton - Sim   A escolher entre: Sem Controle Estoque, Baixa Manual eBaixa Automática
Regras de Interface:

1. DC-e: valor padrão: Sem Controle Estoque

Regras de Negócio:

1. A section será adicionada a página existente com as configurações gerais, Todas as regras de interface e negócio já existentes, devem ser mantidas.  Assim como os outros documentos, o DC-e obedece o fluxo das configurações de estoque (venda mediante estoque zerado, etc). 

Questões Técnicas:

Para armazenar as novas configurações, as novas colunas deverão ser criadas na tabela "empresa"

ALTER TABLE `gerencieaqui`.`empresa` 
ADD COLUMN `tpAmbDCe` INT(1) NULL AFTER `tipoBackup`,
ADD COLUMN `tpEmissaoDCe` INT(1) NULL AFTER `tpAmbDCe`,
ADD COLUMN `serieDCeInicial` VARCHAR(3) NULL AFTER `tpEmissaoDCe`,
ADD COLUMN `numDCeInicial` VARCHAR(9) NULL AFTER `serieDCeInicial`,
ADD COLUMN `estoqueDCe` INT(11) NULL AFTER `numDCeInicial`;

 

 

 

 

 

 

Emissão

Emissão

PROC001 - Listagem de DC-e


logosoften1.png

Projeto/Sistema:
DC-e GerencieAqui
Versão do Template:
1.2
Processo:
Listagem de DC-e
Versão do Documento:
1.3
Responsável(eis): 
Daniela Taino

Data: 

21/04/2026


1. Introdução

      Essa documentação visa descrever a tela de listagem dos DC-e e as ações possíveis na nova tela

2. Processos

Processo

Envolvidos

Dados de Entrada

Dados de Saída

PROC001 - Listagem de DC-e   Listagem dos DC-e lançados

 

PROC002 - Novo DC-e -

Novos DC-e ou edição de DC-e já lançados

DC-e cadastrado ou alterado

Processos Relacionados


PROC002 - Novo DC-e

Especificação Funcional


PROC001 Listagem de DC-e

Protótipo de Tela:

 

image-1776515406004.png

Imagem I - Tela de Listagem de DC-e - Principal

 

Descrição dos Campos:

Campo

Tipo

Tamanho

Obrig. ?

Máscara

Observações

Autorizado

Card

-

-

-

-

Pendente

Card

-  

-

-

Cancelado

Card

-

-

-

-

Total

Card

-

-

-

-

De/Até

Datepicker

-

 

DD/MM/YYYY - DD/MM/YYYY

-

Filtrar por

Combobox

-

-

A escolher entre: Número Fiscal, CNPJ/CPF, Nome do Cliente

Campo de filtragem/Lupa de Buscaimage-1775763357588.png

Botão

-

-

-

 

Relatórios

Botão

-

-

-

 

Mais Opções

Botão

-

-

-

image-1778016685995.png



 

Série

Column Header

-

-

-

Possibiilidade de ordenação ASC ou DESC 

Nº Fiscal

Column Header

-

-

 -

Possibiilidade de ordenação ASC ou DESC  

Cliente

Column Header 

-

-

Possibiilidade de ordenação ASC ou DESC  

Finalidade

Column Header

-

-

-

Possibiilidade de ordenação ASC ou DESC  

Dt. Emissão

Column Header 

-

-

Possibiilidade de ordenação ASC ou DESC  

Vl. Total

Column Header 

 

Status

Column Header 

 -

Possibiilidade de ordenação ASC ou DESC  

Lançamentos

 

 

 

 

 

Ações

Column Header

--

-

-

A escolher entre:

image-1776459208932.png


 

 
Regras de Interface:

1.1 O novo módulo deve ser acessível através do seguinte caminho no menu: Fiscal -> DC-e (NOVO). O módulo só deverá ser liberado se o cliente possui liberação do módulo (dce). Caso não tenha, deverá ser redirecionado para a tela padrão de "Acesso Negado". 
1.2 A visualização de Kanban deverá estar desabilitada nesse primeiro momento. A ordenação padrão da listagem é pela numeração (último para primeiro, série e número fiscal).

1.3 O padrão de exibição de registros é 10. A partir da seleção do usuário, a listagem deve ser atualizada com a quantidade de registros: 10, 25 ou 50.
2. De: valor padrão: primeiro dia do mês considerado vigente. 
3. Até: placeholder: dia considerado como "hoje".
4. Filtrar por: valor padrão: Número Fiscal.
5. Campo de Busca Placeholder: "Digite aqui sua busca "
6image-1775763357588.png : o clique no botão da lupa deve exibir os registros correspondentes na grid a partir do que foi definido como critério de busca. 
7. Status: os valores aprésentados no status poderão ser "NÃO ENVIADA", "ERRO", "AUTORIZADA" E "CANCELADA". As cores seguem o padrão dos outros documentos fiscais. 
8. Lançamentos: só contará com as opções de estoque não gerado    image-1776515577282.png e estoque gerado image-1776515630578.png.

9. Relatórios: o clique no botão deve iniciar o PROC001.1 Emissão de Relatórios da DCe.
10. Mais opções: 
as seguintes opções podem ser escolhidas:

  1. Transformar selecionados em MDF-e: essa opção deverá iniciar o PROC001.4 Transformar selecionados em CT-e.

  2. Desbloquear DC-e: o clique nesse botão deverá validar se as DC-e selecionadas tem o estoque gerado e se eles não estão autorizados/cancelados. Caso pelo menos uma delas possa ser desbloqueada, deverá exibir a mensagem de confirmação “Deseja realizar o estorno de estoque das DC-e selecionadas?”. Caso sim, exibir a mensagem “DC-e desbloqueadas com sucesso!”. Caso não, nada a fazer e exibir a mensagem "Alguns DC-e não podem ser desbloqueados! Verifique a listagem".

11. Ações: as seguintes ações podem ser escolhidas: 

  1. Enviar: o clique na opção deve iniciar o PROC001.2 Enviar DC-e ao Governo. A partir do momento que o status do documento for "Autorizado", essa opção não deve mais estar disponível para clique. O valor padrão do status de uma DC-e que não foi enviada deverá ser "NÃO ENVIADA".

  2. Solicitar Cancelamento: o clique na opção deve iniciar o PROC003 Cancelar DC-e. Essa opção deverá estar habilitada para clique se, e somente se, o status da DC-e for "Autorizada".

  3. Emitir PDF: o clique na opção deve iniciar o PROC001.3 Emitir PDF da DC-e. Essa opção deverá estar habilitada para clique se, e somente se, o status da DC-e for "Autorizada".

  4. Download XML: essa opção deverá estar habilitada para clique se, e somente se, o status da DC-e for "Autorizada". O clique na opção deverá fazer o download do arquivo XML da respectiva DC-e (regra de negócio). 

  5. Duplicar DC-e: essa opção deve duplicar a DC-e selecionada e atualizar a tela para que esta já apareça na listagem se cabível (de acordo com o filtro em tela). Quando a duplicação for finalizada, deverá ser exibida a mensagem de sucesso "DC-e duplicada com sucesso!".

  6. Excluir DC-e: essa opção deverá estar habilitada, se, e somente se, a DC-e não está "Autorizada" ou "Cancelada". Em caso de possível exclusão, deverá ser exibida a mensagem de sucesso "DC-e excluida com sucesso!". Caso não possa ser excluida, deverá ser exibida a mensagem de erro "Não é possível excluir a DC-e!". 

  7. Enviar por e-mail: essa opção deverá estar habilitada, se, e somente se, a DC-e está "Autorizada" ou "Cancelada". Caso o email possa ser enviado, na conclusão deve ser exibida a mensagem de sucesso "E-mail enviado com sucesso!".

  8. Estornar Estoque: essa opção deverá estar habilitada se, e somente se, o estoque da respectiva DC-e estiver gerado. Caso sim e o estorno for finallizado, deve exibir a mensagem de sucesso "Estorno realizado com sucesso!". Caso algum problema aconteça no processo de estorno, deverá exibir a mensagem "Erro ao realizar o estorno de estoque!". 
  9. Gerar Estoque: essa opção deverá estar habilitada se, e somente se, o estoque da respectiva DC-e estiver gerado. Caso sim e o estorno for finallizado, deve exibir a mensagem de sucesso "Estorno realizado com sucesso!". Caso algum problema aconteça no processo de estorno, deverá exibir a mensagem "Erro ao realizar o estorno de estoque!". 

 

Regras de Negócio:

1.Lançamentos: o ícone exibido é validado a partir do bit geradoEstoque: falso, estoque não gerado; verdadeiro: estoque gerado.
2. Status: os valores aprésentados no status são definidos a partir das colunas do banco de dados: "NÃO ENVIADA": DCe_stEnviado é falso; "AUTORIZADA": DCe_stAutorizado, DCe_stAssinado, DCe_stValidado e DCe_stEnviado são verdadeiros, DCe_stCancelado é falso; "ERRO": DCe_stAssinado, DCe_stValidado e DCe_stEnviado são verdadeiros, DCe_stAutorizado e DCe_stCancelado são falsos; "CANCELADA": todos os bits são verdadeiros, mas o principal critério é DCe_stCancelado ser verdadeiro. 

3. Mais opções: 
as seguintes opções podem ser escolhidas:

  1. Exportar XML: o clique nessa opção deverá realizar o download dos XMLs (autorização e cancelamento) e PDFs de todas as DC-e selecionadas que estejam com o status "Autorizada" ou "Cancelada". O status "Autorizada" é validado a partir da coluna DCe_stAutorizado no banco de dados e a cancelada por DCe_stCancelado.

  2. Desbloquear DC-e: o estorno de estoque para desbloqueio poderá acontecer quando o bit geradoEstoque for verdadeiro no banco de dados e o DC-e ainda não estiver autorizada ou cancelada (DCe_stAutorizado = falso). Esse processo deve dar entrada em estoque dos produtos vinculados a DC-e com suas respectivas quantidades. Deve também ser inserido no estoque análitico o registro da operação para cada um dos produtos estornados. Ao finalizar o estorno, o bit deve ser setado para o valor falso. 

4. Ações: as seguintes ações podem ser escolhidas: 

  1. Enviar: o status "Autorizada" é validado a partir da coluna DCe_stAutorizado no banco de dados e a cancelada por DCe_stCancelado. O critério de não enviado é validado a partir das colunas DCe_stAssinado e DCe_stEnviado.  

  2. Solicitar Cancelamento: o clique na opção deve iniciar o PROC003 Cancelar DC-e a partir da validação do bit de autorização (DCe_stAutorizado = verdadeiro) e cancelamento DCe_stCancelado = false.

  3. Emitir PDF: o clique na opção deve iniciar o PROC001.3 Emitir PDF da DC-e a partir da validação do bit de autorização (DCe_stAutorizado = verdadeiro), independente do status de cancelado.

  4. Download XML: o clique na opção deve ser possível a partir da validação do status de autorização (DCe_stAutorizado = verdadeiro. O clique na opção deverá fazer o download do arquivo XML da respectiva DC-e a partir do campo caminhoArquivoXML no banco de dados. 

  5. Duplicar DC-e: a duplicação de uma DC-e deverá copiar todos os dados da DC-e de origem e gerar uma nova DC-e validando a regra de próxima numeração e alterando a Data de Emissão para o dia considerado como "hoje".

  6. Excluir DC-e: a exclusão de uma DC-e deverá remover todos os registros (dcenumero, dce e dceproduto) do banco de dados. 

  7. Enviar por e-mail: o XML e o PDF da DC-e selecionada deverão ser enviadas para o email do destinatário e emitente, caso tenha sido informado. Deve ser utilizado o serviço padrão do sistema e o layout de email deve ser igual o da NFe, alterando as informações para DC-e.

  8. Estornar Estoque: o estorno de estoque para desbloqueio poderá acontecer quando o bit geradoEstoque for verdadeiro no banco de dados. Esse processo deve dar entrada em estoque dos produtos vinculados a DC-e com suas respectivas quantidades. Deve também ser inserido no estoque análitico o registro da operação para cada um dos produtos estornados "Estornado estoque da DC-e [NUMERO DC-e]. Ao finalizar o estorno, o bit deve ser setado para o valor falso.
  9. Gerar Estoque: o estorno de estoque para desbloqueio poderá acontecer quando o bit geradoEstoque for verdadeiro no banco de dados. Esse processo deve dar entrada em estoque dos produtos vinculados a DC-e com suas respectivas quantidades. Deve também ser inserido no estoque análitico o registro da operação para cada um dos produtos estornados "Estornado estoque da DC-e [NUMERO DC-e]. Ao finalizar o estorno, o bit deve ser setado para o valor falso.
Questões Técnicas:

A tela da DC-e estará disponível nas três versões do sistema: GA, AE e EN.

 

 

 

 

 

©SOFTEN SISTEMAS 2025

Emissão

PROC001.1 Emissão de Relatórios da DC-e


logosoften1.png

Projeto/Sistema:
DC-e GerencieAqui
Versão do Template:
1.2
Processo:
Emissão de Relatórios da DCe
Versão do Documento:
1.0
Responsável(eis): 
Daniela Taino

Data: 

20/04/2026


1. Introdução

      Essa documentação visa descrever a tela de listagem dos DC-e e as ações possíveis na nova tela

2. Processos

Processo

Envolvidos

Dados de Entrada

Dados de Saída

PROC001 - Listagem de DC-e   Listagem dos DC-e lançados

 

       

Processos Relacionados


 

Especificação Funcional


PROC001.1 Emissão de Relatórios da DC-e

Protótipo de Tela:

image-1776706022795.png

Imagem I - Tela de Emissão de Relatórios da DC-e

 

Descrição dos Campos:

Campo

Tipo

Tamanho

Obrig. ?

Máscara

Observações

Data Inicial

Datepicker

-

-

DD/MM/YYYY

-

Data Final

Datepicker

-  

DD/MM/YYYY

-

Formato do Relatório

RadioButton

-

-

-

A escolher entre: PDF e Excel (XLSX)

Filtrar por 

Combobox

-

-

-

-

Relatório

Column Header

-

 

 

Opções disponíveis: Sem Escolha e Cliente

Visualizar

Link

-

 

 

 

 
Regras de Interface:

1. Data Inicial: valor padrão: dia considerado como "hoje". 
2. Data Final: valor padrão: dia considerado como "hoje". 
3. Formato de Relatório: valor padrão: PDF. 
4, Filtrar por: valor padrão: Sem Escolha. 

Regras de Negócio:

1. Visualizar: o clique na opção deve realizar o download do arquivo do relatório, seja em PDF ou excel, obedecendo os filtros de período e cliente, se cabível. 

Questões Técnicas:

1. Não utilizar jasper na emissão do relatório. Utilizar o novo serviço.
2. O relatório a ser criado deve ter as seguintes colunas: Série, Número, Data de Emissão, Destinatário e Valor Total. 

 

 










Emissão

PROC001.2 Enviar DC-e ao Governo

 


logosoften1.png

Projeto/Sistema:
DC-e GerencieAqui
Versão do Template:
1.2
Processo:
Enviar DC-e ao Governo
Versão do Documento:
1.0
Responsável(eis): 
Daniela Taino

Data: 

26/04/2026

 
1. Introdução

      Essa documentação visa descrever o processo de envio da DC-e ao governo. 

2. Regras de Interface

1. A autorização é sincrona, então um loading deve ser inserido na tela durante o período de espera do retorno. 
2. Caso a DC-e não possa ser assinada (certificado não vinculado, inválido ou vencido), deverá ser exibida a mensagem de erro "Documento não pode ser enviado! Verifique o certificado digital". 
3. Se a DC-e for rejeitada pelo governo, o erro deverá ser exibido em tela: "Erro! [MENSAGEM NO CAMPO situacao DO BANCO DE DADOS] . O erro também deve ser exibido como tooltip na coluna "Status", sendo este definido como "ERRO". Caso seja autorizada, "Status" deverá ser "AUTORIZADA" e o tooltip deverá ser "Autorizado o uso da DCe", que também estará armazenado na coluna "situacao". 


3. Regras de Negócio

1. A primeira etapa do processo de autorização é a geração do XML de acordo com os campos informados. Ao finalizar a montagem do XML com sucesso, ainda sem assinatura, o bit DCe_stValidado deverá ser marcado como verdadeiro. O exemplo de XML com a correspondência dos campos em banco (e os campos fixos) estão em Anexo I - Exemplos de XML da DCe e correspondência com os campos..
3. A segunda etapa é a assinatura do documento com o certificado A1 da empresa. O processo de assinatura segue o algoritmo padrão que já utilizado nos outros documentos fiscais. Caso tudo ocorra sem problemas com a assinatura, o bit  DCe_stAssinado deverá ser marcado como verdadeiro.
4. Depois da assinatura e geração completa, o processo de envio ao WS deverá ser realizado. Ao realizar o envio, o bit DCe_stEnviado deverá ser marcado, independente do retorno de sucesso ou erro. 
5. Independente do retorno, o campo "xMotivo" do XML de retorno deverá ser gravado na coluna "situacao" do banco de dados. Se o "cStat" do XML for 100, indica que o documento foi autorizado, então o bit DCe_stAutorizado deve ser marcado como verdadeiro e o protocolo de autorização armazenado em "protAutoriza". Caso seja diferente de 100, isso indica que o governo retornou algum erro, então o bit não deverá ser marcado. 
5. Criar na pasta da empresa o diretorio "dce" para armazenar os XMLs de envio (sem e com assinatura), retorno e eventos. O PDF sempre será gerado a cada requisição para evitar o armazenamento desnecessário. Esse caminho deverá ser armazenado na tabela "dce" na coluna " caminhoArquivoXML". Validar sempre se a pasta existe e realizar a criação para primeiros envios. 
6. Os seguintes Webservices devem ser utlizados de acordo com o ambiente configurado (homologação ou produção) -> DCeAutorizacao e DCeConsulta.

Ambiente de Produção
Serviço Versão URL
DCeStatusServico 1.00 https://dce.fazenda.pr.gov.br/dce/DCeStatusServico?wsdl
DCeAutorizacao 1.00 https://dce.fazenda.pr.gov.br/dce/DCeAutorizacao?wsdl
DCeConsulta 1.00 https://dce.fazenda.pr.gov.br/dce/DCeConsulta?wsdl
DCeRecepcaoEvento 1.00 https://dce.fazenda.pr.gov.br/dce/DCeRecepcaoEvento?wsdl
QRCode 1.00 https://www.fazenda.pr.gov.br/dce/qrcode

 

Ambiente de Homologação
Serviço Versão URL
DCeStatusServico 1.00 https://dce.fazenda.pr.gov.br/dce/DCeStatusServico?wsdl
DCeAutorizacao 1.00 https://dce.fazenda.pr.gov.br/dce/DCeAutorizacao?wsdl
DCeConsulta 1.00 https://dce.fazenda.pr.gov.br/dce/DCeConsulta?wsdl
DCeRecepcaoEvento 1.00 https://dce.fazenda.pr.gov.br/dce/DCeRecepcaoEvento?wsdl
QRCode 1.00 https://www.fazenda.pr.gov.br/dce/qrcode

7. O DV de uma DC-e segue o segundo cálculo:image-1777232561191.png
8. A chave de acesso (dce.chaveAcesso) de uma DC-e deve seguir a seguinte composição:

image-1777232960355.png

4. Questões Técnicas

1. No momento a emissão de DC-e somente estará disponível para certificados A1. 
2.
A emissão não usará o kafka para autorização, mas o código deverá ser criado considerando que uma eventual migração poderá ser necessária (deixar a abstração simples para entendimento humano e da IA). 

Emissão

PROC001.3 Emitir PDF da DC-e

logosoften1.png

Projeto/Sistema:
DC-e GerencieAqui
Versão do Template:
1.2
Processo:
Emitir PDF da DC-e
Versão do Documento:
1.0
Responsável(eis): 
Daniela Taino

Data: 

28/04/2026

 
1. Introdução

      Essa documentação visa descrever o processo de emissão de PDF da DC-e. 

2. Regras de Interface

1. A DC-e deverá ser exibida para o usuário em uma dialog, assim como nos outros documentos fiscais. 


3. Regras de Negócio

1. O modelo de emissão da DC-e está em em Anexo II - Exemplo de DACE (pdf).
2, O PDF da DC-e é gerado a partir do arquivo XML autorizado, localizado em caminhoArquivoXML.

4. Questões Técnicas

1. A cada nova solicitação o PDF deve ser gerado, e não armazernado no disco.
2.
Utilizar o jasper na geração, porque o mesmo arquivo será utilizado para geração do SIEM por causa do QRCode.
3. Verificar a lib utilizada para geração do QRCode no CTe.  





Emissão

Anexo I - Exemplos de XML da DCe e correspondência com os campos

XML de envio

<DCe xmlns="http://www.portalfiscal.inf.br/dce">
<infDCe Id="DCe35260478393592000146990261404128151002399952" versao="1.00"> // DCe + chave de acesso, versão padrão
<ide>
<cUF>35</cUF> //código da UF de emissão
<cDC>239995</cDC> // Código numérico que compõe a Chave de Acesso. Número aleatório gerado pela SEFAZ emitente para cada DCe para evitar acessos indevidos
<mod>99</mod> //fixo 99
<serie>26</serie> // dce.serie
<nDC>140412815</nDC> // dce.numeroFiscal
<dhEmi>2026-04-14T15:33:21-03:00</dhEmi> // dce.dataEmissao
<tpEmis>1</tpEmis> // dce.finalidade
<tpEmit>0</tpEmit> // 0=Fisco;1=Marketplace;2=Emissor próprio;3=Transportadora (de acordo com a configuração -> emissão própria ou transportadora)
<nSiteAutoriz>0</nSiteAutoriz> // fixo como 0. Isso dependerá do cliente, mas consideraremos a situação padrão
<cDV>2</cDV> // Informar o DV da Chave de Acesso da DCe, o DV será calculado com a aplicação do algoritmo módulo 11 (base2,9) da Chave de Acesso
<tpAmb>1</tpAmb> // dce.ambiente (homologação ou produção)
<verProc>verProc0</verProc> // versão do GA
</ide>
<emit>
<CNPJ>07587030000195</CNPJ> // se emissão própria, empresa.cnpj; caso transportadora, é do emitente (dce.emitenteId). Isso serve para todos os dados que vem abaixo
<xNome>NOME DO CLIENTE</xNome> // empresa.razaoSocial ou cliente.nome
<enderEmit> // endereço da empresa ou emitente
<xLgr>RUA TESTE</xLgr>
<nro>70</nro>
<xBairro>Terra Nostra</xBairro>
<cMun>3525706</cMun>
<xMun>José Bonifácio</xMun>
<UF>SP</UF>
<CEP>15200000</CEP>
<cPais>1058</cPais>
<xPais>BRASIL</xPais>
</enderEmit>
</emit>
<Fisco> // nesse xml de exemplo, o fisco foi o responsável pela assinatura do documento. No nosso caso a única outra opção é da transportadora. Então  ogrupo abaixo é substituido pelas tags de cnpj <CNPJ> e <xNome> da Transportadora
<CNPJ>78393592000146</CNPJ>
<xOrgao>Fisco</xOrgao>
<UF>SP</UF>
</Fisco>
<dest> // dados do dce.destinatarioId
<CPF>00000021892</CPF>
<xNome>Pamela</xNome>
<enderDest>
<xLgr>RUA TESTE</xLgr>
<nro>76</nro>
<xBairro>BAIRRO</xBairro>
<cMun>3525706</cMun>
<xMun>José Bonifácio</xMun>
<UF>SP</UF>
<CEP>15200000</CEP>
<cPais>1058</cPais>
<xPais>BRASIL</xPais>
</enderDest>
</dest>
<det nItem="1"> // numeração dos produtos, gerado a partir da quantidade
<prod> // dados da lista de produtos inseridos
<xProd>PRODUTO TESTE</xProd> // dceitem.nomeProduto
<qCom>1</qCom> / /dceitem.quantidade
<vUnCom>1.00</vUnCom> // dceitem.valorUnitario
<vProd>1.00</vProd> //dceitem.valorTotal
  <infAdProd> INFORMAÇÕES ADICIONAIS </infAdProd> // dceitem.informacoesAdicionais
</prod>
</det>
<total>
<vDC>1.00</vDC> // dce.valorTotal
</total>
<transp>
<modTrans>1</modTrans> // 0=Transporte pelos correios;1=Transporte por contra própria;2=Transporte por empresa transportadora. Caso seja a opção 2, abaixo dessa vem a tag de <CNPJ></CNPJ> com dce.cnpjTerceiros
</transp>
<infAdic/> // dce.observacao -> caso a emissão seja própria, inserir a <infCpl></infCpl> dentro do grupo. Caso seja como transportadora <infAdTransp></infAdTransp>
<infDec>
<xObs1>É contribuinte de ICMS qualquer pessoa física ou jurídica, que realize, com habitualidade ou em volume que caracterize intuito comercial, operações de circulação de mercadoria ou prestações de serviços de transportes interestadual e intermunicipal e de comunicação, ainda que as operações e prestações de iniciem no exterior (Lei Complementar nº 87/96, Art. 4º)</xObs1>  //texto fixo
<xObs2>Constitui crime contra a ordem tributária suprimir ou reduzir tributo, ou contribuição social e qualquer acessório: quando negar ou deixar de fornecer, quando obrigatório, nota fiscal ou documento equivalente, relativa a venda de mercadoria ou prestação de serviço, efetivamente realizada ou fornece-la em desacordo com a legislação. Sob pena de reclusão de 2 (dois) e 5 (cinco) anos, e multa (Lei 8.137/90, Art 1ª, V)</xObs2> //texto fixo
</infDec>
</infDCe>
<infDCeSupl>
<qrCodDCe>https://www.fazenda.pr.gov.br/dce/qrcode?chDCe=35260478393592000146990261404128151002399952&tpAmb=1</qrCodDCe> // Texto com o QR-Code impresso no DACE.
<urlChave>urlChaveDCe35260478393592000146990261404128151002399952</urlChave> //URL para consulta da Chave de Acesso
</infDCeSupl>
<Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
<SignedInfo>
<CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
<SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/>
<Reference URI="#DCe35260478393592000146990261404128151002399952">
<Transforms>
<Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
<Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
</Transforms>
<DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
<DigestValue>fRE5aCyenRFidD8bkaVTYpHGs4o=</DigestValue>
</Reference>
</SignedInfo>
<SignatureValue>jAnhT57Ok4iQ/aM/ulTNlpk068jXg2my2I34OMxtdhF6Y1i5p1dkXrepdGCM8CKfNJD58vzpj5YcLiy1s9sTjbfNg/pu3DgGafARAPyoE/o+Kc8fRMiawGSpq1g9ne2NTGyojdQLjNYytr2b+S0iwam+GS7+YmhJgW2hI5ALdMljQ89i00NmaL74KGigdVbHGmbp8k7JxaoDhv0XOU/6Sc7aId7aY1bgihh1qJNWRV+6C+N17y39hC0ORHHauYzbbd7h7r5LYRP9AjTZik0a+tAMr0roorGNK34EjfcQTwvW3kZV3MwJdLOOVkiQejDqlisSwyO4+GslpzYInA20DA==</SignatureValue>
<KeyInfo>
<X509Data>
<X509Certificate>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</X509Certificate>
</X509Data>
</KeyInfo>
</Signature>
</DCe>

Retorno com sucesso na autorização

<retDCe xmlns="http://www.portalfiscal.inf.br/dce" versao="1.00">
    <tpAmb>2</tpAmb>
    <verAplic>1.00</verAplic>
    <cStat>100</cStat>
    <xMotivo>Autorizado o uso da DCe</xMotivo>
    <cUF>35</cUF>
    <dhRecbto>2026-04-16T18:30:00-03:00</dhRecbto>
    <protDCe>
        <infProt>
            <tpAmb>2</tpAmb>
            <verAplic>1.00</verAplic>
            <chDCe>35260412345678000123550010000000011000000010</chDCe>
            <dhRecbto>2026-04-16T18:30:00-03:00</dhRecbto>
            <nProt>135260000000001</nProt> // dce.protAutoriza
            <digVal>abc123xyz456==</digVal>
            <cStat>100</cStat>
            <xMotivo>Autorizado o uso da DCe</xMotivo> dce.protAutoriza
        </infProt>
    </protDCe>
</retDCe>

Retorno com erro na autorização

<retDCe xmlns="http://www.portalfiscal.inf.br/dce" versao="1.00">
    <tpAmb>2</tpAmb>
    <verAplic>1.00</verAplic>
    <cStat>204</cStat>
    <xMotivo>Rejeição: Duplicidade de DCe</xMotivo>
    <cUF>35</cUF>
    <dhRecbto>2026-04-16T19:05:00-03:00</dhRecbto>
    <protDCe>
        <infProt>
            <tpAmb>2</tpAmb>
            <verAplic>1.00</verAplic>
            <chDCe>35260412345678000123550010000000011000000010</chDCe>
            <dhRecbto>2026-04-16T18:30:00-03:00</dhRecbto>
            <nProt>135260000000001</nProt>
            <digVal>abc123xyz456==</digVal>
            <cStat>204</cStat>
            <xMotivo>Rejeição: Duplicidade de DCe</xMotivo> //dce.situacao
        </infProt>
    </protDCe>
</retDCe>





 

Emissão

Anexo II - Exemplo de DACE (pdf)

image-1776434292576.png

Emissão

PROC001.4 Transformar DC-e selecionados em CT-e

logosoften1.png

Projeto/Sistema:
DC-e GerencieAqui
Versão do Template:
1.2
Processo:
Transformar selecionados em CT-e
Versão do Documento:
1.0
Responsável(eis): 
Daniela Taino

Data: 

05/05/2026

1. Introdução

      Essa documentação visa descrever o processo de transformação de uma ou mais DC-e em um CTe.

 

2. Processos

Processo

Envolvidos

Dados de Entrada

Dados de Saída

PROC001 - Listagem de DC-e   Listagem dos DC-e lançados

 

PROC002 - Novo DC-e -

Novos DC-e ou edição de DC-e já lançados

DC-e cadastrado ou alterado

Processos Relacionados


PROC002 - Novo DC-e

Especificação Funcional


PROC001.4 Transformar DC-e selecionados em CT-e

Regras de Interface:

1. Ao clicar na opção e a transformação ser possível, a tela da edição CT-e deverá ser aberta com as seguintes informações preenchidas:

image-1778026926232.png



2. Caso mais que uma DC-e seja selecionado e a transformação não possa acontecer (dois destinatários diferentes), deverá ser exibida a seguinte mensagem de erro "Não é possível transformar DC-e de destinatários diferentes em um único CT-e!".
3. Caso a emissão seja feita no modo de credenciamento "transportadora", os remetentes das DC-e selecionadas também devem ser os mesmos. Caso não seja, exibir a mensagem de erro . "Não é possível transformar DC-e de emitentes diferentes em um único CT-e!". Essa regra e a regra 2 são complementares. 
4. Ao selecionar uma ou mais DC-e com status que não seja "Autorizado" para transformação, deverá ser exibida uma mensagem de erro "Selecione somente DC-e autorizadas para transformar em CTe!". Para esse caso, mesmo que alguma das selecionadas esteja autorizada, nada fazer.


Regras de Negócio:


1. Somente as DC-e com status "Autorizado" poderão ser transformadas em CT-e, ou seja, DCe_stAutorizado sendo verdadeiro. 

 

 

 

Lançamento

Lançamento

PROC002 - Nova DC-e

 

logosoften1.png

Projeto/Sistema:
DC-e GerencieAqui
Versão do Template:
1.2
Processo:
Nova DC-e
Versão do Documento:
1.2
Responsável(eis): 
Daniela Taino

Data: 

20/04/2026

1. Introdução

      Essa documentação visa descrever o cadastro de um novo tipo de documento no GerencieAqui, a DC-e (Declaração de Conteúdo Eletrônica).

2. Processos

Processo

Envolvidos

Dados de Entrada

Dados de Saída

PROC000 - Criação das Configurações Associadas   Parâmetros de configuração

Sistema habilitado para emissão

PROC001 - Listagem de DC-e   Listagem das DC-e lançadas

 

PROC002 - Nova DC-e -

Novas DC-e ou edição de DC-e já lançadas

DC-e cadastrada ou alterada

Processos Relacionados


PROC000 - Criação das configurações associadas

PROC001 - Listagem de DC-e

Especificação Funcional


PROC002 Novo DC-e

Protótipo de Tela:

 

image-1776434557238.png

Imagem I - Protótipo de tela para o lançamento de uma nova DC-e.

 

Descrição dos Campos:

Campo

Tipo

Tamanho

Obrig. ?

Máscara

Observações

Destinarário AutoComplete 60 Sim    
Data Emissão Datepicker N/A Sim DD/MM/YYYY  
Emitente AutoComplete 60 Não    
Código de Barras Texto 14 Não    
Nome AutoComplete 120 Sim    
Quant. Estoque Label - -    
Grade Combobox 60 Não    
Quantidade Decimal 11v4 Sim    
Valor Unitário Decimal 11v10 Sim    
Valor Total Decimal 13v2 Sim    
Informações complementares

image-1775846578167.png

Botão - -    
Inserir Botão - -    
Código de Barras Column Header - -    
Nome Column Header - -    
Quantidade Column Header - -    
Valor Unitário Column Header -      
Valor Total  Column Header -      
Editar image-1775818796446.png Botão -      
Excluir image-1775818782446.png Botão -      
Modalidade de Transporte RadioButton - Sim   A escolher entre: Próprio, Correios e Terceiros
CNPJ da Transportadora  Texto 18   00.000.000/0000-00 Máscara de CNPJ padrão do sistema
Tipo Emissão Combobox - Sim   A escolher entre "Emissão norrmal (não em contingência) e "Contingência off-line da DCe"
Observações Texto 5000      
Total dos Produtos Label -      
Total da Declaração Label -      
Voltar Botão -      
Novo Botão -      
Excluir Botão -      
Salvar Rascunho Botão -      
Salvar Botão -      
 
Regras de Interface:

1. Destinatário: placeholder: "Insira o nome do Destinatário". A partir da terceira letra digitada, deve ser exibida a lista de 10 clientes possíveis para seleção. 
2. Data Emissão: valor padrão: data considera como "hoje".
3. Emitente: placeholder: "Insira o nome do Emitente". A partir da terceira letra digitada, deve ser exibida a lista de 10 clientes possíveis para seleção. Esse campo somente será renderizado quando o tipo de emissor mencionado no PROC000 - Criação das configurações associadas for "Transportadora".
5. Código de Barras: placeholder: “Insira o código de barras”. A partir da inserção ou leitura de um código de barras existente, as informações vinculadas (nome e valor unitário) ao cadastro do produto inserido deverão ser atualizadas em tela. 
6. Nome: placeholder: "Insira o nome do Produto". A partir da terceira letra digitada, deve ser exibida a lista de 10 produtos possíveis para seleção. 

7. Quant. Estoque: deve exibir o saldo de estoque do produto. 
8. Grade: desabilitado por padrão. Deve ser habilitado somente quando um produto vinculado a uma variação for inserido. Nesse caso, o placeholder se torna "Selecione" e na combobox é possível selecionar qual a grade vinculada, Caso o produto tenha lote, deve também ser renderizado o campo (antes do valor total) de escolha do lote associado para baixa em estoque.

image-1776079162067.png9. Quantidade: placeholder: 0,0. 
10. Valor Unitário: placeholder: 0,0.
11. Valor Total: placeholder: 0,0. Campo desabilitado por padrão.
12. Informações Complementares image-1775846578167.pngo clique no botão deve realizar a abertura da dialog para inserção de informações complementares sobre o produto específico. O tamanho do campo é de 500 caracteres e a informação só a é salva com o clique no botão "Salvar". (O layout está antigo, seguir o novo padrão).

image-1775846898718.png
Imagem II - Protótipo de tela para a inserção de informações adicionais do produto.

12. Inserir: o botão inserir deve realizar a validação dos campos obrigatórios para a inserção de um produto. Caso algum campo não esteja preenchido, exibir uma mensagem de Erro (vermelha) com o campo correspondente. Exemplo: Erro! Informe [O/A CAMPO X]. Caso todos os campos obrigatórios estejam preenchidos, o produto deve inserido na grid de listagem de produtos inseridos.  O botão inserir deve validar também as informações associadas as configurações de estoque. Caso não seja possível vender com estoque zerado ou somente mediante aviso, as mensagens de confirmação e erro devem ser exibidas para cada um dos casos. 
13. Editar image-1775818796446.png: o clique no botão de editar dialog de edição de quantidade e valor unitário do produto inserido. A informação só a é salva com o clique no botão "Salvar". (O layout está antigo, seguir o novo padrão).

image-1775847369876.png
Imagem III - Protótipo de tela para a edição dos valores do produto.

14. Excluir image-1775818782446.png: o clique no botão deve exibir a mensagem de confirmação "Você realmente deseja excluir este produto?" Caso sim, o produto deve ser removido da grid. Caso não, nada deverá ser feito, 
15. Modalidade de Transporte: valor padrão: Próprio
16. CNPJ da Transportadora:
campo desabilitado por padrão. Deve estar habilitado somente quando  a modalidade de transporte selecionada for "Terceiros". 
17. Tipo de Emissão: valor padrão: "Emissão normal (não em contingência).
18. Total dos Produtos: exibe o somatório total de todos os produtos inseridos.
19. Total da DC-e: exibe o somatório total de todos os produtos inseridos (total da DC-e). 
20. Voltar: o clique no botão "Voltar" deve retornar a página de listagem.
21. Novo: o clique no botão deve recarregar a página iniciando uma nova DC-e, descartando alterações feitas.
22. Excluir: o clique no botão deve exibir uma mensagem de confirmação "Você realmente deseja excluir essa DC-e?" Caso não, nada a fazer. Caso sim e o documento puder ser excluido, retornar para a tela de listagem. 
23. Salvar Rascunho:
deve validar os campos de preenchimento obrigatório e caso um ou mais campos não estejam preenchidos, deve exibir uma mensagem de erro para cada um, assinalando a necessidade de preenchimento. Exemplo "Erro! O campo [X] é de preenchimento obrigatório!". Caso a DC-e possa ser salva, exibir a mensagem de sucesso (verde) "Salvo com sucesso" e manter o usuário na mesma página. 
24. Salvar:
deve validar os campos de preenchimento obrigatório e caso um ou mais campos não estejam preenchidos, deve exibir uma mensagem de erro para cada um, assinalando a necessidade de preenchimento. Exemplo "Erro! O campo [X] é de preenchimento obrigatório!". Caso a DC-e possa ser salva, exibir a mensagem de sucesso (verde) "Salvo com sucesso" e redirecionar o usuário para a tela de listagem. 

Regras de Negócio:

1.Tipo de Emissão: o tipo de emissão deve ser armazenado no banco de acordo com a nomenclatura do manual: 1=Emissão normal (não em contingência);9=Contingência off-line da DCe.
2. Valor Total:
o valor total é calculado a partir da multiplicação entre o Valor Unitário e a Quantidade. 
3. Excluir: deve validar se o DC-e pode ser excluido e realizar a exclusão do registro no banco de dados, caso sim.
4. Salvar Rascunho: caso o DC-e possa ser salvo, deve realizar o salvamento do registro no banco de dados. 
5. Salvar: caso o DC-e possa ser salvo, deve realizar o salvamento do registro no banco de dados. Nesse momento, também deverá ser validada a configuração de Estoque e se a baixa automática estiver ativa, realizar a baixa dos produtos associados. Deve também ser inserido no estoque análitico o registro da operação para cada um dos produtos gerados "Gerado estoque da DC-e [NUMERO DC-e]. Ao finalizar a geração, o bit deve ser setado para o valor true. Validar a configuração de estoque sobre o aviso do estoque minimo e gerar a notificação caso necessário (e configurado).
6. O fluxo de numeração da DC-e deverá seguir o que já existe para os outros documentos fiscais. Para evitar duas pessoas numerando o mesmo documento ao mesmo tempo, usa-se a chave de conferência para vincular o registro das tabelas "dce" e "dceempresa". A numeração deverá seguir sempre a última numeração inserida e as configurações de numeração (seguindo também a regra dos outros documentos fiscais para validação da próxima numeração).

 

 

Questões Técnicas:

Deverão ser criadas novas tabelas no banco de dados para armazenamento das novas informações. 

CREATE TABLE `dce` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `criacaoHorario` bigint(20) NOT NULL,
  `criacaoUsuario` int(11) NOT NULL,
  `data` bigint(20) NOT NULL,
  `ultimoHorario` bigint(20) DEFAULT NULL,
  `ultimoUsuario` int(11) DEFAULT NULL,
  `usuarioId` bigint(20) NOT NULL,
  `empresaId` bigint(20) DEFAULT NULL,
  `responsavelEmissao` int(1) DEFAULT NULL,
  `destinatarioId` bigint(20) DEFAULT NULL,
  `emitenteId` bigint(20) DEFAULT NULL,
  `valorTotal` decimal(13,2) DEFAULT NULL,
  `valorTotalLiquido` decimal(13,2) DEFAULT NULL,
  `modalidadeTransporte` int(1) NOT NULL DEFAULT 0,
  `cnpjTerceiros` varchar(18) DEFAULT NULL,
  `observacao` varchar(5000) DEFAULT NULL,
  `DCe_stAssinado` bit(1) NOT NULL DEFAULT b'0',
  `DCe_stAutorizado` bit(1) NOT NULL DEFAULT b'0',
  `DCe_stCancelado` bit(1) NOT NULL DEFAULT b'0',
  `DCe_stEnviado` bit(1) NOT NULL DEFAULT b'0',
  `DCe_stValidado` bit(1) NOT NULL DEFAULT b'0',
  `situacao` varchar(255) DEFAULT NULL,
  `ambiente` varchar(255) DEFAULT NULL,
  `cDV` int(11) NOT NULL,
  `cMDFe` int(11) NOT NULL,
  `caminhoArquivoXML` varchar(255) DEFAULT NULL,
  `chaveAcesso` varchar(255) DEFAULT NULL,
  `chaveConf` varchar(255) DEFAULT NULL,
  `modelo` int(11) NOT NULL,
  `numeroDCe` int(11) NOT NULL,
  `procEmi` int(11) NOT NULL,
  `protAutoriza` varchar(255) DEFAULT NULL,
  `serie` int(11) NOT NULL,
  `tpEmis` int(11) NOT NULL,
  `tpEmit` int(11) NOT NULL,
  `ufEmit` varchar(255) DEFAULT NULL,
  `verProc` varchar(255) DEFAULT NULL,
  `geradoEstoque` bit(1) NOT NULL DEFAULT b'0',
  `cteVinculado` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`)
);

// destinatarioId e emitenteId são ambas fk com a tabela de cliente
CREATE TABLE `dceproduto` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `criacaoHorario` bigint(20) NOT NULL,
  `criacaoUsuario` int(11) NOT NULL,
  `ultimoHorario` bigint(20) DEFAULT NULL,
  `ultimoUsuario` int(11) DEFAULT NULL,
  `informacoesAdicionais` varchar(500) DEFAULT NULL,
  `quant` decimal(19,10) NOT NULL,
  `vlTotal` decimal(19,2) DEFAULT NULL,
  `vlTotalLiq` decimal(19,2) DEFAULT NULL,
  `vlUnit` decimal(19,10) NOT NULL,
  `produtoId` bigint(20) NOT NULL,
  `nomeProduto` varchar(120) NOT NULL,
  `dceId` bigint(20) NOT NULL,
  `gradeId` bigint(20) DEFAULT NULL,
  `tabelaPreco` varchar(100) DEFAULT NULL,
  `valorCusto` decimal(19,4) NOT NULL DEFAULT 0.0000,
  `tipovariacao` varchar(255) DEFAULT NULL,
  `variacaoEstoque` bigint(20) NOT NULL DEFAULT 0,

  PRIMARY KEY (`id`)
);

//produtoId é fk com a tabela de produto, gradeId com as variações (em que também é realizado o controle do lote)



CREATE TABLE `dceempresa` (
  `serie` int(11) NOT NULL,
  `ndce` int(11) NOT NULL,
  `empresaId` bigint(20) NOT NULL,
  `chaveConf` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`serie`,`ndce`,`empresaId`),
) 
// cada numeração de cada série é única para cada empresa


Alguns campos de emissão são fixos. Ver o Anexo I - Exemplos de XML da DCe e correspondência com os campos   para melhor entendimento. 

A DC-e está disponível nas três variações do GerencieAqui, então os temas devem ser considerados nas emissões.

 

 

©SOFTEN SISTEMAS 2026

Eventos

Eventos

PROC003 - Cancelar DC-e


logosoften1.png

Projeto/Sistema:
DC-e GerencieAqui
Versão do Template:
1.2
Processo:
Cancelar DC-e
Versão do Documento:
1.0
Responsável(eis): 
Daniela Taino

Data: 

28/04/2026

 
1. Introdução

      Essa documentação visa descrever o processo de cancelamento de uma DC-e.

2. Processos

Processo

Envolvidos

Dados de Entrada

Dados de Saída

PROC001 - Listagem de DC-e   Listagem dos DC-e lançados

 

PROC002 - Novo DC-e -

Novos DC-e ou edição de DC-e já lançados

DC-e cadastrado ou alterado

PROC002 - Cancelar DC-e  

DC-e autorizado

DC-e cancelado

Processos Relacionados


PROC002 - Novo DC-e

Especificação Funcional


PROC003 Cancelar DC-e

Protótipo de Tela:

 

image-1777420044424.png

Imagem I - Dialog de cancelamento de DC-e

 

Descrição dos Campos:

Campo

Tipo

Tamanho

Obrig. ?

Máscara

Observações

Justificativa

Texto

255

Sim

-

-

Enviar Cancelamento

Botão

 

 

 

 

Seq

Column Header

-

-

-

Possibiilidade de ordenação ASC ou DESC 

Correção

Column Header

-

-

 -

Possibiilidade de ordenação ASC ou DESC  

Status

Column Header 

-

-

Possibiilidade de ordenação ASC ou DESC . Opções disponíveis: AUTORIZADO ou ERRO

Menu

Column Header

-

-

-

A escolher entre:
Emitir PDF, Baixar XML e Excluir

 
Regras de Interface:

1. Justificativa: conforme e justificativa for sendo preenchida, a quantidade de caracteres restantes deve ser subtraida. 
2. Enviar cancelamento: o padrão deve estar desabilitado, por padrão. Deve ser habilitado se, e somente se, 15 ou mais caracteres forem preenchidos na justificativa de cancelamento. 
3. Status: o status deverá seguir as cores padrão do sistema: "AUTORIZADO" (verde) ou "ERRO" (vermelho),  partir dos valores do bit "autorizado" na tabela. O tooltip do status deve ser exibido de acordo com o conteúdo da coluna "situacao". 
4. Menu:

image-1777421265154.png 

Imagem II - Referência para comprovante de cancelamento da DC-e.

5. A paginação deve ocorrer a partir de 3 eventos enviados (a autorização acontece só para um, mas o usuário pode tentar o envio várias vezes).

Regras de Negócio:

1. Enviar cancelamento: o clique no botão deve realizar a montagem do XML descrito em Anexo I - Exemplos de XML (cancelamento e retorno) e realizar o envio para o WS DCeRecepcaoEvento, de acordo com o ambiente configurado:

Ambiente de Produção
Serviço Versão URL
DCeRecepcaoEvento 1.00 https://dce.fazenda.pr.gov.br/dce/DCeRecepcaoEvento?wsdl

 

Ambiente de Homologação
Serviço Versão URL
DCeRecepcaoEvento 1.00 https://dce.fazenda.pr.gov.br/dce/DCeRecepcaoEvento?wsdl


2. Caso o retorno do WS seja "101 - Cancelamento de DCe Homologado" o bit "autorizado" deve ser marcado como verdadeiro no banco de dados e na coluna "situacao" deve ser inserido o texto Cancelamento de DCe Homologado. Em caso de erro (situação diferente de 101), o motivo do erro deve ser inserido na coluna "situacao" e o bit "autorizado" não sofre alterações de valor. Em todo caso, o arquivo é gravado em disco com o padrão de nomenclatura usado para NFe -> DCe[CHAVE]-canc.xml (para os autorizados) e -cancRet.xml para os erros.
3. Baixar XML: é feita a busca na pasta da empresa e dce, e é feito o download do arquivo DCe[CHAVE]-canc.xml.
4. Excluir: a exclusão deve deletar tudo vinculado a respectiva linha no banco de dados. 

 

Questões Técnicas:

A nova tabela deverá ser criada no banco de dados para armazenar o evento:

CREATE TABLE `dceevento` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `nSeqEvento` int(11) NOT NULL, // sequencial a partir do último registro inserido da dceId
  `tipo` int(1) NOT NULL, // 1 = cancelamento
  `xCorrecao` varchar(255) DEFAULT NULL, // Justificativa
  `empresaId` bigint(20) DEFAULT NULL,
  `dceId` bigint(20) DEFAULT NULL,
  `autorizado` bit(1) NOT NULL,
  `motivo` varchar(255) DEFAULT NULL,
  `situacao` int(11) DEFAULT NULL,
)

 

 
Eventos

Anexo I - Exemplos de XML (cancelamento e retorno)

Envio do cancelamento

<?xml version="1.0" encoding="UTF-8"?>
<envEvento xmlns="http://www.portalfiscal.inf.br/dce" versao="1.00"> // talvez esse endereço não faça sentido
  <idLote>1</idLote>
  <evento versao="1.00">
    <infEvento Id="ID110111[CHAVE_DE_ACESSO_44_DIGITOS]01">
      <cOrgao>[COD_UF]</cOrgao>
      <tpAmb>2</tpAmb> 
      <tpEmit>2</tpEmit> //2 = emissor próprio; 3 = transportadora (de acordo com o que está no dce emitido dce.tpEmit)
      |<CNPJAutor>[CNPJ DO RESPONSÁVEL PELA ASSINATURA</CNPJAutor> //empresa.cnpj
      <CNPJUsEmit> NO CASO DE EMPRESA CONFIGURADA COMO TRANSPORTADORA O CNPJ OU CPFUsEmit DO EMITENTE </CNPJUsEmit>
      <chDCe>[CHAVE_DE_ACESSO_44_DIGITOS]</chDCe> // dce.chaveAcesso
      <dhEvento>2026-04-28T20:30:00-03:00</dhEvento>
      <tpEvento>110111</tpEvento> // fixo
      <nSeqEvento>1</nSeqEvento> // de acordo com a sequência de envio para o documento (quantos já foram gerados)
      <detEvento versao="1.00">
        <descEvento>Cancelamento</descEvento>
        <nProt>[NUMERO_PROTOCOLO_AUTORIZACAO]</nProt> //Informar o número do Protocolo de Autorização da DCe a ser Cancelada -> dce.protAutoriza
        <xJust>Justificativa do cancelamento com no mínimo 15 caracteres</xJust> 
      </detEvento>
    </infEvento>
    </evento>
</envEvento>


Retorno do cancelamento

<?xml version="1.0" encoding="UTF-8"?>
<retEnvEvento xmlns="http://www.portalfiscal.inf.br/dce" versao="1.00"> // foi gerado pelo gemini, creio que o xmlns pode não estar correto
  <idLote>1</idLote>
  <tpAmb>2</tpAmb> <verAplic>SVRS20260428</verAplic>
  <cOrgao>35</cOrgao>
  <cStat>128</cStat> 
  <xMotivo>Lote de evento processado</xMotivo>
  <retEvento versao="1.00">
    <infEvento>
      <tpAmb>2</tpAmb>
      <verAplic>SVRS20260428</verAplic>
      <cOrgao>35</cOrgao>
      <cStat>101</cStat> 
      <xMotivo>Cancelamento de DCe Homologado</xMotivo>
      <chDCe>35260400000000000000990010000000011000000005</chDCe>
      <tpEvento>110111</tpEvento>
      <nSeqEvento>1</nSeqEvento>
      <dhRegEvento>2026-04-28T21:55:00-03:00</dhRegEvento>
      <nProt>135260000000003</nProt> </infEvento>
  </retEvento>
</retEnvEvento>

Cancelamento com erro

<?xml version="1.0" encoding="UTF-8"?>
<retEnvEvento xmlns="http://www.portalfiscal.inf.br/dce" versao="1.00">
  <idLote>1</idLote>
  <tpAmb>2</tpAmb>
  <verAplic>SVRS20260428</verAplic>
  <cOrgao>35</cOrgao>
  <cStat>128</cStat>
  <xMotivo>Lote de evento processado</xMotivo>
  <retEvento versao="1.00">
    <infEvento>
      <tpAmb>2</tpAmb>
      <verAplic>SVRS20260428</verAplic>
      <cOrgao>35</cOrgao>
      <cStat>220</cStat> 
      <xMotivo>Rejeição: DCe com prazo de cancelamento ultrapassado</xMotivo>
      <chDCe>35260400000000000000990010000000011000000005</chDCe>
      <tpEvento>110111</tpEvento>
      <nSeqEvento>1</nSeqEvento>
    </infEvento>
  </retEvento>
</retEnvEvento>