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.
/openapi/v2/empresas/{empresaId}/dc-etoken, 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. Strings de enumeração não diferenciam maiúsculas de minúsculas.
Parâmetros de caminho
empresaId* | string | Identificador da empresa emitente |
* Campo obrigatório
Corpo da requisição
id* | string | Identificador da requisição |
ambiente* | string | Ambiente |
dataEmissao | string | Data de emissão |
*obrigatório para empresa Marketplace | object | Remetente |
* | object | Destinatário |
* | array | Itens declarados |
* | object | Transporte |
| array | Autorizados a baixar o XML |
informacoesAdicionais | string | Observação do marketplace |
informacoesAdicionaisFisco | string | Observação ao fisco |
informacoesAdicionaisEmitente | string | Observação do emitente |
| array | Observações do marketplace |
* Campo obrigatório
Pendente e é numerado e enviado à SEFAZ de forma assíncrona. Acompanhe pela consulta ou pelo webhook.Sem corpo de resposta
O tipo de emissão de DC-e definido no cadastro da empresa decide como remetente é preenchido. Marketplace emite em nome de um vendedor; OwnIssuer emite em nome próprio; Carrier ainda não pode emitir e devolve 10019013.
Marketplace emitindo por um vendedor
O vendedor vai em remetente com documento e endereço; o CNPJ da chave continua sendo o da empresa Marketplace.
"remetente": {"tipoPessoa": "F", "nome": "JOAO DA SILVA", "cpfCnpj": "12345678909", "telefone": "41999990000","endereco": { "uf": "PR", "cidade": "4106902", "logradouro": "RUA XV DE NOVEMBRO", "numero": "100", "bairro": "CENTRO", "cep": "80020310" }}
* | object | Remetente |
* Campo obrigatório
Empresa emitindo em nome próprio
Não envie remetente: o remetente e o endereço de origem vêm do cadastro da empresa. Se enviar remetente.cpfCnpj, ele deve ser o CNPJ da própria empresa, senão 10019019.
{"id": "DCe-000012334","ambiente": "Homologacao","destinatario": {"tipoPessoa": "F", "nome": "MARIA OLIVEIRA", "cpfCnpj": "11144477735","endereco": { "uf": "SP", "cidade": "3550308", "logradouro": "AVENIDA PAULISTA", "numero": "1000", "bairro": "BELA VISTA", "cep": "01310100" }},"itens": [ { "descricao": "CARTEIRA", "ncm": "42023100", "quantidade": 1, "valorUnitario": 40.00 } ],"transporte": { "modalidade": "PorContaPropria" }}
modalidade é obrigatória. cnpjTransportadora só faz sentido com PorEmpresaTransportadora.
Correios ou meios próprios
"transporte": { "modalidade": "PelosCorreios" }
* | object | Transporte |
* Campo obrigatório
Transportadora contratada
"transporte": { "modalidade": "PorEmpresaTransportadora", "cnpjTransportadora": "14422279000106" }
* | object | Transporte |
* Campo obrigatório
O total de cada linha é quantidade × preço unitário, arredondado a 2 casas; o total do documento é a soma das linhas. Os dois são calculados pela plataforma e não vão na requisição. Campos de texto são sanitizados (acentos removidos, caracteres de controle trocados por espaço, espaços colapsados) antes da validação de tamanho.
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 e 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.
ambienteAmbiente de emissão
| Valores | Significado |
|---|---|
| Homologacao | Ambiente de teste da SEFAZ; o documento não tem validade |
| Producao | Ambiente oficial |
remetente.tipoPessoaTipo de pessoa
Também vale para destinatario.tipoPessoa.
| Valores | Significado |
|---|---|
| F | Pessoa física; cpfCnpj com 11 dígitos |
| J | Pessoa jurídica; cpfCnpj com 14 dígitos |
transporte.modalidadeModalidade de transporte
| Valores | Significado |
|---|---|
| PelosCorreios | Enviado pelos Correios |
| PorContaPropria | Levado por meios próprios do remetente |
| PorEmpresaTransportadora | Levado por uma transportadora; informe cnpjTransportadora |
| Código | HTTP | |
|---|---|---|
| 10003000 | 404 | empresaId não encontrado. |
| 10019012 | 400 | Empresa não configurada para DC-e (falta tipoEmitente / série do modelo 99 / site do Marketplace). Envie emissaoDCe no cadastro ou em uma atualização com id. |
| 10019010 | 400 | ambiente diferente do ambiente atual da empresa (por exemplo Producao enviado antes de a operação trocar a empresa para produção). Submeta no ambiente atual da empresa. |
| 10019014 | 400 | Empresa Marketplace sem remetente. Informe o remetente. |
| 10019015 | 400 | remetente.endereco ausente. Informe o endereço do remetente. |
| 10019016 | 400 | Remetente brasileiro sem cpfCnpj. Informe o documento do remetente. |
| 10019004 | 400 | Empresa não pode emitir (não aprovada / certificado não pronto). Aguarde a aprovação / vincule o certificado. |
| 10019017 | 400 | Destinatário brasileiro sem cpfCnpj. Informe o documento do destinatário. |
| 10019011 | 400 | Código IBGE do município não encontrado ou inconsistente com uf. Verifique cidade / uf. |
| 10019005 | 400 | Requisição duplicada concorrente. Tente novamente mais tarde. |
| 10019006 | 400 | Tarefas pendentes em excesso para o CNPJ. Tente novamente mais tarde. |
| 10019007 | 400 | Série não resolvida (várias séries habilitadas). Peça à operação para consolidar as séries. |
| 10019013 | 400 | Tipo de emitente Carrier ainda não suportado na emissão. Use uma empresa Marketplace / OwnIssuer. |
| 10019018 | 400 | Item inválido (tamanho do NCM, quantidade ≤ 0, preço unitário negativo). Corrija conforme mensagem. |
| 10019019 | 400 | 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. |
| 10019020 | 400 | CNPJ da transportadora inválido. Corrija cnpjTransportadora. |
| 10019021 | 400 | Informação adicional longa demais. Encurte o texto. |
| 10019022 | 400 | Quantidade ou documento inválido em autorizacaoDownloadXml; inclui o CNPJ do próprio emitente; documento repetido. Corrija a lista. |
| 10019030 | 400 | Mesmo id com mensagem diferente. Use um novo id ou reenvie a mensagem original. |
| 10019031 | 400 | Produção: já existe um documento ativo / autorizado para o id. Consulte o original. |
| 10019048 | 400 | 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. |
| 10001001 | 400 | Falha de validação de campos (uma entrada por campo). Corrija conforme mensagem. |
