Skip to main content
The fastest safe path is the Launchpad Quickstart. This page explains the system choices around it.
This avoids cross-origin API trouble and keeps creator ownership with the user.

Choose the creation path

xStocks do not run on the native creation hook. Each wrapper has a separate hook.

Creation state machine

Use explicit states in your UI:
Never return a submitted transaction to draft merely because an RPC wait timed out.

Verify LaunchCreated

The receipt decoder must use:
Require the event address to equal the planned hook. Check the creator and target. Persist:

Route an existing token

Use the returned hook_address and launch_id. An active deployment is only for a new launch; it must not overwrite an existing token’s execution context. Before bond, read getLaunchState and use the hook previews. After bond, resolve the exact pool by ABI family: call getLaunchPoolKey on corrected/current hooks, or use complete indexed pool fields for ink-legacy. Validate the key and computed pool ID. Never construct the pool from WETH or another guessed quote token.

Approvals

Show spender, token, and amount before requesting approval.

Referrals

An on-chain Referral event and a permanent fee-earning referral binding are not the same thing. The fee-earning system uses a wallet challenge, signature, and chain-specific accept route. Do not add createLaunchWithReferral as a universal selector. The older Ink hook rejects it. Use plain creation unless you have selected and simulated a deployment that supports it.

Captcha window

Direct creation needs no captcha. A pre-bond trade during antiSnipeDuration needs a valid InkyPump signer authorization. That signer API is protected by Turnstile and first-party origin policy. For a partner’s first release, set antiSnipeDuration to zero or coordinate an approved captcha flow with InkyPump.

Read API boundary

  • Always pass chainId.
  • Call the API from your backend.
  • Treat 404 after a confirmed receipt as indexing delay.
  • Preserve exact strings and null values.
  • Handle 429 with backoff.
  • Ignore new response fields you do not use.
See Read and Index and API Policies.

Production release

Before enabling users, complete the Production Checklist. At minimum, test native creation with and without prebuy, receipt recovery after an RPC timeout, wrong-chain rejection, and existing-token routing on both active and deprecated hooks.