<!-- Source: https://docs.infraio.xyz/pt-BR/wallet/custom-network -->

# Use a sua carteira em uma nova rede

Qualquer rede da lista do app funciona. Se a sua rede não estiver listada, você pode
adicionar uma **rede EVM personalizada**. O seu endereço é o mesmo em todas as redes EVM, então
você não precisa criar uma nova carteira.

## Requisitos

A rede deve ser EVM e precisa suportar o que a carteira exige:

- **ERC-4337 EntryPoint v0.7** no endereço padrão.
- Os contratos de carteira **Kernel v3.3** e o **validador de passkey (WebAuthn)**,
  implantados nos seus endereços padrão.
- Um endpoint de **bundler**.
- Opcional: um **precompile de verificação de assinatura P-256** ([RIP-7212](https://github.com/ethereum/RIPs/blob/master/RIPS/rip-7212.md)).
  Sem ele, as assinaturas de passkey são verificadas em código de contrato e as taxas são maiores.

## 1. Abra Adicionar rede personalizada

Abra **Carteira → Redes → Adicionar rede personalizada**.

## 2. Informe a URL do RPC

Informe a URL do RPC da rede. O app lê o chain ID a partir do RPC e
o verifica. Você também pode informar uma **URL de bundler** opcional.

## 3. Deixe o app verificar a rede

O app verifica os contratos on-chain e informa se a rede pode
hospedar a carteira. Se não puder, o app mostra o motivo, como um
EntryPoint ausente ou um validador ausente.

## 4. Abasteça o seu endereço

Abra **Receber**, escolha a nova rede e envie um pouco da **moeda nativa** dela para
o seu endereço. O endereço é o mesmo das suas outras redes EVM.

## 5. Faça o seu primeiro envio

O seu primeiro envio na rede configura a carteira nela (ela é "implantada"). Uma
**taxa de configuração única** é cobrada, paga com o seu saldo da moeda nativa da rede.
Depois disso, os envios pagam apenas a taxa de rede normal.

> **Note:**
>
> Receber funciona antes da configuração. Fundos enviados ao seu endereço na rede
> antes de a carteira ser configurada ficam seguros no seu endereço.

## Se os contratos não existirem em uma chain

Se a verificação indicar que o EntryPoint, os contratos Kernel ou o validador não estão
na chain, **a carteira ainda não pode funcionar nela**. Alguém precisa primeiro implantar
os contratos canônicos. Os deployers determinísticos do ERC-4337 e da ZeroDev permitem que
qualquer pessoa os implante nos endereços padrão. Veja a documentação pública de implantação:

- [Documentação do ERC-4337](https://docs.erc4337.io)
- [Documentação do ZeroDev Kernel](https://docs.zerodev.app)
- [Repositório dos contratos Kernel](https://github.com/zerodevapp/kernel)

Depois que forem implantados, execute a verificação novamente.

## Solução de problemas

### Sem bundler

O app não consegue enviar sem um bundler. Informe uma URL de bundler para a rede ao
adicioná-la, ou edite a rede e adicione uma. Confirme que o bundler suporta
EntryPoint v0.7 nessa chain.

### Chain ID não corresponde

O chain ID retornado pelo RPC precisa corresponder à rede que você informou. Confira se
a URL do RPC pertence à rede certa e se você não colou uma URL de testnet
para uma mainnet.

### A taxa parece alta

Se a rede não tem o precompile P-256 (RIP-7212), a assinatura da passkey é
verificada em código de contrato, o que consome mais gas. Isso é esperado. O
operador da rede precisa adicionar o precompile para reduzir o custo.

### Fundos foram enviados antes da configuração

Eles estão seguros. O seu endereço existe em todas as redes EVM, e os fundos enviados para ele
continuam sendo seus. Abasteça o endereço com a moeda nativa e faça o seu primeiro envio para
configurar a carteira.

## Relacionados

- [Receber e enviar](https://docs.infraio.xyz/pt-BR/wallet/receive-send)
- [FAQ](https://docs.infraio.xyz/pt-BR/wallet/faq)
