<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Developers Forum for XinFin XDC Network: Omkar Mestry</title>
    <description>The latest articles on Developers Forum for XinFin XDC Network by Omkar Mestry (@omkar_mestry_737f5f43d6e1).</description>
    <link>https://www.xdc.dev/omkar_mestry_737f5f43d6e1</link>
    <image>
      <url>https://www.xdc.dev/images/LbSRj9JekfsBYcuwXACjMbDr-6K8t17xNZBQUlhw6m4/rs:fill:90:90/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL3VzZXIvcHJv/ZmlsZV9pbWFnZS8x/Ni83ZTQ4NTRhNS0y/OWZkLTQyNGMtODZk/NC03ZGYxM2UyMDNl/YzEuanBn</url>
      <title>Developers Forum for XinFin XDC Network: Omkar Mestry</title>
      <link>https://www.xdc.dev/omkar_mestry_737f5f43d6e1</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://www.xdc.dev/feed/omkar_mestry_737f5f43d6e1"/>
    <language>en</language>
    <item>
      <title>Using the XDC Network RPC: A Practical Guide for Developers, Wallets, and Integrations</title>
      <dc:creator>Omkar Mestry</dc:creator>
      <pubDate>Tue, 28 Apr 2026 13:12:21 +0000</pubDate>
      <link>https://www.xdc.dev/omkar_mestry_737f5f43d6e1/using-the-xdc-network-rpc-a-practical-guide-for-developers-wallets-and-integrations-2jhm</link>
      <guid>https://www.xdc.dev/omkar_mestry_737f5f43d6e1/using-the-xdc-network-rpc-a-practical-guide-for-developers-wallets-and-integrations-2jhm</guid>
      <description>&lt;p&gt;If you are building on, integrating with, or transacting on the XDC Network, you will need an RPC endpoint. RPC (Remote Procedure Call) is the URL your wallet, dApp, or backend uses to read from and write to the blockchain. Without it, your software cannot talk to the network.&lt;/p&gt;

&lt;p&gt;The two canonical lists of XDC RPC providers are on Chainlist:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Mainnet (Chain ID 50, native asset XDC):&lt;/strong&gt; &lt;code&gt;https://chainlist.org/chain/50&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Apothem Testnet (Chain ID 51, native asset TXDC):&lt;/strong&gt; &lt;code&gt;https://chainlist.org/chain/51&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Anyone developer, exchange, custodian, dApp team, or end user can pick any of the endpoints listed there. No permission needed; just a working URL.&lt;/p&gt;

&lt;h2&gt;
  
  
  XDC Mainnet RPC providers (Chain ID 50)
&lt;/h2&gt;

&lt;p&gt;Widely used public HTTP endpoints:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;code&gt;https://rpc.xinfin.network&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;https://rpc1.xinfin.network&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;https://erpc.xinfin.network&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;https://earpc.xinfin.network&lt;/code&gt; (archive endpoint)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;https://rpc.xdc.org&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;https://rpc.xdc.network&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;https://rpc.xdcrpc.com&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;https://erpc.xdcrpc.com&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;WebSocket endpoints:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;code&gt;wss://rpc.xdcrpc.com/ws&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;wss://erpc.xdcrpc.com/ws&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;wss://ews.xinfin.network/ws&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Established commercial RPC-as-a-service providers also expose XDC Mainnet endpoints, including &lt;strong&gt;Ankr&lt;/strong&gt;, &lt;strong&gt;Tatum&lt;/strong&gt;, and &lt;strong&gt;Dwellir&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  XDC Apothem Testnet RPC providers (Chain ID 51)
&lt;/h2&gt;

&lt;p&gt;Use Apothem for development and testing. Test TXDC is free from the faucets at &lt;code&gt;https://faucet.apothem.network&lt;/code&gt; and &lt;code&gt;https://faucet.blocksscan.io&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;HTTP endpoints:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;code&gt;https://rpc.apothem.network&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;https://erpc.apothem.network&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;https://apothem.xdcrpc.com&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;WebSocket endpoint:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;code&gt;wss://ws.apothem.network&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  "Free" public RPCs are not really free at scale
&lt;/h2&gt;

&lt;p&gt;Every RPC endpoint public or commercial has rate limits. Public/community URLs are fine for development, wallets, and light-traffic apps. Once your application starts generating real load, you will hit throttling, timeouts, or outright blocking.&lt;/p&gt;

&lt;p&gt;Commercial providers expose the same trade-off explicitly: a free tier with a hard request cap, then paid tiers above it. As a reference point, Ankr's freemium tier on XDC has historically been around 30 requests/sec, with paid premium going up to ~1,500 req/sec at roughly USD $0.02 per 1,000 requests — cheap on a unit-cost basis, but it scales with your call volume. Verify current pricing on the provider's site before committing.&lt;/p&gt;

&lt;p&gt;There is no genuinely free, unlimited, production-grade RPC  for XDC or any other major chain.&lt;/p&gt;

&lt;h2&gt;
  
  
  How RPC is actually provided on a decentralised network
&lt;/h2&gt;

&lt;p&gt;XDC is decentralised, so there is no single "official" RPC. Anyone who can run a node can expose an endpoint, which is why the Chainlist directory grows over time. In practice, RPC reaches end users through four layers:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Public/community endpoints&lt;/strong&gt; — free, rate-limited, no SLA. Good for development and low-traffic use.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Commercial RPC-as-a-service&lt;/strong&gt; (Ankr, Tatum, Dwellir, etc.) — free tiers for moderate use, paid tiers for production volume, optional dedicated managed nodes (e.g. archive nodes) for institutions.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Projects building on XDC providing RPC to their own customers&lt;/strong&gt; as part of their product — either by running their own infrastructure or by routing customers to a commercial provider.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Self-hosted nodes&lt;/strong&gt; — run by exchanges, custodians, indexers, and any team for whom XDC is core infrastructure.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The reason the market is layered like this is simple: someone has to fund and maintain the servers. A single free, unlimited, ultra-reliable public RPC would attract everyone, saturate, and stop being reliable. The layered market is how that catch-22 gets resolved in practice.&lt;/p&gt;

&lt;h2&gt;
  
  
  Run your own RPC node, the right call for serious users
&lt;/h2&gt;

&lt;p&gt;For institutions and any project that depends on XDC for core operations, the right answer is to run your own node. The setup is well documented and the hardware needs are modest.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why it matters:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;No rate limits&lt;/strong&gt; — you control throughput.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Privacy&lt;/strong&gt; — your queries and transaction broadcasts stay inside your own network.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Latency&lt;/strong&gt; — a node in your own VPC is materially faster than any external endpoint.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;No vendor lock-in&lt;/strong&gt; — no third-party outage, throttling, or pricing change can take you down.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Predictable cost&lt;/strong&gt; — pay for hardware and bandwidth, not per request.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;This should be a baseline requirement, not an optimisation, for:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Exchanges (CEX and DEX), custodians, and institutional wallet providers&lt;/li&gt;
&lt;li&gt;Banks, payment processors, and regulated entities&lt;/li&gt;
&lt;li&gt;Block explorers, analytics platforms, and indexers&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Setup resources:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Dedicated/private RPC server setup guide:&lt;/strong&gt; &lt;code&gt;https://www.xdc.dev/ruslan_wing/setting-up-an-rpc-node-server-for-your-dapp-on-xdc-network-a-comprehensive-guide-3dm9&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Full-node repository:&lt;/strong&gt; &lt;code&gt;https://github.com/XinFinOrg/XinFin-Node&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;XDC documentation:&lt;/strong&gt; &lt;code&gt;https://docs.xdc.network&lt;/code&gt; and &lt;code&gt;https://docs.xdc.community&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A standard production setup is two full nodes behind a load balancer plus a separate archive node for historical queries, with monitoring on sync status, peer count, and disk health.&lt;/p&gt;

