Skip to main content
Trades on the bonding curve go through the InkyPump V2 hook at 0x4cC8F6d5B7cE150CCC0A9B7664532B1283b96AC4. There are four write functions: buy, buyWithReferral, sell, and sellWithReferral. The referral variants emit an extra Referral event. After a token bonds, trades route through the Uniswap Universal Router instead. See Post-Bond Pool for that path.

buy

msg.value is the ETH you spend. Must be at least MIN_BUY_ETH (0.00001 ether). Returns tokensOut, the number of tokens credited to msg.sender.

buyWithReferral

Same as buy, plus emits Referral(launchId, msg.sender, referralCode) if referralCode is non empty. No fee impact.

sell

The contract pulls tokenAmount from msg.sender (you need to approve the hook first, or the token’s transferFrom allowance has to cover the trade). Returns the net ETH payout.

sellWithReferral

Same as sell, plus emits Referral. No fee impact.

Captcha auth

The anti-snipe captcha is an off chain ECDSA signature from the InkyPump signer.
If the anti-snipe window has ended for the launch (block.timestamp > launchTimestamp + antiSnipeDuration), the captcha is not checked. You can pass empty fields. If the window is still active, you must provide a valid signature. Otherwise the call reverts with CaptchaRequired(). The InkyPump UI fetches the signature automatically from its backend. For direct integrations that need to trade during the anti-snipe window, contact InkyPump for backend signing access.

Fees

The hook splits the input (on buy) or the gross payout (on sell) before processing:
creatorFee accrues to the launch creator. buybackFee accrues to a buyback module that periodically buys and burns the token.

Events emitted

Every successful trade emits:
The *WithReferral variants additionally emit:

Common errors