Una aprobación de WETH es una llamada a approve() en el contrato WETH9 que permite a otra dirección - un router de DEX, un pool de préstamos, un marketplace de NFT - mover hasta una cantidad establecida de tu WETH con transferFrom(). Hacer wrap y unwrap no necesitan aprobación; cualquier cosa que un contrato de terceros haga con tu WETH sí la necesita. De las últimas 100 transacciones enviadas a WETH9 en Ethereum el 2 de octubre de 2026, 24 fueron aprobaciones, y 20 de esas usaron aproximadamente 46 000 gas porque crearon un allowance desde cero (Etherscan). La regla: aprueba el contrato que vas a usar, para lo que vas a usar, y revoca lo que ya no uses.

Puntos clave
  • La aprobación es para terceros: deposit(), withdraw() y transfer() actúan sobre tu propio saldo y no necesitan aprobación; transferFrom() por un router, pool o marketplace sí la necesita.
  • Porcentaje del tráfico: las aprobaciones fueron 24 de 100 transacciones enviadas a WETH9 en los bloques 26 105 189-26 105 250 el 2 de octubre de 2026, junto con 46 depósitos y 26 retiros (Etherscan).
  • La primera aprobación cuesta el doble: 20 de esas 24 usaron 46 000-46 400 gas para crear un nuevo allowance, contra 24 000-29 000 gas para cambiar uno existente - 46 000 / 24 000 = 1.9 veces más.
  • Ilimitado significa ilimitado: WETH9 trata un allowance de 2^256-1 como infinito y nunca lo reduce - aproximadamente 1.16 x 10^59 WETH, contra 2 031 131 WETH en existencia en el bloque 26 105 247 (Ethereum RPC).

Qué es una aprobación de WETH

Una aprobación de WETH es una entrada en la tabla de allowances del contrato WETH9: propietario, spender, cantidad. approve(spender, cantidad) la escribe y emite un evento Approval; transferFrom(propietario, destinatario, cantidad), llamada por el spender, verifica la entrada, mueve el WETH y reduce el allowance por la cantidad movida. La aprobación no mueve ningún WETH por sí misma y no lo bloquea; el WETH permanece en tu dirección hasta que el spender use su allowance.

Los tokens ERC-20 funcionan de esta manera porque un contrato no puede retirar tokens que nunca fue autorizado a retirar, y WETH existe precisamente para que el ETH pueda participar en ese flujo (qué es WETH). El ETH nativo no tiene tabla de allowances: se envía, nunca se retira, por eso los contratos DeFi piden WETH en su lugar (por qué existe WETH).

Cuándo necesitas aprobar WETH y cuándo no

La pregunta siempre es quién mueve el WETH: tú, o un contrato en tu nombre.

Acción Aprobación necesaria Por qué
Envolver ETH en WETH (deposit) No el contrato WETH9 mintea al llamador
Desenvolver WETH en ETH (withdraw) No el llamador quema su propio saldo
Enviar WETH a una dirección (transfer) No el propietario mueve su propio saldo
Intercambiar WETH en un DEX Sí, al router el router retira WETH con transferFrom()
Suministrar WETH a un mercado de préstamos Sí, al pool el pool retira el depósito
Pujar con WETH en un marketplace de NFT Sí, al contrato del marketplace la venta se liquida retirando WETH del pujador
Puentear WETH a través de un contrato puente Sí, al puente o gateway el puente retira WETH antes de enviarlo

Las primeras tres filas son las que Cómo desenvolver WETH y ETH a WETH describen: ningún paso de aprobación aparece en ellas porque no existe. Una interfaz que pide una aprobación antes de un wrap o un unwrap está enrutando a través de otro contrato, no llamando a WETH9 directamente.

Allowances limitados vs ilimitados

