Module: FocusNfe::Recursos::Concerns::Emitivel

Included in:
FocusNfe::Recursos::Cte, FocusNfe::Recursos::CteOs, Dce, Mdfe, Nfce, Nfcom, Nfe, Nfgas, Nfse, NfseNacional
Defined in:
lib/focus_nfe/recursos/concerns/emitivel.rb

Overview

Comportamento de emissão (+POST /?ref=+). Devolve o Modelos::Documento com o estado fiscal inicial (em geral assíncrono: processando_autorizacao).

Instance Method Summary collapse

Instance Method Details

#emitir(ref:, dados:, validar: false, **opcoes) ⇒ FocusNfe::Modelos::Documento

Emite um documento fiscal.

Parameters:

  • ref (String)

    referência única do documento na sua aplicação

  • dados (Hash)

    payload de emissão (campos do schema, validados server-side)

  • validar (Boolean) (defaults to: false)

    se true, valida dados contra o schema empacotado antes do envio (documentos sem schema próprio são emitidos sem validar)

  • opcoes (Hash)

    parâmetros de query adicionais (ex.: emissão síncrona)

Returns:

Raises:



20
21
22
23
24
25
26
# File 'lib/focus_nfe/recursos/concerns/emitivel.rb', line 20

def emitir(ref:, dados:, validar: false, **opcoes)
  validar_referencia!(ref)
  validar_dados!(dados) if validar

  response = connection.post(caminho_base, params: { ref: ref, **opcoes }, body: dados)
  Modelos::Documento.from_response(response, ref: ref)
end