starkbank v0.0.3 StarkBank.Transfer View Source

Groups Transfer related functions

Transfer struct:

When you initialize a Transfer, the entity will not be automatically created in the Stark Bank API. The 'create' function sends the structs to the Stark Bank API and returns the list of created structs.

Parameters (required):

  • amount [integer]: amount in cents to be transferred. ex: 1234 (= R$ 12.34)
  • name [string]: receiver full name. ex: "Anthony Edward Stark"
  • tax_id [string]: receiver tax ID (CPF or CNPJ) with or without formatting. ex: "01234567890" or "20.018.183/0001-80"
  • bank_code [string]: receiver 1 to 3 digits of the bank institution in Brazil. ex: "200" or "341"
  • branch_code [string]: receiver bank account branch. Use '-' in case there is a verifier digit. ex: "1357-9"
  • account_number [string]: Receiver Bank Account number. Use '-' before the verifier digit. ex: "876543-2"

Parameters (optional):

  • tags [list of strings]: list of strings for reference when searching for transfers. ex: ["employees", "monthly"]

Attributes (return-only):

  • id [string, default nil]: unique id returned when Transfer is created. ex: "5656565656565656"
  • fee [integer, default nil]: fee charged when transfer is created. ex: 200 (= R$ 2.00)
  • status [string, default nil]: current boleto status. ex: "registered" or "paid"
  • transaction_ids [list of strings, default nil]: ledger transaction ids linked to this transfer (if there are two, second is the chargeback). ex: ["19827356981273"]
  • created [DateTime, default nil]: creation datetime for the transfer. ex: ~U[2020-03-26 19:32:35.418698Z]
  • updated [DateTime, default nil]: latest update datetime for the transfer. ex: ~U[2020-03-26 19:32:35.418698Z]

Link to this section Summary

Functions

Create Transfers

Send a list of Transfer structs for creation in the Stark Bank API

Same as create(), but it will unwrap the error tuple and raise in case of errors.

Retrieve a specific Transfer

Receive a single Transfer struct previously created in the Stark Bank API by passing its id

Same as get(), but it will unwrap the error tuple and raise in case of errors.

Retrieve a specific Transfer pdf file

Receive a single Transfer pdf receipt file generated in the Stark Bank API by passing its id. Only valid for transfers with "processing" or "success" status.

Same as pdf(), but it will unwrap the error tuple and raise in case of errors.

Retrieve Transfers

Receive a stream of Transfer structs previously created in the Stark Bank API

Same as query(), but it will unwrap the error tuple and raise in case of errors.

Link to this section Types

Link to this type

t()

View Source
t() :: %StarkBank.Transfer{
  account_number: term(),
  amount: term(),
  bank_code: term(),
  branch_code: term(),
  created: term(),
  fee: term(),
  id: term(),
  name: term(),
  status: term(),
  tags: term(),
  tax_id: term(),
  transaction_ids: term(),
  updated: term()
}

Link to this section Functions

Link to this function

create(user, transfers)

View Source
create(StarkBank.User.Project.t(), [StarkBank.Transfer.t()]) ::
  {:ok, [StarkBank.Transfer.t()]} | {:error, [StarkBank.Error.t()]}

Create Transfers

Send a list of Transfer structs for creation in the Stark Bank API

Parameters (required):

  • user [Project]: Project struct returned from StarkBank.project().
  • transfers [list of Transfer structs]: list of Transfer structs to be created in the API

Return:

  • list of Transfer structs with updated attributes
Link to this function

create!(user, transfers)

View Source
create!(StarkBank.User.Project.t(), [StarkBank.Transfer.t()]) :: any()

Same as create(), but it will unwrap the error tuple and raise in case of errors.

Link to this function

get(user, id)

View Source
get(StarkBank.User.Project.t(), binary()) ::
  {:ok, StarkBank.Transfer.t()}
  | {:error, [%StarkBank.Error{code: term(), message: term()}]}

Retrieve a specific Transfer

Receive a single Transfer struct previously created in the Stark Bank API by passing its id

Parameters (required):

  • user [Project]: Project struct returned from StarkBank.project().
  • id [string]: struct unique id. ex: "5656565656565656"

Return:

  • Transfer struct with updated attributes
Link to this function

get!(user, id)

View Source
get!(StarkBank.User.Project.t(), binary()) :: StarkBank.Transfer.t()

Same as get(), but it will unwrap the error tuple and raise in case of errors.

Link to this function

pdf(user, id)

View Source
pdf(StarkBank.User.Project.t(), binary()) ::
  {:ok, binary()} | {:error, [%StarkBank.Error{code: term(), message: term()}]}

Retrieve a specific Transfer pdf file

Receive a single Transfer pdf receipt file generated in the Stark Bank API by passing its id. Only valid for transfers with "processing" or "success" status.

Parameters (required):

  • user [Project]: Project struct returned from StarkBank.project().
  • id [string]: struct unique id. ex: "5656565656565656"

Return:

  • Transfer pdf file content
Link to this function

pdf!(user, id)

View Source
pdf!(StarkBank.User.Project.t(), binary()) :: binary()

Same as pdf(), but it will unwrap the error tuple and raise in case of errors.

Link to this function

query(user, options \\ [])

View Source
query(StarkBank.User.Project.t(), any()) ::
  ({:cont, {:ok, [StarkBank.Transfer.t()]}}
   | {:error, [StarkBank.Error.t()]}
   | {:halt, any()}
   | {:suspend, any()},
   any() ->
     any())

Retrieve Transfers

Receive a stream of Transfer structs previously created in the Stark Bank API

Parameters (required):

  • user [Project]: Project struct returned from StarkBank.project().

Parameters (optional):

  • limit [integer, default nil]: maximum number of structs to be retrieved. Unlimited if nil. ex: 35
  • status [string, default nil]: filter for status of retrieved structs. ex: "paid" or "registered"
  • tags [list of strings, default nil]: tags to filter retrieved structs. ex: ["tony", "stark"]
  • transaction_ids [list of strings, default nil]: list of Transaction ids to filter retrieved structs. ex: ["5656565656565656", "4545454545454545"]
  • after [Date, default nil]: date filter for structs created only after specified date. ex: ~D[2020-03-25]
  • before [Date, default nil]: date filter for structs only before specified date. ex: ~D[2020-03-25]
  • sort [string, default "-created"]: sort order considered in response. Valid options are 'created', '-created', 'updated' or '-updated'.

Return:

  • stream of Transfer structs with updated attributes
Link to this function

query!(user, options \\ [])

View Source
query!(StarkBank.User.Project.t(), any()) ::
  ({:cont, [StarkBank.Transfer.t()]}
   | {:halt, any()}
   | {:suspend, any()},
   any() ->
     any())

Same as query(), but it will unwrap the error tuple and raise in case of errors.