> For the complete documentation index, see [llms.txt](https://docs.validator247.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.validator247.com/testnet/xrpl-evm-network.md).

# XRPL EVM network

#### ![🌐](https://discord.com/assets/34f5679881a6a6e3.svg) **Main Links**,

* &#x20;**Website:** [xrplevm.org](https://xrplevm.org/),
* &#x20;**Ecosystem Map:** [xrplevm.org](https://ecosystem.xrplevm.org/),
* &#x20;**Testnet Faucet:** [faucet.xrplevm.org](https://faucet.xrplevm.org/),
* &#x20;**Explorer:** [explorer.xrplevm.org](https://explorer.xrplevm.org/),

```
RPC: https://xrplevm-testnet-rpc.validator247.com
API: https://xrplevm-testnet-api.validator247.com 
```

* &#x20;**Governance:** [governance.xrplevm.org/xrp](https://governance.xrplevm.org/xrp),
* &#x20;**Discord invite link:** <https://discord.gg/xrplevm>,

\---

#### &#x20;**Bridges & Interop**,

* &#x20;**Squid Router Testnet UI:** [xrpl.squidrouter.com](https://testnet.xrpl.squidrouter.com/),
* &#x20;**Axelar GMP Explorer:** [testnet.axelarscan.io/gmp](https://testnet.axelarscan.io/gmp/search)

### Manual Install <a href="#installation" id="installation"></a>

Update system

```
sudo apt update
sudo apt-get install git curl build-essential make jq gcc snapd chrony lz4 tmux unzip bc -y
```

Install Go

```
rm -rf $HOME/go
sudo rm -rf /usr/local/go
cd $HOME
curl https://dl.google.com/go/go1.22.1.linux-amd64.tar.gz | sudo tar -C/usr/local -zxvf -
cat <<'EOF' >>$HOME/.profile
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export GO111MODULE=on
export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin
EOF
source $HOME/.profile
go version
```

Install node

Download binanry /  config and init app /  download genesis and addrbook / &#x20;

```
cd $HOME
git clone https://github.com/xrplevm/node.git
cd node
git checkout v8.0.0
make install
```

```
echo "export WALLET="your_key_name"" >> $HOME/.bash_profile
echo "export MONIKER="your_nodename"" >> $HOME/.bash_profile
echo "export XRPL_CHAIN_ID="xrplevm_1449000-1"" >> $HOME/.bash_profile
echo "export XRPL_PORT="26"" >> $HOME/.bash_profile
source $HOME/.bash_profile
```

```bash
exrpd config set client chain-id $XRPL_CHAIN_ID
exrpd init $MONIKER --chain-id $XRPL_CHAIN_ID
```

```bash
curl -L https://raw.githubusercontent.com/Validator247/XRP-EVM-network/main/genesis.json -o $HOME/.exrpd/config/genesis.json
curl -L https://raw.githubusercontent.com/Validator247/XRP-EVM-network/main/addrbook.json -o $HOME/.exrpd/config/addrbook.json
```

Set  peer:

```
PEERS=6c5b34685a0c1956bde097914e42bc537f5ca5c7@79.137.70.143:26646,4a132daa35f22194e332cea80f5e25e7b28f2786@5.9.87.231:26656,7cabf7bab8e3353c8e2281c346ab238a85730ff1@34.58.215.3:26656,07f0f2211261aa2209062f63d069ed515613a281@65.21.22.55:45656,83d0356d348c3b0a7501fd674356e38ebc72b514@148.72.141.64:26616
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = \"$PEERS\"/" $HOME/.exrpd/config/config.tom
```

Custom Port

```
sed -i.bak -e "s%:1317%:${XRPL_PORT}317%g;
s%:8080%:${XRPL_PORT}080%g;
s%:9090%:${XRPL_PORT}090%g;
s%:9091%:${XRPL_PORT}091%g;
s%:8545%:${XRPL_PORT}545%g;
s%:8546%:${XRPL_PORT}546%g;
s%:6065%:${XRPL_PORT}065%g" $HOME/.exrpd/config/app.toml

sed -i.bak -e "s%:26658%:${XRPL_PORT}658%g;
s%:26657%:${XRPL_PORT}657%g;
s%:6060%:${XRPL_PORT}060%g;
s%:26656%:${XRPL_PORT}656%g;
s%^external_address = \"\"%external_address = \"$(wget -qO- eth0.me):${XRPL_PORT}656\"%;
s%:26660%:${XRPL_PORT}660%g" $HOME/.exrpd/config/config.toml
```

```bash
# config pruning
sed -i -e "s/^pruning *=.*/pruning = \"custom\"/" $HOME/.exrpd/config/app.toml 
sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = \"100\"/" $HOME/.exrpd/config/app.toml
sed -i -e "s/^pruning-interval *=.*/pruning-interval = \"19\"/" $HOME/.exrpd/config/app.toml

# set minimum gas price, enable prometheus and disable indexing
sed -i 's|minimum-gas-prices =.*|minimum-gas-prices = "0axrp"|g' $HOME/.exrpd/config/app.toml
sed -i -e "s/prometheus = false/prometheus = true/" $HOME/.exrpd/config/config.toml
sed -i -e "s/^indexer *=.*/indexer = \"null\"/" $HOME/.exrpd/config/config.toml

# create service file
sudo tee /etc/systemd/system/exrpd.service > /dev/null <<EOF
[Unit]
Description=XRPL EVM node
After=network-online.target
[Service]
User=$USER
WorkingDirectory=$HOME/.exrpd
ExecStart=$(which exrpd) start --home $HOME/.exrpd
Restart=on-failure
RestartSec=5
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF

# enable and start service
sudo systemctl daemon-reload

sudo systemctl enable exrpd

sudo systemctl restart exrpd 

sudo journalctl -u exrpd -fo cat

```

```
# to create a new wallet
exrpd keys add your_key_name
```

```
# to restore exexuting wallet
exrpd keys add your_key_name --recover
```

<pre><code><strong># check sync status
</strong>exrpd status 2>&#x26;1 | jq 
</code></pre>

```
# check balance
exrpd query bank balances your_key_name
```

### Create validator <a href="#create-validator" id="create-validator"></a>

```
cd $HOME
# Create validator.json file
echo "{\"pubkey\":{\"@type\":\"/cosmos.crypto.ed25519.PubKey\",\"key\":\"$(exrpd comet show-validator | grep -Po '\"key\":\s*\"\K[^"]*')\"},
    \"amount\": \"1000000uxrp\",
    \"moniker\": \"test\",
    \"identity\": \"\",
    \"website\": \"\",
    \"security\": \"\",
    \"details\": \"I love blockchain ❤️\",
    \"commission-rate\": \"0.1\",
    \"commission-max-rate\": \"0.2\",
    \"commission-max-change-rate\": \"0.01\",
    \"min-self-delegation\": \"1\"
}" > validator.json

# Create a validator using the JSON configuration
exrpd tx staking create-validator validator.json \
    --from $WALLET \
    --chain-id xrplevm_1449000-1 \
	--gas auto --gas-adjustment 1.5
	
```

Delete Node

```
sudo systemctl stop exrpd
sudo systemctl disable exrpd
sudo rm -rf /etc/systemd/system/exrpd.service
sudo rm $(which exrpd)
sudo rm -rf $HOME/.exrpd
sed -i "/XRPL_/d" $HOME/.bash_profile
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.validator247.com/testnet/xrpl-evm-network.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
