LogoLogo
HomeExplorerGitHub
  • 🗂️Introduction
    • 🧐5Ws-1H about CESS
    • ✨Technical Highlight
    • 🔨Use Cases
    • 📜Whitepaper
    • 💬Contact & Social Media
  • ⛏️CESS Nodes
    • Consensus Nodes
      • Running a Consensus Node
      • Reward Mechanism
    • Storage Nodes
      • Running a Storage Node
      • Running MultiNodes
      • Node Troubleshooting
      • Storage Miner Upgrade Guide
    • CDN Nodes
      • Running a Cacher
      • Running a Retriever
    • TEE Nodes
      • What is TEE Node
      • Running a TEE Node
  • 🌏Community Members
    • Ambassador Program
    • Community Governance
  • 🔥CESS User Guide
    • CESS Account
    • Testnet Faucet
    • Territory Operation
  • 💻Developers
    • CESS SDK
      • Golang SDK
        • Preface
        • Install
        • Initialization
        • Properties
        • Data Process
        • Object/File
          • StoreFile
          • StoreObject
          • RetrieveFile
          • RetrieveObject
          • StoreFileToMiners
          • RetrieveFileFromMiners
        • Chain Related
          • Audit
            • QueryChallengeSnapShot
            • QueryCountedClear
            • QueryCountedServiceFailed
            • SubmitIdleProof
            • SubmitServiceProof
            • SubmitVerifyIdleResult
            • SubmitVerifyServiceResult
          • Babe
            • QueryAuthorities
          • Balances
            • QueryInactiveIssuance
            • QueryTotalIssuance
            • TransferToken
          • CessTreasury
            • QueryCurrencyReward
            • QueryEraReward
            • QueryReserveReward
            • QueryRoundReward
          • DeOSS
            • Authorize
            • CancelAuthorize
            • DestroyOss
            • QueryAllOss
            • QueryAuthorityList
            • QueryOss
            • RegisterOss
            • UpdateOss
          • FileBank
            • QueryAllRestoralOrder
            • QueryUserHoldFileList
            • QueryUserFidList
            • QueryDealMap
            • QueryFile
            • QueryRestoralOrder
            • CalculateReport
            • CertIdleSpace
            • ClaimRestoralNoExistOrder
            • ClaimRestoralOrder
            • DeleteFile
            • GenerateRestoralOrder
            • PlaceStorageOrder
            • ReplaceIdleSpace
            • RestoralOrderComplete
            • TransferReport
            • UploadDeclaration
            • TerritoryFileDelivery
          • SchedulerCredit
            • QueryCurrentCounters
          • Session
            • QueryValidators
          • Sminer
            • IncreaseCollateral
            • IncreaseDeclarationSpace
            • MinerExitPrep
            • MinerWithdraw
            • QueryAllMiner
            • QueryAllRestoralTarget
            • QueryCompleteSnapShot
            • QueryCounterForMinerItems
            • QueryExpenders
            • QueryMinerItems
            • QueryPendingReplacements
            • QueryRestoralTarget
            • QueryRewardMap
            • QueryStakingStartBlock
            • ReceiveReward
            • RegisterPoisKey
            • RegnstkAssignStaking
            • RegnstkSminer
            • UpdateBeneficiary
            • UpdateSminerEndPoint
          • Staking
            • QueryAllBonded
            • QueryAllNominators
            • QueryCounterForValidators
            • QueryCurrentEra
            • QueryEraValidatorReward
            • QueryErasRewardPoints
            • QueryErasTotalStake
            • QueryLedger
            • QueryNominatorCount
            • QueryValidatorCommission
            • QueryValidatorsCount
            • QueryeErasStakers
            • QueryeNominators
          • StorageHandler
            • QueryPurchasedSpace
            • QueryTotalIdleSpace
            • QueryTotalServiceSpace
            • QueryUnitPrice
            • QueryTerritory
            • QueryConsignment
            • MintTerritory
            • ExpandingTerritory
            • RenewalTerritory
            • ReactivateTerritory
            • TerritoryConsignment
            • CancelConsignment
            • BuyConsignment
            • CancelPurchaseAction
          • System
            • QueryAccountInfo
            • QueryAccountInfoByAccountID
            • QueryBlockNumber
          • Tee
            • QueryAllWorkers
            • QueryEndpoints
            • QueryMasterPubKey
            • QueryWorkerAddedAt
            • QueryWorkers
          • RPC Calls
            • ChainGetBlock
            • ChainGetBlockHash
            • ChainGetFinalizedHead
            • NetListening
            • SystemChain
            • SystemProperties
            • SystemSyncState
            • SystemVersion
        • Toolset
      • Javascript SDK
      • Rust SDK
        • Preface
        • chain
          • Audit
            • Challenge Snapshot
            • Counted Clear
            • Counted Service Failed
            • Submit Idle Space Proof
            • Submit Service Proof
            • Submit Verify Idle Result
            • Submit Verify Service Result
          • File Bank
            • Bucket
            • Clear User List
            • deal Map
            • File
            • Restoral Order
            • User Bucket List
            • User Hold File List
            • Calculate Report
            • Certify Idle Space
            • Claim Restoral Noexist Order
            • Claim Restoral Order
            • Create Bucket
            • Delete Bucket
            • Delete File
            • Generate Restoral Order
            • Replace Idle Space
            • Restoral Order Complete
            • Territory File Delivery
            • Transfer Report
            • Upload Declaration
          • Oss
            • Authority List
            • Oss
            • Authorize
            • Cancel Authorize
            • Destroy
            • Register
            • Update
          • Storage Handler
            • Consignment
            • Pay Order
            • Purchased Space
            • Territory Expired
            • Territory Frozen Counter
            • Territory Frozen
            • Territory
            • Territory Key
            • Total Power
            • Total Space
            • Unit Price
            • Buy Consignment
            • Cancel Consignment
            • Cancel Purchase Action
            • Create Order
            • Expand Territory
            • Mint Territory
            • Reactivate Territory
            • Renew Territory
            • Territory Consignment
            • Territory Grants
            • Territory Rename
    • Smart Contract
      • Issue ERC20
      • Deploy an ink! Smart Contract
      • Deploy a Solidity Smart Contract
      • Build a Proof of Existence dApp (ink!)
      • Build a NFT Marketplace (ink!)
      • Build a Proof of Existence dApp (Solidity)
    • Advanced Guides
      • Substrate and EVM Address Conversion
      • Commonly Used Libs
      • CESS Code Overview
  • 📱CESS Products
    • DeOSS
      • Introduction
      • Technical Highlights
      • Architecture
      • Data Access Process
      • API Description
        • Prerequisites
        • Identity Signature
        • Upload File/Object
        • Range Upload
        • Download File
        • Preview File
        • Delete File
        • View File Metadata
        • View Version
  • 📚References
    • 📚Node Operations
      • Running RPC Node
    • 📚In-depth Technical Features
      • R²S
      • RRC
      • LBSS
    • Data Lifecycle
      • Data Upload
      • Data Download
      • Data Deletion
      • Data Restore
      • Data Audit
    • Distributed Storage
      • Identification
      • Consistency Guarantee
      • Node Discovery
      • Message Protocol
      • Storage Method
    • DePIN
      • The DePIN Portrait
    • AI
      • CESS: The Future of Decentralized Data Infrastructure for the AI-Driven World
      • Decentralized Solutions for AI: How CESS is Shaping a Trusted Future
      • CESS in CES: Insights from Jensen Huang’s CES 2025 Speech and CESS Network’s Role in the AI Era
      • CESS AI Agent Hub: The Intelligent Portal of the AI Times
  • 📖Glossary
