diff --git a/data/manage-tokens/src/main/kotlin/com/tangem/data/managetokens/utils/ManagedCryptoCurrencyFactory.kt b/data/manage-tokens/src/main/kotlin/com/tangem/data/managetokens/utils/ManagedCryptoCurrencyFactory.kt index 770cecd7a1..74cd8c167a 100644 --- a/data/manage-tokens/src/main/kotlin/com/tangem/data/managetokens/utils/ManagedCryptoCurrencyFactory.kt +++ b/data/manage-tokens/src/main/kotlin/com/tangem/data/managetokens/utils/ManagedCryptoCurrencyFactory.kt @@ -22,6 +22,7 @@ import com.tangem.domain.managetokens.model.ManagedCryptoCurrency.SourceNetwork import com.tangem.domain.models.scan.ScanResponse import com.tangem.domain.tokens.model.CryptoCurrency import com.tangem.domain.tokens.model.Network +import timber.log.Timber internal class ManagedCryptoCurrencyFactory( private val excludedBlockchains: ExcludedBlockchains, @@ -187,11 +188,18 @@ internal class ManagedCryptoCurrencyFactory( decimals = blockchain.decimals(), isL2Network = l2BlockchainsList.contains(blockchain), ) - network.canHandleTokens -> SourceNetwork.Default( - network = network, - decimals = decimals ?: return null, - contractAddress = contractAddress, - ) + network.canHandleTokens -> { + val formattedContractAddress = blockchain.reformatContractAddress(contractAddress) + if (formattedContractAddress == null) { + Timber.w("Couldn't reformat $contractAddress") + return null + } + SourceNetwork.Default( + network = network, + decimals = decimals ?: return null, + contractAddress = formattedContractAddress, + ) + } else -> null } } diff --git a/data/markets/src/main/java/com/tangem/data/markets/converters/TokenMarketInfoConverter.kt b/data/markets/src/main/java/com/tangem/data/markets/converters/TokenMarketInfoConverter.kt index 2e0146f681..a00841547c 100644 --- a/data/markets/src/main/java/com/tangem/data/markets/converters/TokenMarketInfoConverter.kt +++ b/data/markets/src/main/java/com/tangem/data/markets/converters/TokenMarketInfoConverter.kt @@ -72,7 +72,7 @@ internal class TokenMarketInfoConverter( TokenMarketInfo.Network( networkId = network.networkId, exchangeable = network.exchangeable, - contractAddress = network.contractAddress, + contractAddress = blockchain.reformatContractAddress(network.contractAddress), decimalCount = network.decimalCount, ) }