MOONSALE
a product of IGH
Insights

How MoonSale Works: The Full Presale Mechanism, From Creation to Payout

How MoonSale Works: The Full Presale Mechanism, From Creation to Payout

The full lifecycle at a glance

A MoonSale presale moves through six stages, from an automated safety scan before a sale even opens, to a locked, trading token on a live DEX. Here is the whole journey in one picture, each stage is explained in full detail below.

Scan
Honeypot, blacklist, proxy, tax checks
Configure
Softcap, hardcap, vesting, lock terms
Deploy
Tokens escrowed in the presale contract
Active sale
Investors contribute, can withdraw early
Finalize
Liquidity locked, fee taken, payout sent
Trading
Token live on-chain

Before creation: the eligibility scan

Before a creator can configure anything, MoonSale runs an automated scan against the token contract itself, not the project's marketing, the actual bytecode and on-chain state.

Ownership check. The connected wallet must genuinely hold a balance of the token. This blocks someone from listing a presale for a token they do not actually control.

Proxy detection. MoonSale checks known proxy storage slots. A proxy contract can have its logic swapped out after launch, so a detected proxy is treated as a hard block, not a warning.

Honeypot check. A live call to honeypot.is confirms tokens can actually be sold, not just bought. A confirmed honeypot blocks the listing outright.

Blacklist function scan. The token's bytecode is checked against a long list of known blacklist and blocklist function selectors, covering both lowercase and capitalized naming conventions used across different token templates. A match surfaces as a visible warning on the presale page, so investors can see it before contributing.

Buy and sell tax check. A GoPlus lookup surfaces any transfer tax built into the token, shown as a warning rather than a hard block, since some legitimate tokens do carry a small fee.

DEX pair reserve check. MoonSale checks whether the token already has an active, liquid trading pair on the target chain's DEX. If it does, the listing is blocked, this exists specifically to stop someone from running a "presale" for a token that is already trading, which is a common pattern in real rug attempts.

Only after every hard check clears can the creator move on to configuring the actual sale.

Configuring the sale

This is where the creator sets the actual terms: softcap and hardcap (softcap must be at least half of hardcap, so a sale cannot claim success on a token amount), presale rate and listing rate (the listing rate must sit below the presale rate, so early contributors are never underwater the moment the token lists), minimum and maximum contribution per wallet, the percentage of raised funds that becomes locked liquidity (with a chain-specific minimum enforced), how long that liquidity stays locked (also with an enforced minimum), what happens to any unsold tokens if the hardcap is not fully reached (burned, refunded to the creator, or locked), and a vesting schedule for the tokens investors will receive, either fully unlocked at listing or a defined percentage at TGE with the remainder streaming over time.

None of these settings are enforced by trust. They are written into the contract's constructor parameters at deployment and cannot be changed afterward.

Deployment: where the tokens actually go first

This is the step most people get wrong when they imagine how a presale works. The tokens do not sit in the creator's wallet during the sale, and the raised funds do not go anywhere near the creator's wallet until the very last step of finalization.

Here is what actually happens on deployment:

  1. The frontend calculates the total tokens the sale will need, enough to cover every presale buyer at the presale rate, plus enough to pair with the liquidity portion at the listing rate, at the hardcap size.
  2. The creator signs an off-chain authentication message, used later to save the project's metadata, kept separate from any on-chain transaction.
  3. The creator approves the factory contract to pull that total token amount from their wallet.
  4. The creator calls the factory's create function, paying the listing fee (currently 0.018 BNB on BNB Chain, or 0.0059 ETH on Base and Robinhood Chain, roughly $10 to $11 at current prices) as part of the same transaction.

The factory deploys a new presale contract instance and pulls the approved tokens directly into that new contract as escrow. At this point, the creator holds none of those tokens, and no raised funds exist yet at all. The sale has not even opened to investors.

The active sale

Once deployed, the presale is live. Investors browsing live presales see the project's Security Score, computed from liquidity percentage, lock duration, KYC and audit status, and the vesting schedule, all pulled from the same on-chain parameters set at deployment.

Contributing means sending native currency (BNB, ETH, depending on the chain) directly into the presale contract, bounded by the minimum and maximum buy limits and capped by the hardcap. Every contribution is tracked per wallet on-chain. A contributor can withdraw early at any point before the sale finalizes, typically subject to a small early-withdrawal penalty, which discourages using the presale as a free, no-risk option while still leaving an exit open.

