TF Fiscal
Documentação

DC-e

Emitir DC-e

Aceita uma Declaração de Conteúdo Eletrônica (modelo 99) e a autoriza de forma assíncrona na SEFAZ.

POST/openapi/v2/empresas/{empresaId}/dc-e

Requer os cabeçalhos de assinatura token, timestamp e sign, veja Autenticação.

A aceitação devolve HTTP 200 sem corpo. Reenviar o mesmo id: uma impressão digital idêntica da mensagem reutiliza a tarefa original (idempotente), uma impressão diferente devolve 10019030 e uma falha terminal anterior reabre a tarefa com a nova mensagem. O resultado chega pela consulta ou pelos webhooks dce.authorized / dce.rejected (veja DC-e). A empresa deve estar aprovada, com certificado utilizável e com emissaoDCe configurado; ambiente deve ser igual ao ambiente atual da empresa (atenção: o nome do campo é ambiente, não ambienteEmissao como na NF-e). Strings de enumeração não diferenciam maiúsculas de minúsculas.

Parâmetros

Parâmetros de caminho

  • empresaIdstringobrigatório

    Identificador devolvido por Registrar empresa.

    Exemplo: 1934811222334455

Corpo da requisição

  • idstringobrigatório

    Id do documento no integrador (≤64), usado como variável de caminho dceId na consulta / cancelamento; chave de idempotência.

    Exemplo: DCe-000012333
  • ambientestringobrigatório

    Producao / Homologacao, deve ser igual ao ambiente da empresa (o nome do campo é ambiente, não ambienteEmissao como na NF-e). Divergência devolve DCe00004.

  • dataEmissaostringopcional

    Data/hora de emissão em ISO-8601; padrão é o momento da aceitação. Com offset ou Z (2026-09-08T10:00:00-03:00) é convertida como informada; hora local sem offset (2026-09-08T10:00:00) é interpretada no fuso do estado da empresa. Janela permitida: no máximo 5 minutos à frente e no máximo 30 dias para trás (configurável no servidor); fora dela a requisição falha com 10019048 (a SEFAZ rejeita dhEmi futuro e o número seria desperdiçado; uma data muito antiga arrasta o AAMM da chave para um período antigo). Gravada no XML dhEmi com o offset do estado da empresa.

    Exemplo: 2026-09-06T12:00:00Z
  • remetenteobjectobrigatório para empresas Marketplace / Carrier

    Remetente (DCe00005 quando ausente em empresa Marketplace / Carrier); uma empresa OwnIssuer pode omiti-lo (a própria empresa); quando enviado, cpfCnpj deve ser igual ao CNPJ da empresa.

  • destinatarioobjectobrigatório

    Destinatário; cpfCnpj obrigatório (DCe00009).

  • itensarrayobrigatório

    Mercadorias declaradas, 1-999 itens.

  • transporteobjectobrigatório

    Dados de transporte.

  • autorizacaoDownloadXmlarrayopcional

    CPF / CNPJ autorizados a baixar o XML, até 10 (10019022). Não inclua o CNPJ do próprio emitente (já autorizado por padrão; o autorizador responde "CNPJ do Marketplace ja autorizado para download") e não repita um documento: ambos são rejeitados na aceitação.

  • informacoesAdicionaisstringopcional

    Informações adicionais do marketplace (≤5000) → infAdic/infAdMarketplace.

  • informacoesAdicionaisFiscostringopcional

    Informações adicionais para o fisco (≤2000) → infAdic/infAdFisco.

  • informacoesAdicionaisEmitentestringopcional

    Informações complementares do emitente (≤5000) → infAdic/infCpl.

  • observacoesMarketplacearrayopcional

    Até 10 observações → infAdic/obsMarketplace (atributo xCampo + xTexto).

Respostas

200

Aceito; sem corpo de resposta. O documento entra em Pendente e é numerado e enviado à SEFAZ de forma assíncrona. Acompanhe pela consulta ou pelo webhook.

Sem corpo de resposta

Erros

CódigoHTTP
10003000404

empresaId não encontrado.

DCe00004400

Empresa não configurada para DC-e (falta tipoEmitente / série do modelo 99 / site do Marketplace), ou ambiente diferente do ambiente atual da empresa (por exemplo Producao enviado antes de a operação trocar a empresa para produção). Envie emissaoDCe no cadastro ou em uma atualização com id; submeta no ambiente atual da empresa.

DCe00005400

Empresa Marketplace / Carrier sem remetente. Informe o remetente.

DCe00006400

remetente.endereco ausente. Informe o endereço do remetente.

DCe00007400

Remetente brasileiro sem cpfCnpj. Informe o documento do remetente.

DCe00008400

Empresa não pode emitir (não aprovada / certificado não pronto). Aguarde a aprovação / vincule o certificado.

DCe00009400

Destinatário brasileiro sem cpfCnpj. Informe o documento do destinatário.

GW001400

Código IBGE do município não encontrado ou inconsistente com uf. Verifique cidade / uf.

10019005400

Requisição duplicada concorrente. Tente novamente mais tarde.

10019006400

Tarefas pendentes em excesso para o CNPJ. Tente novamente mais tarde.

10019007400

Série não resolvida (várias séries habilitadas). Peça à operação para consolidar as séries.

10019013400

Tipo de emitente Carrier ainda não suportado na emissão. Use uma empresa Marketplace / OwnIssuer.

10019018400

Item inválido (tamanho do NCM, quantidade ≤ 0, preço unitário negativo). Corrija conforme mensagem.

10019019400

Enumeração ou formato inválido (mensagem cita o campo: tipoPessoa, modalidade, dataEmissao, documentos, telefone, e-mail, remetente de emitente próprio diferente da empresa, ...). Corrija conforme mensagem.

10019020400

CNPJ da transportadora inválido. Corrija cnpjTransportadora.

10019021400

Informação adicional longa demais. Encurte o texto.

10019022400

Quantidade ou documento inválido em autorizacaoDownloadXml; inclui o CNPJ do próprio emitente; documento repetido. Corrija a lista.

10019030400

Mesmo id com mensagem diferente. Use um novo id ou reenvie a mensagem original.

10019031400

Produção: já existe um documento ativo / autorizado para o id. Consulte o original.

10019048400

dataEmissao fora da janela permitida (mais de 5 minutos à frente ou mais de 30 dias para trás; mensagem traz os limites atuais). Use a hora atual ou omita dataEmissao.

10001001400

Falha de validação de campos (uma entrada por campo). Corrija conforme mensagem.

Valores calculados e sanitização

vProd = quantidade × valorUnitario (HALF_UP, 2 casas) e vDC = Σ vProd são calculados pela plataforma e gravados no XML. Campos de texto são sanitizados (acentos removidos, caracteres de controle substituídos por espaço, espaços em branco colapsados) antes da validação de tamanho.

Validação na aceitação

Verificações feitas na aceitação (sem numeração, sem chamada à SEFAZ, 400 direto): empresa apta a emitir com certificado utilizável e DC-e configurado; ambiente igual ao da empresa; tamanho e dígitos verificadores dos documentos; código IBGE do município coerente com a UF; cep de 8 dígitos; itens não vazio com quantidade / preço unitário / NCM válidos; limites de tamanho das listas; tamanho dos textos.

Rejeições da SEFAZ durante a emissão não são erros HTTP: aparecem como status Negada na consulta e no webhook dce.rejected. A máquina de estados completa está em DC-e.