メインコンテンツへスキップ
Change page

ERC-1363 Payable Token標準

ページを編集 (opens in a new tab)

はじめに

ERC-1363とは?

ERC-1363は、送金後の受信先コントラクト、または承認後のspenderコントラクトでカスタムロジックを実行することを、すべて単一のトランザクション内でサポートするERC-20トークンの拡張インターフェースです。

ERC-20との違い

transfertransferFromapproveのような標準的なERC-20の操作では、別のトランザクションを使用せずに受信先やspenderコントラクトでコードを実行することはできません。 ユーザーは最初のトランザクションが実行されるのを待ってから2つ目のトランザクションを送信しなければならないため、これはユーザーインターフェース (UI) 開発における複雑さや、普及における摩擦をもたらします。 また、ガスを2回支払う必要もあります。

ERC-1363により、代替可能トークン (Fungible Token) はより簡単にアクションを実行できるようになり、オフチェーンのリスナーを使用せずに機能するようになります。 これにより、送金や承認の後に、受信先またはspenderコントラクトへのコールバックを単一のトランザクションで行うことができます。

前提条件

このページをより深く理解するために、まずは以下の記事を読むことをお勧めします。

本文

ERC-1363は、transfertransferFrom、またはapproveの後にERC-20トークンがスマート・コントラクトと対話するための標準APIを導入します。

この標準は、トークンを送金する基本的な機能を提供するだけでなく、オンチェーンの第三者が消費できるようにトークンを承認し、その後、受信先またはspenderコントラクトでコールバックを行う機能を提供します。

ERC-20のコールバックを受け入れることができるスマート・コントラクトの用途は数多く提案されています。

例としては以下の通りです。

  • クラウドセール: トークンの送信により、即座に報酬の割り当てがトリガーされます。
  • サービス: 支払いがワンステップでサービスへのアクセスを有効にします。
  • 請求書: トークンが自動的に請求書を決済します。
  • サブスクリプション: 年間料金を承認することで、最初の月の支払いと同時にサブスクリプションが有効になります。

これらの理由から、当初は**「Payable Token」**と名付けられました。

コールバックの動作はその有用性をさらに広げ、以下のようなシームレスな対話を可能にします。

  • ステーキング: 送金されたトークンが、ステーキングコントラクトでの自動ロックをトリガーします。
  • 投票: 受け取ったトークンが、ガバナンスシステムに投票を登録します。
  • スワップ: トークンの承認が、ワンステップでスワップロジックを有効にします。

ERC-1363トークンは、送金や承認の受け取り後にコールバックを実行する必要があるすべてのケースにおいて、特定のユーティリティとして使用できます。 また、ERC-1363は、受信者がトークンを処理する能力があるかを確認することで、スマート・コントラクト内でのトークンの喪失やロックを回避するのにも役立ちます。

他のERC-20拡張提案とは異なり、ERC-1363はERC-20のtransferおよびtransferFromメソッドをオーバーライドせず、ERC-20との下位互換性を維持しながら実装すべきインターフェースIDを定義しています。

EIP-1363 (opens in a new tab)より:

メソッド

ERC-1363標準を実装するスマート・コントラクトは、ERC1363インターフェースのすべての関数、およびERC20ERC165インターフェースを実装しなければなりません (MUST)

transferAndCallまたはtransferFromAndCallを介してERC-1363トークンを受け入れたいスマート・コントラクトは、ERC1363Receiverインターフェースを実装しなければなりません (MUST)

approveAndCallを介してERC-1363トークンを受け入れたいスマート・コントラクトは、ERC1363Spenderインターフェースを実装しなければなりません (MUST)

参考文献

ページの最終更新: 2025年4月4日