Skip to content
AppCoin

Docs

How AppCoin works

Everything on AppCoin is either verifiable on-chain or labelled honestly. This page explains the mechanics, the exact verification formats and the rules.

How it works

AppCoin lets anyone launch a Solana coin on pump.fun for any app on the App Store or Google Play. Listings are read straight from the stores (the public iTunes Search / Lookup API and the Google Play listing page). Each store listing can have exactly one coin — the App Store and Google Play versions of an app are separate listings.

Creator fees use pump.fun's native fee sharing. Until claimed, 100% of creator fees go to the AppCoin escrow (it owes the developer 80% and the launcher 10%). When the developer is verified, the split switches on-chain to 80/10/10 permanently and the escrow pays out the backlog. Fee sharing is activated by the escrow shortly after launch; fees from before activation (including the dev-buy fee) are held by the escrow and not attributed to any coin.

Community-launched — not affiliated with the developer until claimed. Every app page shows the claim status. AppCoin is not affiliated with Apple or Google; trademarks, app names and icons belong to their owners.

Launching

  • Search by name, or paste a store link: apps.apple.com/<country>/app/<name>/id<digits> or play.google.com/store/apps/details?id=<package>.
  • Confirm the listing, then choose a name and ticker (suggested from the app name) and an optional dev buy (0–5 SOL). The coin image defaults to the app icon, downloaded server-side from the store's own image CDN and saved as a 512×512 PNG; you can upload your own instead.
  • The server re-reads the listing from the store before anything is saved — apps whose listing can't be fetched can't get a coin. The coin metadata links to https://appcoin.fun/app/<id>.
  • AppCoin builds unsigned transactions with the official @pump-fun/pump-sdk. Your browser signs them with your wallet plus a fresh mint keypair generated locally (or an uploaded vanity keypair). No private keys are ever held by the server.
  • The coin is created with the AppCoin escrow wallet as its pump.fun creator. You (the launcher) sign and pay one transaction (create, plus the dev buy if any) and receive any dev-buy tokens. The server verifies it on-chain and lists the coin immediately with fee sharing pending activation.
  • Fee activation by the escrow. pump.fun only lets a coin's creator create its fee-sharing config, so the escrow wallet signs create_fee_sharing_config (escrow as sole shareholder and authority) from the admin console shortly after launch, batching several coins per transaction. The server verifies the config on-chain before the coin is marked live. Creator fees from before activation — including the dev-buy fee — collect in the escrow's creator vault and are not attributed to any coin; the escrow's debt to developers and launchers is computed only from per-coin distributions after activation.

Developer verification

The developer proves control of the app with one of three methods. Each claim gets a unique code of the form ac-xxxxxxxxxx, and the fees go to the wallet that started the claim.

1 · Store description (recommended)

Add this line anywhere in the app's store description (case-insensitive; the bare code on its own also works):

AppCoin: ac-xxxxxxxxxx
  • App Store: App Store Connect → your app → the version you are preparing → Description. The description can only change with an app version, so the line becomes visible when that version is released.
  • Google Play: Play Console → your app → Grow users → Store presence → Main store listing → Full description (or short description). Send the change for review; listing edits usually go live within hours.

AppCoin re-reads the live listing (iTunes Lookup / the Play listing, never a cached copy). Pending description claims are re-checked automatically every 15 minutes for 14 days, so you can start the claim now and ship the line with your next release. You can remove the line once verified.

2 · DNS TXT record

Add a TXT record on the domain of the developer website shown in the store listing (App Store “seller URL” / Google Play “developer website”):

Host:  _appcoin.yourdomain.com
Type:  TXT
Value: appcoin-verify=ac-xxxxxxxxxx

Lookups use DNS-over-HTTPS (Cloudflare, falling back to Google). The domain must match the listing website (registrable domain, www ignored); otherwise — or if the listing has no website and you enter your own domain — the claim goes to admin review after the record is found.

3 · Website file

URL:     https://yourdomain.com/.well-known/appcoin.txt
Content: ac-xxxxxxxxxx

