- Submodule pins: dbis_core, cross-chain-pmm-lps, mcp-proxmox (local, push may be pending), metamask-integration, smom-dbis-138 - Atomic swap + cross-chain-pmm-lops-publish, deploy-portal workflow, phoenix deploy-targets, routing/aggregator matrices - Docs, token-lists, forge proxy, phoenix API, runbooks, verify scripts Made-with: Cursor
4.0 KiB
Etherscan “Value” ($0) for Mainnet cW* Tokens
Purpose: Explain why Etherscan shows correct balances but $0 in the Value column for custom ERC-20s (including cWUSDT, cWUSDC, etc.), and what actually fixes it.
Last updated: 2026-04-21
Why Value is $0
- Etherscan does not read your PMM pool or a fixed peg from the contract for the portfolio Value column.
- It aggregates USD marks from external sources—CoinGecko is the usual primary reference for ERC-20 USD on Ethereum Mainnet; CoinMarketCap and other feeds may also be used in combination.
- If the token has no listing (or no tradeable price) on those services for that contract on chain ID 1, the UI shows $0 even when the token is real and liquid on-chain.
No Solidity change, env var, or repo script can force Etherscan’s Value column. The fix is off-chain listing and price discovery on the aggregators Etherscan trusts.
What fixes it (high level)
- Ethereum Mainnet contract verified on Etherscan (exact match) — improves trust; does not by itself guarantee USD.
- CoinGecko (or equivalent accepted listing) with:
- Platform: Ethereum
- Contract: the exact
cW*address (e.g.cWUSDTon Mainnet — see COINGECKO_CHAIN138_SUBMISSION_ATTACHMENT.md public-chain table) - Accurate symbol, decimals, logo, and liquidity / trading data where the form requires it.
- CoinMarketCap token page / DexScan-style verification where applicable — often reinforces visibility.
- Wait for propagation — after approval, Etherscan may take days to weeks to reflect new prices; refresh the token page periodically.
CoinMarketCap DexScan vs CMC “verified” (example: cWUSDC)
Mainnet contract: CWUSDC_MAINNET = 0x2de5F116bFcE3d0f922d9C8351e0c5Fc24b9284a (see smom-dbis-138/.env).
DexScan page (on-chain DEX stats): cWUSDC on Ethereum — CoinMarketCap DexScan
CMC may still show “not verified by CoinMarketCap” on that page, with a note that logo/socials can be third-party and to DYOR. For official CMC verification, their UI points to CMC Priority (paid / expedited listing path). DexScan presence does not automatically flip Etherscan holder Value to a trusted USD mark—that pipeline still depends on the feeds Etherscan uses (typically CoinGecko-heavy) plus time.
Treat DexScan as evidence of on-chain activity and a parallel track to pursue alongside CoinGecko submission in CMC_COINGECKO_SUBMISSION_RUNBOOK.md.
Repo-native steps (operator)
| Step | Action |
|---|---|
| 1 | Follow CMC_COINGECKO_SUBMISSION_RUNBOOK.md — export report JSON if needed, prepare logos. |
| 2 | Submit the Ethereum Mainnet token (not only Chain 138) with the Mainnet contract address from COINGECKO_CHAIN138_SUBMISSION_ATTACHMENT.md or smom-dbis-138/.env (CWUSDT_MAINNET, CWUSDC_MAINNET, …). |
| 3 | Use CoinGecko listing / new coin (or their current partner flow) and attach materials as required. |
| 4 | After listing, confirm the token page on CoinGecko shows a price for Ethereum; then check Etherscan’s token and holder views again. |
| 5 | Optional: pursue CMC Priority / DexScan verification if you need the DexScan badge and official CMC metadata—separate from Etherscan Value propagation. |
Related
- On-chain / treasury marks (not Etherscan): CW_TOKEN_USD_PRICING_RUNBOOK.md and
scripts/deployment/price-cw-token-mainnet.sh. - Multi-chain mid table: CW_PUBLIC_NETWORK_PRICES.md.