Certificate

LaunchProof Demo Token

A snapshot of your fee split, signed and recorded on Solana.

Preflight passed
Certificate hash
91f9aed8339865c605f4f89e409062e83630f3c44a591e4fe90bad7416064499
Bags intent hash
61b4341b73c475516c59c346adc264f2ebdaf387414feaa3ce989ab02b55b4d5

Certificate JSON

This is the standard JSON document for third-party inspection. Hashing still uses canonical serialization.

Download certificate JSON
{
  "id": "cert-1777900212875",
  "version": "LaunchProofCertificate/v1",
  "launchProofVersion": "0.1.0",
  "projectName": "LaunchProof Demo Token",
  "tokenDraftId": "draft-1777900212873",
  "tokenDraftMetadataHash": "4a85e97b8c52daf2f2fb0eed0dbe652e9ab02acbb411543e80ea366f10707ce0",
  "feeRecipients": [
    {
      "id": "recipient-1",
      "draftId": "draft-1777900212873",
      "type": "wallet",
      "input": "AHJZHQdMr7qFuxKN4j5gzTHs5jmYWrc5yCh8q86wErKs",
      "platform": "solana",
      "username": "AHJZHQdMr7qFuxKN4j5gzTHs5jmYWrc5yCh8q86wErKs",
      "wallet": "AHJZHQdMr7qFuxKN4j5gzTHs5jmYWrc5yCh8q86wErKs",
      "claimAuthority": "AHJZHQdMr7qFuxKN4j5gzTHs5jmYWrc5yCh8q86wErKs",
      "bps": 6000,
      "resolveStatus": "resolved",
      "resolveSource": "direct_wallet"
    },
    {
      "id": "recipient-2",
      "draftId": "draft-1777900212873",
      "type": "wallet",
      "input": "XKdU6j2Q7ZVRrteEhUyQURJaE9agpeo1xaz1H8WqUSt",
      "platform": "solana",
      "username": "XKdU6j2Q7ZVRrteEhUyQURJaE9agpeo1xaz1H8WqUSt",
      "wallet": "XKdU6j2Q7ZVRrteEhUyQURJaE9agpeo1xaz1H8WqUSt",
      "claimAuthority": "XKdU6j2Q7ZVRrteEhUyQURJaE9agpeo1xaz1H8WqUSt",
      "bps": 4000,
      "resolveStatus": "resolved",
      "resolveSource": "direct_wallet"
    }
  ],
  "bpsTotal": 10000,
  "bagsLaunchIntentHash": "61b4341b73c475516c59c346adc264f2ebdaf387414feaa3ce989ab02b55b4d5",
  "bagsLaunchIntentUrl": "https://bags.fm/launch?intent=true&name=LaunchProof+Demo+Token&ticker=LPD&admin=AHJZHQdMr7qFuxKN4j5gzTHs5jmYWrc5yCh8q86wErKs&feeShareEnabled=true&feeShareType=multi&feeShare=%5B%7B%22allocationBps%22%3A6000%2C%22platform%22%3A%22solana%22%2C%22username%22%3A%22AHJZHQdMr7qFuxKN4j5gzTHs5jmYWrc5yCh8q86wErKs%22%7D%2C%7B%22allocationBps%22%3A4000%2C%22platform%22%3A%22solana%22%2C%22username%22%3A%22XKdU6j2Q7ZVRrteEhUyQURJaE9agpeo1xaz1H8WqUSt%22%7D%5D",
  "timestamp": "2026-05-04T13:10:12.875Z",
  "signerWallet": "AHJZHQdMr7qFuxKN4j5gzTHs5jmYWrc5yCh8q86wErKs",
  "preflight": {
    "status": "preflight_passed",
    "checks": [
      {
        "code": "launch_metadata",
        "label": "Launch metadata",
        "severity": "warning",
        "passed": true,
        "message": "Token name and ticker satisfy Bags launch intent guidance."
      },
      {
        "code": "creator_wallet",
        "label": "Creator wallet",
        "severity": "error",
        "passed": true,
        "message": "Creator wallet is a valid Solana address."
      },
      {
        "code": "invalid_wallet",
        "label": "Wallet addresses",
        "severity": "error",
        "passed": true,
        "message": "Wallet recipients are valid Solana addresses."
      },
      {
        "code": "recipient_resolve",
        "label": "Bags recipient resolve",
        "severity": "error",
        "passed": true,
        "message": "Every recipient has a resolved wallet."
      },
      {
        "code": "duplicate_recipient",
        "label": "Duplicate recipients",
        "severity": "error",
        "passed": true,
        "message": "No duplicate recipient inputs or resolved wallets found."
      },
      {
        "code": "missing_allocation",
        "label": "Missing allocation",
        "severity": "error",
        "passed": true,
        "message": "Every recipient has a positive BPS allocation."
      },
      {
        "code": "bps_total",
        "label": "BPS total",
        "severity": "error",
        "passed": true,
        "message": "Fee split totals 10000 BPS."
      }
    ]
  }
}

Fee recipients

InputResolved walletBPSStatus
AHJZHQdMr7qFuxKN4j5gzTHs5jmYWrc5yCh8q86wErKsAHJZHQdMr7qFuxKN4j5gzTHs5jmYWrc5yCh8q86wErKs6000resolved
XKdU6j2Q7ZVRrteEhUyQURJaE9agpeo1xaz1H8WqUStXKdU6j2Q7ZVRrteEhUyQURJaE9agpeo1xaz1H8WqUSt4000resolved

Solana memo record

The memo keeps the certificate hash on-chain without a custom Solana program.

Memo
LaunchProof:v1:91f9aed8339865c605f4f89e409062e83630f3c44a591e4fe90bad7416064499:signer:AHJZHQdMr7qFuxKN4j5gzTHs5jmYWrc5yCh8q86wErKs
Signature
5kgcaBd4DAK8kna5S7RY8iazM9f4K4dFhTto1xve7krbNjJHK1sZFQYLMcUoMtkiXnCrsUeZa9j6NpU6wpsKjgDj
Status
Connect a wallet to send the memo.

On-chain certificate verification

LaunchProof recomputes the certificate hash locally, reads the memo transaction from Solana RPC, and compares both hash and signer.

Step 1

Fetch transaction from Solana RPC

pending

Step 2

Parse LaunchProof memo

pending

Step 3

Compare local hash with chain hash

pending

Step 4

Compare memo signer with certificate signer

pending

Local hash

Pending

Chain hash

Pending

Signer match

Pending