Router
Un router es el contrato inteligente de un exchange descentralizado que recibe la solicitud de swap de un usuario y la dirige a través del pool de liquidez adecuado, o de una secuencia de pools, para completar la operación. Los usuarios y las interfaces rara vez interactúan directamente con pools individuales; llaman al router, que se encarga de encontrar la ruta, ejecuta operaciones de varios saltos (multi-hop) y aplica las protecciones del usuario, como la salida mínima y los plazos límite de la transacción.
Un ejemplo concreto: quieres hacer un swap de un token pequeño, digamos el token A, por el token B, pero no existe un pool A/B directo. El router de Uniswap construye una ruta —de A a WETH y luego de WETH a B— y ejecuta ambos saltos de forma atómica en una sola transacción. Si cualquiera de los saltos falla o la salida final queda por debajo de tu tolerancia de slippage, toda la operación se revierte y conservas tus tokens originales. El router también envuelve y desenvuelve ETH automáticamente, ya que los pools contienen WETH y no ETH nativo.
Como los routers son el contrato al que concedes aprobaciones de tokens, son críticos para la seguridad: aprobar un contrato malicioso que imita a un router es una forma habitual de que vacíen las billeteras, por lo que los usuarios deben verificar las direcciones de los contratos a través de interfaces oficiales. Un error común es creer que el router fija los precios; los precios proceden de los propios pools, y el router se limita a encontrar y ejecutar la ruta. Los agregadores de DEX extienden la misma idea a muchos exchanges a la vez, compitiendo para encontrar mejores rutas que el router de cualquier protocolo individual.