View Source Ibanity.PontoConnect.Transaction (ibanity v1.1.0)

Transactions API wrapper

Summary

Functions

Find Transaction by id

Takes a Ibanity.PontoConnect.Token, or a Ibanity.Request with set :token as first argument.

Takes a map with the following keys as second argument:

Examples

Fetch an account before each example, or use a valid account id

iex> {:ok, account_or_id} = token |> Ibanity.PontoConnect.Account.find("03ebe0ae-f630-4414-b37b-afde7de67229")

Or

iex> account_or_id = "03ebe0ae-f630-4414-b37b-afde7de67229"
"03ebe0ae-f630-4414-b37b-afde7de67229"


iex> %Ibanity.PontoConnect.Token{}
...> |> Ibanity.PontoConnect.Transaction.find(%{account_id: account_or_id, id: "d0e23b50-e150-403b-aa50-581a2329b5f5"})
{:ok, %Ibanity.PontoConnect.Transaction{id: "d0e23b50-e150-403b-aa50-581a2329b5f5"}}

iex> %Ibanity.PontoConnect.Token{}
...> |> Ibanity.Request.token()
...> |> Ibanity.Request.application(:my_application)
...> |> Ibanity.PontoConnect.Transaction.find(%{account_id: account_or_id, id: "d0e23b50-e150-403b-aa50-581a2329b5f5"})
{:ok, %Ibanity.PontoConnect.Transaction{id: "d0e23b50-e150-403b-aa50-581a2329b5f5"}}

iex> %Ibanity.PontoConnect.Token{}
...> |> Ibanity.PontoConnect.Transaction.find(%{account_id: account_or_id, id: "does-not-exist"})
{:error,
  [
    %{
      "code" => "resourceNotFound",
      "detail" => "The requested resource was not found.",
      "meta" => %{
        "requestId" => "00077F00000184847F0000011F4066E44223327005A",
        "resource" => "transaction"
      }
    }
  ]}
Link to this function

find_pending_for_account(request, ids)

View Source

Find pending Transaction by id

Takes a Ibanity.PontoConnect.Token, or a Ibanity.Request with set :token as first argument.

Takes a map with the following keys as second argument:

  • :account_id``Ibanity.PontoConnect.Account struct or account ID as a string
  • :id Transaction ID as a string

Fetch an account before each example, or use a valid account id

iex> {:ok, account_or_id} = token |> Ibanity.PontoConnect.Account.find("03ebe0ae-f630-4414-b37b-afde7de67229")

Or

iex> account_or_id = "03ebe0ae-f630-4414-b37b-afde7de67229"
"03ebe0ae-f630-4414-b37b-afde7de67229"

Examples

iex> token
...> |> Ibanity.PontoConnect.Transaction.find_pending_for_account(%{account_id: account_or_id, id: "d0e23b50-e150-403b-aa50-581a2329b5f5"})
{:ok, %Ibanity.PontoConnect.Transaction{id: "d0e23b50-e150-403b-aa50-581a2329b5f5"}}

iex> token
...> |> Ibanity.Request.token()
...> |> Ibanity.Request.application(:my_application)
...> |> Ibanity.PontoConnect.Transaction.find_pending_for_account(%{account_id: account_or_id, id: "d0e23b50-e150-403b-aa50-581a2329b5f5"})
{:ok, %Ibanity.PontoConnect.Transaction{id: "d0e23b50-e150-403b-aa50-581a2329b5f5"}}

iex> token
...> |> Ibanity.PontoConnect.Transaction.find_pending_for_account(%{account_id: account_or_id, id: "does-not-exist"})
{:error,
  [
    %{
      "code" => "resourceNotFound",
      "detail" => "The requested resource was not found.",
      "meta" => %{
        "requestId" => "00077F00000184847F0000011F4066E44223327005A",
        "resource" => "transaction"
      }
    }
  ]}
Link to this function

list(request, account_or_id)

View Source

List transactions

Takes a Ibanity.PontoConnect.Token, or a Ibanity.Request with set :token as first argument.

Takes a Ibanity.PontoConnect.Account or the account id as a string as second argument.

Examples

Fetch an account before each example, or use a valid account id

iex> {:ok, account_or_id} = token |> Ibanity.PontoConnect.Account.find("03ebe0ae-f630-4414-b37b-afde7de67229")

Or

iex> account_or_id = "03ebe0ae-f630-4414-b37b-afde7de67229"
"03ebe0ae-f630-4414-b37b-afde7de67229"

With token

iex> Ibanity.PontoConnect.Token{} |> Ibanity.PontoConnect.Transaction.list(account_or_id)
{:ok, %Ibanity.Collection{
  items: [%Ibanity.PontoConnect.Transaction{}]
}}

With request

iex> token
...> |> Ibanity.Request.token()
...> |> Ibanity.PontoConnect.Transaction.list(account_or_id)
{:ok, %Ibanity.Collection{
  items: [%Ibanity.PontoConnect.Transaction{}]
}}

Error

iex> invalid_token |> Ibanity.PontoConnect.Transaction.list(account_or_id)
{:error,
  [
    %{
      "code" => "invalidAccessToken",
      "detail" => "Your access token is invalid.",
      "meta" => %{"requestId" => "00077F000001D3A87F0000011F4066E43AFD1900051"}
    }
  ]}
