メインコンテンツへスキップ
Embedded Walletを導入する際、本番ネットワークでトランザクションを送信するためにはガス代を支払う必要があります。 手数料オプションは、一定期間のみ有効なガス代の見積もりを提供します(これはSequenceスタック特有の仕組みです)。 トランザクションを正常に送信するには、いくつかの方法があります:
  • テストネット:テストネットを利用する場合、Sequenceでのトランザクションは無料で、SDK呼び出し時に手数料オプションを入力する必要はありません。
  • スポンサー付きコントラクトまたはウォレット:スマートコントラクトやウォレットがスポンサーされている場合、SDK呼び出し時に手数料オプションの入力が不要です。コントラクトやウォレットのスポンサー方法についてはこちらをご覧ください。
  • 手数料オプション:Sequence APIを使ってカスタムの手数料見積もりと手数料オプションオブジェクトを取得し、両方をwaas sdk呼び出しに渡します。詳細はこちら
WaaS APIから以下のレスポンスが返ってきた場合は、コントラクトやウォレットのスポンサー設定、または手数料オプションの実装が必要です。

手数料オプションの実装方法

以下の「手数料オプション」フローを実装する前に、対象ネットワークのネイティブ通貨でトランザクションを実行するための十分な資金がウォレットにあることを確認してください。 トークンをウォレットに送金するか、Web SDKソリューションのオンランプ機能を利用できます。 また、以下のパッケージがインストールされていることを確認してください。
1

手数料オプション&手数料見積もりの汎用API

リクエストに手数料オプションを渡すには、まずsequence.feeOptions({...})を呼び出す必要があります。これは次のcheckTransactionFeeOptions関数でラップされています:
以下の例では、sequence変数は@0xsequence/waas npmパッケージからWaasConfigKeyProjectAccessKeyを使って初期化されたEmbedded ウォレットオブジェクトです。方法はこちらをご覧ください。
2

トランザクションとともに手数料オプション&手数料見積もりを作成する方法

ERC20トランザクションの実装方法

ERC1155 / ERC721トランザクションの実装方法

ERC721の場合は、erc1155({...})erc721({...})に置き換え、sequence.sendERC721({...})を呼び出してください。

ネイティブ通貨トランザクションの実装方法

カスタムコントラクトトランザクションの実装方法