Powered by GitBook
On this page
  • Overall
  • Preparation
  • Add CESS Network to MetaMask
  • Convert the Substrate Address to an EVM Address
  • Fund the Account
  • Validate the Fund
  • Deploy a Contract Using Remix IDE
  • Transfer Tokens to the CESS Account
  • Withdraw Balances to the CESS Account

Was this helpful?

Edit on GitHub
  1. Developers
  2. Smart Contract

Deploy a Solidity Smart Contract

Last updated 9 months ago

Was this helpful?

Overall

In this tutorial, we will learn how to deploy a on the CESS blockchain. Solidity smart contracts are widely deployed on EVM-compatible chains, notably Ethereum. CESS blockchain is also EVM-compatible and allows Solidity developers to deploy their contracts on CESS with no or minimal changes.

Preparation

You will need the following to deploy a Solidity smart contract to CESS.

  • MetaMask: Required to get an Ethereum address and to connect to the CESS chain

  • CESS Acount: Refer to on how to create a CESS account and on getting testnet tokens from our faucet.

  • Remix IDE: Access to to develop, compile, and deploy smart contracts to the chain

  • Access to CESS Node: Make sure the node allows access from MetaMask.

The following steps will guide you to deploy a Solidity contract on the CESS testnet.

This tutorial involves working with the EVM in CESS test-chain. You will understand better if you understand the reasoning and mechanism behind the .

