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

# テストモード

> 安心してテスト、リスクなし。

## すべてをテスト、何も壊さない。

実際の取引なしで統合全体を構築・テスト。実際の課金なし、実際の出金なし、安全な実験のみ。

<CardGroup cols={2}>
  <Card title="安全" icon="shield">
    実際の資金は動きません。
  </Card>

  <Card title="フル機能" icon="check">
    本番モードと同じすべての機能。
  </Card>
</CardGroup>

***

## テスト vs 本番

|          | テストモード   | 本番モード |
| -------- | -------- | ----- |
| 取引       | シミュレーション | 実際の課金 |
| 資金       | 仮想       | 実際の資金 |
| API 動作   | 完全に同じ    | 完全に同じ |
| データ      | 分離       | 本番環境  |
| Webhooks | 完全に動作    | 完全に動作 |

**モード切り替え：** ダッシュボード上部のトグル、または API 呼び出しの `X-Environment` ヘッダー。

| ヘッダー値                 | モード    |
| --------------------- | ------ |
| `X-Environment: test` | テストモード |
| `X-Environment: prod` | 本番モード  |

<Warning>
  支払いリンクを共有する前に、正しいモードにいることを常に確認してください。
</Warning>

***

## テストカード番号

### 成功する支払い

| カード番号                 | タイプ              |
| --------------------- | ---------------- |
| `4576 7500 0000 0110` | Visa クレジット       |
| `2226 9000 0000 0110` | Mastercard クレジット |
| `4001 7000 0000 0110` | Visa デビット        |
| `2226 9300 0000 0110` | Mastercard デビット  |

### 拒否される支払い

| カード番号                 | タイプ              |
| --------------------- | ---------------- |
| `4576 7500 0000 0220` | Visa クレジット       |
| `2226 9000 0000 0220` | Mastercard クレジット |
| `4001 7000 0000 0220` | Visa デビット        |
| `2226 9300 0000 0220` | Mastercard デビット  |

<Note>
  任意の将来の有効期限、任意の3桁のCVC。
</Note>

***

## テスト用支払い方法

### デジタルウォレット

テストモードではシミュレーションUIを表示：

* **Apple Pay** — Safari/iOS
* **Google Pay** — Chrome/Android

***

## Webhooksのテスト

テストモードでWebhooksは通常通り発火します。

Webhook エンドポイントをテストするには：

1. ダッシュボード --> API と開発で Webhook エンドポイントを登録
2. テストモードに切り替え
3. イベントをトリガーするアクション（注文作成、支払い完了）を実行
4. エンドポイントが本番モードと同じように Webhook イベントを受信

***

## サブスクリプションのテスト

完全なライフサイクルをテスト：

1. **作成** — テストチェックアウトでサブスクリプション
2. **請求** — スケジュールに従って請求（短い間隔でテストを高速化）
3. **更新** — プランを変更
4. **キャンセル** — キャンセルをテスト
5. **期限切れ** — 期限切れの動作を確認

***

## テストデータ

### 分離

テストデータは完全に独立：

* テストプロダクトは本番モードに表示されない
* テスト顧客は別管理
* テスト取引はレポートに影響しない

### 環境同期

本番公開の準備ができたら、テストから本番にプロダクトを同期：

```bash theme={"system"}
curl -X POST https://api.waffo.ai/v1/actions/onetime-product/publish-product \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY_TOKEN" \
  -d '{
    "id": "product-uuid"
  }'
```

<Note>
  publish-product エンドポイントはテストから本番への一方向の操作です。`X-Environment` ヘッダーは不要です。
</Note>

***

## 本番公開チェックリスト

実際の支払いを受け入れる前に：

* [ ] エンドツーエンドテスト完了
* [ ] エッジケースをテスト（拒否されたカード、失敗）
* [ ] Webhook処理を検証
* [ ] モバイルデバイスでテスト
* [ ] 出金アカウントを追加(出金アカウントページ)
* [ ] ビジネス詳細を完成（設定 --> ビジネス詳細）
* [ ] プロダクトの価格を確認
* [ ] publish-product でテストから本番にプロダクトを同期

<Card title="クイックスタート" icon="rocket" href="/ja/quickstart#going-live-checklist">
  完全な本番公開チェックリスト。
</Card>
