Braintree (Braintree v0.15.0)

A native Braintree client library for Elixir. Only a subset of the API is supported and this is a work in progress. That said, it is already used in production, and any modules that have been implemented can be used.

For general reference please see: https://developers.braintreepayments.com/reference/overview

Summary

Functions

Convenience function for retrieving braintree specfic environment values, but will raise an exception if values are missing.

Convenience function for setting braintree application environment variables.

Functions

get_env(key, default \\ nil)

@spec get_env(atom(), any()) :: any()

Convenience function for retrieving braintree specfic environment values, but will raise an exception if values are missing.

Example

iex> Braintree.get_env(:random_value)
** (Braintree.ConfigError) missing config for :random_value

iex> Braintree.get_env(:random_value, "random")
"random"

iex> Application.put_env(:braintree, :random_value, "not-random")
...> value = Braintree.get_env(:random_value)
...> Application.delete_env(:braintree, :random_value)
...> value
"not-random"

iex> System.put_env("RANDOM", "not-random")
...> Application.put_env(:braintree, :system_value, {:system, "RANDOM"})
...> value = Braintree.get_env(:system_value)
...> System.delete_env("RANDOM")
...> value
"not-random"

put_env(key, value)

@spec put_env(atom(), any()) :: :ok

Convenience function for setting braintree application environment variables.

Example

iex> Braintree.put_env(:thingy, "thing")
...> Braintree.get_env(:thingy)
"thing"