# Generating wallet keys

All key generation should happen in your `~/cnode/keys/` directory.

```bash
cd ~/cnode/keys/
```

## 1) Create a payment wallet

Generate a payment-only wallet (`myWallet`) for paying transaction fees and the pool deposit:

```bash
02_genPaymentAddrOnly.sh myWallet cli
ls -al
```

![](/files/-MTGXGPU1QL8FiAaQwBq)

## 2) Check the wallet balance

```bash
01_queryAddress.sh myWallet
```

![](/files/-MTGyalPxmrlLtRQGyDv)

The wallet is empty — expected for a new address.

{% hint style="info" %}
You need approximately **505 ADA** to complete pool registration:
{% endhint %}

| Purpose                | Amount                                           |
| ---------------------- | ------------------------------------------------ |
| Pool key deposit       | 500 ADA (refunded when you de-register the pool) |
| Delegation key deposit | \~2 ADA                                          |
| Transaction fees       | \~3 ADA                                          |

{% hint style="info" %}
Send 505 ADA to the address shown by the query command above, then verify the balance before continuing.
{% endhint %}

After funding, verify the balance:

```bash
01_queryAddress.sh myWallet
```

![](/files/-MTGz4XPdzQksWOUIdSf)

## 3) Create a staking/pledge address

Generate the address that will hold your pool's pledge:

```bash
03a_genStakingPaymentAddr.sh poolOwner cli
ls -al poolOwner*
```

![](/files/-MTGZ9dqX9K_y7U5jwdj)

## 4) Register the stake key on-chain

Register the owner stake key. `myWallet` pays for the transaction and deposit:

```bash
03b_regStakingAddrCert.sh poolOwner myWallet
```

![](/files/-MTGzSIHeRaSyoSw4pAV)

## 5) Verify registration

```bash
03c_checkStakingAddrOnChain.sh poolOwner
```

![](/files/-MTGzmokj1jlHS-d-a5x)

The payment wallet and pledge wallet are ready. Continue to generating pool keys.


---

# Agent Instructions: 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://cardano-node-installation.stakepool247.eu/cardano-block-producer-configuration/generating-wallet-keys.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.
