ApiBrasil.Core.CreditResponse (APIBrasil v0.0.1)

Copy Markdown View Source

Envelope de resposta das consultas por crédito (%{"error" => ..., "message" => ..., "balance" => ..., "tax" => ..., "valor_consulta" => ..., "data" => ...}).

Traz acessores nomeados e implementa Access — o acesso por chave continua funcionando:

{:ok, consulta} = ApiBrasil.Data.Consulta.cnpj(client, %{"cnpj" => "00000000000000"})

ApiBrasil.Core.CreditResponse.data(consulta)     # dados da consulta
ApiBrasil.Core.CreditResponse.balance(consulta)  # saldo restante
consulta["data"]                                 # o mesmo, por chave

Summary

Functions

Saldo restante após a consulta.

Dados da consulta.

Informa se o gateway sinalizou erro no envelope.

Informa se a resposta veio do modo homologação.

Mensagem devolvida pelo gateway.

Embrulha o mapa JSON no envelope.

Taxa aplicada.

Devolve o envelope completo como mapa.

Valor cobrado pela consulta.

Types

t()

@type t() :: %ApiBrasil.Core.CreditResponse{json: map()}

Functions

balance(credit_response)

@spec balance(t()) :: term()

Saldo restante após a consulta.

data(credit_response)

@spec data(t()) :: term()

Dados da consulta.

error?(credit_response)

@spec error?(t()) :: boolean()

Informa se o gateway sinalizou erro no envelope.

homolog?(credit_response)

@spec homolog?(t()) :: boolean()

Informa se a resposta veio do modo homologação.

message(credit_response)

@spec message(t()) :: String.t() | nil

Mensagem devolvida pelo gateway.

new(json)

@spec new(map()) :: t()

Embrulha o mapa JSON no envelope.

tax(credit_response)

@spec tax(t()) :: term()

Taxa aplicada.

to_map(credit_response)

@spec to_map(t()) :: map()

Devolve o envelope completo como mapa.

valor_consulta(credit_response)

@spec valor_consulta(t()) :: term()

Valor cobrado pela consulta.