Summary
A fan who holds keys for several creators has to call claim_dividend separately for each one. Each call is a separate Soroban transaction with its own fee. A batch claim function lets a holder collect dividends from multiple creators in a single transaction, reducing fees and making the claim flow practical when holding a diversified portfolio.
Scope
- Add
batch_claim_dividend(claims: Vec<CreatorId>) -> Vec<ClaimResult> function
claims is a list of creator IDs to claim from in one call
- For each creator ID: if the caller has a claimable balance, transfer it and zero the balance; if zero, skip silently (no revert)
- Returns a result per creator:
{ creator_id, amount_claimed } — zero for creators with nothing to claim
- Maximum 20 creator IDs per call to bound execution cost
- Each claim within the batch is independent — a failure on one creator does not revert the others
Acceptance Criteria
ETA: 24 hours
Coordinate on Telegram
Summary
A fan who holds keys for several creators has to call
claim_dividendseparately for each one. Each call is a separate Soroban transaction with its own fee. A batch claim function lets a holder collect dividends from multiple creators in a single transaction, reducing fees and making the claim flow practical when holding a diversified portfolio.Scope
batch_claim_dividend(claims: Vec<CreatorId>) -> Vec<ClaimResult>functionclaimsis a list of creator IDs to claim from in one call{ creator_id, amount_claimed }— zero for creators with nothing to claimAcceptance Criteria
amount_claimed: 0and do not revertETA: 24 hours
Coordinate on Telegram