End of sale: two branches

If softcap is not reached, the sale simply fails. Every contributor can claim a full refund directly from the contract, no application, no support ticket, no waiting on the creator. No platform fee is ever charged on a failed sale, since MoonSale's fee only applies to funds that are actually raised successfully.

If softcap is reached, either because the sale's end time passed or the hardcap filled early, the creator's wallet (verified against the address stored at deployment) gets access to a Finalize action. Nobody else's wallet can trigger it, and the creator cannot skip it to access funds some other way, the raised funds are not withdrawable through any other path in the contract.

Finalize: the exact order funds move in

Calling finalize triggers everything in a single transaction, in this exact order:

Raised fundsLiquidity + LP lockAdded to DEX, locked in TokenLockPlatform fee (2%)Sent to MoonSaleDeveloper payoutWhatever remains, sent last123

First, liquidity gets added automatically. The configured percentage of raised funds, paired with the matching tokens that have been sitting in escrow since deployment, gets added directly to the chain's DEX by the contract itself, PancakeSwap on BNB Chain, Uniswap V2 on Base, Robinhood Chain, and Ethereum. The resulting LP tokens are sent straight to a separate TokenLock contract for the configured duration. There is no step where a creator could choose to skip this.

Second, the platform fee is deducted. MoonSale takes 2 percent of the raised funds, sent to the platform's fee wallet.

Third, whatever remains goes to the developer's wallet. This is the actual creator payout, and by construction, it is calculated and sent only after liquidity is already locked and the platform fee is already taken. There is no ordering where a creator receives funds before liquidity is secured.

If the hardcap was not fully reached, unsold tokens are burned, refunded to the creator, or locked, exactly as configured back at creation.

Investors then claim their purchased tokens from the same contract, according to whatever vesting schedule was set, an initial unlock at TGE if configured, with the remainder streaming linearly over the vesting duration.

After launch

The token now trades against a real, locked liquidity pool. MoonSale surfaces trade links directly on the project's page, its own Swap & Bridge, the native DEX, and DexScreener. If the creator set aside a separate team allocation outside the presale itself, that follows its own independent schedule through Token Vesting, entirely separate from the presale contract.

Frequently asked questions

Can a creator access raised funds before finalizing?

No. The raised funds sit in the presale contract for the entire duration of the sale. There is no withdrawal path available to the creator before finalize, and finalize itself sends liquidity and the platform fee before the developer payout, in the same transaction.

What happens to the tokens if the presale fails?

If softcap is not reached, the presale fails and contributors are refunded. The tokens that were escrowed at deployment remain in the contract and are handled according to the project's configuration, they are not simply returned to circulation on the open market.

Who can trigger finalize?

Only the wallet address stored as the creator at deployment. The presale detail page checks the connected wallet against that stored address before showing the finalize option at all.

Is the liquidity lock optional?

No. Liquidity locking happens automatically as part of the finalize transaction, using the percentage and duration set at deployment. There is no configuration that skips it.

Does MoonSale ever charge a fee on a failed presale?

No. The 2 percent platform fee only applies to funds that are successfully raised and finalized. A failed sale, where softcap was not reached, costs the creator nothing beyond the original listing fee already paid at deployment.

Can the listing fee change after I have already deployed my presale?

No. The transaction that deploys your presale pays the fee at that moment, based on the live on-chain rate at the time. It does not change retroactively.

What is the difference between the listing fee and the platform fee?

The listing fee (roughly $10 to $11 depending on chain) is paid once, upfront, at deployment, regardless of how the sale turns out. The platform fee (2 percent) is only taken from funds that are actually raised successfully, at finalize.

See it end to end yourself

Browse a live presale to see every stage of this mechanism in a real project's page, from its Security Score down to its current raised amount, or start your own at Create Presale.

More from Insights

Token Sale Platforms with Private Sales and Whitelisting in 2026

Token Sale Platforms with Private Sales and Whitelisting in 2026

8 May 2026
How Token Sale Platforms Compare on Marketing and Promotional Support in 2026

How Token Sale Platforms Compare on Marketing and Promotional Support in 2026

8 May 2026
Token Sale Platforms That Integrate With Ethereum and BNB Chain in 2026

Token Sale Platforms That Integrate With Ethereum and BNB Chain in 2026

8 May 2026