Module: FocusNfe::Recursos::Concerns::Conciliavel

Included in:
Nfce, Nfe
Defined in:
lib/focus_nfe/recursos/concerns/conciliavel.rb

Overview

Comportamento de Conciliação Financeira (ECONF): registro, consulta e cancelamento por número de protocolo num sub-caminho da referência (+///econf+). Devolve o Modelos::Documento com o estado do evento. Uso compartilhado por NF-e e NFC-e.

Instance Method Summary collapse

Instance Method Details

#cancelar_econf(ref, numero_protocolo) ⇒ FocusNfe::Modelos::Documento

Cancela um evento de conciliação financeira pelo número de protocolo. Havendo mais de um ECONF na mesma nota, cancele do mais antigo ao mais recente.

Parameters:

  • ref (String)

    referência do documento

  • numero_protocolo (String)

    protocolo devolvido no registro do ECONF

Returns:

Raises:



48
49
50
51
52
53
# File 'lib/focus_nfe/recursos/concerns/conciliavel.rb', line 48

def cancelar_econf(ref, numero_protocolo)
  validar_referencia!(ref)

  response = connection.delete(caminho_econf(ref, numero_protocolo))
  Modelos::Documento.from_response(response, ref: ref)
end

#consultar_econf(ref, numero_protocolo) ⇒ FocusNfe::Modelos::Documento

Consulta um evento de conciliação financeira pelo número de protocolo.

Parameters:

  • ref (String)

    referência do documento

  • numero_protocolo (String)

    protocolo devolvido no registro do ECONF

Returns:

Raises:



33
34
35
36
37
38
# File 'lib/focus_nfe/recursos/concerns/conciliavel.rb', line 33

def consultar_econf(ref, numero_protocolo)
  validar_referencia!(ref)

  response = connection.get(caminho_econf(ref, numero_protocolo))
  Modelos::Documento.from_response(response, ref: ref)
end

#registrar_econf(ref, detalhes_pagamento:) ⇒ FocusNfe::Modelos::Documento

Registra um evento de conciliação financeira sobre o documento autorizado.

Parameters:

  • ref (String)

    referência do documento

  • detalhes_pagamento (Array<Hash>)

    pagamentos a conciliar (1 a 100)

Returns:

Raises:



18
19
20
21
22
23
24
# File 'lib/focus_nfe/recursos/concerns/conciliavel.rb', line 18

def registrar_econf(ref, detalhes_pagamento:)
  validar_referencia!(ref)

  response = connection.post("#{caminho_referencia(ref)}/econf",
                             body: { detalhes_pagamento: detalhes_pagamento })
  Modelos::Documento.from_response(response, ref: ref)
end