Fetched over HTTPS only, with an 8 second timeout and a 4 KB limit; private network addresses and redirects to other sites are refused. Same domain rule as DNS. Pending DNS and file claims are re-checked every 10 minutes for 48 hours.

Fee split & escrow

Until claimed, 100% of creator fees go to the AppCoin escrow (it owes the developer 80% and the launcher 10%). When the developer is verified, the split switches on-chain to 80/10/10 permanently and the escrow pays out the backlog. Fee sharing is activated by the escrow shortly after launch; fees from before activation (including the dev-buy fee) are held by the escrow and not attributed to any coin.

PartyBefore claimAfter claim (locked)
AppCoin escrowReceives 100% on-chain0% — pays out the backlog once
Developer80% owed by the escrow80% to the developer wallet
Launcher10% owed by the escrow10% to the launcher wallet
Platform10% kept by the escrow10% to the platform wallet

pump.fun fee sharing allows exactly one share update per coin, made by the fee-sharing authority (the escrow), after which the split is locked forever. AppCoin reserves that single update for the verified developer. Default shares are shown; the values for each coin are read live from the chain on its app page.

Distribution is permissionless: anyone can press “Distribute fees” on an app page (when pump.fun reports enough has accrued) and pay the small network fee. Every distribution is indexed, and the escrow's debt per coin is computed from what it received before the switch, minus verified payouts.

When a claim is verified, the escrow wallet signs two transactions in the browser: the permanent updateFeeShares to [developer 80%, launcher 10%, platform 10%] (pending fees are distributed to the escrow first), then a single transfer paying the developer's 80% and the launcher's 10% backlog. The server verifies both on-chain before marking the claim complete.

On-chain proof

  • Fee-sharing config — each app page links the sharing-config account (once activated) and lists the shareholders read from chain. Before a claim the escrow is the sole shareholder and authority; after the switch the authority is revoked and the split is locked.
  • Distributions — every distribution transaction is listed with its Solscan link.
  • Payouts — completed claims link both the share-update and the backlog payout transactions.
  • Escrow — the escrow wallet is public and is each coin's pump.fun creator; anyone can inspect its balance against what it owes developers and launchers.

Eligibility

Any public app whose listing AppCoin can read from the App Store (US storefront, or the storefront in the pasted link) or Google Play is eligible. Listings that can't be fetched — removed, private, pre-release or region-locked — can't get a coin. One coin per store listing, enforced by the store id (App Store track id / Play package name). Launches are rate limited.

Safety & disclaimers

  • Not financial advice. Coins on pump.fun are speculative and can lose all of their value.
  • Not endorsed until claimed. Community-launched coins are not affiliated with or endorsed by the developer until they claim them.
  • Trademarks belong to their owners. App names and icons are used only to identify the app. AppCoin is not affiliated with Apple or Google.
  • Nothing is faked. Prices, volumes, fees and claims come from the chain and public market APIs; ratings and installs are shown as the stores give them. The demo app is clearly labelled SIMULATED.
  • Developers with a dispute can claim their app, or contact AppCoin.

API

Public JSON endpoints (camelCase, ISO times, SOL as numbers):

GET  /api/apps?store=all|appstore|playstore&genre=&claimed=&sort=newest|mcap|fees&q=
GET  /api/apps/:id                   # id = app id or coin mint
GET  /api/apps/:id/fees              # shareholders, pending, distributed, escrow owed
GET  /api/apps/:id/activity
GET  /api/apps/search?q=&store=all|appstore|playstore
POST /api/apps/resolve {url}         # App Store / Google Play link
GET  /api/apps/details?store=&storeId=
GET  /api/stats
GET  /api/activity?limit=
GET  /api/stream?appId=              # Server-Sent Events, event: activity
GET  /api/leaderboard?board=fees|mcap|newest|claimed
GET  /api/config

Authenticated actions (launch, claims, admin) use Sign-In With Solana. Launch a coin or explore apps.