Add CESS Network to MetaMask

Open the MetaMask setting tab, click on the Networks tab, click on Add a network and then Add a network manually.

On Add a network manually page, enter the following details:

  • Network Name: CESS Testnet

  • New RPC URL, one of the following:

  • Chain ID: 11330

  • Currency Symbol: TCESS

Convert the Substrate Address to an EVM Address

Copy the account address from MetaMask.

Input the following:

  • Current Address Scheme: H160

  • Change Address Prefix: *11330

  • Intput address: your metamask account

  • Copy the account address starting with "cX.."

Get the EVM address output.

Fund the Account

Validate the Fund

To validate the funds are in the Ethereum account, open MetaMask and check that account has the funds transferred

Deploy a Contract Using Remix IDE

In File explorer, open the smart contract you wish to compile and then deploy.

Once the file is selected, go to tab Solidity Compiler, you should see the selected file, press the Compile button to compile the contract. Once compiled, you’ll see the "green tick" mark and compiled (*.sol) file.

Go to Deploy and run Transactions, once the compilation is successful, you should see the compiled *.sol file selected, ready to be deployed. In the Environments drop-down, select Injected Provider - MetaMask and click deploy.

When you click Deploy, you will need to confirm in MetaMask to allow Remix to access the account and submit the transaction.

Click Confirm to submit the transaction to deploy the smart contract.

After the transaction is deployed and processed on-chain, you’ll see the following message.

In the Deployed Contracts section in the Remix, you can call the function of the smart contract.

Transfer Tokens to the CESS Account

Copy the Ethereum equivalent address and use MetaMask to transfer fund.

Withdraw Balances to the CESS Account

To withdraw the balance from the Ethereum account to CESS account, follow the route Developer => Extrinsics => evm => withdraw.

Validate the balances in Accounts tab of CESS Explorer.

Open the page to .

Using Accounts -> Transfer to transfer some balance to the Substrate address output above. For testnet goto to get fund drip into this Substrate address.

You can use one of the .

Open and go to File explorer.

Convert the Substrate address to Ethereum account address using the link .

Transfer Fund in Metamask 1

Transfer Fund in Metamask 2

Confirm the balance in the . Use the Ethereum address in previous step.

💻
https://testnet-rpc.cess.network/ws/
Substrate Address Converter
CESS Explorer
testnet faucet
sample Solidity smart contract codes here
Remix IDE
Substrate Address Converter
CESS Explorer: Developer RPC calls
Solidity Smart Contract
this article
this article
Remix IDE
Subtrate and EVM address conversion
Metamask: Adding a Network
Metamask: Adding CESS Testnet
Metamask: My Account
Substrate Address Converter
CESS Explorer: Transfer Amount
Metamask: Check My Account
Remix: Deploy a Contract
Remix: Contract Compiled
Remix: Deploy Contract to CESS
Metamask: Confirm Deploy Transaction
Remix: Deployment Succeeded
Remix: Interact with the Contract
Substrate-EVM Address Converter
CESS Explorer: Get Balance
CESS Explorer: Sending evm:withdraw Transaction
CESS Explorer: Account Updated