Qué define EIP-681
EIP-681 es una propuesta de mejora de Ethereum (Ethereum Improvement Proposal), publicada en el repositorio de EIP, que describe un formato de URI para pedir a alguien que envíe ether o llame a una función de un contrato. La URI empieza por ethereum:, seguido de la dirección de destino, un @ y un ID de cadena opcionales, y un nombre de función y parámetros de consulta opcionales. Una cartera que escanea un código así puede montar la transacción para que el usuario la revise.
Una solicitud sencilla de ether se ve así: ethereum:0x...@1?value=1e18. El valor se da en wei, la unidad más pequeña del ether, y se permite la notación científica, así que 1e18 significa un ether. El ID de cadena indica a la cartera qué red se pretende usar, por ejemplo 1 para la red principal de Ethereum.
Transferencias de tokens
EIP-681 también puede describir una llamada a un contrato de tokens. En una transferencia de tokens, la dirección de destino es el contrato del token, la función es transfer y los parámetros dan el destinatario y el importe, como en ethereum:0xTokenContract@1/transfer?address=0xRecipient&uint256=1e6. El importe está en la unidad más pequeña del token, que depende de los decimales del token.
La compatibilidad de las carteras con el formato completo varía. Algunas leen solo la dirección, y otras ignoran el ID de cadena o la llamada a la función, así que conviene probar un código con las carteras que usan tus pagadores. El pagador debe comprobar siempre la red, el token y el destinatario antes de confirmar.