支払いタイプ
ペイマスターは、ガス料金の処理方法に柔軟性を提供する3つの支払いタイプをサポートしています。各タイプは異なるメリットとトレードオフを提供します。
タイプ0:無料ガス(スポンサード)
開発者がユーザーのガス料金を完全にスポンサーします。以下のケースに最適です:
- ユーザーのオンボーディング
- プロモーションキャンペーン
- UXの簡素化
- GameFiアプリケーション
このタイプを使用するには、pm_sponsor_useropを呼び出す際にコンテキストオブジェクトでtype: 0を設定します。
タイプ1:ERC20での前払い
ユーザーはトランザクション実行前にERC20トークンでガスを支払います:
- 検証フェーズ中に全額の見積もりが事前に収集されます
- 実行後に余剰分は返金されます
- トランザクション前にトークン承認が必要です
このタイプを使用するには:
- コンテキストオブジェクトで
type: 1を設定します - コンテキストオブジェクトに
tokenアドレスを含めます - ユーザーがペイマスターコントラクトにトークンを使用する権限を与えていることを確認します
タイプ2:ERC20での後払い
ユーザーはトランザクション実行後にERC20トークンでガスを支払います:
- トランザクション完了後に正確なガスコストのみが収集されます
- 実行前にトークン承認が必要です
- ユーザーは必要な分だけ支払うため、UXが向上します
- UserOperationがトークンを使い果たした場合、実行後の支払い失敗のリスクがあります
このタイプを使用するには:
- コンテキストオブジェクトで
type: 2を設定します - コンテキストオブジェクトに
tokenアドレスを含めます - ユーザーがペイマスターコントラクトにトークンを使用する権限を与えていることを確認します
適切な支払いタイプの選択
どの支払いタイプを使用するかを決定する際には、以下の要素を考慮してください:
- タイプ0(無料):新規ユーザー獲得に最適ですが、開発者のコストが増加します
- タイプ1(前払い):より信頼性が高いですが、ユーザーは必要な量よりもわずかに多くのトークンを持っている必要があります
- タイプ2(後払い):最高のユーザーエクスペリエンスを提供しますが、失敗のリスクがあります
ほとんどのアプリケーションでは、初回ユーザーや特定のアクションには無料ガスを提供し、通常の操作にはトークン支払いを使用するなど、支払いタイプの組み合わせを使用しています。