Resumen
Un endpoint RPC público de Sepolia es una URL HTTP compartida y sin registro que te permite leer el estado de la cadena y transmitir transacciones de prueba en la testnet Sepolia de Ethereum. Es la forma más rápida de apuntar una billetera, Hardhat, Foundry o un script de ethers/viem a Sepolia antes de comprometerte con un plan de pago.
Esta página te proporciona la configuración exacta de la cadena, un endpoint público funcional de OnFinality, notas sobre faucet y depuración, y una breve guía sobre cuándo un endpoint compartido es suficiente y cuándo deberías pasar a un nodo dedicado.
Sepolia es la testnet principal de aplicaciones de Ethereum. Si estás desplegando un contrato, probando el flujo de una billetera o configurando un trabajo de CI, necesitas un endpoint RPC que responda a eth_chainId, eth_getBalance y eth_sendRawTransaction de forma lo suficientemente fiable como para terminar el trabajo. Un endpoint público te lleva allí en menos de un minuto.
Esta página es una referencia, no un discurso de venta. Obtienes la configuración exacta de la cadena, un endpoint público funcional, ejemplos de solicitudes, notas sobre faucet y depuración, y una línea clara para saber cuándo un endpoint compartido deja de ser la herramienta adecuada.
Configuración de la cadena de un vistazo
Utiliza estos valores al agregar Sepolia a una billetera, una configuración de framework o un script de despliegue. Coinciden con la página de red Sepolia de OnFinality.
| Configuración | Valor |
|---|---|
| Nombre de la red | Ethereum Sepolia |
| Chain ID | 11155111 |
| Símbolo de moneda | ETH (Sepolia Ether) |
| Decimales | 18 |
| Explorador de bloques | https://sepolia.etherscan.io |
| RPC público (OnFinality) | https://eth-sepolia.api.onfinality.io/public |
| Transporte | HTTP JSON-RPC |
El ETH de Sepolia no tiene valor de mercado. Ese es el punto: te permite probar la lógica de transferencia de valor, la estimación de gas y las rutas de fallo sin arriesgar fondos reales. También significa que la red es resistente a reinicios pero no de grado de producción, así que trata cualquier elección de endpoint aquí como un ensayo para la mainnet.
Cuándo un endpoint público es la opción adecuada
Un endpoint público compartido suele ser la elección correcta cuando:
- Estás prototipando, aprendiendo o ejecutando un script puntual.
- Estás validando un contrato antes de un despliegue en mainnet.
- Necesitas una URL de respaldo en una billetera o configuración de dApp.
- Tu volumen de solicitudes es bajo y en ráfagas, no sostenido.
Cambia a un endpoint gestionado o dedicado cuando cualquiera de estas condiciones se cumpla:
- Tu suite de pruebas se ejecuta en cada commit y golpea el endpoint cientos de veces por minuto.
- Dependes de
eth_getLogsen rangos amplios de bloques o de métodosdebug_/trace_. - Necesitas suscripciones WebSocket para pruebas basadas en eventos.
- Necesitas un comportamiento predecible bajo carga, no un uso compartido de mejor esfuerzo.
Si ya has superado la fase de prototipado, compara las opciones en Precios de RPC y la lista completa de redes RPC compatibles antes de comprometerte. Para un marco más amplio, consulta cómo elegir un proveedor de RPC.
Agregar Sepolia a una billetera
La mayoría de las billeteras aceptan una red personalizada. Completa los campos exactamente como se indican arriba. Un error común es pegar una URL RPC de mainnet con el chain ID de Sepolia, o al revés. Si la billetera muestra un saldo de cero para una dirección que financiaste, verifica primero el chain ID.
Para pruebas basadas en navegador, también puedes agregar la red programáticamente con EIP-1193:
await window.ethereum.request({
method: "wallet_addEthereumChain",
params: [{
chainId: "0xaa36a7", // 11155111
chainName: "Ethereum Sepolia",
nativeCurrency: { name: "Sepolia Ether", symbol: "ETH", decimals: 18 },
rpcUrls: ["https://eth-sepolia.api.onfinality.io/public"],
blockExplorerUrls: ["https://sepolia.etherscan.io"]
}]
});
Verificar el endpoint con curl
Antes de depurar tu aplicación, confirma que el endpoint responde. Dos llamadas cubren la mayoría de los casos: chain ID y último bloque.
curl -s https://eth-sepolia.api.onfinality.io/public \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"eth_chainId","params":[]}'
curl -s https://eth-sepolia.api.onfinality.io/public \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":2,"method":"eth_blockNumber","params":[]}'
eth_chainId debería devolver 0xaa36a7. Si devuelve 0x1, estás apuntando a la mainnet de Ethereum. Si eth_blockNumber devuelve un valor hexadecimal que sigue aumentando entre llamadas, el endpoint está activo.
Integrarlo en ethers o viem
En un script o prueba, el endpoint es solo una URL. Guárdalo en una variable de entorno para poder cambiarlo sin editar el código.
import { JsonRpcProvider } from "ethers";
const provider = new JsonRpcProvider(
process.env.SEPOLIA_RPC_URL ?? "https://eth-sepolia.api.onfinality.io/public"
);
const network = await provider.getNetwork();
console.log(network.chainId); // 11155111n
const block = await provider.getBlockNumber();
console.log("latest block", block);
Con viem, la misma idea:
import { createPublicClient, http } from "viem";
import { sepolia } from "viem/chains";
const client = createPublicClient({
chain: sepolia,
transport: http("https://eth-sepolia.api.onfinality.io/public")
});
console.log(await client.getBlockNumber());
Obtener ETH de prueba de un faucet
No puedes desplegar ni enviar transacciones sin ETH de Sepolia. Los faucets son la fuente estándar. La mayoría requieren un pequeño saldo en mainnet, un inicio de sesión social o una verificación estilo proof-of-work para limitar el abuso.
Notas prácticas:
- Los goteos de los faucets son pequeños. Presupuesta varias solicitudes si vas a realizar despliegues repetidos.
- Algunos faucets limitan la tasa por dirección, IP o antigüedad de la cuenta. Si uno se niega, prueba otro en lugar de reintentar el mismo.
- La disponibilidad de los faucets cambia. Trata cualquier faucet específico como una conveniencia, no como una dependencia en tu pipeline de CI.
- Si una transacción está atascada, verifica el nonce antes de solicitar más ETH. Una transacción pendiente con un nonce bajo bloqueará las posteriores.
Para fallos relacionados con nonces, consulta el artículo complementario sobre qué es un nonce en las transacciones blockchain.
Depurar los fallos que realmente encontrarás
La mayoría de los problemas de Sepolia no son exóticos. Se dividen en unas pocas categorías, y cada una tiene una verificación rápida.
| Síntoma | Causa probable | Primera verificación |
|---|---|---|
Error de discrepancia de chainId | Red incorrecta en la billetera o configuración | Llama a eth_chainId; espera 0xaa36a7 |
| El saldo muestra cero | Dirección incorrecta, cadena incorrecta o faucet no confirmado | Compara dirección y chain ID; revisa el explorador |
nonce too low | Transacción pendiente obsoleta | Inspecciona las transacciones pendientes de la dirección |
insufficient funds for gas | Goteo del faucet no llegó o pico de gas | Verifica el saldo y la tarifa base actual |
eth_getLogs no devuelve nada | Rango demasiado amplio o dirección/tema incorrectos | Reduce el rango de bloques; vuelve a verificar los temas |
| La solicitud expira bajo carga | Limitación del endpoint compartido | Reintenta con retroceso; considera un nodo dedicado |
| La llamada al contrato se revierte localmente pero no en la cadena | Estado obsoleto o etiqueta de bloque incorrecta | Fija blockTag o actualiza el proveedor |
Un hábito útil: registra el objeto de error JSON-RPC sin procesar, no solo el mensaje. Los campos code y data suelen indicarte si el problema es tu solicitud, el estado de tu cuenta o el endpoint.
Público versus gestionado versus dedicado
Sepolia es una testnet, pero la decisión de infraestructura tiene la misma forma que en mainnet. La diferencia es cuánto estás dispuesto a cambiar comodidad por control.
| Opción | Ideal para | Compromiso |
|---|---|---|
| Endpoint público de OnFinality | Prototipado, scripts de bajo volumen, URL de respaldo | Capacidad compartida, sin SLA |
| API RPC de OnFinality | Aplicaciones que necesitan una clave estable, límites más altos y acceso a múltiples redes | Requiere un plan |
| Nodo dedicado de OnFinality | Suites de CI, consultas de archivo, métodos trace/debug, pruebas WebSocket | Mayor costo, más configuración |
OnFinality proporciona acceso a la API RPC e infraestructura de nodos dedicados en muchas redes, incluidas Sepolia y Base Sepolia. Si tu carga de trabajo de pruebas está creciendo, las páginas del servicio de API RPC y del nodo dedicado describen los dos caminos. También puedes revisar los precios de RPC para ver cuál se adapta a tu etapa.
Una breve lista de verificación de preparación para producción
Incluso para una testnet, ayuda tratar el endpoint como parte de tu sistema:
- Fija el chain ID en la configuración y verifícalo al inicio.
- Mantén al menos dos endpoints y cambia a uno alternativo ante errores repetidos.
- Agrega reintentos con retroceso exponencial para fallos transitorios.
- Almacena en caché
eth_chainIdynet_version; no cambian. - Evita rangos ilimitados de
eth_getLogs; divídelos en fragmentos. - Registra los ID de solicitud y los códigos de error para poder correlacionar fallos.
- Separa las rutas de lectura y escritura para que una escritura atascada no bloquee las lecturas.
Si estás probando en más de una L2, se aplica el mismo patrón. Base Sepolia usa el chain ID 84532 y un endpoint diferente; consulta la página de red Base Sepolia para su configuración.
Puntos clave
- El chain ID de Sepolia es 11155111; el endpoint público de OnFinality es
https://eth-sepolia.api.onfinality.io/public. - Verifica cualquier endpoint con
eth_chainIdyeth_blockNumberantes de depurar tu aplicación. - Los endpoints públicos son adecuados para prototipado y scripts de bajo volumen; cambia a un endpoint gestionado o dedicado para cargas de trabajo de CI, archivo, trace o WebSocket.
- La mayoría de los errores de Sepolia son discrepancias de chain ID, problemas de nonce o retrasos del faucet, no caídas del endpoint.
- Mantén un endpoint de respaldo y reintenta con retroceso para suavizar los problemas de capacidad compartida.
Preguntas frecuentes
¿Qué es el endpoint RPC público de Sepolia?
Un endpoint RPC público de Sepolia es una URL HTTP JSON-RPC compartida para la testnet Sepolia de Ethereum. El endpoint público de OnFinality es https://eth-sepolia.api.onfinality.io/public. No requiere registro y es adecuado para prototipado y uso de bajo volumen.
¿Cuál es el chain ID de Sepolia?
El chain ID de Sepolia es 11155111, que en hexadecimal es 0xaa36a7. Confírmalo siempre con eth_chainId antes de enviar transacciones.
¿Es seguro un endpoint público de Sepolia para producción?
Sepolia es una testnet, así que "producción" aquí significa tus cargas de trabajo de prueba y CI. Un endpoint público compartido está bien para uso ligero, pero para carga sostenida, consultas de archivo o métodos trace/debug, un endpoint gestionado o dedicado es una mejor opción.
¿Por qué mi saldo de Sepolia muestra cero después de usar un faucet?
Verifica tres cosas: la dirección que financiaste, el chain ID en tu billetera y si la transacción del faucet se ha confirmado en el explorador. Los goteos de los faucets son pequeños y a veces se retrasan.
¿Puedo usar WebSockets en un endpoint público de Sepolia?
Los endpoints públicos suelen ser solo HTTP. Si tus pruebas dependen de eth_subscribe o flujos de eventos, usa un endpoint gestionado o dedicado que admita transporte WebSocket.
¿Cómo depuro nonce too low en Sepolia?
Enumera las transacciones pendientes de la dirección. Una transacción atascada con un nonce bajo bloquea las posteriores. Espera a que se confirme, reemplázala con una tarifa más alta o restablece el nonce de la cuenta en tu entorno de desarrollo local.
¿Dónde puedo encontrar otros endpoints de testnet?
OnFinality publica la configuración de red para muchas cadenas. Explora las redes RPC compatibles para encontrar el endpoint y el chain ID correctos para cada testnet que uses.