Skip to main content

サンドボックスにはどうすればアクセスできますか?

サンドボックスは、すべての Waffo マーチャントアカウントで利用できます。必要なものは次のとおりです。
  1. Waffo マーチャントアカウント。
  2. API キー — Merchant Portal → Integration で確認できます(Dev または Admin ロールが必要)。
  3. リクエスト署名用の RSA 鍵ペア — サンドボックスでは事前生成された鍵が提供されます。認証と署名を参照してください。
サンドボックスで実際の請求が発生することは一切ありません。

連携先をサンドボックスに向けるにはどうすればよいですか?

Waffo SDK を使用している場合は Environment.SANDBOX / Environment.PRODUCTION を設定してください。URL を手動で変更する必要はありません。

決済の成功や失敗をシミュレーションするにはどうすればよいですか?

サンドボックスは実際の決済チャネルには接続しません。代わりに、チェックアウトページにシミュレーションボタンが表示されます。
  1. POST /api/v1/order/create を呼び出し、orderAction からチェックアウト URL を取得します。
  2. ブラウザでチェックアウトページを開きます。
  3. Payment succeeded(注文ステータスが PAY_SUCCESS になります)または Payment failed(注文ステータスが ORDER_CLOSE になります)をクリックします。
クリック後、Waffo は自動的に PAYMENT_NOTIFICATION Webhook を notifyUrl に送信します。シミュレーションの流れはすべての決済手段で同じで、実際のチャネルは呼び出されません。カードのフローでカード入力フォームが表示される場合は、クイック入力ボタンまたは下記のテストカードを使用してください。

請求サイクルを待たずにサブスクリプションの更新をテストするにはどうすればよいですか?

  1. サブスクリプションを作成して有効化します(POST /api/v1/subscription/create を呼び出し、チェックアウトページで初回決済をシミュレーションします。ステータスが ACTIVE に変わります)。
  2. POST /api/v1/subscription/manage を呼び出して managementUrl を取得し、ブラウザで開きます。
  3. Simulate next payment succeeded(PAYMENT_NOTIFICATION と SUBSCRIPTION_PERIOD_CHANGED_NOTIFICATION を送信)または Simulate next payment failed(失敗の PAYMENT_NOTIFICATION を送信)をクリックします。
1 回のクリックで 1 更新期間をシミュレーションするため、複数期間のシナリオ(第 2 期は成功、第 3 期は失敗)を連続して再現できます。管理ページではキャンセルもサポートしており、ステータス USER_CANCELLED の SUBSCRIPTION_STATUS_NOTIFICATION が送信されます。詳細はサンドボックスシミュレーターを参照してください。

どのテストカード番号を使えますか?

カード入力フローでは、次のサンドボックス用カード番号を使用してください(Portal の Test Cards リストと一致しています。いずれも 3DS チャレンジは発生しません。サンドボックスには 3DS シミュレーションがありません)。 有効期限:将来の任意の日付。CVV:任意の 3 桁(AMEX は 4 桁)。ほとんどのシナリオではチェックアウトのシミュレーションボタンで十分であり、カード番号は不要です。 カードの入力が必須となるフローでは、サンドボックスのチェックアウトページにあるクイック入力ボタン、または Merchant Portal → Integration → Test Cards のリストを優先してください。ドキュメントと相違がある場合は、プロダクト内の情報を正としてください。サンドボックスシミュレーション制限 FAQも参照してください。

サンドボックスで特定のエラーコードを発生させるにはどうすればよいですか?

サンドボックスでは、対応するエラーコードを意図的に返す特別な注文金額が予約されています。たとえば、金額 90、990、1990、19990 は注文またはサブスクリプションの作成時に C0005 Payment Channel Rejection を発生させ、その他の予約金額は C0001 System Error や E0001 Unknown Status を発生させます。予約金額は注文作成、注文キャンセル、サブスクリプション作成、サブスクリプションキャンセルに適用されます。返金 API では、作成系の予約金額と等しい refundAmount を指定するとリクエスト時点で返金リクエストが失敗し、REFUND_FAILED の返金注文が残ります。一方、公開されているシミュレーターページに記載の返金専用金額は効果がありません。通常の成功・失敗フローだけを確認したい場合は、これらの金額を避けてください。また、これはサンドボックス限定のルールであり、本番環境の動作ではありません。完全な対応表と、実際の価格が予約金額と衝突した場合の対処方法は、サンドボックスシミュレーション制限 FAQにあります。

サンドボックスから Webhook が届かないのはなぜですか?

サンドボックスは実際の Webhookを送信しますが、notifyUrl はパブリックにアクセス可能である必要があります。Waffo は localhost やプライベートアドレスには到達できません。ローカル開発では、イントラネットトンネリングツール(ngrok や cloudflared など)を使用し、トンネルのパブリック URL を notifyUrl に設定してください。コールバックの仕様は Webhook 概要を参照してください。

サンドボックスと本番環境の違いは何ですか?

Octopus、Apple Pay、Google Pay は、通常のサンドボックステストに加えて専用の追加確認が必要です。サンドボックスとテストを参照してください。本番環境に切り替える前に、Waffo テクニカルサポートグループへの連携受け入れ提出を含め、本番移行チェックリストのすべての項目を完了してください。