2.2 KiB
BSIP: 0027
Title: Asset Issuer Reclaim Fee Pool Funds
Authors: Abit More <https://github.com/abitmore>
Fabian Schuh <Fabian@BitShares.eu>
Status: Draft
Type: Protocol
Created: 2017-11-02
Discussion: https://github.com/bitshares/bitshares-core/issues/188
Worker: TBD
Abstract
Asset issuers need a way to get out some CORE assets (BTS) from their assets' fee pool, for example when accidentally filled too much BTS into the pool. As of writing, this can be done by crafting a special limit order then cancel it, the process is a bit complicated. In addition, this approach will no longer work if BSIP #26 (Refund Order Creation Fee in Originally Paid Asset on Cancel) is implemented. This BSIP proposes a protocol change to meet the demand.
Motivation
Make the asset system easier to use.
Rational
Asset issuer should have full and easy control over the funds in the fee pool.
Specifications
Current Design and Implementation
Asset issuers can fill the fee pool with the asset_fund_fee_pool_operation
operation, which has a structure as follows:
struct asset_fund_fee_pool_operation : public base_operation
{
asset fee; ///< core asset
account_id_type from_account;
asset_id_type asset_id;
share_type amount; ///< core asset
extensions_type extensions;
};
The amount
in the structure can only be positive, which means the from_account
can only add some CORE asset (BTS) into an asset's fee pool.
Proposed Changes
- Allow
amount
to be negative; - When
amount
is negative,from_account
can only be the issuer; - When
amount
is negative, deduct the absolute amount from the asset's fee pool and add it to the issuer's balance.
Discussion
The operation fee for asset_fund_fee_pool_operation
should be no less than transfer_operation
.
Summary for Shareholders
[to be added]
Copyright
This document is placed in the public domain.