Transfers can occur if either one of the following conditions is met:
- The min goal is met AND the campaign has ended
- The max goal is met
Any account can initiate the transfer, but all funds will be transferred to the recipient address.
const txn = await campaignContract.transferBalanceToRecipient();
Before invoking transfer, it's best to check that transfer is allowed.
const txn = await campaignContract.isTransferAllowed();
The protocol currently has all fees set to 0
There are two types of optional fees which are collected at the time of transfer:
- Transfer fee - A percentage of the funds collected, sent to the fee recipient before transferring the campaign funds to the campaign recipient.
- Yield fee - A percentage of campaign tokens minted and sent to the fee recipient.
These fees are set by the factory contract at the time of the campaign deployment and cannot change after the campaign deployment.