Transaction Provider ID (TPID)

Overview

Most write transactions to the FIO Chain contain tpid parameter. Transaction Provide ID (TPID) is intended to be a valid FIO Handle belonging to the entity which has built the specific application being used by the user to submit the transaction. It is intended to offer benefits to the integrator as described below.

New User Bounties

When a user transaction contains valid tpid parameter, and that transaction collected an on-chain fee from the user, a percentage of this fee is automatically allocated to that TPID as a bounty. The user fee amount is not impacted by the tpid.

AllocationDescription
10%This is always allocated to the supplied TPID.
40%This is allocated to the supplied TPID as long as the New User Bounties token pool has not been exhausted.

Example

  • User registers a FIO Domain and pays $40 in FIO Tokens
  • Integrator submits a valid tpid
  • $20 ($40 x 10% + $40 x 40%) is allocated to supplied tpid as a bounty

Staking Bounties

When a user transaction collects FIO Token Staking Rewards (unstakefio) and the transaction contains valid tpid, 11.11% of the Staking Reward paid to the user is additionally allocated to that TPID as a bounty. The user Staking Reward amount is not impacted by the tpid.

Example

  • User unstakes FIO Tokens and receives 10,000 FIO Tokens as Staking Reward
  • Integrator submits a valid tpid
  • 1,111.11 FIO (10,000 FIO x 11.11%) is allocated to supplied tpid as a bounty

Auto-proxy

If user is not voting for Block Producers or proxying their vote, and the transaction contains valid tpid, and that tpid is a registered as a proxy, all of user's FIO Tokens are automatically proxied to the supplied tpid. This is intended to amplify FIO Protocol governance voting power of integrators which have more users.

Once the user intentionally votes or proxies their tokens, auto-proxy is permanently removed.

If a user imports their FIO Private Key to another wallet and execute a transaction with a different tpid, the auto-proxy will move to the new tpid.

Bounty Payouts

TPIDs virtual accounts get incremented every time a qualifying fee is paid. Once the virtual balance reaches 100 FIO, the bounties are paid out when the tpidclaim action is called. It is expected that Block Producers will call this action on a regular basis, although any member of the community can call it. The action processes payments across all TPIDs each time it is called. It is free and only modifies the blockchain if there are transactions that need processing. This action can be executed only once per every 60 seconds.

If a TPID FIO Handle no longer exists (e.g. was burned) the payout will transfer to the current day's BP rewards bucket.

TPIDs can check reward accrual by examining fio.tpid > tpids table.