Un allowance puede ser la cantidad exacta de la siguiente acción o el valor máximo que el contrato acepta. En WETH9 el máximo, 2^256-1, es especial: transferFrom() omite la deducción cuando el allowance es igual a él, así que una aprobación cubre cada transferencia futura de ese spender (fuente verificada de WETH9, Etherscan).

  • Cantidad exacta: cada swap o depósito necesita su propio approve() primero; el spender nunca puede tomar más que la cantidad aprobada.
  • Ilimitado: un approve() para todo uso futuro; el spender puede mover cualquier WETH que la dirección tenga hasta que se revoque la aprobación.

El equilibrio es gas contra exposición. Una aprobación ilimitada ahorra una aprobación por uso, aproximadamente 24 000-46 000 gas cada vez; también deja permiso permanente con un contrato que más tarde podría ser actualizado, explotado o abandonado.

Cuánto cuesta una aprobación de WETH

Una aprobación cuesta una tarifa de red en ETH y nada más. El gas depende de si ya existe un allowance:

Tipo de aprobación Gas usado (Etherscan, 2 de octubre de 2026) Tarifa en mainnet a 5.6 gwei, ETH $2 690.75
Nuevo allowance desde cero 46 000-46 400 aproximadamente $0.70
Cambio de un allowance existente 24 000-29 000 aproximadamente $0.36-$0.44

Las unidades de gas se derivan de la tarifa y el precio del gas de aprobaciones individuales; la columna USD usa el precio promedio del gas y el precio de ETH de Etherscan del 28 de septiembre de 2026. En layer 2 las unidades de gas son similares y el precio del gas es cientos de veces menor, del mismo modo que lo es para wraps y unwraps (costos de gas de WETH). De cualquier manera la tarifa se paga en ETH, así que una dirección que solo tiene WETH no puede aprobar nada.

Por qué WETH no tiene función Permit

WETH9 se desplegó en diciembre de 2017, antes de que EIP-2612 definiera permit(), la función que permite a un holder de tokens otorgar un allowance con una firma off-chain en lugar de una transacción. WETH9 solo tiene deposit, withdraw, totalSupply, approve, transfer y transferFrom, y su código no puede cambiarse, así que cada aprobación de WETH en Ethereum es una transacción on-chain pagada en ETH.

Existen dos alternativas. El contrato Permit2 de Uniswap acepta una aprobación ordinaria de WETH y luego permite que gastos posteriores sean autorizados por firma. Los tokens envueltos más nuevos incluyen permit: wstETH de Lido implementa EIP-2612 (wstETH vs WETH). Para WETH9 mismo la primera aprobación siempre es una transacción.

Cómo verificar y revocar aprobaciones de WETH

  1. Lista los allowances: abre el verificador de aprobaciones de tokens del explorador de la red (Etherscan, Basescan, Arbiscan) o una herramienta dedicada como revoke.cash, e ingresa tu dirección.
  2. Encuentra las entradas de WETH: cada fila muestra el contrato spender, el allowance (exacto o ilimitado) y cuándo se estableció.
  3. Revoca lo que ya no uses: revocar envía approve(spender, 0) desde tu dirección; confírmalo en la billetera y paga la tarifa en ETH.
  4. Repite en cada red: una aprobación en WETH de Base es separada de una en WETH de Ethereum, porque cada red tiene su propio contrato WETH (WETH en Base).

Qué no puede hacer una aprobación

  • No puede mover ETH: el allowance cubre solo el saldo de WETH en ese contrato, nunca el ETH nativo en la misma dirección.
  • No puede exceder tu saldo: transferFrom() falla si el propietario tiene menos WETH de lo solicitado, cualquiera sea el allowance.
  • No puede cruzar redes: las aprobaciones viven en el contrato WETH de cada red por separado.
  • No puede deshacerse hacia atrás: revocar detiene retiros futuros; el WETH ya movido por el spender permanece movido.

Aprobaciones de WETH FAQ

No. Un allowance en WETH9 permanece hasta que se agota con transferFrom() o se reemplaza con una nueva llamada approve(); no hay límite de tiempo en el contrato.