Skip to content

Common mistakes

Four things quietly break bots. All four are avoidable, and all four have already bitten someone.

1. Funding the key instead of the wallet

The signing EOA and the deposit wallet are different addresses. USDC.e sent to the EOA can't be traded until it's moved. Always fund the deposit wallet. → Fund the deposit wallet

2. The wrong relayer address

POLYMARKET_RELAYER_API_KEY_ADDRESS is the identity the relayer acts as, per bot. If it isn't this bot's own EOA, every wrap and redeem fails with from 0x… does not match auth 0x…. → Polymarket API key

3. Never deploying the deposit contract

The wallet address exists before the contract does. USDC.e can't wrap into a wallet that hasn't been deployed on-chain. Complete the supported wallet setup as an eligible Polymarket user. → Deploy the deposit contract

4. A copied key or a leftover master mnemonic

Use this bot's own BOT_PRIVATE_KEY, with BOT_INDEX=0, and delete any BOT_MASTER_MNEMONIC you inherited from a cloned service — otherwise the runner signs as the wrong bot. Confirm the boot-log account=… is this bot's address before flipping live trading on. → Configure Railway · Verify


One check catches most of these

The boot identity and fuel logs are useful setup checks. They do not prove order execution or Member fanout: verify the actual venue receipt and the corresponding Hive Call after an intentionally enabled trade.

HiveTrade — signal-sharing technology for Polymarket and Kalshi. Not a trading platform, exchange, broker, or custodian.