Amiya Behera
Amiya Behera

Reputation: 2270

How should I charge storage fees?

What are the best practices of charging storage frees from user? Will I have to charge the storage fees every time they insert the data? Can I charge storage fees without making a function [payable]?

Upvotes: 3

Views: 74

Answers (1)

Marcelo Fornet
Marcelo Fornet

Reputation: 583

What are the best practices of charging storage frees from user?

There is a Standard designed for this use case:

You can use the interface of this standard in rust from this implementation in near-sdk-rs.

In particular one useful example, is the implementation of this trait for FungibleToken. This functions are exposed using this macro.

Will I have to charge the storage fees every time they insert the data?

If it is clear what is the amount of data a single user requires, they only need to call storage_deposit once, with the required deposit. Optionally they can call storage_withdraw / storage_unregister to get a refund and remove their data.

Can I charge storage fees without making a function [payable]?

No. But if you follow previous standard, only storage_deposit needs to be #[payable] and not other functions in your contract.

Upvotes: 3

Related Questions