Transaction History

Overview

There are many options available for wallets, exchanges, and information providers for presenting a user's account history. Not all approaches are appropriate for all applications, and how an organization integrates other blockchains may affect the strategy. The following summarizes a few of the approaches tried with FIO to help explain some of the choices available during integration.

Account history can be obtained from a History API node. You can access one of the many public FIO Chain nodes ran by the community or run . However, if you want to be running your own FIO Chain Node, checkout our FIO Chain Node Guide.

📘

Why run your own node?

  • Reliability. You can configure your node according to your bandwidth needs and make it available only to your application.
  • Security. By keeping the node in your own secure environment you can further enhance the security of reading the chain information.

History Nodes

There are currently 2 history nodes:

V1 History

V1 History is the most basic history node and comes bundled with FIO Chain stack. See FIO Chain V1 History API for API spec.

Hyperion

Hyperion has been developed by EOS Rio for EOS-based chains and is an updated version of History. See Hyperion documentation maintained by EOS RIO.

Tracking Relevant Transactions

Transactions Impacting FIO Token Balance

trnsfiopubky is the main transaction that should be tracked for integrators wanting to show transactions that impact a user's balance. However, there are also several additional contract actions that can impact a user's FIO Token balance:

  • trnsloctoks - Tokens that are locked are not available to the user to be transferred.
  • stakefio and unstakefio - When FIO Token's are staked they are no longer available to transfer.
  • retire - While this activity is rare, it is possible for accounts to burn some or all of their FIO Tokens.
  • wraptokens and unwrap - When FIO Tokens are wrapped (transfered to another chain) they are deducted from account's balance. When they are unwrapped, they are added to account's balance.
  • tpidclaim - This is a maintenance call and is intended to pay Technology Providers (TPIDs) a percent of the fees collected for certain transactions.

Because there are other events can affect a user's balance (e.g., fees, staking, locked tokens) it is best to use /get_fio_balance to get the most accurate current total FIO Token balance.

Don't Forget About the Fees

When submitting a transaction, there is a max_fee field that a user submits and if the fee required is less than this amount the fee is deducted. However, because the fee charged may be less than max_fee, it may not be assumed that max_fee is always charged.

fee_collected parameter is returned on every call which charged a fee and contains the actual amount charged.