Compound finance rewards require a market-specific check before claiming
Compound finance reward checks start with the account, network, and market that hold the eligible position. For Compound III, query the market's rewards contract for the configured token and unpaid amount. An accrued counter, a pending transaction, and a wallet balance describe different states. Confirming receipt requires a successful claim and the matching token transfer to the intended recipient. Keep each market separate when investigating a missing payment.
Updated -Bottom line: Verifying a reward payout requires a successful token transfer to the intended recipient; a displayed accrued balance alone does not prove receipt.
Participation conditions and reward allocation
Compound III assigns reward tracking to base-asset supply or borrowing. A collateral deposit alone does not establish either position. Supply and borrow tracking have separate speeds, so activity on one side does not establish rewards on the other.
The market compares total supply principal or total borrow principal against baseMinForRewards for the corresponding side. A zero tracking speed or an unmet threshold can explain unchanged rewards. Refreshing a display cannot change those conditions. These checks concern new accrual; an account can still have unpaid rewards from earlier participation.
The account and market behind the displayed amount
A useful reward record identifies the network, market contract, account, and reward token. A combined dashboard total can hide which position produced an unpaid amount.
Market identity
Compound III uses a Comet instance for each market. Match its proxy address to the selected network before interpreting contract results. An asset symbol alone does not identify the deployment.
Record the block used for a query when comparing readings. Values from different blocks need not match.
Account identity
The account holding the position determines which rewards to query. A connected wallet, transaction sender, and intended recipient can represent different addresses. Keep their roles explicit, especially when an application manages positions through another account. A query for the wrong account can return a valid result that says nothing about the position under investigation.
Which amount is available to claim?
The owed value returned by getRewardOwed represents unpaid rewards for the specified Compound III market and account, expressed in the returned token's smallest units.
The rewards contract calculates unpaid rewards by subtracting recorded claims from converted accrual, with a floor of zero.
The conversion follows the market's reward configuration. Reading baseTrackingAccrued alone therefore does not provide a wallet-ready amount.
Interest belongs to a different balance. Growth in a supplied base-asset balance does not establish an equal increase in claimable reward tokens.
Fresh estimates without a payment transaction
A simulated getRewardOwed call can calculate updated accrual without publishing a transaction. The function performs an accrual update during execution, but an eth_call simulation does not persist that change. This makes simulation suitable for checking the amount before signing. Sending the same function as a transaction changes the cost and persistence of the operation; querying rewards does not itself transfer them.
Claim settings and recipient selection
Compound III's claim sends rewards to the position account. The claimTo variant permits a specified recipient when the caller has the required account permission. Confirm the recipient before execution.
Setting shouldAccrue to true updates the account's reward accrual before the claim transfers tokens.
A previous estimate can differ from the execution amount because the chain has advanced. Claiming does not automatically repay borrowing or supply the received tokens back into the lending market.
Transaction evidence and wallet balances
A transaction hash identifies a submission; its receipt establishes whether execution succeeded. For payment verification, inspect the token transfer and recipient alongside that receipt. ERC-20 transfer records identify the sending address, receiving address, and amount.
Compare balances for the exact token contract on the claim's network. Other transfers during the comparison period can change the wallet balance independently. A wallet's missing token entry is a display issue only when the underlying balance confirms receipt; it does not justify another claim by itself.
A refreshed claim reconciled with its transfer
Consider a hypothetical account with an eligible base-supply position in a reward-enabled Compound III market. Assume its configuration supports accrual, its rewards contract can fund payment, and its owner has transaction gas.
The owner obtains a positive simulated unpaid amount, Q, for that market. To include accrual through execution, the owner submits the supported claim with shouldAccrue enabled.
The expected outcome is a successful transfer to the position account. The observed receipt confirms success, and the matching token transfer records an amount T.
T, rather than the earlier estimate Q, establishes the payment received. Reconcile any difference with new accrual and any intervening claims or adjustments to recorded claims between the query and execution. A later positive unpaid balance can represent subsequent accrual. The claim is complete when its recorded transfer matches the intended token and recipient.
Why did a successful claim transfer no rewards?
A Compound III claim can succeed without transferring tokens when converted accrual does not exceed the amount already recorded as claimed.
No unpaid amount at execution
An earlier payment or a stale estimate can explain the difference. A claim with shouldAccrue set to false can also omit new accrual included in a simulated estimate, because the simulation does not persist its update. Check the account's claim history before submitting another transaction. Transaction success alone does not prove that the call paid a positive amount.
Claim failure rather than an empty claim
A reverted transaction requires a different response. An unsupported market configuration, missing caller authorization for claimTo, or failed token transfer can prevent payment. Correct the identified cause before retrying. Increasing the gas limit does not repair an authorization failure or supply missing reward tokens.
Separate records for Compound v2
Compound v2 claims use the Comptroller's claimComp methods rather than the Compound III rewards interface. Available variants can target specified markets and account participation. Do not apply Comet field names to a v2 position or interpret a v2 claim as payment from a Compound III market.
For either version, preserve the network, transaction hash, and receiving address with the payment record. Those identifiers distinguish a completed claim from an estimate that remains on screen. For a Compound III payout, the corresponding contract event is RewardClaimed.
Compound finance: questions and answers
Does checking claimable Compound rewards require a wallet signature?
Reading public reward information does not require a wallet signature. A simulated contract call can use the account address without authorizing a transaction. Signing a claim is a separate action. An account-management signature can grant or revoke permissions and should not be treated as a routine balance check.
Can I combine unpaid amounts from different Compound markets?
You can aggregate amounts for reporting only after matching their token identity and units. Keep the underlying market and network records separate. A combined display does not establish that one claim transaction will collect every included amount, and matching token symbols alone do not establish identical tokens.
Will approving a token fix a direct reward claim?
A direct Compound III reward claim transfers tokens from the rewards contract, so it does not need an allowance to spend tokens from your wallet. The caller's authorization to redirect rewards with claimTo is a separate issue. Manager permission can also allow collateral transfers or withdrawals, making it broader than permission merely to inspect rewards.
What does a smaller reward estimate mean for previously received tokens?
A smaller unpaid estimate does not itself show that previously received tokens left your wallet. Unpaid rewards and wallet holdings are separate records. Inspect transfers involving the receiving address to establish whether its holdings changed, and use the unpaid amount only to assess the remaining claim.
When is a reward query failure different from a zero balance?
A failed query provides no valid unpaid amount. A connection failure, incompatible contract call, or unsupported configuration must not become a displayed zero. Preserve the error state until the query succeeds; otherwise, the display can incorrectly suggest that the account has no rewards.