フロントエンド統合
手数料オプション
この内容では、SequenceスタックのEmbedded Walletを使ってトランザクションを送信する際のガス代に関する手数料オプションの実装方法について詳しく説明しています。
Embedded Walletを導入する際、本番ネットワークでトランザクションを送信するためにはガス代を支払う必要があります。
手数料オプションは、一定期間のみ有効なガス代の見積もりを提供します(これはSequenceスタック特有の仕組みです)。
トランザクションを正常に送信するには、いくつかの方法があります:
- テストネット:テストネットを利用する場合、Sequenceでのトランザクションは無料で、SDK呼び出し時に手数料オプションを入力する必要はありません。
- スポンサー付きコントラクトまたはウォレット:スマートコントラクトやウォレットがスポンサーされている場合も、SDK呼び出し時に手数料オプションを入力する必要はありません。スポンサーについてはこちらをご覧ください。
- 手数料オプション:Sequence APIを使ってカスタムの手数料見積もりと手数料オプションオブジェクトを取得し、両方をwaas sdk呼び出しに渡します。詳細はこちら。
WaaS APIから以下のレスポンスが返ってきた場合は、コントラクトやウォレットのスポンサー設定、または手数料オプションの実装が必要です。
手数料オプションの実装方法
以下の「手数料オプション」フローを実装する前に、対象ネットワークのネイティブ通貨でトランザクションを実行するための十分な資金がウォレットにあることを確認してください。
ウォレットにトークンを送金するか、Web SDKソリューションのオンランプ機能を利用してください。
また、以下のパッケージがインストールされていることを確認してください。
1
手数料オプション&手数料見積もりの汎用API
リクエストに手数料オプションを渡すには、まずsequence.feeOptions({...})
を呼び出す必要があります。これは次のcheckTransactionFeeOptions
関数でラップされています:
以下の例では、sequence
変数は@0xsequence/waas
npmパッケージからWaasConfigKey
とProjectAccessKey
を使って初期化されたEmbedded ウォレットオブジェクトです。方法はこちらをご覧ください。