@use('Illuminate\Support\Number') {{-- A formatação da chave fica só na exibição do resultado. No campo, o valor cru é gerenciado pelo Livewire: máscara e wire:model disputariam o mesmo input e o cursor saltaria a cada tecla. --}}
@php // No painel master os links apontam para as rotas do próprio master: // as do painel exigem vínculo com empresa. $rotaXml = $global ? 'master.notas.download' : 'painel.notas.download'; $rotaDanfe = $global ? 'master.notas.danfe' : 'painel.notas.danfe'; $rotaDetalhe = $global ? 'master.notas.show' : 'painel.notas.show'; @endphp {{-- Campo de leitura --}}

Chave de acesso da NF-e

Digite os 44 dígitos ou aponte o leitor de código de barras para o DANFE.

{{ strlen(preg_replace('/\D/', '', $chave)) }}/44
@if ($global)

A consulta usa o certificado digital da empresa escolhida e consome a cota dela na SEFAZ.

@endif
@error('chave')

{{ $message }}

@enderror

O leitor de código de barras funciona como teclado: com o cursor no campo, a leitura preenche a chave e a consulta dispara sozinha ao completar os 44 dígitos.

{{-- Resultado --}} @if ($nota)

NF-e {{ $nota->numero }}/{{ $nota->serie }}

@if ($nota->tem_xml_completo) XML completo @else Somente resumo @endif {{ $origem === 'sefaz' ? 'Obtida da SEFAZ agora' : 'Do acervo da empresa' }}

{{ $nota->emit_nome ?: 'Emitente não informado' }}

{{-- Ações --}}
@if ($nota->tem_xml_completo) Baixar XML Imprimir PDF da NF-e @endif Detalhes
@if ($aviso)

{{ $aviso }}

@endif
@foreach ([ ['Fornecedor', $nota->emit_nome ?: '—'], ['CNPJ', $nota->emit_cnpj_formatado], ['Emissão', $nota->data_emissao?->format('d/m/Y H:i') ?: '—'], ['Valor total', Number::currency((float) $nota->valor_total, 'BRL', 'pt_BR')], ['Protocolo', $nota->protocolo ?: '—'], ['Autorização', $nota->data_autorizacao?->format('d/m/Y H:i') ?: '—'], ['Manifestação', $nota->manifestacaoLabel()], ['UF do emitente', $nota->emit_uf ?: '—'], ] as [$rotulo, $valor])
{{ $rotulo }}
{{ $valor }}
@endforeach
Chave de acesso
{{ $nota->chave_formatada }}
@unless ($nota->tem_xml_completo)

XML completo indisponível

A SEFAZ só libera o arquivo integral — e, com ele, o DANFE — depois que o destinatário registra a Ciência da Operação. Manifestar agora

@endunless @if ($nota->eventos->isNotEmpty())

Eventos

@foreach ($nota->eventos as $evento)

{{ $evento->descricao }}

{{ $evento->data_evento?->format('d/m/Y H:i') }}

@endforeach
@endif
@elseif ($consultado && ! $errors->any())

Nenhuma nota localizada para esta chave

{{ $aviso ?: 'Confira se a nota foi emitida contra o CNPJ da sua empresa.' }}

@else {{-- Estado inicial --}}

Como usar

    @foreach ([ 'Posicione o cursor no campo acima — ele já abre focado.', 'Dispare o leitor sobre o código de barras do DANFE, ou digite os 44 dígitos.', 'A consulta busca primeiro no acervo da empresa; se não achar, vai à SEFAZ.', 'Com o XML completo em mãos, aparecem os botões de download e de impressão do DANFE.', ] as $i => $passo)
  1. {{ $i + 1 }} {{ $passo }}
  2. @endforeach

A consulta por chave usa o mesmo serviço do monitor e consome a cota de requisições da SEFAZ. Consultas repetidas do mesmo CNPJ podem gerar bloqueio temporário.

@endif