> For the complete documentation index, see [llms.txt](https://docs.rei.network/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.rei.network/rei-dao/guides/become-a-validator.md).

# Become a Validator

A validator is a participant in the network who runs validator nodes to run and secure the network. Here are some steps to run a validator node in REI Network:

### Step1: Setup a validator node

Following quick start to setup your nodes and make sure your validator node is fully synced.

{% content-ref url="/pages/6CdUh9Iy8YsITMWrDaej" %}
[Quick Start](/developer/quick-start.md)
{% endcontent-ref %}

#### Minimum system requirements

* RAM: 16GB
* CPU: 4-core
* Storage: 500G SSD
* Bandwidth: 10Mb/s

#### Recommended system requirements

* RAM: 32GB
* CPU: 8-core
* Storage: 1T SSD
* Bandwidth: Unlimited

### Step2: Submit a Validator Profile

This repository (repo) provides the details about offchain informations of validators.

{% embed url="<https://github.com/REI-Network/rei-validator>" %}
REI Validator Profile Guideline
{% endembed %}

### Step3: Vote/Stake to your node

You can stake on REI Network by following the guides below:

{% content-ref url="/pages/t05HLuas9pX9QEoe9QfA" %}
[Voting for a Validator](/rei-dao/guides/voting-for-a-validator.md)
{% endcontent-ref %}

### Step4: Set commission rate

Commission rate represents the proportion of the validator's reward, which is a number from 0 to 100. It can only be set by the validator, and the interval between 2 modifications cannot be less than **24 hours**.

> Eg: If a validator sets the Commission rate to 40, then 40% of the rewards he receives will be distributed to all users who voted for this validator.

{% tabs %}
{% tab title="UI" %}

* Navigate to <https://dao.rei.network/#/stake>&#x20;
* If the address in your wallet is a validator address, there will be a `Set Commission Rate` button appears beside `Voting to Validator`

![Set Commission Rate](/files/FFqdrybTtcQYLfciZLme)

* Click on `Set Commission Rate` and enter a percent number you wanna share with voters

![Set Commission Rate](/files/hUq3gIA0E9ByKZzlwJJL)
{% endtab %}

{% tab title="Ethers" %}

```typescript
import { getDefaultProvider, Wallet } from "ethers";
import { StakeManager__factory } from "@rei-network/contracts";

const provider = getDefaultProvider("https://rpc-mainnet.rei.network");

const wallet = new Wallet("yourPrivateKey", provider);

const stakeManager = StakeManager__factory.connect(
  "0x0000000000000000000000000000000000001001",
  wallet
);

stakeManager
  .setCommissionRate("commissionRate")
  .then(() => {
    // ...
  })
  .catch(() => {
    // ...
  });
```

{% endtab %}
{% endtabs %}

### Step5: Claim validator reward

{% tabs %}
{% tab title="UI" %}
Click on `Get Reward` and Claim block producer rewards in the validator list

![](/files/FFqdrybTtcQYLfciZLme)

![](/files/Ku3U88y0R4F30TzVqYHa)
{% endtab %}

{% tab title="Ethers" %}

```typescript
import { getDefaultProvider, Wallet } from "ethers";
import { StakeManager__factory } from "@rei-network/contracts";

const provider = getDefaultProvider("https://rpc-mainnet.rei.network");

const wallet = new Wallet("yourPrivateKey", provider);

const stakeManager = StakeManager__factory.connect(
  "0x0000000000000000000000000000000000001001",
  wallet
);

stakeManager
  .startClaim("receiveAddress", "claimAmount")
  .then(() => {
    // ...
  })
  .catch(() => {
    // ...
  });
```

{% endtab %}
{% endtabs %}

{% hint style="warning" %}
Node: The reward will be vested for 7 days before you can finally claim it, checkout [ ](/rei-dao/guides/voting-for-a-validator.md#claim-vested-stake)[Claim Vested Stake ](/rei-dao/guides/voting-for-a-validator.md#claim-vested-stake)
{% endhint %}
