Stellar 网络要求提交事务需要支付一定的手续费,账户也需要满足最低账户余额的要求,这是为了防止网络过于拥堵,同时还可以用于确认事务的优先级。
有两个特殊值用于计算费用:
事务的费用是事务所包含的操作的数量乘以基本费用,基本费用为 100 stroops (0.00001 XLM)。
例如,若一个事务里有两个操作:一个账户设置一条 Trustline (操作1),向另一个账户发送付款 (操作2) ,那么这个事务的费用为 2 × 基本费用 = 200 stroops
。
Stellar 从事务的源账户(source account)中扣除全部费用,而不管每个操作涉及哪个账户或是哪些账户签署了事务。
每个 Stellar 节点通常会限制总账关闭时向网络提交的事务数。如果提交的事务太多,节点会优先提交那些手续费更高的事务,而那些没被提交的事务会在之后的总账中提交。
有关更多信息,请参见事务的生命周期。
费用池是从交易费中收取的 Lumens。
Stellar 不保留这些 Lumens。它们在每周的通货膨胀投票中被分发出去。
如果投票后有任何仍未分发的 Lumens,这些 Lumens 将返还到费用池,在下一轮投票中分发。
所有 Stellar 账户必须保证账户满足最低账户余额的要求。任何试图将账户余额减少到最低账户余额以下的事务将会被拒绝,并抛出余额不足(INSUFFICIENT_BALANCE)
错误。
最低账户余额可通过基本储备金(目前为 0.5 XLM)计算得出:
一个初始账户的最低账户余额为 2 × 基本储备金
。每增加一个条目的便需要多提供一份基准准备金,这些条目包括:
例如,如果一个账户拥有 1 个 trustline 和 2 个 offers ,则该账户的最低账户余额为 (2 + 3) × 基本储备金 = 2.5 XLM
.
从协议版本 10 开始,账户会记录 Lumens 的出售负债数量,除了上面讨论的最低余额外必须得到满足,如果有任何事务试图将账户余额减少到最低账户余额加 Lumens 的出售负债数量以下的话,则会抛出余额不足(INSUFFICIENT_BALANCE)
错误。
基本储备金和基本费用是会变动的,但它们多年才会变更一次。在大多数情况下,您可以将它们视为固定值。当它们被更改时,更改按照与任何事务相同的一致过程进行。当它们变更后,它会在这之后的事务中体现出来。有关详细信息,请参阅[版本]。
您可以通过查看最新总账的详细信息来查看当前的费用。