&lt;h2&gt;
  
  
  When you need RPC, and when you don't
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;A &lt;strong&gt;centralised trading system&lt;/strong&gt; does not need RPC for its core matching engine. Trades are off-chain, inside the exchange's own systems. RPC only matters at deposit and withdrawal edges.&lt;/li&gt;
&lt;li&gt;A &lt;strong&gt;decentralised exchange (DEX)&lt;/strong&gt; lives on-chain. Every swap and quote depends on RPC, and RPC quality directly drives user experience.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Recommendations
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Development and testing&lt;/strong&gt; — use Apothem with the public RPC URLs above.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Small production app or wallet&lt;/strong&gt; — public Mainnet endpoints with fallback logic across two or three URLs; move to a paid commercial plan as traffic grows.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Exchanges, custodians, wallet providers, banks, and core-XDC operations&lt;/strong&gt; — run your own RPC node. Treat it as required infrastructure.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  FAQ
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;What is an RPC, in plain English?&lt;/strong&gt;&lt;br&gt;
A URL your software uses to read from and write to the blockchain. Without it, your application has no way of seeing or interacting with the chain.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Mainnet (50) vs Apothem (51)?&lt;/strong&gt;&lt;br&gt;
Mainnet uses real XDC. Apothem uses free test TXDC. Use Apothem for development; Mainnet for production.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;HTTP vs WebSocket (&lt;code&gt;wss://&lt;/code&gt;)?&lt;/strong&gt;&lt;br&gt;
HTTP is request-response — fine for normal reads and writes. WebSocket keeps a connection open and lets you subscribe to events (new blocks, contract logs) in real time — needed for trading bots, indexers, and live dashboards.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Do I need an archive node?&lt;/strong&gt;&lt;br&gt;
Only if you need to query historical state — explorers, analytics, audit/accounting systems. Most apps don't.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How much does paid commercial RPC cost?&lt;/strong&gt;&lt;br&gt;
Cheap per request (around $0.02 per 1,000 on Ankr's premium tier historically), but total cost scales with your call volume. Always check the provider's current pricing.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why doesn't the XDC Network just provide one definitive RPC?&lt;/strong&gt;&lt;br&gt;
Doing so means running an operating business with capacity, support, and liability obligations. It is also self-defeating: a single free, reliable, unlimited RPC would be used by everyone and saturate. The layered market — community, commercial, self-hosted — is how decentralised networks solve this in practice.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What if my public RPC goes down?&lt;/strong&gt;&lt;br&gt;
Reads time out, transactions fail to broadcast. Production apps should run their own node or, at minimum, keep a list of fallback URLs and rotate on failure.&lt;/p&gt;




&lt;p&gt;The full and most current list of providers is always on Chainlist:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Mainnet: &lt;code&gt;https://chainlist.org/chain/50&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Apothem: &lt;code&gt;https://chainlist.org/chain/51&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>rpc</category>
      <category>xdc</category>
      <category>xdcnetwork</category>
      <category>decentralized</category>
    </item>
    <item>
      <title>How to Integrate XDC Network: A Technical Guide</title>
      <dc:creator>Omkar Mestry</dc:creator>
      <pubDate>Thu, 23 Apr 2026 08:44:46 +0000</pubDate>
      <link>https://www.xdc.dev/omkar_mestry_737f5f43d6e1/how-to-integrate-xdc-network-a-technical-guide-56e0</link>
      <guid>https://www.xdc.dev/omkar_mestry_737f5f43d6e1/how-to-integrate-xdc-network-a-technical-guide-56e0</guid>
      <description>&lt;h1&gt;
  
  
  How to Integrate XDC Network: A Technical Guide
&lt;/h1&gt;

&lt;p&gt;A complete technical walkthrough for integrating the XDC Network into custodial wallets, exchanges, and any backend application.&lt;/p&gt;

&lt;p&gt;If your team is already building on EVM chains like Ethereum, Polygon, or BNB Chain, integrating XDC will feel familiar — it's fully EVM-compatible, forked from go-ethereum, and runs the same tooling (Ethers.js, Web3.py, Hardhat, Truffle, MetaMask). The main thing to watch for is the &lt;code&gt;xdc&lt;/code&gt; address prefix, which we'll cover in detail.&lt;/p&gt;

&lt;p&gt;Let's dive in.&lt;/p&gt;




&lt;h2&gt;
  
  
  1. Overview
&lt;/h2&gt;

&lt;p&gt;The XDC Network is an enterprise-grade, EVM-compatible Layer-1 blockchain using &lt;strong&gt;XDC 2.0 consensus&lt;/strong&gt; (an evolution of XinFin Delegated Proof-of-Stake). It's purpose-built for tokenized trade finance, real-world asset (RWA) settlement, and cross-border payments.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Key stats:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;~2-second block times&lt;/li&gt;
&lt;li&gt;Sub-cent gas fees (often &amp;lt; $0.0001 per transfer)&lt;/li&gt;
&lt;li&gt;Up to 108 masternodes securing finality&lt;/li&gt;
&lt;li&gt;ISO 20022 messaging support&lt;/li&gt;
&lt;li&gt;R3 Corda interoperability&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Because XDC is EVM-compatible, most Ethereum tooling works out-of-the-box. The only material difference a custodian or application must handle is the address prefix: XDC natively uses an &lt;code&gt;xdc&lt;/code&gt; prefix in place of &lt;code&gt;0x&lt;/code&gt;, while the underlying address bytes are identical.&lt;/p&gt;




&lt;h2&gt;
  
  
  2. Network Parameters
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Mainnet
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Parameter&lt;/th&gt;
&lt;th&gt;Value&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Network Name&lt;/td&gt;
&lt;td&gt;XDC Network&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Chain ID&lt;/td&gt;
&lt;td&gt;&lt;code&gt;50&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Native Currency&lt;/td&gt;
&lt;td&gt;XDC&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Block Time&lt;/td&gt;
&lt;td&gt;~2 seconds&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Consensus&lt;/td&gt;
&lt;td&gt;XDC 2.0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Min Gas Price&lt;/td&gt;
&lt;td&gt;0.25 Gwei&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Public RPC&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;https://rpc.xinfin.network&lt;/code&gt; &lt;br&gt; &lt;code&gt;https://rpc.xdc.org&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;WebSocket&lt;/td&gt;
&lt;td&gt;&lt;code&gt;wss://ws.xinfin.network&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Block Explorer&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;https://www.xdcscan.com&lt;/code&gt; &lt;br&gt; &lt;code&gt;https://www.xdcscan.io&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  Apothem Testnet
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Parameter&lt;/th&gt;
&lt;th&gt;Value&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Network Name&lt;/td&gt;
&lt;td&gt;XDC Apothem Network&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Chain ID&lt;/td&gt;
&lt;td&gt;&lt;code&gt;51&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Native Currency&lt;/td&gt;
&lt;td&gt;TXDC&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Block Time&lt;/td&gt;
&lt;td&gt;~2 seconds&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Consensus&lt;/td&gt;
&lt;td&gt;XDC 2.0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Min Gas Price&lt;/td&gt;
&lt;td&gt;0.25 Gwei&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Public RPC&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;https://rpc.apothem.network&lt;/code&gt; &lt;br&gt; &lt;code&gt;https://erpc.apothem.network&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;WebSocket&lt;/td&gt;
&lt;td&gt;&lt;code&gt;wss://ws.apothem.network&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Block Explorer&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;https://testnet.xdcscan.com&lt;/code&gt; &lt;br&gt; &lt;code&gt;https://apothem.xdcscan.io&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Faucet&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;https://faucet.apothem.network&lt;/code&gt; &lt;br&gt; &lt;code&gt;https://faucet.blocksscan.io&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Production tip:&lt;/strong&gt; Run your own full node or subscribe to a commercial RPC provider (Ankr, GetBlock, Thirdweb, NOWNodes) for production. Public endpoints are fine for development but have rate limits and no SLA.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  3. Address Format (Critical)
&lt;/h2&gt;

&lt;p&gt;This is the one thing that trips up every new integrator, so read this section carefully.&lt;/p&gt;

&lt;p&gt;XDC addresses are &lt;strong&gt;semantically identical&lt;/strong&gt; to Ethereum addresses — derived via secp256k1 key generation and Keccak-256 hashing, producing a 20-byte (40 hex character) address. The only difference is the prefix:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;XDC-native display&lt;/strong&gt; uses &lt;code&gt;xdc&lt;/code&gt; → &lt;code&gt;xdcA4e66f4Cc17752f331eaC6A20C00756156719519&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;EVM-native display&lt;/strong&gt; uses &lt;code&gt;0x&lt;/code&gt; → &lt;code&gt;0xA4e66f4Cc17752f331eaC6A20C00756156719519&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The 40 hex characters after the prefix are &lt;strong&gt;always identical&lt;/strong&gt;. Only the 2-character prefix swaps.&lt;/p&gt;

&lt;h3&gt;
  
  
  Conversion Rules
&lt;/h3&gt;

&lt;p&gt;Normalize addresses at your I/O boundary:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Internally&lt;/strong&gt;, store and sign using the &lt;code&gt;0x&lt;/code&gt; form — required by all Ethereum libraries (ethers.js, web3.js, etc.).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;On input&lt;/strong&gt;, if a user pastes an &lt;code&gt;xdc&lt;/code&gt;-prefixed address, strip &lt;code&gt;xdc&lt;/code&gt; and prepend &lt;code&gt;0x&lt;/code&gt; before signing or submitting.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;On output&lt;/strong&gt; (deposit addresses shown to users, explorer links, confirmations), display in &lt;code&gt;xdc&lt;/code&gt; form for XDC ecosystem conformity.&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Address Conversion Utility
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// Minimal address conversion helper (JavaScript / TypeScript)&lt;/span&gt;

&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nx"&gt;toEvm&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;address&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;!&lt;/span&gt;&lt;span class="nx"&gt;address&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;address&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;address&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;toLowerCase&lt;/span&gt;&lt;span class="p"&gt;().&lt;/span&gt;&lt;span class="nx"&gt;startsWith&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;xdc&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;0x&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nx"&gt;address&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;slice&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
  &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;address&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nx"&gt;toXdc&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;address&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;!&lt;/span&gt;&lt;span class="nx"&gt;address&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;address&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;address&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;toLowerCase&lt;/span&gt;&lt;span class="p"&gt;().&lt;/span&gt;&lt;span class="nx"&gt;startsWith&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;0x&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;xdc&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nx"&gt;address&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;slice&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
  &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;address&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nx"&gt;isValidXdcAddress&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;address&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;evm&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;toEvm&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;address&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="sr"&gt;/^0x&lt;/span&gt;&lt;span class="se"&gt;[&lt;/span&gt;&lt;span class="sr"&gt;a-fA-F0-9&lt;/span&gt;&lt;span class="se"&gt;]{40}&lt;/span&gt;&lt;span class="sr"&gt;$/&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;test&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;evm&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;p&gt;⚠️ &lt;strong&gt;Signed transactions must always use the &lt;code&gt;0x&lt;/code&gt; form internally.&lt;/strong&gt; The &lt;code&gt;xdc&lt;/code&gt; prefix is a display convention — the JSON-RPC node and the EVM itself operate on raw 20-byte addresses.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  4. Prerequisites
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Node.js 18+ (or Python 3.10+, Go 1.21+, Java 11+ — whichever matches your stack)&lt;/li&gt;
&lt;li&gt;Ethers.js v6 or Web3.js v4 (or language-equivalent SDK)&lt;/li&gt;
&lt;li&gt;Access to an RPC endpoint (self-hosted full node or commercial provider)&lt;/li&gt;
&lt;li&gt;A secure key management system (HSM, KMS, or MPC) for custodial signing&lt;/li&gt;
&lt;li&gt;Test funds from the Apothem faucet for testnet validation&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  5. Integration Architecture
&lt;/h2&gt;

&lt;p&gt;A typical custodial integration has four components:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Node / RPC Layer&lt;/strong&gt; — a full node or commercial RPC for reading chain state, estimating gas, and broadcasting transactions.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Block Indexer&lt;/strong&gt; — a worker service that follows the chain head (with confirmations), detects deposits to custodied addresses, and records balances.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Signing Service&lt;/strong&gt; — an isolated service (HSM/KMS/MPC) that constructs, signs, and submits withdrawal transactions. &lt;strong&gt;Never exposes private keys to the application layer.&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;API Layer&lt;/strong&gt; — the user-facing REST/GraphQL interface. Responsible for address format normalization.&lt;/li&gt;
&lt;/ol&gt;




&lt;h2&gt;
  
  
  6. Integration Steps
&lt;/h2&gt;

&lt;h3&gt;
  
  
  6.1 Connect to the Network
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Ethers.js v6:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;JsonRpcProvider&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;ethers&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;provider&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nx"&gt;JsonRpcProvider&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;https://rpc.xinfin.network&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;xdc&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="na"&gt;chainId&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;50&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;blockNumber&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;provider&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;getBlockNumber&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Latest block:&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;blockNumber&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Web3.py:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="kn"&gt;from&lt;/span&gt; &lt;span class="nn"&gt;web3&lt;/span&gt; &lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;Web3&lt;/span&gt;

&lt;span class="n"&gt;w3&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;Web3&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;Web3&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;HTTPProvider&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;'https://rpc.xinfin.network'&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;
&lt;span class="k"&gt;assert&lt;/span&gt; &lt;span class="n"&gt;w3&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;is_connected&lt;/span&gt;&lt;span class="p"&gt;(),&lt;/span&gt; &lt;span class="s"&gt;'RPC connection failed'&lt;/span&gt;
&lt;span class="k"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;'Chain ID:'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;w3&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;eth&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;chain_id&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;        &lt;span class="c1"&gt;# 50
&lt;/span&gt;&lt;span class="k"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;'Latest block:'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;w3&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;eth&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;block_number&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  6.2 Generate a Deposit Address
&lt;/h3&gt;

&lt;p&gt;For each user account, derive a fresh address using standard EVM wallet derivation (BIP-39 mnemonic + BIP-44 path). XDC's registered SLIP-44 coin type is &lt;code&gt;550&lt;/code&gt;, though many integrations reuse Ethereum's &lt;code&gt;60&lt;/code&gt;.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;Mnemonic&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;HDNodeWallet&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;ethers&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;mnemonic&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;Mnemonic&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;fromPhrase&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;process&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;env&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;SEED_PHRASE&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;root&lt;/span&gt;     &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;HDNodeWallet&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;fromMnemonic&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;mnemonic&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;m/44'/550'/0'/0&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;account&lt;/span&gt;  &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;root&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;deriveChild&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;userIndex&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;evmAddress&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;account&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;address&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;              &lt;span class="c1"&gt;// 0x...&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;xdcAddress&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;xdc&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nx"&gt;evmAddress&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;slice&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;  &lt;span class="c1"&gt;// xdc... (for display)&lt;/span&gt;

&lt;span class="c1"&gt;// Persist { userId, derivationIndex, xdcAddress }&lt;/span&gt;
&lt;span class="c1"&gt;// NEVER persist the private key — derive on demand from the HSM-held seed&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  6.3 Monitor Deposits
&lt;/h3&gt;

&lt;p&gt;Poll or subscribe to new blocks. For each block, iterate transactions and match the &lt;code&gt;to&lt;/code&gt; field (or XRC-20 &lt;code&gt;Transfer&lt;/code&gt; log topic) against your indexed deposit addresses. Wait for &lt;strong&gt;at least 10–15 confirmations&lt;/strong&gt; on mainnet before crediting.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;provider&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;on&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;block&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;async&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;blockNumber&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;block&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;provider&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;getBlock&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;blockNumber&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;tx&lt;/span&gt; &lt;span class="k"&gt;of&lt;/span&gt; &lt;span class="nx"&gt;block&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;prefetchedTransactions&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;watchedAddresses&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;has&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;tx&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;to&lt;/span&gt;&lt;span class="p"&gt;?.&lt;/span&gt;&lt;span class="nx"&gt;toLowerCase&lt;/span&gt;&lt;span class="p"&gt;()))&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
      &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;enqueueDepositConfirmation&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;tx&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;hash&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;blockNumber&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  6.4 Process Withdrawals
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;tx&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="na"&gt;to&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;       &lt;span class="nx"&gt;toEvm&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;userProvidedAddress&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;   &lt;span class="c1"&gt;// accept xdc... or 0x...&lt;/span&gt;
  &lt;span class="na"&gt;value&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;    &lt;span class="nx"&gt;ethers&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;parseEther&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;10.5&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;    &lt;span class="c1"&gt;// 10.5 XDC&lt;/span&gt;
  &lt;span class="na"&gt;gasLimit&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;21000&lt;/span&gt;&lt;span class="nx"&gt;n&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="na"&gt;gasPrice&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;ethers&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;parseUnits&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;0.25&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;gwei&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;  &lt;span class="c1"&gt;// XDC minimum&lt;/span&gt;
  &lt;span class="na"&gt;chainId&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;  &lt;span class="mi"&gt;50&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="na"&gt;nonce&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;    &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;provider&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;getTransactionCount&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;hotWalletAddress&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="p"&gt;};&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;signed&lt;/span&gt;   &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;signer&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;signTransaction&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;tx&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;     &lt;span class="c1"&gt;// signer = HSM/KMS&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;response&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;provider&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;broadcastTransaction&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;signed&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;receipt&lt;/span&gt;  &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;wait&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;12&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;              &lt;span class="c1"&gt;// 12 confirmations&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  6.5 XRC-20 Token Transfers
&lt;/h3&gt;

&lt;p&gt;XRC-20 is &lt;strong&gt;functionally identical to ERC-20&lt;/strong&gt; — same ABI, same &lt;code&gt;Transfer(address,address,uint256)&lt;/code&gt; event signature, same allowance model. Your existing ERC-20 code works unchanged.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;erc20Abi&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;
  &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;function balanceOf(address) view returns (uint256)&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;function decimals() view returns (uint8)&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;function symbol() view returns (string)&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;function transfer(address to, uint256 amount) returns (bool)&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;event Transfer(address indexed from, address indexed to, uint256 value)&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
&lt;span class="p"&gt;];&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;token&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nx"&gt;ethers&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;Contract&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;tokenContractAddress&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;erc20Abi&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;signer&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;decimals&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;token&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;decimals&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;amount&lt;/span&gt;   &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;ethers&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;parseUnits&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;100&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;decimals&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;tx&lt;/span&gt;       &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;token&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;transfer&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;toEvm&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;recipient&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt; &lt;span class="nx"&gt;amount&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;tx&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;wait&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;12&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  7. Token Standards
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Standard&lt;/th&gt;
&lt;th&gt;Equivalent To&lt;/th&gt;
&lt;th&gt;Use Case&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;XRC-20&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;ERC-20&lt;/td&gt;
&lt;td&gt;Fungible tokens, stablecoins, utility tokens&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;XRC-721&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;ERC-721&lt;/td&gt;
&lt;td&gt;Non-fungible tokens (NFTs), unique assets&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;XRC-1155&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;ERC-1155&lt;/td&gt;
&lt;td&gt;Multi-token contracts (fungible + NFT in one)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;All three standards are &lt;strong&gt;byte-for-byte compatible&lt;/strong&gt; with their ERC counterparts at the ABI level. OpenZeppelin contracts compile and deploy unchanged.&lt;/p&gt;




&lt;h2&gt;
  
  
  8. Gas and Fee Handling
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Mainnet &lt;strong&gt;minimum gas price is 0.25 Gwei&lt;/strong&gt; — below this, transactions stay pending indefinitely.&lt;/li&gt;
&lt;li&gt;Standard native XDC transfer = 21,000 gas (~0.00000525 XDC, typically under $0.0001).&lt;/li&gt;
&lt;li&gt;XRC-20 transfers = ~50,000–65,000 gas depending on contract implementation.&lt;/li&gt;
&lt;li&gt;Use &lt;code&gt;eth_estimateGas&lt;/code&gt; for contract calls; add a 10–20% safety buffer.&lt;/li&gt;
&lt;li&gt;Always verify receipt &lt;code&gt;status == 1&lt;/code&gt; — a receipt alone doesn't mean the tx succeeded.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  9. Security Considerations
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Store signing keys &lt;strong&gt;exclusively in HSM, cloud KMS (AWS/GCP/Azure), or MPC custody&lt;/strong&gt;. Never plaintext keys in memory or config files.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Segregate hot/warm/cold wallets&lt;/strong&gt; — keep no more than operational float (~5% of AUM) in any hot wallet.&lt;/li&gt;
&lt;li&gt;Enforce &lt;strong&gt;withdrawal-address allowlisting&lt;/strong&gt; and velocity limits per user and per time window.&lt;/li&gt;
&lt;li&gt;Require &lt;strong&gt;multi-party approval&lt;/strong&gt; for treasury movement above a threshold.&lt;/li&gt;
&lt;li&gt;Wait &lt;strong&gt;12–15 confirmations&lt;/strong&gt; before crediting mainnet deposits; &lt;strong&gt;20+&lt;/strong&gt; for high-value.&lt;/li&gt;
&lt;li&gt;Reject deposits sent to contracts you don't control — credit only to externally-owned addresses you've derived.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Always validate &lt;code&gt;chainId == 50&lt;/code&gt;&lt;/strong&gt; on signed transactions to prevent cross-chain replay.&lt;/li&gt;
&lt;li&gt;Monitor for chain reorgs — rare on XDC 2.0, but confirmation-depth buffers protect against edge cases.&lt;/li&gt;
&lt;li&gt;Rate-limit RPC calls and implement automatic failover between multiple providers.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  10. Testing Checklist (Apothem Testnet)
&lt;/h2&gt;

&lt;p&gt;Complete every item on Apothem &lt;strong&gt;before&lt;/strong&gt; moving to mainnet:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;[ ] Connect to Apothem RPC, confirm &lt;code&gt;chainId == 51&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;[ ] Request TXDC from the faucet to test hot wallet&lt;/li&gt;
&lt;li&gt;[ ] Generate 5+ deterministic deposit addresses; verify &lt;code&gt;xdc&lt;/code&gt; ↔ &lt;code&gt;0x&lt;/code&gt; conversion is lossless&lt;/li&gt;
&lt;li&gt;[ ] Send a test deposit; confirm detection, credit at correct confirmation depth, correct user mapping&lt;/li&gt;
&lt;li&gt;[ ] Execute a native TXDC withdrawal; verify status, nonce handling, on-chain balance&lt;/li&gt;
&lt;li&gt;[ ] Deploy or use an existing XRC-20 test token; run full deposit + withdrawal flow&lt;/li&gt;
&lt;li&gt;[ ] Simulate RPC outage; confirm failover to secondary provider&lt;/li&gt;
&lt;li&gt;[ ] Simulate incorrect-prefix input (&lt;code&gt;0x&lt;/code&gt; in &lt;code&gt;xdc&lt;/code&gt; field and vice versa); confirm normalization&lt;/li&gt;
&lt;li&gt;[ ] Simulate below-minimum-gas tx; confirm graceful rejection&lt;/li&gt;
&lt;li&gt;[ ] Run a 24-hour soak test at representative transaction volume&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  11. Sample RPC Calls
&lt;/h2&gt;

