Decision
ThePaymentChannel contract maintains a governance-managed allowlist of approved ERC-20 tokens. openChannel reverts if the token is not on the allowlist. Per-token rate bounds are set by governance.
Wire-level
payment_token: Addressfield inStreamRequest.token_rates: Vec<TokenRate>alongside the singlerate_per_mbin gossip advertisements. Nodes accepting only one token may retain the single-rate field for simplicity.- The EIP-712
Vouchertype carries atokenfield — a single signature scheme handles all tokens.
Force-close
Channels in governance-removed tokens can be force-closed by any address viaforceCloseChannel, entering the standard dispute/settle flow. This protects the network from abandoned channels in a delisted token without requiring a contract upgrade.
Token approval criteria
The allowlist is governance-managed. Evaluation criteria include:- Minimum market cap and liquidity depth
- Audit history
- Proxy-upgradeability constraints (fee-on-transfer introduced post-approval would break settlement math)
- Geographic/legal constraints
Rate bounds per token
Each allowlisted token has its own[MIN_RATE, MAX_RATE], denominated in the smallest unit of that token per MB. Rates outside this band are clamped and may trigger a rate-manipulation challenge (slashing).
Source ADR: 010-multi-token.md