Upgradable contract is sucessfully created and verified but the name and symbo doesn’t shows up at bsc scan l

:1234: Code to reproduce

` // SPDX-License-Identifier: MIT
// Compatible with OpenZeppelin Contracts ^5.0.0
pragma solidity ^0.8.20;

import "@openzeppelin/contracts-upgradeable@5.0.2/token/ERC20/ERC20Upgradeable.sol";
import "@openzeppelin/contracts-upgradeable@5.0.2/token/ERC20/extensions/ERC20BurnableUpgradeable.sol";
import "@openzeppelin/contracts-upgradeable@5.0.2/access/OwnableUpgradeable.sol";
import "@openzeppelin/contracts-upgradeable@5.0.2/token/ERC20/extensions/ERC20PermitUpgradeable.sol";
import "@openzeppelin/contracts-upgradeable@5.0.2/token/ERC20/extensions/ERC20VotesUpgradeable.sol";
import "@openzeppelin/contracts-upgradeable@5.0.2/proxy/utils/Initializable.sol";
import "@openzeppelin/contracts-upgradeable@5.0.2/proxy/utils/UUPSUpgradeable.sol";

contract SUSISWAP is Initializable, ERC20Upgradeable, ERC20BurnableUpgradeable, OwnableUpgradeable, ERC20PermitUpgradeable, ERC20VotesUpgradeable, UUPSUpgradeable {
/// @custom:oz-upgrades-unsafe-allow constructor
constructor() {

function initialize(address initialOwner) initializer public {
    __ERC20_init("SUSISWAP", "SUSI");

    _mint(msg.sender, 300000000 * 10 ** decimals());

function mint(address to, uint256 amount) public onlyOwner {
    _mint(to, amount);

function clock() public view override returns (uint48) {
    return uint48(block.timestamp);

// solhint-disable-next-line func-name-mixedcase
function CLOCK_MODE() public pure override returns (string memory) {
    return "mode=timestamp";

function _authorizeUpgrade(address newImplementation)

// The following functions are overrides required by Solidity.

function _update(address from, address to, uint256 value)
    override(ERC20Upgradeable, ERC20VotesUpgradeable)
    super._update(from, to, value);

function nonces(address owner)
    override(ERC20PermitUpgradeable, NoncesUpgradeable)
    returns (uint256)
    return super.nonces(owner);


#### 💻 Environment

Deployed and verified using remix

deployment link https://bscscan.com/address/0xda9c30737acb2ab72800e063e9ea792895d17df3 while it does show on sepolia https://sepolia.etherscan.io/tx/0x0562440256438ae77a6818474098fcdaa2a84f60610f7ea08fdd9099c24dcdd6
1 Like

There may be an issue with your deployment. You can see that when reading as proxy https://bscscan.com/address/0xda9c30737acb2ab72800e063e9ea792895d17df3#readProxyContract , the name() and symbol() getters aren't working, but some other getters such as owner() work. I tried calling name() and symbol() from other tools such as Hardhat, but it gave an "execution reverted" error.

Also note that your implementation source code on bsc is different from your implementation on sepolia.

1 Like

yes and it is deployed, as u can see in my previous transaction, I used the openzepplin contract wizard code, deployed and verified with remix, some more functions aren't working too, like eip712domain, I know nothing about hardhat, that's why I used remix plugin

1 Like

https://bscscan.com/tx/0x8b6a93e7aeb54339cc8a67c8e3ef691817f71b174051be924f780f01c93b1ebd this is transaction of my implementation

I think this is caused by an incompatible EVM version being chosen in your Remix compilation settings resulting in opcodes that are not supported by the chain you are using.

The default EVM version in Remix is "Cancun", but BNB chain does not support Cancun yet. You would need to recompile with an older EVM version such as "Shanghai" and redeploy. See discussion in https://github.com/ethereum/solidity/issues/14972

I'm stuck, and they're both bscscan and openzepplin forum support not replying my query

do I have to deploy again?

You would need to recompile with an older EVM version such as "Shanghai" and redeploy. See discussion in ethereum/solidity#14972

I'll wait until bsc supports cacnun so I see

1 Like