&lt;h3&gt;
  
  
  eth_chainId
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;curl &lt;span class="nt"&gt;-X&lt;/span&gt; POST https://rpc.xinfin.network &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-H&lt;/span&gt; &lt;span class="s2"&gt;"Content-Type: application/json"&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-d&lt;/span&gt; &lt;span class="s1"&gt;'{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1}'&lt;/span&gt;

&lt;span class="c"&gt;# -&amp;gt; {"jsonrpc":"2.0","id":1,"result":"0x32"}   (0x32 = 50)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  eth_blockNumber
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;curl &lt;span class="nt"&gt;-X&lt;/span&gt; POST https://rpc.xinfin.network &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-H&lt;/span&gt; &lt;span class="s2"&gt;"Content-Type: application/json"&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-d&lt;/span&gt; &lt;span class="s1"&gt;'{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  eth_getBalance
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;curl &lt;span class="nt"&gt;-X&lt;/span&gt; POST https://rpc.xinfin.network &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-H&lt;/span&gt; &lt;span class="s2"&gt;"Content-Type: application/json"&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-d&lt;/span&gt; &lt;span class="s1"&gt;'{"jsonrpc":"2.0","method":"eth_getBalance",
       "params":["0xA4e66f4Cc17752f331eaC6A20C00756156719519","latest"],
       "id":1}'&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;p&gt;Note: JSON-RPC payloads use &lt;code&gt;0x&lt;/code&gt;, not &lt;code&gt;xdc&lt;/code&gt; — the RPC layer expects standard Ethereum format on the wire.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  12. Official Resources
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Resource&lt;/th&gt;
&lt;th&gt;URL&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Primary Documentation&lt;/td&gt;
&lt;td&gt;&lt;a href="https://docs.xdc.network"&gt;https://docs.xdc.network&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Community Documentation&lt;/td&gt;
&lt;td&gt;&lt;a href="https://docs.xdc.community"&gt;https://docs.xdc.community&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Mainnet Explorer&lt;/td&gt;
&lt;td&gt;
&lt;a href="https://www.xdcscan.com"&gt;https://www.xdcscan.com&lt;/a&gt; &lt;br&gt; &lt;a href="https://www.xdcscan.io"&gt;https://www.xdcscan.io&lt;/a&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Testnet Explorer&lt;/td&gt;
&lt;td&gt;
&lt;a href="https://testnet.xdcscan.com"&gt;https://testnet.xdcscan.com&lt;/a&gt; &lt;br&gt; &lt;a href="https://apothem.xdcscan.io"&gt;https://apothem.xdcscan.io&lt;/a&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Apothem Faucet&lt;/td&gt;
&lt;td&gt;
&lt;a href="https://faucet.apothem.network"&gt;https://faucet.apothem.network&lt;/a&gt; &lt;br&gt; &lt;a href="https://faucet.blocksscan.io"&gt;https://faucet.blocksscan.io&lt;/a&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;GitHub — XinFin Org&lt;/td&gt;
&lt;td&gt;&lt;a href="https://github.com/xinfinorg"&gt;https://github.com/xinfinorg&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;ChainList (Mainnet)&lt;/td&gt;
&lt;td&gt;&lt;a href="https://chainlist.org/chain/50"&gt;https://chainlist.org/chain/50&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;ChainList (Testnet)&lt;/td&gt;
&lt;td&gt;&lt;a href="https://chainlist.org/chain/51"&gt;https://chainlist.org/chain/51&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Developer Forum&lt;/td&gt;
&lt;td&gt;&lt;a href="https://www.xdc.dev"&gt;https://www.xdc.dev&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  Wrapping Up
&lt;/h2&gt;

&lt;p&gt;If you're building an EVM-compatible wallet, exchange, or application, integrating XDC is genuinely one of the fastest onboarding paths you'll find — most of your existing Ethereum stack works unchanged. The three things to get right are:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Address prefix handling&lt;/strong&gt; — normalize at I/O, sign with &lt;code&gt;0x&lt;/code&gt; internally.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Gas pricing&lt;/strong&gt; — respect the 0.25 Gwei minimum.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Testing on Apothem&lt;/strong&gt; — don't skip the checklist.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Got questions or hit a snag during integration? Drop a comment below, open a thread on the &lt;a href="https://www.xdc.dev"&gt;XDC Developer Forum&lt;/a&gt;, or reach out via the official channels. The XDC developer community is active and responsive — you won't be stuck for long.&lt;/p&gt;

&lt;p&gt;Happy building. 🚀&lt;/p&gt;




</description>
      <category>xdcnetwork</category>
      <category>xdc</category>
      <category>buildonxdc</category>
    </item>
    <item>
      <title>Security Update: KYC/KYB Document Accessibility Incident, Fully Resolved.</title>
      <dc:creator>Omkar Mestry</dc:creator>
      <pubDate>Thu, 16 Apr 2026 14:27:58 +0000</pubDate>
      <link>https://www.xdc.dev/omkar_mestry_737f5f43d6e1/security-update-kyckyb-document-accessibility-incident-fully-resolved-1lb3</link>
      <guid>https://www.xdc.dev/omkar_mestry_737f5f43d6e1/security-update-kyckyb-document-accessibility-incident-fully-resolved-1lb3</guid>
      <description>&lt;p&gt;&lt;strong&gt;Published by:&lt;/strong&gt; XDC Innovation Lab — Security &amp;amp; Compliance Team&lt;br&gt;
&lt;strong&gt;Date:&lt;/strong&gt; 16 April 2026&lt;/p&gt;




&lt;h3&gt;
  
  
  Summary
&lt;/h3&gt;

&lt;p&gt;The XDC Innovation Lab is issuing this update to inform the community about a recently identified and fully resolved security incident involving the accessibility of KYC/KYB verification documents submitted during the masternode application process.&lt;/p&gt;

&lt;p&gt;Transparency and trust are core to the XDC ecosystem. We believe it is important to communicate openly about what happened, what was done, and what has changed.&lt;/p&gt;




&lt;h3&gt;
  
  
  What Happened?
&lt;/h3&gt;

&lt;p&gt;Our team identified a configuration vulnerability that allowed certain KYC/KYB verification documents — submitted as part of the masternode onboarding process — to become temporarily accessible via direct URL access without proper authentication.&lt;/p&gt;

&lt;p&gt;To clarify, the XDC masternode KYC/KYB process requires applicants to submit only a &lt;strong&gt;single-page verification certificate&lt;/strong&gt; confirming the identity and role of a Director/Trustee/Partner within their organisation, certified by an authorised signatory such as a Company Secretary, Notary Public, or Lawyer. No additional personal documents are collected beyond this single certificate.&lt;/p&gt;




&lt;h3&gt;
  
  
  What Was Done?
&lt;/h3&gt;

&lt;p&gt;Upon discovery, the Foundation treated this as a &lt;strong&gt;Priority 0 (P0) incident&lt;/strong&gt; and took the following immediate actions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Access revoked&lt;/strong&gt; — Public accessibility to all affected documents was immediately revoked&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Vulnerability patched&lt;/strong&gt; — The configuration issue was identified and a fix was deployed&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Verification completed&lt;/strong&gt; — Internal testing confirmed that no KYC/KYB documents remain publicly accessible&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Root cause analysis&lt;/strong&gt; — A thorough root cause analysis was completed to understand how the exposure occurred&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Logs preserved&lt;/strong&gt; — System logs were preserved for forensic review&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  What Has Changed?
&lt;/h3&gt;

&lt;p&gt;We have implemented significant improvements to our security infrastructure:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Enhanced encryption&lt;/strong&gt; — All KYC/KYB documents are now stored under encryption with strict access controls&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Strengthened access controls&lt;/strong&gt; — Multi-layer authentication and authorisation checks have been implemented for all document access endpoints&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Continuous monitoring&lt;/strong&gt; — Automated monitoring is now in place to detect any unauthorised access attempts&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Updated protocols&lt;/strong&gt; — Our KYC/KYB data handling and classification policies have been revised and strengthened&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Regular audits&lt;/strong&gt; — Periodic access control audits and penetration testing have been scheduled as ongoing practice&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  Decentralised by Design
&lt;/h3&gt;

&lt;p&gt;It is important to note that XDC is a &lt;strong&gt;decentralised network&lt;/strong&gt;. The Foundation does not centrally control or manage KYC/KYB processes, nor is any such data stored in a single centralised location. The decentralised nature of the network ensures that no single entity has unilateral control over validator data. All KYC/KYB processes are designed with decentralisation principles in mind, with appropriate encryption and distributed security safeguards.&lt;/p&gt;




&lt;h3&gt;
  
  
  Community Acknowledgement
&lt;/h3&gt;

&lt;p&gt;We want to sincerely thank the community members who promptly flagged this concern. Your vigilance plays a vital role in strengthening the security and integrity of the XDC ecosystem. Our team is reaching out directly to each individual who raised this issue to provide clarity and gather feedback on the improvements made.&lt;/p&gt;




&lt;h3&gt;
  
  
  Our Commitment
&lt;/h3&gt;

&lt;p&gt;The XDC Foundation takes the security and privacy of validator documentation with the utmost seriousness. We are committed to maintaining the highest standards of data protection and will continue to invest in strengthening our security infrastructure.&lt;/p&gt;

&lt;p&gt;We believe that transparency in addressing such incidents is essential to building and maintaining the trust that our community, validators, and institutional partners place in the XDC Network.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;XDC Innovation Lab&lt;/strong&gt;&lt;br&gt;
&lt;em&gt;Building a Secure and Decentralised Future&lt;/em&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>XDC Network — Validator (Masternode) Tech Specs &amp; Best Practices</title>
      <dc:creator>Omkar Mestry</dc:creator>
      <pubDate>Wed, 08 Apr 2026 09:24:39 +0000</pubDate>
      <link>https://www.xdc.dev/omkar_mestry_737f5f43d6e1/xdc-network-validator-masternode-tech-specs-best-practices-1ji3</link>
      <guid>https://www.xdc.dev/omkar_mestry_737f5f43d6e1/xdc-network-validator-masternode-tech-specs-best-practices-1ji3</guid>
      <description>&lt;h1&gt;
  
  
  XDC Network — Validator (Masternode) Tech Specs &amp;amp; Best Practices
&lt;/h1&gt;

&lt;h2&gt;
  
  
  XDC Network at a Glance
&lt;/h2&gt;

&lt;p&gt;XDC Network is an enterprise-grade, EVM-compatible Layer 1 blockchain purpose-built for trade finance, cross-border payments, and real-world asset (RWA) tokenization. Founded by XinFin in 2017 and mainnet-live since June 2019, the network combines public transparency with private subnet capabilities, delivering near-instant finality, near-zero gas fees, and ISO 20022 compliance — making it one of the most business-ready blockchains in production today.&lt;/p&gt;