Link to this function

list_pending_for_account(request, account_or_id)

View Source

List updated pending transactions

Takes a Ibanity.PontoConnect.Token, or a Ibanity.Request with set :token as first argument.

Takes a Ibanity.PontoConnect.Account or the account id as a string as second argument.

Examples

Fetch an account before each example, or use a valid account id

iex> {:ok, account_or_id} = token |> Ibanity.PontoConnect.Account.find("03ebe0ae-f630-4414-b37b-afde7de67229")

Or

iex> account_or_id = "03ebe0ae-f630-4414-b37b-afde7de67229"
"03ebe0ae-f630-4414-b37b-afde7de67229"

With token

iex> token
...> |> Ibanity.PontoConnect.Transaction.list_pending_for_account(account_or_id)
{:ok, %Ibanity.Collection{
  items: [%Ibanity.PontoConnect.Transaction{}]
}}

With request

iex> token
...> |> Ibanity.Request.token()
...> |> Ibanity.PontoConnect.Transaction.list_pending_for_account(account_or_id)
{:ok, %Ibanity.Collection{
  items: [%Ibanity.PontoConnect.Transaction{}]
}}

Error

iex> invalid_token
...> |> Ibanity.PontoConnect.Transaction.list_pending_for_account(account_or_id)
{:error,
  [
    %{
      "code" => "invalidAccessToken",
      "detail" => "Your access token is invalid.",
      "meta" => %{"requestId" => "00077F000001D3A87F0000011F4066E43AFD1900051"}
    }
  ]}
Link to this function

list_updated_for_synchronization(request, synchronization_or_id)

View Source

List updated Transactions for synchronizations

Takes a Ibanity.PontoConnect.Token, or a Ibanity.Request with set :token as first argument.

Takes a map with the following keys as second argument:

  • :synchronization``Ibanity.PontoConnect.Synchronization struct or account ID as a string
  • :id Transaction ID as a string

Fetch a synchronization before each example, or use a valid synchronization id

iex> {:ok, synchronization_or_id} = token |> Ibanity.PontoConnect.Suynchronization.find("03ebe0ae-f630-4414-b37b-afde7de67229")

Or

iex> synchronization_or_id = "03ebe0ae-f630-4414-b37b-afde7de67229"
"03ebe0ae-f630-4414-b37b-afde7de67229"

Examples

With token

iex> token |> Ibanity.PontoConnect.Transaction.list_updated_for_synchronization(account_or_id)
{:ok, %Ibanity.Collection{
  items: [%Ibanity.PontoConnect.Transaction{}]
}}

With request

iex> token |>
...> |> Ibanity.Request.token()
...> |> Ibanity.PontoConnect.Transaction.list_updated_for_synchronization(synchronization_or_id)
{:ok, %Ibanity.Collection{
  items: [%Ibanity.PontoConnect.Transaction{}]
}}

Error

iex> invalid_token
...> |> Ibanity.PontoConnect.Transaction.list_updated_for_synchronization(synchronization_or_id)
{:error,
  [
    %{
      "code" => "invalidAccessToken",
      "detail" => "Your access token is invalid.",
      "meta" => %{"requestId" => "00077F000001D3A87F0000011F4066E43AFD1900051"}
    }
  ]}

iex> 
Link to this function

list_updated_pending_for_synchronization(request, synchronization_or_id)

View Source

List updated pending Transactions for synchronizations

Takes a Ibanity.PontoConnect.Token, or a Ibanity.Request with set :token as first argument.

Takes a map with the following keys as second argument:

  • :synchronization``Ibanity.PontoConnect.Synchronization struct or account ID as a string
  • :id Transaction ID as a string

Fetch a synchronization before each example, or use a valid synchronization id

iex> {:ok, synchronization_or_id} = token |> Ibanity.PontoConnect.Suynchronization.find("03ebe0ae-f630-4414-b37b-afde7de67229")

Or

iex> synchronization_or_id = "03ebe0ae-f630-4414-b37b-afde7de67229"
"03ebe0ae-f630-4414-b37b-afde7de67229"

Examples

With token

iex> token
...> |> Ibanity.PontoConnect.Transaction.list_updated_pending_for_synchronization(synchronization_or_id)
{:ok, %Ibanity.Collection{
  items: [%Ibanity.PontoConnect.Transaction{}]
}}

With request

iex> token
...> |> Ibanity.Request.token()
...> |> Ibanity.PontoConnect.Transaction.list_updated_pending_for_synchronization(synchronization_or_id)
{:ok, %Ibanity.Collection{
  items: [%Ibanity.PontoConnect.Transaction{}]
}}

Error

iex> invalid_token
...> |> Ibanity.PontoConnect.Transaction.list_updated_pending_for_synchronization(synchronization_or_id)
{:error,
  [
    %{
      "code" => "invalidAccessToken",
      "detail" => "Your access token is invalid.",
      "meta" => %{"requestId" => "00077F000001D3A87F0000011F4066E43AFD1900051"}
    }
  ]}