Registrar Evento na MDF-e
Descrição Geral
A rota de Registrar Evento permite que a Software House ou emitente associe novos registros formais a um Manifesto Eletrônico de Documentos Fiscais (MDF-e) já emitido.
Função da Rota
Através deste endpoint, é possível realizar diversas operações inerentes ao ciclo de vida da viagem e controle fiscal e logístico associado ao MDF-e, entre elas:
- Cancelamento
- Encerramento
- Inclusão de Condutor
- Inclusão de Documentos Fiscais (DFe)
- Pagamento de Operação de Transporte
- Confirmação de Serviço de Transporte
- Alteração de Pagamento de Serviço
Campos da Requisição (Payload)
Devido à complexidade e às variações de regras da Sefaz para cada tipo estatístico de evento, detalhamos abaixo a estrutura principal comum da requisição.
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
evento | object | ✅ | Grupo principal contendo os dados do evento. |
evento.infEvento | object | ✅ | Informações do evento (tipo, detalhamento, data, etc.). |
evento.infEvento.cOrgao | string | ✅ | Código do órgão de recepção (ex: 91 para RFB, 93 para ONE, etc.). |
evento.infEvento.tpAmb | string | ✅ | Identificação do Ambiente: 1 - Produção / 2 - Homologação. |
evento.infEvento.chMDFe | string | ✅ | Chave de Acesso da MDF-e vinculada ao evento. |
evento.infEvento.dhEvento | string | ✅ | Data e Hora do Evento no formato AAAA-MM-DDThh:mm:ssTZD. |
evento.infEvento.tpEvento | string | ✅ | Tipo do Evento (ex: 110111 p/ Cancelamento, 110112 p/ Encerramento). |
evento.infEvento.nSeqEvento | string | ✅ | Número sequencial do evento (geralmente 1). |
evento.infEvento.detEvento | object | ✅ | Objeto contendo o detalhamento específico baseado no tipo escolhido. |
evento.infEvento.CNPJ | string | ⚙️ Opcional* | CNPJ do autor do evento. |
evento.infEvento.CPF | string | ⚙️ Opcional* | CPF do autor do evento. |
certificate | string | ⚙️ Opcional | Certificado digital A1 em base64. |
pass_certificate | string | ⚙️ Opcional | Senha do certificado. |
Atenção: É obrigatório informar o CNPJ ou o CPF.
Dentro do nó detEvento você deve enviar os detalhes correspondentes ao tipo de evento selecionado (ex: cancelamento, encerramento, inclusaoCond, etc.). Consulte a Documentação do Swagger para ter acesso a todos os esquemas, validações e exemplos específicos exigidos para o detalhamento de cada um desses eventos.
Autenticação
Todos os endpoints da API necessitam de credenciais de autenticação baseadas no Token e na API Key da Software House.
api-key: Chave da API da Software House envida pelo header.token: Token de autorização enviado pelo header.
Exemplo de Payload (Cancelamento)
Neste exemplo, veja a estrutura básica para enviar um evento de cancelamento (tpEvento: 110111):
{
"evento": {
"infEvento": {
"cOrgao": "91",
"tpAmb": "1",
"CNPJ": "12345678000195",
"chMDFe": "35210912345678000195550010000000011000000011",
"dhEvento": "2024-01-01T12:00:00-03:00",
"tpEvento": "110111",
"nSeqEvento": "1",
"detEvento": {
"cancelamento": {
"nProt": "135210000000001",
"xJust": "Erro de difitacao na MDF-e"
}
}
}
}
}
Exemplo de Requisição Completa
curl --request POST \
--url https://api.emitix.com.br/mdf/evento \
--header 'api-key: SUA_API_KEY' \
--header 'Content-Type: application/json' \
--header 'token: SEU_TOKEN' \
--data '{
"evento": {
"infEvento": {
"cOrgao": "91",
"tpAmb": "1",
"CNPJ": "12345678000195",
"chMDFe": "35210912345678000195550010000000011000000011",
"dhEvento": "2024-01-01T12:00:00-03:00",
"tpEvento": "110111",
"nSeqEvento": "1",
"detEvento": {
"cancelamento": {
"nProt": "135210000000001",
"xJust": "Erro de difitacao na MDF-e"
}
}
}
}
}'
Exemplo de Resposta
{
"success": true,
"message": "Evento MDF-e assinado e validado com sucesso",
"statusCode": 200,
"data": {
"tpAmb": "2",
"verAplic": "RS20240709143541",
"cOrgao": "35",
"cStat": "100",
"xMotivo": "Evento registrado com sucesso",
"@_Id": "ID999999999999999",
"xml": "XML_ENVIADO_A_SEFAZ"
}
}