跳转到主要内容
Change page

ERC-1363 可支付代币标准

简介

什么是 ERC-1363?

ERC-1363 是 ERC-20 代币的扩展接口,支持在单笔交易中,在转账后对接收方合约或在授权后对花费方合约执行自定义逻辑。

与 ERC-20 的区别

标准的 ERC-20 操作(如 transfertransferFromapprove)不允许在没有单独交易的情况下在接收方或花费方合约上执行代码。 这增加了用户界面开发的复杂性并阻碍了采用,因为用户必须等待第一笔交易执行完毕,然后再提交第二笔交易。 他们还必须支付两次 Gas。

ERC-1363 使同质化代币能够更轻松地执行操作,并且无需使用任何链下监听器即可工作。 它允许在单笔交易中,在转账或授权之后,对接收方或花费方合约进行回调。

前提条件

为了更好地理解本页面,我们建议您先阅读以下内容:

正文

ERC-1363 为 ERC-20 代币引入了标准 API,以便在 transfertransferFromapprove 之后与智能合约进行交互。

该标准提供了转账代币的基本功能,并允许代币被授权以便由另一个链上第三方花费,然后对接收方或花费方合约进行回调。

有许多关于可以接受 ERC-20 回调的智能合约的提议用途。

例如:

  • 众筹:发送代币会触发即时奖励分配。
  • 服务:支付可一步激活服务访问权限。
  • 发票:代币自动结算发票。
  • 订阅:授权年费可在首月付款时激活订阅。

由于这些原因,它最初被命名为 “可支付代币 (Payable Token)”

回调行为进一步扩展了其效用,实现了无缝交互,例如:

  • 质押:转账代币会触发质押合约中的自动锁定。
  • 投票:收到代币会在治理系统中登记投票。
  • 兑换:代币授权可一步激活兑换逻辑。

在所有需要在收到转账或授权后执行回调的情况下,ERC-1363 代币均可用于特定用途。 ERC-1363 还可以通过验证接收方处理代币的能力,来避免智能合约中的代币丢失或代币锁定。

与其他 ERC-20 扩展提案不同,ERC-1363 不会覆盖 ERC-20 的 transfertransferFrom 方法,并定义了要实现的接口 ID,从而保持与 ERC-20 的向后兼容性。

摘自 EIP-1363 (opens in a new tab)

方法

实现 ERC-1363 标准的智能合约必须实现 ERC1363 接口中的所有函数,以及 ERC20ERC165 接口。

想要通过 transferAndCalltransferFromAndCall 接受 ERC-1363 代币的智能合约必须实现 ERC1363Receiver 接口:

想要通过 approveAndCall 接受 ERC-1363 代币的智能合约必须实现 ERC1363Spender 接口:

延伸阅读

页面最后更新: 2025年4月4日