End and Finalize
Learn how to end a token sale before its scheduled close and how to finalize it after it ends to determine SUCCESS or FAILED status.
Ending a sale closes it permanently. Finalizing resolves the outcome -- either SUCCESS (soft cap met) or FAILED (soft cap not met) -- which determines whether funds are released to the issuer or refunded to investors.
Ending the sale
A sale ends automatically when its saleEndTime passes. The admin can also end it early.
Early end (admin)
Open the Manage dropdown
Navigate to the sale detail page and open the Manage dropdown.
Select End Sale
Click End Sale, confirm the irreversibility, and authenticate. Status transitions to Ended immediately.
Finalizing the sale
After a sale ends (ENDED status), anyone can finalize to resolve the outcome. This is permissionless -- SALE_ADMIN_ROLE is not required. The Manage dropdown provides the Finalize action for convenience, but any wallet can send the transaction directly.
Before finalizing, the console shows a pre-close checklist -- soft-cap met or not met, hard-cap status, and time elapsed or remaining -- with a predicted SUCCESS or FAILED outcome. The prediction is labeled as a prediction, not a guarantee, and appears only when the sale is finalizable.
Check status
Open the sale detail page. If the status is Ended, the Finalize action and the pre-close checklist are available in the sale panel.
Finalize
Open the Manage dropdown and click Finalize. Authenticate and confirm.
After the transaction confirms:
| Outcome | Condition | What happens |
|---|---|---|
| Success | Tokens sold ≥ soft cap (or no soft cap) | Funds available for withdrawal; vested tokens withdrawable |
| Failed | Tokens sold < soft cap | 30-day refund grace period begins; investors can claim refunds |
Refund grace period
When finalization results in FAILED, a 30-day grace period begins:
- Investor refunds are available immediately
- Administrator fund withdrawals are blocked with
RefundGracePeriodActive
After the grace period ends, the admin can recover any remaining unclaimed funds.
Next steps
How to pause and resume a token sale
Learn how to temporarily pause a token sale to halt purchases, and how to resume it. Use pause for emergency response or compliance holds.
How to withdraw token sale funds
Learn how to withdraw sale proceeds after a successful token sale. Requires FUNDS_MANAGER_ROLE and a SUCCESS finalization status.