Packages

Elixir library to deal with PIX payments

Current section

Files

Jump to
ex_pix lib data static.ex
Raw

lib/data/static.ex

defmodule ExPIX.Data.Static do
@moduledoc """
Struct representing the static data
"""
alias ExPIX.Data.{
StaticAccount,
Additional,
}
defstruct [
payload_indicator: Application.get_env(:ex_pix, :static_code)[:payload_indicator],
initiation_method: Application.get_env(:ex_pix, :static_code)[:initiation_method],
account_information: %StaticAccount{},
category_code: Application.get_env(:ex_pix, :static_code)[:category_code],
currency_code: Application.get_env(:ex_pix, :static_code)[:currency_code],
amount: Application.get_env(:ex_pix, :static_code)[:default_amount],
country_code: Application.get_env(:ex_pix, :static_code)[:country_code],
merchant_name: "",
merchant_city: "",
postal_code: "",
additional: %Additional{},
]
def ids do
[
{"00", :payload_indicator},
{"01", :initiation_method},
{"26", :account_information},
{"52", :category_code},
{"53", :currency_code},
{"54", :amount},
{"58", :country_code},
{"59", :merchant_name},
{"60", :merchant_city},
{"61", :postal_code},
{"62", :additional},
]
end
def max_lengths do
%{
payload_indicator: 2,
initiation_method: 2,
category_code: 4,
currency_code: 3,
amount: 13,
country_code: 2,
merchant_name: 25,
merchant_city: 15,
postal_code: 99,
}
end
def total_length, do: nil
end