Closed arberiii closed 1 month ago
Closing for now but will re-open.
This is a well-known issue with the way tokens work, especially air-drops that do not render a Transfer log. This is actually okay according to the standard which only says that an ERC-20 contract SHOULD (not MUST) generate logs during minting.
Because of the way the Unchained Index works, we actually see these appearances. The addresses who receive tokens during an air drop do actually appear in the input data (many times). If we see an address in the input data and the to
address is a smart contract, we query the getBalance
routine of the contract. If we get a balance, we use it.
During the BAT token presale, transactions were conducted without involving a transfer process. For instance, in the transaction link, wallet 0x75D27075d8d9Aa87E54f05A07A52c5a117436Cc7 interacted with the BAT contract using the Create Tokens method, which unfortunately did not generate an ERC20 event log. Consequently, when attempting to reconcile the token transfer out in subsequent transactions such as link, the lack of this log poses challenges from an accounting standpoint.
What would be the optimal strategy for accurately recording transactions of this nature, ensuring seamless reconciliation of BAT (or similar tokens utilizing analogous methods such as Envion Token)?
In transaction 0x563854a38cedf07839239c46d79373c3334430f9831c3c37204ac92af96e6e4b's logs, there's a creation of 640,000 BAT tokens, as also be seen by chifra's articulated logs response: