← Registry

Allowlist Gate

allowlist-gate@2.0.0 · by Meridian Foundation

Only allowlisted recipients can receive the token.

KnownUpgradeableMock program
Identity
Name
Allowlist Gate
Program ID
ALwsqTFb…ucdozXxg
Version
2.0.0
Source
not published
Upgrade authority
SXRP…SY4Y
Last upgrade slot
383,642,999
Verification
manifest-reviewed
Audit status
none
CPI behaviour
none
Trust labels
  • KnownRecognised program with a published manifest; source not independently verified.
  • UpgradeableAn upgrade authority can change this hook’s rules at any time.
Usage
Tokens using it
4
Transfers (30d, mock)
56.6K
Transaction success rate
91.7%

Success rate = HOOKAWAY-built transactions that confirmed ÷ submitted. Blocks by the hook's own rules are not failures.

Compatibility
  • Direct transfer●
  • Meridian AMM●
  • Orbit CLMM●
  • Relay AggregatorHook needs 4 extra accounts; Relay Aggregator forwards at most 3.×
  • Basin Legacy AMMBasin Legacy AMM cannot forward transfer-hook accounts.×
  • HOOKAWAY Launch Curve●
Config schema
  • authorityAllowlist managerpubkey
Extra account schema
AccountDerivationWS
config
Per-mint hook configuration.
pda(hook, ["config", acct[1]:mint])··
recipient-entry
allow record for the destination owner.
pda(hook, ["allow", acct[1]:mint, acct[3]:destination owner])··
Errors & restrictions
  • 6010Recipient is not on this token’s allowlist.
  • —Recipient owner must have an allowlist entry PDA.
Manifest
cross-check passed
  • ✓ Schema valid (manifest v0.1)
  • ✓ Program ID matches mint’s TransferHook extension
  • ✓ Upgrade authority matches declared authority
  • ✓ Declared accounts match on-chain ExtraAccountMetaList
  • ✓ All accounts derivable without off-chain input
{
  "$schema": "https://hookaway.dev/schema/manifest/v0.1.json",
  "manifestVersion": "0.1",
  "name": "allowlist-gate",
  "version": "2.0.0",
  "program": "ALwsqTFbVw646zd267CmcBryM127naFWvdS4ucdozXxg",
  "programAuthority": "SXRPVcMBt6qR1pKMC2P3MrhbUSABVGtMNXTrJhjaSY4Y",
  "description": "Only allowlisted recipients can receive the token.",
  "source": {
    "verifiedBuild": false
  },
  "config": {
    "fields": [
      {
        "key": "authority",
        "type": "pubkey",
        "description": "Allowlist manager"
      }
    ]
  },
  "accounts": [
    {
      "name": "config",
      "derivation": {
        "kind": "pda",
        "programId": "hook",
        "seeds": [
          {
            "kind": "literal",
            "value": "config"
          },
          {
            "kind": "account",
            "index": 1,
            "label": "mint"
          }
        ]
      },
      "writable": false,
      "signer": false,
      "description": "Per-mint hook configuration."
    },
    {
      "name": "recipient-entry",
      "derivation": {
        "kind": "pda",
        "programId": "hook",
        "seeds": [
          {
            "kind": "literal",
            "value": "allow"
          },
          {
            "kind": "account",
            "index": 1,
            "label": "mint"
          },
          {
            "kind": "account",
            "index": 3,
            "label": "destination owner"
          }
        ]
      },
      "writable": false,
      "signer": false,
      "description": "allow record for the destination owner."
    }
  ],
  "compatibility": {
    "transfer": true,
    "venues": "any-hook-aware",
    "maxExtraAccounts": 2
  },
  "transaction": {
    "computeUnits": 19000,
    "requiresLookupTable": false,
    "cpi": "none"
  },
  "simulation": {
    "adapter": "allowlist"
  },
  "explain": {
    "6010": "Recipient is not on this token’s allowlist."
  },
  "restrictions": [
    "Recipient owner must have an allowlist entry PDA."
  ]
}
Tokens using it (4)