> For the complete documentation index, see [llms.txt](https://developers.ent.unwallet.world/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developers.ent.unwallet.world/02_usecase/04_request-to-send-transaction.md).

# unWallet ユーザーに対してトランザクション送信をリクエストする

## 手順

### 1. unWallet 認証を終わらせる

unWallet ユーザーに対してトランザクション送信をリクエストするためには、該当ユーザーがリクエスト元となる認証アプリケーションとの接続を認可している必要があります。この認可は [unWallet 認証](/02_usecase/01_connect-to-unwallet.md) の中で行われますので、まずはこちらを終わらせてください。

### 2. トランザクションチケットトークンを発行する

[POST /issueTransactionTicket](/01_spec/01_http-endpoint/01_interface/01_blockchain.md#issuetransactionticket) を利用して、トランザクションチケットトークンを発行してください。なお、この処理はアプリケーションのバックエンドで行なってください。

### 3. トランザクション送信をリクエストする

クライアントサイド SDK の `sendTransaction` を実行し、unWallet ユーザーに対してトランザクション送信をリクエストしてください。なお、`sendTransaction` の引数である `ticketToken` には、前段で発行したトランザクションチケットトークンを指定してください。それ以外の引数には、前段でトランザクションチケットトークンを発行した際に指定した値と同じ値を指定してください。

{% hint style="info" %}
`sendTransaction` の詳細な仕様については [こちら](/01_spec/02_client-side-sdk/02_interface.md#sendtransaction) を参照してください。
{% endhint %}

リクエストが不正とみなされてしまう場合は、前段で登録した認証アプリケーションの `allowedCallerOrigins` が正しく設定されているかを確認してください。

なお、`sendTransaction` の返り値には送信したトランザクションに関する情報が含まれます。後続の処理で利用しますので、適宜保存しておいてください。

### 4. トランザクションのステータスを確認する

[GET /getTransaction](/01_spec/01_http-endpoint/01_interface/01_blockchain.md#gettransaction) を利用して、送信したトランザクションのステータスを確認することができます。

リクエスト直後のステータスは `pending` ですが、該当トランザクションがブロックチェーンに取り込まれると `success` または `failure` に変わります。このことを考慮して後続の処理を行なってください。