&lt;h3&gt;
  
  
  Key Milestones
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Year&lt;/th&gt;
&lt;th&gt;Milestone&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;2017&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;XinFin founded in Singapore by Ritesh Kakkad and Atul Khekade&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;2019&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;KYC Enabled XDC mainnet goes live (June 1)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;2021&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;XDC Foundation established; partnership with SBI Holdings Japan for trade finance expansion&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;2022&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;ITFA &amp;amp; TFDi membership; KYC-compliant validator layer recognized by regulators&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;2023&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;149+ million new transactions recorded; Ankr &amp;amp; SBI integrations deepen enterprise reach&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;2024 Q3&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;XDC 2.0 launched&lt;/strong&gt; — Chained HotStuff BFT consensus, forensic monitoring, subnet support; CertiK audit completed&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;2024 Q4&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;XDC DAO launched (Masternode Senate, Judiciary, People's House); Deutsche Telekom MMS launches a masternode; Etherscan integrates XDC to power XDCScan&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;2025&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Circle integrates native USDC &amp;amp; CCTP V2 on XDC; 21Shares launches XDC ETP on Swiss exchange; Kraken &amp;amp; Binance.US list XDC; VERT Capital announces $1B tokenization pipeline on XDC; Bitso integration for LATAM cross-border payments; XDC surpasses $300M total staked value and 800M+ transactions&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;2025 H2&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;GENIUS Act signed into U.S. law — XDC Foundation represented at key regulatory discussions; MiCA Crypto Alliance joined in Europe&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;2026 Q1&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Token Terminal partnership — XDC analytics available via Bloomberg Terminal integration; MVXDC index appears on Bloomberg Terminal, expanding institutional visibility; Contour Network (backed by HSBC, Citi, Standard Chartered) acquired by XDC venture arm&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  Network at a Glance (as of early 2026)
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Metric&lt;/th&gt;
&lt;th&gt;Value&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Total transactions processed&lt;/td&gt;
&lt;td&gt;104M+&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Active wallets&lt;/td&gt;
&lt;td&gt;2M+&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Validator masternode candidates&lt;/td&gt;
&lt;td&gt;300+ (108 active Validators · 432 Protector Nodes · 1,000 Observer Nodes)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Smart contracts deployed&lt;/td&gt;
&lt;td&gt;717,000+&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Total blocks produced&lt;/td&gt;
&lt;td&gt;101M+&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Mainnet uptime&lt;/td&gt;
&lt;td&gt;7+ years continuous&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  1. Network Overview
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Parameter&lt;/th&gt;
&lt;th&gt;Value&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Consensus&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;XinFin Delegated Proof of Stake (XDPoS 2.0) — Chained HotStuff BFT protocol (shipped Q4 2024)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Active validator set&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;108 Masternodes per epoch&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Epoch length&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;900 blocks (~30 minutes)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Block time&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;~2 seconds&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Finality&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Deterministic — confirmation = finalization (~6 seconds under XDC 2.0)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Throughput&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;2,000–2,500+ TPS&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;BFT guarantee&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Network safe as long as adversarial masternodes remain below ⅓ of each epoch's validator set; misbehaviour is provable via on-chain forensics&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;EVM compatibility&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Full — Solidity 0.8.28 supported&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Compliance&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;ISO 20022 financial messaging standard; MiCA-aligned&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  2. Staking Requirements
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Parameter&lt;/th&gt;
&lt;th&gt;Requirement&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Minimum stake&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;10 Million XDC per masternode (no upper limit)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;KYC&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Mandatory — notarised proof of identity (individual or corporate) + address, uploaded on-chain and publicly visible&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Resignation lock-up&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;30 days before staked XDC can be retrieved&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Estimated APR&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;10% (Validator) · 8% (Protector) · 4% (Observer) — subject to change&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  3. Node Types Under XDC 2.0
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Node Type&lt;/th&gt;
&lt;th&gt;Role&lt;/th&gt;
&lt;th&gt;Max Nodes&lt;/th&gt;
&lt;th&gt;Staking&lt;/th&gt;
&lt;th&gt;Rewards&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Core Validator (Masternode)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Validates transactions, proposes/finalises blocks, governance voting&lt;/td&gt;
&lt;td&gt;108&lt;/td&gt;
&lt;td&gt;10M XDC min&lt;/td&gt;
&lt;td&gt;10%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;strong&gt;Protector Node&lt;/strong&gt; &lt;em&gt;(new in 2.0)&lt;/em&gt;
&lt;/td&gt;
&lt;td&gt;Hot backup for Core Validators (4 Protectors per Validator); takes over during disruptions&lt;/td&gt;
&lt;td&gt;432&lt;/td&gt;
&lt;td&gt;10M XDC min&lt;/td&gt;
&lt;td&gt;8%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;strong&gt;Observer Node&lt;/strong&gt; &lt;em&gt;(new in 2.0)&lt;/em&gt;
&lt;/td&gt;
&lt;td&gt;Non-block-producing; observes consensus, broadcasts transactions&lt;/td&gt;
&lt;td&gt;1,000&lt;/td&gt;
&lt;td&gt;10M XDC min&lt;/td&gt;
&lt;td&gt;4%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Full Node&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Stores full ledger, propagates transactions&lt;/td&gt;
&lt;td&gt;Unlimited&lt;/td&gt;
&lt;td&gt;None&lt;/td&gt;
&lt;td&gt;None&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Archive Node&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Full historical blockchain data; for analytics, explorers, deep queries&lt;/td&gt;
&lt;td&gt;Unlimited&lt;/td&gt;
&lt;td&gt;None&lt;/td&gt;
&lt;td&gt;None&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Node selection order:&lt;/strong&gt; The top 108 most voted candidates become active Core Validators. The next 432 are assigned as Protector Nodes (4 per Validator). Beyond that, the next 1,000 serve as Observer Nodes. Full Nodes and Archive Nodes have no cap and do not participate in consensus.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  4. Hardware &amp;amp; Infrastructure Specs
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Minimum Requirements
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Component&lt;/th&gt;
&lt;th&gt;Specification&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;CPU&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;4+ cores&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;RAM&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;32 GB+&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Disk&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;2 TB+ SSD (500+ IOPS; more is better) — dedicated database partition&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;OS&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Ubuntu 24.04+, CentOS (latest), or RHEL (latest), Windows, Mac OS&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Network&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Dedicated static public IP, directly internet-facing (no NAT)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Hosting&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Minimum Tier 3+ IDC (data centre) environment&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  5. Uptime &amp;amp; Availability
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Requirement&lt;/th&gt;
&lt;th&gt;Target&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Uptime SLA&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;100%&lt;/strong&gt; — masternodes must be online and operational 24/7/365&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Slashing risk&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Node downtime may result in "slashed" status&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Reward impact&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Rewards per epoch are proportional to blocks signed; downtime = missed rewards&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Backup strategy&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Always maintain a secure backup of your Coinbase address and Keystore file. Loss = inaccessible node requiring network resignation&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  6. Security Best Practices
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Key Management
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Use a hardware wallet for the staking/owner wallet&lt;/li&gt;
&lt;li&gt;Keep Keystore file backed up offline in multiple secure locations&lt;/li&gt;
&lt;li&gt;Coinbase address (node identity) backup is critical — if lost, the masternode is unrecoverable&lt;/li&gt;
&lt;li&gt;For institutional setups, consider Fireblocks or similar MPC custody via WalletConnect v2&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Infrastructure Security
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Harden the OS (disable root SSH, use key-based authentication, change the default SSH port)&lt;/li&gt;
&lt;li&gt;Keep Docker and node software on the latest stable version&lt;/li&gt;
&lt;li&gt;Run behind DDoS mitigation if possible&lt;/li&gt;
&lt;li&gt;Enable automatic security updates for the host OS&lt;/li&gt;
&lt;li&gt;Install &lt;code&gt;fail2ban&lt;/code&gt; to protect against SSH brute-force attempts&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Firewall &amp;amp; Port Configuration
&lt;/h3&gt;

&lt;p&gt;For a &lt;strong&gt;Validator / Protector / Observer&lt;/strong&gt; node (not serving public RPC traffic), &lt;strong&gt;only port 30303 should be open&lt;/strong&gt; to the internet. All other non-essential ports must remain closed.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Port Reference:&lt;/strong&gt;&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Port&lt;/th&gt;
&lt;th&gt;Protocol&lt;/th&gt;
&lt;th&gt;Purpose&lt;/th&gt;
&lt;th&gt;Validator / Protector / Observer&lt;/th&gt;
&lt;th&gt;Public RPC Node&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;30303&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;TCP + UDP&lt;/td&gt;
&lt;td&gt;P2P peer discovery &amp;amp; communication&lt;/td&gt;
&lt;td&gt;✅ &lt;strong&gt;OPEN&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;✅ OPEN&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;8989&lt;/td&gt;
&lt;td&gt;TCP&lt;/td&gt;
&lt;td&gt;HTTP JSON-RPC API&lt;/td&gt;
&lt;td&gt;❌ CLOSED&lt;/td&gt;
&lt;td&gt;✅ OPEN (IP-restricted)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;8888&lt;/td&gt;
&lt;td&gt;TCP&lt;/td&gt;
&lt;td&gt;WebSocket endpoint&lt;/td&gt;
&lt;td&gt;❌ CLOSED&lt;/td&gt;
&lt;td&gt;✅ OPEN (IP-restricted)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;22 (or custom)&lt;/td&gt;
&lt;td&gt;TCP&lt;/td&gt;
&lt;td&gt;SSH admin access&lt;/td&gt;
&lt;td&gt;✅ OPEN&lt;/td&gt;
&lt;td&gt;✅ OPEN&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Recommended UFW configuration for a Validator / Protector / Observer masternode:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;apt &lt;span class="nb"&gt;install &lt;/span&gt;ufw
&lt;span class="nb"&gt;sudo &lt;/span&gt;ufw default deny incoming
&lt;span class="nb"&gt;sudo &lt;/span&gt;ufw default allow outgoing
&lt;span class="nb"&gt;sudo &lt;/span&gt;ufw allow 30303                &lt;span class="c"&gt;# P2P — required&lt;/span&gt;
&lt;span class="nb"&gt;sudo &lt;/span&gt;ufw allow &amp;lt;your_ssh_port&amp;gt;      &lt;span class="c"&gt;# SSH — required, do NOT skip&lt;/span&gt;
&lt;span class="nb"&gt;sudo &lt;/span&gt;ufw &lt;span class="nb"&gt;enable&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;p&gt;⚠️ &lt;strong&gt;Critical:&lt;/strong&gt; Always allow your SSH port &lt;em&gt;before&lt;/em&gt; enabling the firewall or rebooting. Otherwise you will lock yourself out of the server. If this happens, use your VPS provider's web console to regain access.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Additional hardening notes:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;On cloud providers (AWS, GCP, Azure, DigitalOcean), you must also configure provider-level Security Groups — host-level UFW alone isn't enough.&lt;/li&gt;
&lt;li&gt;If running a public RPC node, restrict ports 8989 / 8888 to specific IP allowlists — &lt;strong&gt;never leave them open to the world&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Audit firewall rules periodically: &lt;code&gt;sudo ufw status verbose&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Block all other inbound ports by default; review any open ports against this table quarterly.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Operational Security
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Separate the masternode owner wallet from day-to-day operational wallets&lt;/li&gt;
&lt;li&gt;Use dedicated infrastructure — avoid sharing servers with other workloads&lt;/li&gt;
&lt;li&gt;Complete KYC with a valid, current corporate or individual identity document&lt;/li&gt;
&lt;li&gt;Maintain an incident response runbook for key compromise or node failure scenarios&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  7. Monitoring &amp;amp; Maintenance
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Area&lt;/th&gt;
&lt;th&gt;Recommendation&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Node stats&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Monitor via &lt;a href="https://stats.xinfin.network"&gt;XinFin Stats&lt;/a&gt; (mainnet) or the masternode dashboard&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Block explorer&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;
&lt;a href="https://xdcscan.io"&gt;XDCScan.io&lt;/a&gt; and &lt;a href="https://xdcscan.com"&gt;XDCScan.com&lt;/a&gt; for transaction and validator monitoring&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Third-party analytics&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;
&lt;a href="https://nodes.primexdc.com/"&gt;PrimeXDC Node Dashboard&lt;/a&gt; for independent node analysis&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Token Terminal&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;
&lt;a href="https://tokenterminal.com/explorer/projects/xdc/metrics/staking-market-cap"&gt;Staking Market Cap&lt;/a&gt; · &lt;a href="https://tokenterminal.com/explorer/projects/xdc/metrics/number-of-validators"&gt;Number of Validators&lt;/a&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Alerting&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Set up alerts for peer count drops, missed block proposals, disk space thresholds, and memory/CPU usage&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Software updates&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Track the XinFinOrg GitHub repo and XDC developer forum for protocol upgrades. Coordinate upgrades promptly — late upgrades risk consensus incompatibility&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Log management&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Centralise Docker container logs; retain for debugging and audit purposes&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Health checks&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Automate periodic RPC health checks and block height comparisons against public explorers&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  8. Reward Economics (Indicative)
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Metric&lt;/th&gt;
&lt;th&gt;Value&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Reward cycle&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Every epoch (900 blocks / ~30 min)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Total block reward pool&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;86,400,000 XDC + transaction fees&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Reward distribution&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Proportional to blocks signed/validated in each epoch&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  Reward Split by Node Tier
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Node Tier&lt;/th&gt;
&lt;th&gt;Reward Share&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Core Validator (Masternode)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;10%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Protector Node&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;8%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Observer Node&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;4%&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  9. Deployment Quick-Start
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Docker (recommended)
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;su &lt;span class="nt"&gt;-c&lt;/span&gt; &lt;span class="s2"&gt;"bash &amp;lt;(wget -qO- https://raw.githubusercontent.com/XinFinOrg/XinFin-Node/master/setup/bootstrap.sh)"&lt;/span&gt; root
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Follow the prompts to select &lt;code&gt;mainnet&lt;/code&gt;, name your node, and generate or import your keys.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Testnet:&lt;/strong&gt; Always test your setup on Apothem (&lt;a href="https://apothem.network"&gt;apothem.network&lt;/a&gt;) before going live on mainnet.&lt;/p&gt;

&lt;h3&gt;
  
  
  Network Snapshots
&lt;/h3&gt;

&lt;p&gt;Snapshots allow faster node synchronisation by downloading a pre-synced copy of the blockchain instead of syncing from genesis.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;XDC Network Mainnet Snapshots:&lt;/strong&gt;&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Node Type&lt;/th&gt;
&lt;th&gt;Download Link&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Full Node&lt;/td&gt;
&lt;td&gt;&lt;a href="https://download.xinfin.network/xdcchain.tar"&gt;https://download.xinfin.network/xdcchain.tar&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Archive Node&lt;/td&gt;
&lt;td&gt;&lt;a href="http://downloads.xinfin.network/xdcchain_archive.tar"&gt;http://downloads.xinfin.network/xdcchain_archive.tar&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Apothem Testnet Snapshots:&lt;/strong&gt;&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Node Type&lt;/th&gt;
&lt;th&gt;Download Link&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Full Node&lt;/td&gt;
&lt;td&gt;&lt;a href="http://downloads.apothem.network/xdcchain.tar"&gt;http://downloads.apothem.network/xdcchain.tar&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Archive Node&lt;/td&gt;
&lt;td&gt;&lt;a href="http://downloads.apothem.network/xdcchain_archive.tar"&gt;http://downloads.apothem.network/xdcchain_archive.tar&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  Applying a Snapshot
&lt;/h3&gt;

&lt;p&gt;After downloading the snapshot, follow these steps to spin up your node. Run these commands from inside the &lt;code&gt;XinFin-Node/mainnet/&lt;/code&gt; directory (or &lt;code&gt;testnet/&lt;/code&gt; for Apothem):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# 1. Stop the running node (if already running)&lt;/span&gt;
bash docker-down.sh

&lt;span class="c"&gt;# 2. Extract the snapshot — NOTE: use -xvf, not -xvzf&lt;/span&gt;
&lt;span class="c"&gt;#    The xdcchain.tar is a POSIX tar archive, not gzipped&lt;/span&gt;
&lt;span class="nb"&gt;tar&lt;/span&gt; &lt;span class="nt"&gt;-xvf&lt;/span&gt; xdcchain.tar

&lt;span class="c"&gt;# 3. Back up your existing chain data (safer than rm -rf)&lt;/span&gt;
&lt;span class="nb"&gt;mv &lt;/span&gt;xdcchain/XDC xdcchain/XDC_backup

&lt;span class="c"&gt;# 4. Move the extracted snapshot into place&lt;/span&gt;
&lt;span class="nb"&gt;mv &lt;/span&gt;XDC xdcchain/XDC

&lt;span class="c"&gt;# 5. Start the node back up&lt;/span&gt;
bash upgrade.sh
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Important notes:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Do &lt;strong&gt;not&lt;/strong&gt; use &lt;code&gt;tar -xvzf&lt;/code&gt; — the snapshot is a POSIX tar archive, not gzipped, and the &lt;code&gt;z&lt;/code&gt; flag will throw an error.&lt;/li&gt;
&lt;li&gt;Keep the &lt;code&gt;XDC_backup&lt;/code&gt; folder until you've confirmed the node is syncing correctly from the snapshot. Once verified, you can safely delete it to free disk space.&lt;/li&gt;
&lt;li&gt;Always verify your &lt;code&gt;coinbase.txt&lt;/code&gt; and &lt;code&gt;keystore/&lt;/code&gt; files are intact in &lt;code&gt;xdcchain/&lt;/code&gt; after the swap. If missing, restore them from your backup.&lt;/li&gt;
&lt;li&gt;Monitor sync progress on &lt;a href="https://stats.xinfin.network"&gt;stats.xinfin.network&lt;/a&gt; or &lt;a href="https://xdcscan.io"&gt;xdcscan.io&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  10. Compliance &amp;amp; Governance
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;All validators must pass KYC (PDF format, uploaded on-chain). Refer to the &lt;a href="https://docs.google.com/document/d/1eyjFp3DXhrpLscngELocmXFwJ_Y8H9si6n8Z2SLADhg/edit?tab=t.0"&gt;KYC Document Format&lt;/a&gt; for requirements&lt;/li&gt;
&lt;li&gt;Entities with criminal records, anonymous identities, or intentions to fork are disqualified&lt;/li&gt;
&lt;li&gt;Validators participate in governance voting on protocol upgrades and XIPs (XDC Improvement Proposals)&lt;/li&gt;
&lt;li&gt;XDC 2.0 introduced a DAO structure with three chambers: Masternode Senate, Judiciary, and People's House&lt;/li&gt;
&lt;li&gt;Network is aligned with MiCA (EU) regulatory standards and ISO 20022 financial messaging compliance&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  11. Frequently Asked Questions (FAQs)
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Q: How much XDC do I need to run a masternode?&lt;/strong&gt;&lt;br&gt;
You need a minimum of 10,000,000 XDC staked to become a masternode candidate. There is no upper limit. Each masternode you operate requires its own separate 10M XDC stake.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q: Can I run more than one masternode?&lt;/strong&gt;&lt;br&gt;
Yes. You can run as many masternodes as you wish, but each one must independently meet the 10M XDC staking requirement, have its own dedicated server infrastructure, and complete separate KYC.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q: What is the maximum number of masternodes allowed on the network?&lt;/strong&gt;&lt;br&gt;
The network supports a tiered structure: 108 Core Validator nodes, 432 Protector Nodes, and 1,000 Observer Nodes — totalling 1,540 staked node slots. The top 108 most voted candidates become active Validators, the next 432 serve as Protector Nodes, and the following 1,000 are Observer Nodes.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q: What happens if my masternode goes offline?&lt;/strong&gt;&lt;br&gt;
If your node goes down, it may be marked as "slashed." You will miss block rewards for the epochs your node is offline, and prolonged downtime can affect your standing in the validator set. Ensure your infrastructure is always operational.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q: What is the difference between a Validator and a Standby node?&lt;/strong&gt;&lt;br&gt;
Validator Masternodes (108 per epoch) actively validate transactions and produce blocks. Standby Masternodes are identical in setup but remain on standby — they are activated only when the number of active Validators drops below 108.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q: How are rewards distributed?&lt;/strong&gt;&lt;br&gt;
Rewards are paid every epoch (900 blocks / ~30 minutes). The total block reward pool is 86,400,000 XDC plus transaction fees. Core Validators receive 10%, Protector Nodes receive 8%, and Observer Nodes receive 4%. Within each tier, rewards are proportional to blocks signed and validated.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q: Can I withdraw my staked XDC at any time?&lt;/strong&gt;&lt;br&gt;
No. If you resign from your masternode, there is a mandatory 30-day lock-up period before you can retrieve your staked 10M XDC.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q: What happens if I lose my Coinbase address or Keystore file?&lt;/strong&gt;&lt;br&gt;
Losing your Coinbase address means your masternode becomes inaccessible, and you will need to resign from the network. Losing your Keystore or private key means your funds are permanently inaccessible and you will not receive any further rewards. Always maintain secure offline backups of both.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q: Is KYC mandatory? What format is required?&lt;/strong&gt;&lt;br&gt;
Yes, KYC is mandatory for all masternode operators. You must upload a notarised proof of identity (individual or corporate) and address in PDF format. This information is visible on the public network. Refer to the &lt;a href="https://docs.google.com/document/d/1eyjFp3DXhrpLscngELocmXFwJ_Y8H9si6n8Z2SLADhg/edit?tab=t.0"&gt;KYC Document Format&lt;/a&gt; for full requirements.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q: Who is disqualified from running a masternode?&lt;/strong&gt;&lt;br&gt;
Entities or individuals that are anonymous, have a criminal record, intend to fork the XDC software, or do not comply with local laws are disqualified from becoming masternode operators.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q: Can I set up on Windows or do I need Linux?&lt;/strong&gt;&lt;br&gt;
Both are supported. You can use the One-Click Installer for Windows and Linux, or deploy via Docker (recommended for production). Supported Linux distributions include Ubuntu 24.04+, CentOS, and RHEL.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q: Does my server need a public IP?&lt;/strong&gt;&lt;br&gt;
Yes. Your masternode must face the internet directly with a dedicated static public IP address, without NAT.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q: Can I use a cloud provider / VPS instead of dedicated hardware?&lt;/strong&gt;&lt;br&gt;
Yes. A VPS is optional but highly recommended if you don't have dedicated hardware that meets the specs. Ensure your provider can deliver the required CPU, RAM, disk, and network uptime.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q: Which ports should I open on my firewall?&lt;/strong&gt;&lt;br&gt;
Only &lt;strong&gt;port 30303&lt;/strong&gt; (TCP + UDP) should be open to the internet for a Validator, Protector, or Observer node. Keep your SSH port open for admin access (22 or a custom port), but block everything else including RPC (8989) and WebSocket (8888). Only open 8989 / 8888 if you are explicitly running a public RPC node, and restrict them to specific IP allowlists.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q: Can I test the setup before going live on mainnet?&lt;/strong&gt;&lt;br&gt;
Yes. XDC provides a testnet called Apothem (apothem.network) where you can test your entire masternode setup without using real XDC. This is strongly recommended before deploying to mainnet.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q: Are there third-party masternode hosting services?&lt;/strong&gt;&lt;br&gt;
Yes, there are third-party service providers that can help with setup and hosting. However, XDC Network does not officially endorse any third-party services — always perform your own due diligence before engaging one.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q: Can institutional operators use custody solutions like Fireblocks?&lt;/strong&gt;&lt;br&gt;
Yes. Institutions and enterprises can use Fireblocks via WalletConnect v2 to manage masternode staking with MPC-based custody, governance automation, and transaction policy controls.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q: How do I check my masternode status?&lt;/strong&gt;&lt;br&gt;
You can monitor your node via stats.xinfin.network (mainnet), the masternode dashboard, or the XDCScan block explorer at xdcscan.io.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q: What are the common setup errors?&lt;/strong&gt;&lt;br&gt;
The two most common issues are: (1) outdated Docker — install docker-compose version 1.21+; (2) port conflicts — if port 30303 is already in use, terminate the existing container and try again.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q: How does XDC handle DDoS and spam attacks?&lt;/strong&gt;&lt;br&gt;
While XDC's transaction fees are extremely low, they are not zero. This means flooding the network requires a significant amount of XDC, making sustained spam attacks economically impractical. The network also employs on-chain forensic monitoring to detect and penalise malicious behaviour.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q: What is an epoch?&lt;/strong&gt;&lt;br&gt;
An epoch is a cycle of 900 blocks on the XDC Network, completing in approximately 30 minutes. Validator selection, reward distribution, and governance actions are all structured around epochs.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q: What are network snapshots and why should I use them?&lt;/strong&gt;&lt;br&gt;
Snapshots are pre-synced copies of the blockchain database. Instead of syncing your node from the genesis block (which can take days), downloading a snapshot lets you get up and running much faster. They are available for both mainnet and the Apothem testnet, in Full Node and Archive Node variants.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q: How do I use a snapshot to speed up node setup?&lt;/strong&gt;&lt;br&gt;
Stop your node, extract the downloaded &lt;code&gt;xdcchain.tar&lt;/code&gt; (using &lt;code&gt;tar -xvf&lt;/code&gt;, &lt;strong&gt;not&lt;/strong&gt; &lt;code&gt;-xvzf&lt;/code&gt;), back up the existing &lt;code&gt;xdcchain/XDC&lt;/code&gt; folder, move the extracted &lt;code&gt;XDC&lt;/code&gt; folder into &lt;code&gt;xdcchain/&lt;/code&gt;, and restart your node with &lt;code&gt;bash upgrade.sh&lt;/code&gt;. It will resume syncing from the snapshot's block height instead of from zero. Always verify the snapshot source matches the official XDC download links before use.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q: What is the difference between the Full Node and Archive Node snapshot?&lt;/strong&gt;&lt;br&gt;
The Full Node snapshot contains the current blockchain state needed for normal validation and transaction processing. The Archive Node snapshot includes the entire historical blockchain data from genesis — it's significantly larger and is only needed if you run analytics, block explorers, or dApps that require deep historical queries.&lt;/p&gt;




&lt;h2&gt;
  
  
  12. Key Ecosystem Partners &amp;amp; Integrations
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Partner / Integration&lt;/th&gt;
&lt;th&gt;Role&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;SBI Holdings (Japan)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Trade finance joint venture; R3 Corda cross-chain PoC&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Deutsche Telekom MMS&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Infrastructure provider; operates a masternode&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Circle (USDC / CCTP V2)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Native stablecoin and cross-chain transfer support&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Archax&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Regulated digital securities exchange; tokenised funds (BlackRock, State Street, Fidelity)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;21Shares&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;XDC ETP on SIX Swiss Exchange (Ticker: XDCN); also listed on Euronext Amsterdam&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Token Terminal&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Institutional-grade on-chain analytics for XDC — integrated with Bloomberg Terminal for real-time dashboards, API access, and Data Room&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Bloomberg Terminal&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;MVXDC index listed, providing professional-grade market access and institutional discovery for XDC&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Securitize&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;U.S. Treasury tokenization (USTY)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Bitso&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;LATAM's largest crypto platform; cross-border remittance integration&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Mercado Bitcoin&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;$15M+ fixed-income RWA token issuance on XDC&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;VERT Capital&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Up to $1B in tokenised debt and receivables&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Plug and Play&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;RWA Accelerator program (2 cohorts completed)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Kraken &amp;amp; Binance.US&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Tier 1 exchange listings (2025)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  Key References
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Resource&lt;/th&gt;
&lt;th&gt;Link&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Official setup guide&lt;/td&gt;
&lt;td&gt;&lt;a href="https://xinfin.org/setup-masternode"&gt;https://xinfin.org/setup-masternode&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Docker setup&lt;/td&gt;
&lt;td&gt;&lt;a href="https://xinfin.org/docker-setup"&gt;https://xinfin.org/docker-setup&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Node architecture docs&lt;/td&gt;
&lt;td&gt;&lt;a href="https://docs.xdc.network/xdcchain/developers/node_operators/node_architecture/"&gt;https://docs.xdc.network/xdcchain/developers/node_operators/node_architecture/&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Tech specs&lt;/td&gt;
&lt;td&gt;&lt;a href="https://xdc.org/network/tech-specs"&gt;https://xdc.org/network/tech-specs&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Developer forum&lt;/td&gt;
&lt;td&gt;&lt;a href="https://xdc.dev"&gt;https://xdc.dev&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;GitHub&lt;/td&gt;
&lt;td&gt;&lt;a href="https://github.com/XinFinOrg/XinFin-Node"&gt;https://github.com/XinFinOrg/XinFin-Node&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Testnet (Apothem)&lt;/td&gt;
&lt;td&gt;&lt;a href="https://apothem.network"&gt;https://apothem.network&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Block explorer&lt;/td&gt;
&lt;td&gt;
&lt;a href="https://xdcscan.io"&gt;https://xdcscan.io&lt;/a&gt; · &lt;a href="https://xdcscan.com"&gt;https://xdcscan.com&lt;/a&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;PrimeXDC Node Dashboard&lt;/td&gt;
&lt;td&gt;&lt;a href="https://nodes.primexdc.com/"&gt;https://nodes.primexdc.com/&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Bloomberg Terminal (21Shares ETP)&lt;/td&gt;
&lt;td&gt;&lt;a href="https://www.bloomberg.com/quote/XDCN:NA"&gt;https://www.bloomberg.com/quote/XDCN:NA&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Token Terminal (XDC analytics)&lt;/td&gt;
&lt;td&gt;&lt;a href="https://tokenterminal.com"&gt;https://tokenterminal.com&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Token Terminal — Staking Market Cap&lt;/td&gt;
&lt;td&gt;&lt;a href="https://tokenterminal.com/explorer/projects/xdc/metrics/staking-market-cap"&gt;https://tokenterminal.com/explorer/projects/xdc/metrics/staking-market-cap&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Token Terminal — Number of Validators&lt;/td&gt;
&lt;td&gt;&lt;a href="https://tokenterminal.com/explorer/projects/xdc/metrics/number-of-validators"&gt;https://tokenterminal.com/explorer/projects/xdc/metrics/number-of-validators&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;KYC document format&lt;/td&gt;
&lt;td&gt;&lt;a href="https://docs.google.com/document/d/1eyjFp3DXhrpLscngELocmXFwJ_Y8H9si6n8Z2SLADhg/edit?tab=t.0"&gt;Google Doc&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Mainnet Snapshot (Full Node)&lt;/td&gt;
&lt;td&gt;&lt;a href="https://download.xinfin.network/xdcchain.tar"&gt;https://download.xinfin.network/xdcchain.tar&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Mainnet Snapshot (Archive Node)&lt;/td&gt;
&lt;td&gt;&lt;a href="http://downloads.xinfin.network/xdcchain_archive.tar"&gt;http://downloads.xinfin.network/xdcchain_archive.tar&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Testnet Snapshot (Full Node)&lt;/td&gt;
&lt;td&gt;&lt;a href="http://downloads.apothem.network/xdcchain.tar"&gt;http://downloads.apothem.network/xdcchain.tar&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Testnet Snapshot (Archive Node)&lt;/td&gt;
&lt;td&gt;&lt;a href="http://downloads.apothem.network/xdcchain_archive.tar"&gt;http://downloads.apothem.network/xdcchain_archive.tar&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

</description>
    </item>
    <item>
      <title>EVM Compatible XDC Network’s Upgraded Security and Memory features on Apothem Platform.</title>
      <dc:creator>Omkar Mestry</dc:creator>
      <pubDate>Wed, 21 Dec 2022 08:17:51 +0000</pubDate>
      <link>https://www.xdc.dev/omkar_mestry_737f5f43d6e1/evm-compatible-xdc-networks-upgraded-security-and-memory-features-on-apothem-platform-4aoe</link>
      <guid>https://www.xdc.dev/omkar_mestry_737f5f43d6e1/evm-compatible-xdc-networks-upgraded-security-and-memory-features-on-apothem-platform-4aoe</guid>
      <description>&lt;p&gt;EVM Compatible XDC Network’s Upgraded Security and Memory features on Apothem Platform.&lt;/p&gt;

&lt;p&gt;Upgrading the feasibility of XinFin(XDC) network which covers Security issues and Memory leak issues.&lt;/p&gt;

&lt;h2&gt;
  
  
  Introduction to XDC Network and Apothem Network.
&lt;/h2&gt;

&lt;p&gt;The &lt;strong&gt;&lt;a href="https://xdc.network/"&gt;XDC Network&lt;/a&gt;&lt;/strong&gt; is a global, open-source, delegated proof of stake consensus network (XDPoS), which enables hybrid relay bridges, instant block finality and interoperability with ISO 20022 financial messaging standards. The network’s hybrid (private/public) architecture is designed to support institutional use in trade finance and asset tokenization. Featuring interoperable smart contracts, 2,000 transactions per-second, and Ethereum Virtual Machine compatibility, the XDC Network provides a scalable infrastructure for enterprises and independent community contributors.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://explorer.apothem.network/"&gt;Apothem Network&lt;/a&gt;&lt;/strong&gt; (Testnet) is the network used by smart contract developers to test smart contracts and protocol upgrades before deployment to the mainnet. Any upgrade to the XinFin XDC Network blockchain is first implemented on the Apothem Test Network, a simulation of the XinFin XDC Network, giving developers and other community members a chance to test the system before real assets are involved.&lt;/p&gt;

&lt;h2&gt;
  
  
  Now Let’s discuss what issues the team has fixed, which will be on the Apothem Network.
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://github.com/XinFinOrg/XDPoSChain/pull/200"&gt;https://github.com/XinFinOrg/XDPoSChain/pull/200&lt;/a&gt;&lt;br&gt;
&lt;a href="https://github.com/XinFinOrg/XDPoSChain/pull/212"&gt;https://github.com/XinFinOrg/XDPoSChain/pull/212&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  internal/ethapi: EstimateGas and Call handle revert error
&lt;/h2&gt;

&lt;p&gt;Mentioned first issue was, XDC blockchain didn’t show the revert error before sending the tx with no one wallet/interface(metamask, XDCpay, Remix…). There is no way to see the error before sending the transaction.&lt;/p&gt;

&lt;p&gt;In the current version XDPoSChain, it always returns the message: “gas required exceeds allowance or always failing transaction”. If solidity contract function reverts when metamask or other client calls method eth.estimateGas. Therefore, neither the user nor the wallet programme can predict when a revert will occur or get a revert message when one does. This is the main problem in the complaint by xcantera. The latest Pull Request parses and returns the revert message/reason for both of eth.call and eth.estimateGas. This PR is tested on a private network and now it will be tested on Apothem testnet.&lt;/p&gt;
&lt;h2&gt;
  
  
  test with apothem RPC
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Code:&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://explorer.apothem.network/address/xdc41cfa4c7c764c39237a765788eb0596c4b7a05ba#readContract"&gt;https://explorer.apothem.network/address/xdc41cfa4c7c764c39237a765788eb0596c4b7a05ba#readContract&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Request:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;curl -X POST -H “Content-Type: application/json” https://rpc.apothem.network -d ‘

{

“jsonrpc”:”2.0",

“method”:”eth_estimateGas”,

“params”:[

{

“from”:”0xD4CE02705041F04135f1949Bc835c1Fe0885513c”,

“to”:”0x41cfa4c7c764c39237a765788eb0596c4b7a05ba”,

“data”: “0x55241077000000000000000000000000000000000000000000000000000000000000000a”,

“value”:”0x0"

}

],

“id”:1

}’

Response

{

“jsonrpc”: “2.0”,

“id”: 1,

“error”: {

“code”: -32000,

“message”: “gas required exceeds allowance or always failing transaction”

}

}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now, Users can see that this fix will be live on the XDC Apothem Network first.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Merged link: &lt;a href="https://github.com/XinFinOrg/XDPoSChain/pull/200"&gt;https://github.com/XinFinOrg/XDPoSChain/pull/200&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Fixed memory leak when sending tx, vote, block etc to peers.&lt;br&gt;
A memory leak reduces the performance of the peer by reducing the amount of available memory. Eventually, in the worst case, too much of the available memory may become allocated and all or part of the system or device stops working correctly, the application fails, or the system slows down vastly due to thrashing.&lt;/p&gt;

&lt;p&gt;The memory leak issue is based on original v1/eth code that has been Merged and it will be live on XDC Apothem Network with the &lt;a href="https://github.com/XinFinOrg/XDPoSChain/pull/211"&gt;Latest Merge.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Both the issues will be live on &lt;a href="https://apothem.network/"&gt;XDC Apothem Network&lt;/a&gt; in the first week of January 2023.&lt;/p&gt;

&lt;p&gt;Discuss any technical developments on the XDC Network Technical forum &lt;strong&gt;&lt;a href="https://www.xdc.dev/"&gt;XDC.Dev&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>xdcnetwork</category>
      <category>xdpos</category>
      <category>xdposupgrade</category>
      <category>hybridblockchain</category>
    </item>
    <item>
      <title>How To Use Your Ledger Nano S Plus Device With The XDC Web Wallet</title>
      <dc:creator>Omkar Mestry</dc:creator>
      <pubDate>Thu, 18 Aug 2022 15:53:12 +0000</pubDate>
      <link>https://www.xdc.dev/omkar_mestry_737f5f43d6e1/how-to-use-your-ledger-nano-s-plus-device-with-the-xdc-web-wallet-5dji</link>
      <guid>https://www.xdc.dev/omkar_mestry_737f5f43d6e1/how-to-use-your-ledger-nano-s-plus-device-with-the-xdc-web-wallet-5dji</guid>
      <description>&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;A Ledger Device is a hardware wallet considered one of the most secure ways to store digital assets. Ledger uses an offline, or cold storage, method of generating private keys, making it a preferred method for many crypto users. &lt;strong&gt;This guide will help you to connect your Ledger Nano S Plus device to the XDC Web Wallet.&lt;/strong&gt; The XDC Web Wallet enables you to Send and Receive XDC with the Ledger Device.&lt;/p&gt;

&lt;h2&gt;
  
  
  Before You Start, Make Sure:
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;You've &lt;strong&gt;&lt;a href="https://support.ledger.com/hc/en-us/articles/4416927988625-Set-up-your-Ledger-Nano-S-Plus-?docs=true"&gt;initialized&lt;/a&gt;&lt;/strong&gt; your Ledger Device.&lt;/li&gt;
&lt;li&gt;The latest firmware is &lt;strong&gt;&lt;a href="https://support.ledger.com/hc/en-us/articles/4445777839901-Update-Ledger-Nano-S-Plus-firmware?docs=true4"&gt;installed&lt;/a&gt;&lt;/strong&gt; (Ledger Nano S Plus).&lt;/li&gt;
&lt;li&gt;Ledger Live is ready to use.&lt;/li&gt;
&lt;li&gt;Access the XDC Web Wallet and choose your Network.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Install The XDC Network App
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Step 1:&lt;/strong&gt; Open the Manager in Ledger Live.&lt;br&gt;
&lt;strong&gt;Step 2:&lt;/strong&gt; Connect and unlock your Ledger Device.&lt;br&gt;
&lt;strong&gt;Step 3:&lt;/strong&gt; If asked, follow the onscreen instructions and Allow Ledger Manager.&lt;br&gt;
&lt;strong&gt;Step 4:&lt;/strong&gt; Find XDC Network in the app catalog. (Here, we have already installed it.)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/-INQNYpRGZhyG5xkqslPQ_1HpU6Q2On1fPuC66A5zEU/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/Lzkwdzdod3hkdTMy/YmVibGlnOWtwLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/-INQNYpRGZhyG5xkqslPQ_1HpU6Q2On1fPuC66A5zEU/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/Lzkwdzdod3hkdTMy/YmVibGlnOWtwLnBu/Zw" alt="Image description" width="880" height="593"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 5:&lt;/strong&gt; Click the Install button.&lt;/p&gt;

&lt;p&gt;a. An installation window will appear.&lt;/p&gt;

&lt;p&gt;b. Your device will display Processing…&lt;/p&gt;

&lt;p&gt;c. Once the app installation is confirmed, XDC Network app will &lt;br&gt;
      appear on the Ledger device screen. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/I0OSb7MqxuKU1A2_TBsBid8vNzqR7FVho20mUFsqW14/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2EyZmw2ZjVmc3cy/b3NiYm03cndjLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/I0OSb7MqxuKU1A2_TBsBid8vNzqR7FVho20mUFsqW14/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2EyZmw2ZjVmc3cy/b3NiYm03cndjLnBu/Zw" alt="Image description" width="880" height="694"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 6:&lt;/strong&gt; Now, Close the Ledger Live.&lt;/p&gt;

&lt;h2&gt;
  
  
  Connecting to the XDC Web Wallet
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Step 1:&lt;/strong&gt; First, connect and unlock your Ledger Device.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 2:&lt;/strong&gt; Open the XDC Network App on your Ledger Device. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/4KJ_TINMiiQ9SPEBxUrJC0KjrIfJD8_5O75OZ1Y_tVw/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2k1d3ZldDgzOXB6/dWhkN2h4MnI1LnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/4KJ_TINMiiQ9SPEBxUrJC0KjrIfJD8_5O75OZ1Y_tVw/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2k1d3ZldDgzOXB6/dWhkN2h4MnI1LnBu/Zw" alt="Image description" width="880" height="694"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 3:&lt;/strong&gt; Ledger Nano S Plus will show &lt;strong&gt;"Application is ready."&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/JruTbSNxujcxcG2VNqiMpKbDuf0gD0ztl2gR1DLV-UQ/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2RubWY4aGJwZnRp/YzlqdDB1a2htLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/JruTbSNxujcxcG2VNqiMpKbDuf0gD0ztl2gR1DLV-UQ/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2RubWY4aGJwZnRp/YzlqdDB1a2htLnBu/Zw" alt="Image description" width="880" height="546"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 4:&lt;/strong&gt; Open the XDC Web Wallet Application and choose "Hardware Wallets".&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/-WyBrJ023Y5e8-xfCLcQJJed47NJImvvSzPdnpkKiwU/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3BleDBlMnMwNTIx/cWl3cWNnczc1LnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/-WyBrJ023Y5e8-xfCLcQJJed47NJImvvSzPdnpkKiwU/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3BleDBlMnMwNTIx/cWl3cWNnczc1LnBu/Zw" alt="Image description" width="880" height="429"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 5:&lt;/strong&gt; Choose the Hardware "Ledger" and select the "XDC Network" from the dropdown.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/HFFwH-rhMjJR64iKM2kqdl86q87R5qjPNiN5EO36e18/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3RpdHg2bHJmeWVs/ZjZuaTFkZWx2LnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/HFFwH-rhMjJR64iKM2kqdl86q87R5qjPNiN5EO36e18/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3RpdHg2bHJmeWVs/ZjZuaTFkZWx2LnBu/Zw" alt="Image description" width="880" height="429"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 6:&lt;/strong&gt; Confirm the Network details and Click on &lt;strong&gt;"Connect ledger"&lt;/strong&gt; button to connect your Ledger Device with the XDC Web Wallet.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/DRpRx_-5SI7W8At7XWEJeg5qaZ5KFDyV0j2GIvyNijk/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L20zd2FzdmtzODUy/a3E2Y29tMDVhLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/DRpRx_-5SI7W8At7XWEJeg5qaZ5KFDyV0j2GIvyNijk/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L20zd2FzdmtzODUy/a3E2Y29tMDVhLnBu/Zw" alt="Image description" width="880" height="724"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 7:&lt;/strong&gt; Select your Device, “Nano S Plus,” and click on Connect button.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/PZqCagWpVFqrA4-6nUAFcIo70ORoVUHY6uH6D_wPir4/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/LzF4dHAxM2M0OTd0/a29iZmVzeHVlLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/PZqCagWpVFqrA4-6nUAFcIo70ORoVUHY6uH6D_wPir4/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/LzF4dHAxM2M0OTd0/a29iZmVzeHVlLnBu/Zw" alt="Image description" width="670" height="405"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Once you connected to the Ledger device, you will be able to see the message “Ledger Connected.”&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/d5opU3ae3QzZsD7tKrsHnKqlywSandk00RaBqiBHJTE/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3M1d3kxZXR3bmwz/YTFqeXI5ZTE5LnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/d5opU3ae3QzZsD7tKrsHnKqlywSandk00RaBqiBHJTE/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3M1d3kxZXR3bmwz/YTFqeXI5ZTE5LnBu/Zw" alt="Image description" width="641" height="439"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 8:&lt;/strong&gt; Now connect your Ledger device by selecting any ONE address and Network i.e., “XDC Network” (Mainnet/Apothem Network), and click on the “Access my Wallet” button.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/x-ZozehtyCPRv7byjmGpxVE-SR2k7ePLSFHCdGtkGRg/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2lwMWU4MG40OHlh/YjR0NXcxb2RmLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/x-ZozehtyCPRv7byjmGpxVE-SR2k7ePLSFHCdGtkGRg/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2lwMWU4MG40OHlh/YjR0NXcxb2RmLnBu/Zw" alt="Image description" width="664" height="471"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/kT0sUU2I6kTzLuu_1UxmjBgBbEF6pnREkhGRQLXSy2o/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2FiOXozanIzY3Ju/ZzVqN3JqZGgxLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/kT0sUU2I6kTzLuu_1UxmjBgBbEF6pnREkhGRQLXSy2o/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2FiOXozanIzY3Ju/ZzVqN3JqZGgxLnBu/Zw" alt="Image description" width="668" height="651"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 9:&lt;/strong&gt; Once you access the wallet, the dashboard looks like this:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/aONtabjXRzugzy15l7afHmxKoDVGrZZOeOFbGm-E8co/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L256OXk3YXYwNXI2/ZWw1cHZxZ2NzLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/aONtabjXRzugzy15l7afHmxKoDVGrZZOeOFbGm-E8co/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L256OXk3YXYwNXI2/ZWw1cHZxZ2NzLnBu/Zw" alt="Image description" width="875" height="427"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you are using Testnet i.e.,. Apothem network, then you can get the tXDC from the XDC faucet&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/37nwy3lTo9RyiA2OtT2XO_pOdrZQYkGK3jre29HHDEY/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L210c3RjbjlkdGY0/Y3Jpa2duMTRlLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/37nwy3lTo9RyiA2OtT2XO_pOdrZQYkGK3jre29HHDEY/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L210c3RjbjlkdGY0/Y3Jpa2duMTRlLnBu/Zw" alt="Image description" width="511" height="424"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 10:&lt;/strong&gt; Before sending any transaction, Visit the &lt;strong&gt;“Settings”&lt;/strong&gt; tab on your Ledger device, and &lt;strong&gt;Please enable Blind signing or Contract data in the XDC Network app Settings.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/ZidRxV5m35wD1M80ToNr9jLpkIKUUx5SCMQ1NVTAp3s/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3J3ZXYzYjdoZ2g5/Yjh1aDQ0eGt1LnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/ZidRxV5m35wD1M80ToNr9jLpkIKUUx5SCMQ1NVTAp3s/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3J3ZXYzYjdoZ2g5/Yjh1aDQ0eGt1LnBu/Zw" alt="Image description" width="875" height="566"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/d7zaEmFGBYaYO1ewmP3b1gvtC7oqh6g29Z7bxbP3uL8/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2luaXN0cWF2MGtl/eGU3eHF1ZXJyLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/d7zaEmFGBYaYO1ewmP3b1gvtC7oqh6g29Z7bxbP3uL8/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2luaXN0cWF2MGtl/eGU3eHF1ZXJyLnBu/Zw" alt="Image description" width="875" height="561"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 11:&lt;/strong&gt; For sending the &lt;strong&gt;XDC&lt;/strong&gt;, Enter the &lt;strong&gt;XDC Amount&lt;/strong&gt;, &lt;strong&gt;Address&lt;/strong&gt; of the destination wallet address, and click on the &lt;strong&gt;Next&lt;/strong&gt; button.  &lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/PEJKqMduy0ijPIoEvUoNtgTKgvrRLLZfS11oma5XcDM/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3JoaHM5OWI5MXBy/ZWlwZmYzN2M1LnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/PEJKqMduy0ijPIoEvUoNtgTKgvrRLLZfS11oma5XcDM/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3JoaHM5OWI5MXBy/ZWlwZmYzN2M1LnBu/Zw" alt="Image description" width="875" height="431"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If “Blind signing or Contract data” in the XDC Network app settings is &lt;strong&gt;“Not enabled”&lt;/strong&gt; then you will be notified like this:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/OYezynIZp9TN2u08-YbDZKDTQJS1PtdO9emyyat6Mj4/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2J5MjAyMzQ0cmZt/eWMxN3I1ZjN5LnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/OYezynIZp9TN2u08-YbDZKDTQJS1PtdO9emyyat6Mj4/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2J5MjAyMzQ0cmZt/eWMxN3I1ZjN5LnBu/Zw" alt="Image description" width="875" height="430"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 12:&lt;/strong&gt; Confirm the transaction details and click on the &lt;strong&gt;“Confirm &amp;amp; Send”&lt;/strong&gt; button.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/DDL6dNvgzTdKdHUgWtdeZZ827pNQFIBM8QtrDfAYwOc/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L28xNGw0ZWNhYTFv/bDBlcGVmMWZ5LnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/DDL6dNvgzTdKdHUgWtdeZZ827pNQFIBM8QtrDfAYwOc/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L28xNGw0ZWNhYTFv/bDBlcGVmMWZ5LnBu/Zw" alt="Image description" width="636" height="597"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 13:&lt;/strong&gt; Once you confirm the transaction, &lt;strong&gt;Review and sign the transaction&lt;/strong&gt; on your Ledger Device. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/CymfxhC4rSuZidcLO3b90c4XegVcA9qj8Qp81wh1EOY/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/LzZmbzY2YTE0MXBy/eDFldjQzdXRnLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/CymfxhC4rSuZidcLO3b90c4XegVcA9qj8Qp81wh1EOY/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/LzZmbzY2YTE0MXBy/eDFldjQzdXRnLnBu/Zw" alt="Image description" width="875" height="528"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Press the right button on your Ledger Device to review the transaction details (Amount, Address, Nonce, and Max Fees) until you see “Accept and Send.”&lt;/p&gt;

&lt;p&gt;a. Amount Screen&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/NgPi4psA69c6si45BmeqQSIbciBTJlpMBwPAGfELthU/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3VmZ3c1eWlhMzd5/NzZjcTlucGtrLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/NgPi4psA69c6si45BmeqQSIbciBTJlpMBwPAGfELthU/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3VmZ3c1eWlhMzd5/NzZjcTlucGtrLnBu/Zw" alt="Image description" width="875" height="543"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;b. Address Screen&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/z34HvMqH1fg4VE2-vd-CCwE3dFsye5Lmc_-Vy6BG1cI/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/LzFicHY5YW1qbG4y/Y2xlbnpxaWx1LnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/z34HvMqH1fg4VE2-vd-CCwE3dFsye5Lmc_-Vy6BG1cI/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/LzFicHY5YW1qbG4y/Y2xlbnpxaWx1LnBu/Zw" alt="Image description" width="873" height="509"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;c. Nonce Screen&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/Fzia0iBksj1R05_yleW1ERKd0-ujEBZQT2WWF4pQjEU/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3c4ZXpjN3FwYmd4/MGZtZ2Q0cXV2LnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/Fzia0iBksj1R05_yleW1ERKd0-ujEBZQT2WWF4pQjEU/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3c4ZXpjN3FwYmd4/MGZtZ2Q0cXV2LnBu/Zw" alt="Image description" width="875" height="543"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;d. Max Fees Screen&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/iCJB8ba9_A_A-teYvqHBPdsgRif9X9fUlycWNsl7D8U/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L29henZwdjFzZm15/dmpqbTE0aWZzLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/iCJB8ba9_A_A-teYvqHBPdsgRif9X9fUlycWNsl7D8U/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L29henZwdjFzZm15/dmpqbTE0aWZzLnBu/Zw" alt="Image description" width="873" height="468"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;e. Accept &amp;amp; Send Screen&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/487wyiwoe08KzLfmvVjN4coruoIG1IJ1G9eALOWSCAo/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3R5YTQycWJvcHEy/bjFsZ3ZtZXVpLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/487wyiwoe08KzLfmvVjN4coruoIG1IJ1G9eALOWSCAo/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3R5YTQycWJvcHEy/bjFsZ3ZtZXVpLnBu/Zw" alt="Image description" width="875" height="543"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 14:&lt;/strong&gt; Once you &lt;strong&gt;“Accept &amp;amp; Send”&lt;/strong&gt; the transaction, you will see that the transaction has been initiated.  &lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/uDQ_2tM0r-WWqmjBokEMUCxkj-dN7m4d4haCKaplR0g/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3VvMjJwdXV4Mnp1/dG15aGY5Zms5LnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/uDQ_2tM0r-WWqmjBokEMUCxkj-dN7m4d4haCKaplR0g/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3VvMjJwdXV4Mnp1/dG15aGY5Zms5LnBu/Zw" alt="Image description" width="495" height="379"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 15:&lt;/strong&gt; You can check the transactions in the &lt;strong&gt;“Tx History”&lt;/strong&gt; on the right corner of the XDC Web Wallet.    &lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/QU8kvW_UWSKjJD3BaxIY0WjslL3jY2SHgzzFtfMb0i4/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/LzBqb3J2enY4Znht/ZmRod2l0anV3LnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/QU8kvW_UWSKjJD3BaxIY0WjslL3jY2SHgzzFtfMb0i4/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/LzBqb3J2enY4Znht/ZmRod2l0anV3LnBu/Zw" alt="Image description" width="875" height="498"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;By clicking on the Transaction Hash, you can check the transaction details on &lt;a href="https://xdc.blocksscan.io/"&gt;XDC BlocksScan Explorer&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/x8uhBByo29jZcgJDP-LEAxrU11rLMluxZVNM8EHxbnQ/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/LzlnOXZlbXNlMmpx/a2pwMXJoY3huLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/x8uhBByo29jZcgJDP-LEAxrU11rLMluxZVNM8EHxbnQ/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/LzlnOXZlbXNlMmpx/a2pwMXJoY3huLnBu/Zw" alt="Image description" width="875" height="596"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This is how we can Store and Send the XDC tokens to Ledger. In case of any technical queries on XDC Network, feel free to drop your queries on &lt;strong&gt;&lt;a href="https://www.xdc.dev/"&gt;XDC.Dev&lt;/a&gt;&lt;/strong&gt; forum.  &lt;/p&gt;

&lt;h2&gt;
  
  
  Quick links:
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://www.xinfin.org/"&gt;XinFin.org&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://xinfin.org/xdc-chain-network-tools-and-documents"&gt;XDC Chain Network Tools and Documents&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://xdc.network/"&gt;XDC Network Explorer&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://xdc.blocksscan.io/"&gt;XDC Network — BlocksScan Explorer&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://www.xdc.dev/"&gt;XDC Dev Forum&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://wallet.apothem.network/"&gt;XDC Web Wallet&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://faucet.apothem.network/"&gt;XDC faucet&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>hardwarewallet</category>
      <category>ledger</category>
      <category>xdcnetwork</category>
      <category>xdcwebwallet</category>
    </item>
    <item>
      <title>How to Deploy a smart contract with XinFin Remix IDE by connecting Metamask through D'CENT Wallet Software App.</title>
      <dc:creator>Omkar Mestry</dc:creator>
      <pubDate>Tue, 02 Aug 2022 12:32:58 +0000</pubDate>
      <link>https://www.xdc.dev/omkar_mestry_737f5f43d6e1/how-to-deploy-a-smart-contract-with-xinfin-remix-ide-by-connecting-metamask-through-dcent-wallet-software-app-1igb</link>
      <guid>https://www.xdc.dev/omkar_mestry_737f5f43d6e1/how-to-deploy-a-smart-contract-with-xinfin-remix-ide-by-connecting-metamask-through-dcent-wallet-software-app-1igb</guid>
      <description>&lt;p&gt;The MetaMask is a wallet that supports EVM blockchains and is utilised on numerous DApp websites. The MetaMask includes a QR-based mechanism for connecting with accounts in hardware wallets in addition to its own account.&lt;/p&gt;

&lt;p&gt;The D’CENT App offers a feature that uses the QR-based protocol to connect D’CENT accounts (EVM) with Metamask. Users can create Solidity smart contracts using XinFin Remix, a web browser-based Integrated Development Environment (IDE), and then compile, deploy, and execute those smart contracts on the XinFin Blockchain Network.&lt;/p&gt;

&lt;p&gt;The steps to deploy a smart contract with the XinFin Remix IDE by connecting Metamask via the DCENT wallet software app will now be covered.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Let’s start with Metamask.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Once you have unlocked your Metamask wallet, click on the Network button and select XDC Apothem Network.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; If you have not added the Apothem Network, you can add it through the ‘Add Network’ button below the network list.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/qR6BATA3Z_B1LMm0av4xmL8IeLSsZBt_6ASUEtsjnt8/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2x0aGljaDUxZWRl/Y3hrMTludG5mLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/qR6BATA3Z_B1LMm0av4xmL8IeLSsZBt_6ASUEtsjnt8/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2x0aGljaDUxZWRl/Y3hrMTludG5mLnBu/Zw" alt="Image description" width="356" height="602"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/YcBMqQwnuq6NmPrpCR_DVvP6JaH9KnNvH3JGSBkQUDo/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3pneTd0YTgwNTl6/YXhiZTV5OXByLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/YcBMqQwnuq6NmPrpCR_DVvP6JaH9KnNvH3JGSBkQUDo/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3pneTd0YTgwNTl6/YXhiZTV5OXByLnBu/Zw" alt="Image description" width="390" height="618"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Here are the details that need to be entered while adding the network:&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Network Name: XDC Apothem Network&lt;br&gt;
New RPC URL: &lt;a href="https://rpc.apothem.network"&gt;https://rpc.apothem.network&lt;/a&gt;&lt;br&gt;
Chain ID: 51&lt;br&gt;
Currency Symbol: TXDC&lt;br&gt;
Block Explorer URL: &lt;a href="https://apothem.blocksscan.io/"&gt;https://apothem.blocksscan.io/&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;After adding the network, you will be notified that “XDC Apothem Network” was successfully added.  &lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/UiQg6CTnA7-xb8N1VKcIvoJjTjFY6FO1c42ToLUNZdk/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/LzVnbXR3MGRieGlr/cW9rNmx6anNrLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/UiQg6CTnA7-xb8N1VKcIvoJjTjFY6FO1c42ToLUNZdk/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/LzVnbXR3MGRieGlr/cW9rNmx6anNrLnBu/Zw" alt="Image description" width="395" height="123"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How to connect D’CENT Wallet with MetaMask&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Note:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;This function is supported only in Biometric Wallet and App Wallet(Software) mode. Minimum supported version.&lt;/li&gt;
&lt;li&gt;Biometric Wallet firmware version: 2.19.7 or higher&lt;/li&gt;
&lt;li&gt;&lt;p&gt;D’CENT App version: Android (5.16.1 or higher) / iOS (5.16.2 or higher)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The QR-based protocol supported by the MetaMask can only be used when a camera is installed on the computer. &lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/N7GbbSRFfjmOjdnVCYAFrBaMDqCJ5pVr7gTFv-W3Lhs/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2Vwb3I3bzcwMjJh/eXd5cHF4bmRnLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/N7GbbSRFfjmOjdnVCYAFrBaMDqCJ5pVr7gTFv-W3Lhs/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2Vwb3I3bzcwMjJh/eXd5cHF4bmRnLnBu/Zw" alt="Image description" width="804" height="1600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;After running the D’CENT App, enter the &lt;strong&gt;Discovery&lt;/strong&gt; tab and Select &lt;strong&gt;MetaMask Integration&lt;/strong&gt; from the list or type.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/fdwURxyBnTRS-qv1tfS3H7DoUY6af5TCdo9DtRswuoM/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2ZhdnFzZnVtZjFl/MXdwMTVybjZwLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/fdwURxyBnTRS-qv1tfS3H7DoUY6af5TCdo9DtRswuoM/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2ZhdnFzZnVtZjFl/MXdwMTVybjZwLnBu/Zw" alt="Image description" width="720" height="1469"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/GEoH_51GgLK2KVvpGqKulo6pikfMjDmGE028bI0rS-Q/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2tlMXl5OW16bXlt/YmJ2ODRscGhhLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/GEoH_51GgLK2KVvpGqKulo6pikfMjDmGE028bI0rS-Q/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2tlMXl5OW16bXlt/YmJ2ODRscGhhLnBu/Zw" alt="Image description" width="720" height="1455"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Click on the &lt;strong&gt;Go&lt;/strong&gt; button. On the MetaMask integration screen, click on &lt;strong&gt;Connect Metamask account&lt;/strong&gt; button.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/0AI0HNo5ap7DPTzwovBJyG6axOX3JTIZkuHxo15JgkY/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/LzV1cGYwYjZjMTg3/andhYm1xMHlpLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/0AI0HNo5ap7DPTzwovBJyG6axOX3JTIZkuHxo15JgkY/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/LzV1cGYwYjZjMTg3/andhYm1xMHlpLnBu/Zw" alt="Image description" width="720" height="1459"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/y8XSDGsO4obgXmHOK_W_Tyjn0g0Ix4n5rsxYKmQlVtU/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2tzanpwZWV1Z2s5/dmgzOG1maDB2LnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/y8XSDGsO4obgXmHOK_W_Tyjn0g0Ix4n5rsxYKmQlVtU/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2tzanpwZWV1Z2s5/dmgzOG1maDB2LnBu/Zw" alt="Image description" width="720" height="1450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Select the account to be linked from the account selection list and click on Connect button. Once the QR code gets generated, Proceed to further steps.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/cyRsfOKs2YrUZcxByCQGjOjyzI6elJa7oipg4dWZx28/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2N0bW9yNnZ4OWxy/Z3Rqb3U2djJ0LnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/cyRsfOKs2YrUZcxByCQGjOjyzI6elJa7oipg4dWZx28/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2N0bW9yNnZ4OWxy/Z3Rqb3U2djJ0LnBu/Zw" alt="Image description" width="720" height="1453"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/WrBw5iXOX0hLSa8-mXVnuRGuy3X7J-pCgsIWcEbmlHY/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/LzFodTV5YTd3M2Z5/OThkcG5oMGJ1LnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/WrBw5iXOX0hLSa8-mXVnuRGuy3X7J-pCgsIWcEbmlHY/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/LzFodTV5YTd3M2Z5/OThkcG5oMGJ1LnBu/Zw" alt="Image description" width="720" height="1453"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Click on the &lt;strong&gt;Account icon&lt;/strong&gt; at the top right of the MetaMask main page. Now, Click on &lt;strong&gt;Connect Hardware Wallet&lt;/strong&gt; button.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/867xX3HRQ_riepPeTFMVEFwvw-chEDeOmScrmGSjpwU/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/Lzdjcm5wbGh6Nnl6/cHdnd3NnMXY3LnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/867xX3HRQ_riepPeTFMVEFwvw-chEDeOmScrmGSjpwU/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/Lzdjcm5wbGh6Nnl6/cHdnd3NnMXY3LnBu/Zw" alt="Image description" width="355" height="598"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;After selecting QR-based, click the &lt;strong&gt;Continue&lt;/strong&gt; button at the bottom. It switches to the QR code scanning page. (Place the QR code in front of your Camera, The screen will be blurred, but it will not affect the reading.)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/9oFSbUbG0irIGvatST3SWfNrYcZipDHkwBVAe_Sp6jE/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3M1NzZqcGZzdjZq/OXptZWNzZG80LnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/9oFSbUbG0irIGvatST3SWfNrYcZipDHkwBVAe_Sp6jE/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3M1NzZqcGZzdjZq/OXptZWNzZG80LnBu/Zw" alt="Image description" width="418" height="649"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;When the QR code scan is completed normally, it will be converted to the account selection page, Now, select the &lt;strong&gt;First account&lt;/strong&gt; and click &lt;strong&gt;Unlock&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/_k9M2ctNEN38DA_PBjAbgHw5FklTu_94-i52Y1jVOCA/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2p6cnBsc3RsNnM4/bXZvODlqY2UwLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/_k9M2ctNEN38DA_PBjAbgHw5FklTu_94-i52Y1jVOCA/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2p6cnBsc3RsNnM4/bXZvODlqY2UwLnBu/Zw" alt="Image description" width="340" height="441"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You can check the page where the account of the D’CENT wallet and the MetaMask are linked.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/vjwYn6QaiLCXkOcPCf1l2v5rSpe4h_9q6P0yjQtWDvg/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2sxMjJrMjU3OTRv/OXM1ZjJjbTA1LnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/vjwYn6QaiLCXkOcPCf1l2v5rSpe4h_9q6P0yjQtWDvg/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2sxMjJrMjU3OTRv/OXM1ZjJjbTA1LnBu/Zw" alt="Image description" width="356" height="604"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Let’s deploy a smart contract using XinFin Remix:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 1:&lt;/strong&gt; Access the &lt;strong&gt;&lt;a href="https://remix.xinfin.network/"&gt;XinFin Remix&lt;/a&gt;&lt;/strong&gt; and enter the smart contract to compile it.&lt;/p&gt;

&lt;p&gt;Used Contract code:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;// My First Smart Contract

pragma solidity &amp;gt;=0.5.0 &amp;lt;0.7.0;

contract HelloWorld {

function get()public pure returns (string memory){

return ‘Hello World’;

}

}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Step 2:&lt;/strong&gt; Select the respective &lt;strong&gt;compiler version&lt;/strong&gt; and Compile it.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/Cp2H3jBJ5d_hbswHS0c8zvAa07Xg-U89udaYFRsfXrw/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2tod3VhcXo5anQz/MHBlcHhoeXJmLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/Cp2H3jBJ5d_hbswHS0c8zvAa07Xg-U89udaYFRsfXrw/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2tod3VhcXo5anQz/MHBlcHhoeXJmLnBu/Zw" alt="Image description" width="880" height="430"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 3:&lt;/strong&gt; After successful compilation, Go to the Deploy &amp;amp; Run Transaction screen.&lt;/p&gt;

&lt;p&gt;Now, Select the environment as &lt;strong&gt;‘Injected Web3’&lt;/strong&gt; to connect with Metamask.&lt;/p&gt;

&lt;p&gt;On the Metamask screen, select ‘&lt;strong&gt;Connected DCENT wallet’&lt;/strong&gt; account and click on the &lt;strong&gt;Next&lt;/strong&gt; button. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/etMVf4OqcH8IpuHVnygEDRdlGeUgT2ZeOOOKPZbPfjA/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/LzRqYXJndm9wMmEx/aXZuMWUwbTFwLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/etMVf4OqcH8IpuHVnygEDRdlGeUgT2ZeOOOKPZbPfjA/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/LzRqYXJndm9wMmEx/aXZuMWUwbTFwLnBu/Zw" alt="Image description" width="880" height="443"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 4:&lt;/strong&gt; Confirm the address and account balance, and Click on the &lt;strong&gt;Connect&lt;/strong&gt; button.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/67n-NTIpWZjd1yc2U_W1DnvTGkvfsnh_17TT8JfRDK0/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2xibTRweHZoNnJi/OGUzc3lyMmpzLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/67n-NTIpWZjd1yc2U_W1DnvTGkvfsnh_17TT8JfRDK0/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2xibTRweHZoNnJi/OGUzc3lyMmpzLnBu/Zw" alt="Image description" width="355" height="596"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Once the connected DCENT wallet is connected to the Remix successfully then, it will fetch the address of the DCENT wallet through Metamask like this:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/qPYBQAFJG3-cLHpimE3EKfKYSozVQbyV74xhsYxUu3M/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/LzFwaWNuMHN1YTk1/Y3g4NTAxejNjLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/qPYBQAFJG3-cLHpimE3EKfKYSozVQbyV74xhsYxUu3M/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/LzFwaWNuMHN1YTk1/Y3g4NTAxejNjLnBu/Zw" alt="Image description" width="880" height="430"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 5:&lt;/strong&gt; Now click on the &lt;strong&gt;Deploy&lt;/strong&gt; button; Metamask will ask to &lt;strong&gt;Confirm&lt;/strong&gt; the transaction. Click on &lt;strong&gt;Confirm&lt;/strong&gt; button to complete the transaction.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/6iV_78TwT4-pZT0lx35cRJMPRe0UUdmTooXwOkRa3RU/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/LzZwbzg5YXZtN3h0/d2tua2RhMjRwLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/6iV_78TwT4-pZT0lx35cRJMPRe0UUdmTooXwOkRa3RU/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/LzZwbzg5YXZtN3h0/d2tua2RhMjRwLnBu/Zw" alt="Image description" width="880" height="430"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 6:&lt;/strong&gt; After checking the transaction details, click the &lt;strong&gt;Confirm&lt;/strong&gt; button. It switches to the signature request page in QR code format.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/WKIo6tWz49GXOUepir6rLwpwa1yvfPst6-upEzt4FVI/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3ZqN3NqMnFnOW1x/M2Rva2F2ODAzLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/WKIo6tWz49GXOUepir6rLwpwa1yvfPst6-upEzt4FVI/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3ZqN3NqMnFnOW1x/M2Rva2F2ODAzLnBu/Zw" alt="Image description" width="344" height="608"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 7:&lt;/strong&gt; Now, open the DCENT wallet and access the Metamask link (&lt;a href="https://qrbase.dcentwallet.com"&gt;https://qrbase.dcentwallet.com&lt;/a&gt;). &lt;/p&gt;

&lt;p&gt;Scan the Metamask QR code through DCENT App.&lt;/p&gt;

&lt;p&gt;(There are two ways to scan the signature request QR.) &lt;/p&gt;

&lt;p&gt;i. From D’CENT App, go to the Discovery tab and Click on the Metamask QR Scan button.&lt;br&gt;
&lt;a href="https://www.xdc.dev/images/-unDmlCVeYqLwF0b8XWn9dHR0PEXBVn-KDui9xIwwlQ/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2hhd21vNG90aWNp/bXp3bjh3YTV0LnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/-unDmlCVeYqLwF0b8XWn9dHR0PEXBVn-KDui9xIwwlQ/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2hhd21vNG90aWNp/bXp3bjh3YTV0LnBu/Zw" alt="Image description" width="720" height="1429"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;ii. Or, click the QR Scan button at the top left of the Discovery tab.&lt;br&gt;
&lt;a href="https://www.xdc.dev/images/TZT4GBcSf2269DRPfCT-05gtEGE0tQageC0A5iydJ8s/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3R0eXh0emFzc2xt/cG05ZDFtaHY3LnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/TZT4GBcSf2269DRPfCT-05gtEGE0tQageC0A5iydJ8s/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3R0eXh0emFzc2xt/cG05ZDFtaHY3LnBu/Zw" alt="Image description" width="720" height="1456"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 8:&lt;/strong&gt; Scan the signature request QR code generated in &lt;strong&gt;Step 6&lt;/strong&gt;. After scanning, check the from address and click on the &lt;strong&gt;Continue&lt;/strong&gt; button.&lt;br&gt;
&lt;a href="https://www.xdc.dev/images/bPcQW9DBBydkU-li8q0-SvDCPVfPA-jtL-M_yHrhtcE/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3Z6b2FqdGRpN3Fz/OTRrbW9jZ241LnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/bPcQW9DBBydkU-li8q0-SvDCPVfPA-jtL-M_yHrhtcE/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3Z6b2FqdGRpN3Fz/OTRrbW9jZ241LnBu/Zw" alt="Image description" width="720" height="1428"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 9:&lt;/strong&gt; Now, check the Network and other details and click on the &lt;strong&gt;Signing&lt;/strong&gt; button to complete the transaction.&lt;br&gt;
&lt;a href="https://www.xdc.dev/images/nhG6F4G8tTzNtatSonvDF5JkMwJGFTyQAkclH1vMi0E/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2t2ajdwdGNjMmNq/aGNieHNybDJoLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/nhG6F4G8tTzNtatSonvDF5JkMwJGFTyQAkclH1vMi0E/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2t2ajdwdGNjMmNq/aGNieHNybDJoLnBu/Zw" alt="Image description" width="720" height="1442"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;After signing, you can check the signature in QR code format.&lt;br&gt;
&lt;a href="https://www.xdc.dev/images/8QIJrWqiB2gYU1Q3Np_v3_X0bQFVeqerz8ms8agSR-4/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3d2czVoZjlxNmJi/amRjNW9pNHpsLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/8QIJrWqiB2gYU1Q3Np_v3_X0bQFVeqerz8ms8agSR-4/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3d2czVoZjlxNmJi/amRjNW9pNHpsLnBu/Zw" alt="Image description" width="720" height="1428"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 10:&lt;/strong&gt; Now you need to send signed data to MetaMask, for that Click the &lt;strong&gt;Get Signature&lt;/strong&gt; button on the signature request page completed in &lt;strong&gt;Step 6&lt;/strong&gt;.&lt;br&gt;
&lt;a href="https://www.xdc.dev/images/o-UksxVcDT0s4uP68Gyi_F2GXlUmIeGSTPCiVO2D9D8/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3ozZnIxNmZsOG1m/d2RxNXA1eGx5LnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/o-UksxVcDT0s4uP68Gyi_F2GXlUmIeGSTPCiVO2D9D8/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3ozZnIxNmZsOG1m/d2RxNXA1eGx5LnBu/Zw" alt="Image description" width="344" height="608"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 11:&lt;/strong&gt; Once you click the &lt;strong&gt;Get Signatures&lt;/strong&gt; button, you must scan the QR code prepared in &lt;strong&gt;Step 9&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/ZO5BU9NqQcjtzSAEd7Mk35aaEbeqxYcIGD_yoB47vV0/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3R2N2k1ZHd4dHdv/M2oxbDA5OG85LnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/ZO5BU9NqQcjtzSAEd7Mk35aaEbeqxYcIGD_yoB47vV0/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3R2N2k1ZHd4dHdv/M2oxbDA5OG85LnBu/Zw" alt="Image description" width="341" height="609"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This is how you can Deploy your smart contract with XinFin Remix IDE by connecting Metamask through DCENT Software App&lt;br&gt;
&lt;a href="https://www.xdc.dev/images/h_CUqP9B5DvaJab6eQpV_cIyCbLsKT6KJYSQa2z2tAQ/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2R2ZHl2aTVoY3J1/ZHE2dXltb3d1LnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/h_CUqP9B5DvaJab6eQpV_cIyCbLsKT6KJYSQa2z2tAQ/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2R2ZHl2aTVoY3J1/ZHE2dXltb3d1LnBu/Zw" alt="Image description" width="353" height="496"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Deploy your smart contract using DCENT Wallet with XinFin Remix and Metamask, and share your feedback.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Relatable links:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;a href="https://xinfin.org/"&gt;XDC Network&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://remix.xinfin.network/"&gt;XinFin Remix&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://xdc.network/"&gt;XDC Network Explorer&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://xdc.blocksscan.io/"&gt;XDC BlocksScan Explorer&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://chrome.google.com/webstore/detail/metamask/nkbihfbeogaeaoehlefnkodbefgpgknn?hl=en"&gt;Matamask Plugin&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.xdc.dev/"&gt;XDC Dev Forum&lt;/a&gt;
&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>smartcontract</category>
      <category>xinfinremix</category>
      <category>dcentwallet</category>
      <category>xdcnetwork</category>
    </item>
    <item>
      <title>How to update node name in XinFin Masternode?</title>
      <dc:creator>Omkar Mestry</dc:creator>
      <pubDate>Fri, 01 Jul 2022 09:14:26 +0000</pubDate>
      <link>https://www.xdc.dev/omkar_mestry_737f5f43d6e1/how-to-update-node-name-in-xinfin-masternode-3gc6</link>
      <guid>https://www.xdc.dev/omkar_mestry_737f5f43d6e1/how-to-update-node-name-in-xinfin-masternode-3gc6</guid>
      <description>&lt;p&gt;&lt;strong&gt;What is XinFin - XDC Masernode?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A Masternode validates each transaction and is also responsible for writing the transaction onto the truth ledger: the blockchain. As a consequence, this makes decentralized governance of the network possible. Restrictions on nodes that aspire to become Masternodes.&lt;/p&gt;

&lt;p&gt;Here you can check the XDC Staking Information; Total Masternode Count, Total Staked amount, and Current Epoch/Block number.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/wUQd26g7inrybOm8Eh-Na03NEKfq0e_wXMe6yDQxMWA/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2F0bXg5bng4eTRu/a2I2dTV4M3p3LnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/wUQd26g7inrybOm8Eh-Na03NEKfq0e_wXMe6yDQxMWA/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2F0bXg5bng4eTRu/a2I2dTV4M3p3LnBu/Zw" alt="Image description" width="880" height="430"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Let’s learn, How to update your XinFin - XDC Masternode name and other info.&lt;/strong&gt; &lt;br&gt;
(Used Network: Apothem)&lt;/p&gt;

&lt;p&gt;Masternode owners can Log in to the Masternode app using the XDCPay, Private Key, Ledger Wallet, or Trezor Wallet.&lt;/p&gt;

&lt;p&gt;Now, Logged into your Masternode and visit the &lt;strong&gt;&lt;a href="https://mn.apothem.network/"&gt;Home page&lt;/a&gt;&lt;/strong&gt; and click on your Masternode.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/BgALemdYw9lRAehOK-7e1TuvoCR306ed_MphlysFLso/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2VxYm9nOHZvenkw/MDdkaHVpMGxlLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/BgALemdYw9lRAehOK-7e1TuvoCR306ed_MphlysFLso/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2VxYm9nOHZvenkw/MDdkaHVpMGxlLnBu/Zw" alt="Image description" width="880" height="430"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Once you are on your Masternode screen, the Edit option will be shown next to your Masternode name.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/4EZ9q11qRw3ZfA2GFEFM22dNOVriEKnP6DapkirC0dw/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3RmNHQ3ZWUxeTcw/eHptOHhuanlnLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/4EZ9q11qRw3ZfA2GFEFM22dNOVriEKnP6DapkirC0dw/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3RmNHQ3ZWUxeTcw/eHptOHhuanlnLnBu/Zw" alt="Image description" width="880" height="430"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Here you can edit your Masternode Name, and also update the other information such as Hardware name, Data Center Name, Data Center Location, Website, and Telegram link.&lt;/p&gt;

&lt;p&gt;Once you confirmed all the information, click on the Next button. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/xM7phCS9MmhGckh0gKHo78Y4zHyAJYZwsupBGclYqEo/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3Y3OG9pZzBzbGJp/ZzVvcXpjaTIxLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/xM7phCS9MmhGckh0gKHo78Y4zHyAJYZwsupBGclYqEo/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3Y3OG9pZzBzbGJp/ZzVvcXpjaTIxLnBu/Zw" alt="Image description" width="880" height="430"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now you will be redirected to the Confirmation screen, Confirm the information and click on Submit button.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/CzCfIFSIN854fWTdNz6gl1o8m3qe4YkzPnI6qjTnrOI/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3oxMWdxZ2k3ZXN3/endqdGRyeHdwLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/CzCfIFSIN854fWTdNz6gl1o8m3qe4YkzPnI6qjTnrOI/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3oxMWdxZ2k3ZXN3/endqdGRyeHdwLnBu/Zw" alt="Image description" width="880" height="346"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You will be notified that “Your Masternode information has been updated successfully!”&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/dikW-6syqo2MyFeDqm0nfzsf_4_9q1oQmLiX9q_d5Yo/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2dibWZ4eGx4enUw/N2E5MGF4Nnc3Lmpw/ZWc" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/dikW-6syqo2MyFeDqm0nfzsf_4_9q1oQmLiX9q_d5Yo/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L2dibWZ4eGx4enUw/N2E5MGF4Nnc3Lmpw/ZWc" alt="Image description" width="880" height="463"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And you can check the updated name of your Masternode on Home Screen.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/images/XgQmiWu3NhDumQnwYet4WDkeU3kaWvQl3xLacjDEGi8/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3p0eW5wbnVkaTkx/ODQ5Ym13eGdnLnBu/Zw" class="article-body-image-wrapper"&gt;&lt;img src="https://www.xdc.dev/images/XgQmiWu3NhDumQnwYet4WDkeU3kaWvQl3xLacjDEGi8/w:880/mb:500000/ar:1/aHR0cHM6Ly93d3cu/eGRjLmRldi91cGxv/YWRzL2FydGljbGVz/L3p0eW5wbnVkaTkx/ODQ5Ym13eGdnLnBu/Zw" alt="Image description" width="880" height="430"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Check out the Important link regarding XinFin - XDC Masternode:&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://mn.xinfin.network/"&gt;XinFin - XDC Mainnet Masternode&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://mn.apothem.network/"&gt;XinFin - XDC Apothem Masternode&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.xdc.dev/anilchinchawale/introduction-to-the-xdc-network-masternode-app-with-improved-features-3353"&gt;XDC Network Masternode App with Improved Features.&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=PCpwoK9A6_A"&gt;Watch here, How to Setup XinFin Blockchain Node Masternode with just One Click.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://xinfin.org/setup-masternode.php"&gt;Guide To Set Up XinFin Master Node.&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
