HTTP API / WALLET CLIENT
payX402WithHazbaseWallet
@hazbase/kit/walletが呼び出すHTTP APIのパス・引数・レスポンスを確認できます。認証・パスキーなどの追加APIは、認証SDKのリファレンスと実装ガイドで扱います。
APIごとに、利用者セッション・署名・操作権限の要件が異なります。以下の仕様と、利用するAPI環境の接続条件を確認してください。 APIの利用方法を確認
POST /api/payments/x402/hazbase-wallet/pay
リクエスト
@hazbase/kit/wallet
payX402WithHazbaseWallet(input: PayX402WithHazbaseWalletInput): Promise<X402HazbaseWalletPaymentResult>emailSessionをAuthorization: Bearerヘッダーに設定します。
deviceBindingIdとhighTrustTokenによる操作承認が必要です。
| 項目 | 型 | 必須 | 送信先 |
|---|---|---|---|
emailSession | string | 必須 | Authorization header |
paymentRequestId | string | 必須 | JSON body |
smartAccountAddress | string | 必須 | JSON body |
deviceBindingId | string | 必須 | JSON body |
highTrustToken | string | 必須 | JSON body |
accountSalt | string | 任意 | JSON body |
waitForReceipt | boolean | 任意 | JSON body |
expectedAmountAtomic | string | 任意 | JSON body |
expectedPayTo | string | 任意 | JSON body |
endpoint | string | 任意 | SDKの接続パス上書き |
POSTではContent-Type: application/jsonとx-request-idを付与します。x-request-idは処理の追跡用で、API全体の冪等性を保証するものではありません。
レスポンス
typescript
export type X402HazbaseWalletPaymentResult = {
paymentRequestId: string;
paymentAttemptId: string;
xPaymentHash: string;
paid: boolean;
verified: boolean;
settled: boolean;
payer: string;
chainId: number;
network: string;
relayMode?: string;
submittedUserOpHash?: string | null;
transactionHash?: string | null;
gasEstimate?: Record<string, unknown>;
xPayment?: string | null;
receipt?: Record<string, unknown> | null;
status?: string;
errorCode?: string;
retryAfterMs?: number;
};ネストした型はSDKリファレンスで確認できます。SDKはトップレベルの応答と、dataで包まれた応答を処理します。
X402HazbaseWalletPaymentResult失敗時の確認
非2xxの応答はHazbaseWalletApiErrorとして扱われます。status、code、messageを記録し、機能固有のエラーとネットワーク障害を区別してください。秘密情報をログに出さないようにしてください。
エラーとトラブル対応