Packages

The Stripe REST API. Please see https://stripe.com/docs/api for more details.

Current section

Files

Jump to
exoapi_stripe lib sdk exoapi_stripe_sdk_balance_transactions.ex
Raw

lib/sdk/exoapi_stripe_sdk_balance_transactions.ex

defmodule ExOAPI.Stripe.SDK.BalanceTransactions do
@doc """
**description**: <p>Retrieves the balance transaction with the given ID.</p>
<p>Note that this endpoint previously used the path <code>/v1/balance/history/:id</code>.</p>
"""
@type get_balance_transactions_id_opts :: {:expand, String.t()}
@spec get_balance_transactions_id(
client :: ExOAPI.Client.t(),
id :: String.t(),
list(get_balance_transactions_id_opts())
) ::
{:ok,
ExOAPI.Stripe.Schemas.Error.t() | ExOAPI.Stripe.Schemas.BalanceTransaction.t() | map()}
| {:error, any()}
def get_balance_transactions_id(%ExOAPI.Client{} = client, id, opts \\ []) do
client
|> ExOAPI.Client.set_module(ExOAPI.Stripe.SDK)
|> ExOAPI.Client.add_method(:get)
|> ExOAPI.Client.add_base_url("https://api.stripe.com/", :exoapi_default)
|> ExOAPI.Client.add_path("/v1/balance_transactions/{id}")
|> ExOAPI.Client.replace_in_path("id", id)
|> ExOAPI.Client.add_arg_opts(:keyword, :query, opts, [
{:expand, "expand", "deepObject", true}
])
|> ExOAPI.Client.request()
end
@doc """
**description**: <p>Returns a list of transactions that have contributed to the Stripe account balance (e.g., charges, transfers, and so forth). The transactions are returned in sorted order, with the most recent transactions appearing first.</p>
<p>Note that this endpoint was previously called “Balance history” and used the path <code>/v1/balance/history</code>.</p>
"""
@type get_balance_transactions_opts ::
{:type, String.t()}
| {:starting_after, String.t()}
| {:source, String.t()}
| {:payout, String.t()}
| {:limit, String.t()}
| {:expand, String.t()}
| {:ending_before, String.t()}
| {:currency, String.t()}
| {:created, String.t()}
@spec get_balance_transactions(
client :: ExOAPI.Client.t(),
list(get_balance_transactions_opts())
) ::
{:ok,
ExOAPI.Stripe.Schemas.Error.t()
| %{
:url => String.t(),
:object => String.t() | :list,
:has_more => boolean(),
:data => [ExOAPI.Stripe.Schemas.BalanceTransaction.t()]
}
| map()}
| {:error, any()}
def get_balance_transactions(%ExOAPI.Client{} = client, opts \\ []) do
client
|> ExOAPI.Client.set_module(ExOAPI.Stripe.SDK)
|> ExOAPI.Client.add_method(:get)
|> ExOAPI.Client.add_base_url("https://api.stripe.com/", :exoapi_default)
|> ExOAPI.Client.add_path("/v1/balance_transactions")
|> ExOAPI.Client.add_arg_opts(:keyword, :query, opts, [
{:type, "type", "form", true},
{:starting_after, "starting_after", "form", true},
{:source, "source", "form", true},
{:payout, "payout", "form", true},
{:limit, "limit", "form", true},
{:expand, "expand", "deepObject", true},
{:ending_before, "ending_before", "form", true},
{:currency, "currency", "form", true},
{:created, "created", "deepObject", true}
])
|> ExOAPI.Client.request()
end
end