Multi-Chain Loyalty Point Aggregator
Free to download on every platform. Comes pre-installed on BotFone, BotPad and BotFlip — with extra free apps included.
About this app
WHAT IT DOES
Multi-Chain Loyalty Point Aggregator is a read-only analytics tool that consolidates loyalty point data from multiple loyalty programs across EVM-compatible chains. It reads the user's wallet address, loyalty program contract addresses on each chain, point token addresses and decimals, point balances on each chain, point earning history (transactions, events, rewards), point redemption history, program rules (earning rate, expiration, tiers), program status (active/paused/ended) on each chain, account nonce, gas estimates for balance checks, and previous aggregation records. The tool presents a unified view of a user's loyalty points across all chains, showing total points, per-chain breakdowns, recent earnings and redemptions, and program statuses.
HOW TO USE
Connect your wallet via the built-in connector. Select the network you wish to analyze from the dropdown. Enter the wallet address you want to track. In the text area, enter each loyalty program contract as a line with the chain ID and contract address separated by a comma (e.g., "1,0x..." for Ethereum, "137,0x..." for Polygon). Choose the history depth (number of blocks to scan for earning and redemption events). Click "aggregate loyalty points." The tool will read on-chain data for each program and display: wallet address, total points across all chains, a per-chain breakdown with point balances and program status, recent earning events, recent redemption events, combined program status, and estimated gas for the reads.
TECHNICAL MECHANISM
The tool uses ethers.js v5.7.2 to interact with loyalty program contracts across multiple chains. For each program, it reads the user's point balance using `balanceOf(address)` on the point token, or `getPoints(address)` if the program implements a custom interface. Point token decimals are fetched via `decimals()` for ERC-20 compliant tokens. Earning history is scanned using `eth_getLogs` for `Earned` or `Reward` events, with adaptive chunking (halving chunk size on failure) to handle different RPC limits—the tool walks backward from the current block and continues even if some ranges are rejected. Redemption history is similarly scanned for `Redeemed` or `Burned` events. Program rules are read via view functions like `getEarningRate()`, `getExpiration()`, and `getTier(address)`. Program status is read using `isActive()`, `isPaused()`, or `isEnded()`. Account nonce is read via `provider.getTransactionCount(address)`. Gas estimates are simulated for balance checks using `estimateGas` on the balance view functions. Previous aggregation records are not stored on-chain; the tool reads the current state and history fresh each time. All reads are performed through the user's connected wallet provider—no centralized APIs are used.
WHAT IT CANNOT SEE
This tool cannot verify that points are earned through legitimate activity—it only reads on-chain balances and events. It cannot detect fraudulent or wash-trading point accumulation, where users manipulate earning mechanisms. It cannot confirm that point totals reflect real-world loyalty—points may be earned through automated or scripted activity. It cannot guarantee that program rules are consistent across chains; different chains may have different earning rates or expiration rules. It cannot validate that point tokens are transferable or have value—they may be non-transferable or have no redeemable value. It cannot ensure that point balances are not manipulated by contract vulnerabilities, such as reentrancy or overflow bugs. It cannot detect if programs have modified rules retroactively, such as changing earning rates for past transactions. It cannot verify off-chain points or rewards that are not recorded on-chain.
PLEASE NOTE
This tool is EVM-only and supports Ethereum, Polygon, BNB Chain, Arbitrum, Optimism, and Avalanche. All reads are performed through your connected wallet's provider—no centralized APIs are used. The tool does not store or transmit any wallet address or loyalty data. Loyalty point programs may use non-standard interfaces; you may need to adjust the contract addresses accordingly. Always verify program details through official sources before relying on aggregated data.