> ## Documentation Index
> Fetch the complete documentation index at: https://docs.hostlinku.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 請求・残高

> Hostlinkuのクレジット残高の仕組み、チャージ方法、およびトークンあたりの料金の算出基準

Hostlinkuの課金は、\*\*米ドル建てのクレジット残高（プリペイド）\*\*に基づいています。チャット補完のリクエストごとに、実際に使用されたトークン数に応じて残高から差し引かれます。必須の月額サブスクリプションはなく、隠れた費用もありません。

## 口座残高

残高は、ユーザーごとに1つのクレジットアカウントとして管理され、以下のフィールドで構成されます：

| フィールド | 意味 |
| - | - |
| `balance` | 口座の残高合計（米ドル）。 |
| `reserved` | 現在処理中のリクエストによって保留されている残高の一部（推定値）。 |
| `available` | `balance − reserved`。この番号は、新規リクエストに使用できます。 |
| `lifetimeTopup` | アカウント作成以降のチャージ総額。 |
| `lifetimeUsage` | 利用料金の累計総額。 |
| `lowBalanceThreshold` | コンソールでの残高不足の警告閾値（デフォルトは25ドル）。 |

この値はコンソールの**クレジット/残高**メニューで確認でき、セッションAPI `GET /api/wallet/account`（コンソールで使用）を通じて利用可能です。アプリケーションでは、各レスポンスおよびログの履歴において、リアルタイムの基準値は引き続き`hostlinku.cost`となります。

## 残高のチャージ

1. [console.hostlinku.com](https://console.hostlinku.com) にアクセスし、**「Billing」→「Pembayaran」** を選択してください。
2. 「クレジット」プランを選択するか、その他の金額を入力してください（特定のプランでは自動的にボーナスが付与されます）。
3. お支払い方法をお選びください：

| 方法 | プロバイダー | 種類 |
| - | - | - |
| **QRIS** | iPaymu | 電子ウォレットまたはモバイルバンキングからのスキャン（ルピア） |
| **バーチャル口座** | iPaymu | BCA、BNI、BRI、Mandiriなどの銀行振込（ルピア） |
| **暗号資産** | BlockBee | BlockBeeの決済ページ（USD）経由でのUSDT、USDC、その他のコイン |

管理者がまだ有効化していないメソッドは、**「未有効化」**というラベルが付いたまま表示されます。
4\. QRコード、VA番号、または仮想通貨の支払いリンクが記載された決済ページに移動します。このページは安全に更新でき、**保留中の支払い**から再度開くことができます。
5\. お支払いを完了してください。プロバイダーのウェブフックが検証されると、手動での確認なしにクレジットが**自動的に反映**されます。

APIの観点からは、そのプロセスは以下の通りです：

```http theme={null}
POST https://api.hostlinku.com/api/wallet/topup
Content-Type: application/json
Cookie: hl_session=…   # sesi console
```

```json theme={null}
{
  "credits": 100,
  "method": "qris"
}
```

`method` = `qris`、`va`（`"channel": "bca"`などを追加）、または`crypto`。 レスポンスには、`topupId`およびQRコード／VA番号／支払いURLが含まれます。ステータスは`GET /api/wallet/topup/{topupId}`を通じて監視されます。 サーバーの検証では、チャージポリシー（最小/最大額は管理者が設定、技術的な上限は1取引あたり10,000ドル）の範囲外の金額を`400 BAD_REQUEST`で拒否し、設定されていないプロバイダーを`402 PAYMENT_REQUIRED`で拒否します。

クレジットと支払いは併用できません

トップアップは**アカウント残高**を増やすものであり、APIキーの制限を増やすものではありません。APIキーごとのクレジット制限（例：1日あたり5ドル）を設定している場合、トップアップを行ってもその制限は増加しません。制限を変更するには、APIキーの設定で変更してください。

## 費用の算定基準

各リクエストの料金は、**トークン単位**で、適用される顧客モデルに応じた価格に基づいて計算されます：

```text theme={null}
biaya = (token input non-cache  × harga_input_per_token)
      + (token output           × harga_output_per_token)
      + (token cache read       × harga_cache_read)   ← bila model mendukung caching
      + (token cache write      × harga_cache_write)  ← bila model mendukung caching
```

* キャッシュトークンは、入力トークンの**一部**であり、それとは別の追加要素ではありません。キャッシュから提供されたトークンにはそれぞれキャッシュ料金が課され、残りの入力トークンには入力料金が課されます。したがって、同じトークンに対して二重に課金されることはありません。
* 各モデルの価格（入力/出力、キャッシュ価格がある場合はそれを含む）はカタログに記載されています。[モデル](https://docs.hostlinku.com/ja/models.md)およびコンソールの**モデル**メニューをご参照ください。 `GET /v1/models`のレスポンスに記載されている数値は、使用されているService Mode API keyにおけるkreditの**1Mトークン**あたりの価格（1 kredit = \$1）であり、1トークンあたりや1,000トークンあたりの価格ではありません。
* トークンはレスポンスの`usage`に基づいて計算されます。usageが利用できない場合、Hostlinkuは保守的な推定値を使用し、その値が請求対象となります（これはめったに発生しません）。
* ここでいうキャッシュとは、`usage`（`prompt_tokens_details.cached_tokens` / `cache_write_tokens`）で報告されている**プロバイダー固有のプロンプトキャッシュ**のことです。Hostlinkuはレスポンスのコピーを保存せず、プロバイダー間のキャッシュを混在させることもありません。 有効化の方法や実際の節約事例については、[プロンプトキャッシュによる節約](https://docs.hostlinku.com/ja/prompt-caching.md)をご覧ください。
* ストリーミングの場合、料金はストリーミング終了後に計算されます。`hostlinku.cost`ブロックの値は引き続き正確です。
* 浮動小数点数の丸め誤差を避けるため、計算はマイクロ米ドル単位で行われ、その後、小数点以下8桁の形式で表示されます。

## `402 PAYMENT_REQUIRED`はいつ登場したのですか？

コード402は常に**クレジットが必要**であることを意味しますが、メッセージによってその原因が異なります：

| メッセージ | 意味 | 措置 |
| - | - | - |
| `このリクエストにはクレジット残高が不足しています。` | `available` \< 費用見積依頼 | コンソールでの残高チャージ |
| `Limit kredit API key tercapai (kredit x dari y …).` | リセットごとにAPIキーは`credit_limit`に設定されます | リセットを待つか、制限を変更するか、別のAPIキーを使用してください |
| `Payment provider belum dikonfigurasi.`（チャージ時） | 設定で決済プロバイダーが無効になっています | 別のプロバイダーを選択するか、管理者にお問い合わせください |

## 取引履歴

残高の変動はすべて台帳に記録され、コンソールの「**取引**」（チャージ、利用、返金）で、ステータス、金額、決済方法、参照番号を確認できます。APIセッション：`GET /api/wallet/transactions`（キーセットおよび取引ごとの詳細のページネーションに対応）。

残高を安全に保つ

コンソールで`lowBalanceThreshold`を設定してください。残高がその閾値に達すると、コンソールが通知を行うため、402エラーにより本番リクエストが失敗する前に、残高を補充することができます。


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.