Skip to main content
O MDF-e (modelo 58) agrupa CT-e e NF-e em uma declaração de carga por viagem. O client público é Suot\Fiscal\Mdfe\Application\Mdfe via $mdfe->…->handle().
Capacidades fiscais só são production-ready após schemas importados, fixtures, ciclo de vida completo e evidência de homologação. O ciclo está pronto para integração SUOT (emissão, consulta, não encerrados, cancelamento, encerramento, inclusão de condutor e contingência homologados), mas não é production-ready absoluto — gaps em includeDfe() com indCarregaPosterior e distribuição DF-e.

Jornada

Emissão

$mdfe->issue()…->handle() — manifesto rodoviário com CT-e, CIOT e totais.

Resultados

IssueMdfeResult: autorizado, rejeitado, failure(), campos a persistir.

Contingência

$mdfe->issueInContingency()tpEmis=2 com QR assinado.

Consultas

Status do serviço

Por chave

Não encerrados

Download procMDFe

Distribuição DF-e

Eventos

Cancelamento

Encerramento

Inclusão de condutor

Inclusão de DF-e

Pacote e instalação

Ou meta-pacote: suot/fiscal. Laravel (opcional): suot/fiscal-laravel registra Mdfe e php artisan fiscal:mdfe:status. Ver Laravel Bridge.

Gaps conhecidos

  • includeDfe() fim a fim com indCarregaPosterior=1 — bloqueado em homologação (cStat 703)
  • distributeDfe() — implementado; homologação bloqueada (cStat 243)

Próximos passos

Trilha didática: Avaliar o SDK. CT-e modelo 57: Visão geral CT-e.