Deployed Addresses
Always verify addresses before sending funds. Confirm them against the
official app and the block explorer. Addresses here reflect the repository’s
deployment record (contracts/deployments/latest.json) and may change as the
protocol is upgraded or rolled out to new chains.
Core contracts (live)
The production path today is Sepolia (selling) → Base (buying + payouts).
| Contract | Chain | Address |
|---|---|---|
| SethVault (proxy) | Sepolia | 0xa2aa891cf73cf56b22d8af886cbab7d2f8706794 |
| PaymentCollector (proxy) | Base | 0x77dfdfb009847924c65e09fb9ad998a132f97079 |
| Payout (proxy) | Base | 0x3b0abc4c5630e9d70b4e80af793a12be053164b2 |
Buyers and sellers interact with the proxy addresses above. Each proxy forwards to an upgradeable implementation.
Implementation & deployment details
| Contract | Implementation | Start block | Notes |
|---|---|---|---|
| SethVault (Sepolia) | 0xe50df9f174de25f6e74ec6e52e95f328a711a535 | 11270857 | min deposit 1 SETH (1e18) |
| PaymentCollector (Base) | 0xf71ddde32a6183ae7fe4fdf09c25a9faa701d3a7 | 48622604 | Chainlink ETH/USD 0x71041dddad3595F9CEd3DcCFBe3D1F4b0a16Bb70, max stale 1200s |
| Payout (Base) | 0x7074d643de1fb0453c7a23a84edc6751825f3243 | 48622106 | Chainlink ETH/USD 0x71041dddad3595F9CEd3DcCFBe3D1F4b0a16Bb70, max stale 1200s |
Payment chains
A PaymentCollector is deployed per payment chain. Each accepts the chain’s
native coin (priced via the listed Chainlink native/USD feed) plus the
standard USDC, USDT, and DAI stablecoins, each valued at $1.
The stablecoins are each chain’s own canonical token contracts — not deployed
by SellPolia — so their addresses aren’t listed here. For the exact token
contracts a collector accepts on each chain, query
/api/market. Base is the chain enabled at
runtime today.
Base · Chain ID 8453 · live
- PaymentCollector:
0x77dfdfb009847924c65e09fb9ad998a132f97079 - Chainlink ETH/USD feed:
0x71041dddad3595F9CEd3DcCFBe3D1F4b0a16Bb70· start block 48622604
Ethereum (Mainnet) · Chain ID 1
- PaymentCollector:
0x3b0abc4c5630e9d70b4e80af793a12be053164b2 - Chainlink ETH/USD feed:
0x5f4eC3Df9cbd43714FE2740f5E3616155c5b8419· start block 25531053
Optimism · Chain ID 10
- PaymentCollector:
0x3b0abc4c5630e9d70b4e80af793a12be053164b2 - Chainlink ETH/USD feed:
0x13e3Ee699D1909E989722E753853AE30b17e08c5· start block 154218020
Arbitrum · Chain ID 42161
- PaymentCollector:
0x3b0abc4c5630e9d70b4e80af793a12be053164b2 - Chainlink ETH/USD feed:
0x639Fe6ab55C921f74e7fac1ee960C0B6293ba612· start block 483776556
BNB Chain · Chain ID 56
- PaymentCollector:
0x3b0abc4c5630e9d70b4e80af793a12be053164b2 - Chainlink BNB/USD feed:
0x0567F2323251f0Aab15c8dFb1967E4e8A7D42aeE· start block 109946665
For the definitive, machine-readable list of active payment chains,
collectors, and accepted tokens, query
/api/market — it advertises only what is
actually enabled.
A note on the buy price
The deployment record initializes the collectors with a buy price of $0.25
per SETH (buyPriceUsdRaw = 25000000, 8 decimals), while the backend’s market
config advertises $0.50. The buy price is owner-editable on-chain and can
be re-tuned at any time, so the authoritative live value is always what
/api/market (or the collector’s buyPriceUsd()) returns — not a fixed number in
these docs.