Hone
Search
K
💦

Types of token streams

There are two main types of token streams: Fixed or Transferrable.

Fixed

Fixed token streams are fixed to a single recipient account at creation. This means that once the stream has been created the only account allowed to withdraw from the stream as tokens unlock is the recipient account assigned at creation.

Transferrable

The ownership of transferrable streams is, as the name suggests, transferrable between Algorand accounts. Each transferrable stream is associated with a separate escrow smart contract called a Vault and an NFT we call the Vault Key. When unlocked tokens are withdrawn from a transferrable stream they are only able to be withdrawn into the Vault that is associated with that stream. The account who currently holds the Vault Key can then to claim unlocked tokens from the Vault. The Vault Key can be transferred between any Algorand account that has opted-in to the Vault Key asset.

Differences

Terminating streams

Besides their obvious differences, a key difference between a Fixed and a Transferrable stream is that a Fixed stream can (optionally) be allowed to be terminated. If this checkbox is checked when creating a Fixed stream, the deployer of the stream can terminate the stream at any time. Once terminated, any unlocked—though yet to be withdrawn—tokens are transferred to the recipient account. The remaining locked tokens are transferred back to the original deployer of the stream.
Most streams should probably not have termination enabled, however it is useful for salary streams that may be set for 6 or 12 months (essentially scheduled transfers) but may need to be terminated if the project contributor ceases to work for the project before the end of the stream. In this situation, terminating a stream makes sense.