Transfer channels

Intro

Regular users of TRAIT blockchain do not pay transaction fees and make transfers for free. But there are cases when this doesn't work. For example, if user makes too many transactions or in case of network congestion it's not possible to make free transfers. To overcome these cases and provide users with free deposits in any condition the apps can establish transfer channels.

Transfer channel can be established between a regular blockchain address of user and a transactional address of an AppAgent. After the transfer channel is established all user deposits will be processed through it. Processing a deposit via Transfer channel is always free to the user but costs 1 Action point to the AppAgent.

Transfer channels is an optional feature aimed to improve the user experience.

TODO add diagram

Creation of Transfer channels

To create a transfer channel the app needs to know the address that the player will use to make deposits to the Transactional address of AppAgent. For example, the app can request the address from the user via UI form. Or it can use the address from which the last deposits were made.

Then the admin of AppAgent includes a single action into a Clearing transaction that creates the Transfer channel between two addresses.

Transfer channel can be deleted by the AppAgent admin at any time.

Transfer limits

When establishing a transfer channel the transfer limits are set:

  • number of transfers per count period. For example, 5 transfer;

  • duration of count period. For example, 1 day;

The user can not exceed the number of deposits per period. At the beginning of the period the limit is reset.

Security of transfer channels

Enabling transfer channels for all of your users opens an opportunity to disrupt the AppAgent. By creating too many deposits via transfer channels it's possible to deplete the Action points balance and cause issues in the work of AppAgent and its admins.

There are several recommendations that help to prevent this scenario:

  • create transfer channels only for users who have some track record with you. Do not create a transfer channel for every new anonymous user;

  • set reasonable transfer limits for each transfer channel;

  • configure reasonable Transfer filters. Narrow the list of assets allowed for deposit. Set reasonable min/max deposit amounts for fungible tokens & TRAIT token.

Expiration of Transfer channels

An established transfer channel gets deleted after 180 days of inactivity.

Discover More

Last updated