← 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
| Account | Derivation | W | S |
|---|---|---|---|
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)