Wire Pay
ログイン
デモモード — 外部APIは呼び出さず、ダミーで決済を生成します。

管理画面マニュアルテストデータ

各機能の使い方と、加盟店へ送信する通知パラメータの仕様です。表示言語に合わせて切り替わります。

第 10 章 / 全 27 章

コンビニ決済

コンビニ決済 は、加盟店サイトで「コンビニ」を選んだ顧客に 13 桁の受付番号 と 支払期限 を発行し、店頭(レジ・店内端末)での支払いを待つ決済手段です。銀行振込と同じく取引テーブル(Payment)の 1 行として扱い、新しいテーブルは持ちません。

取引の項目

項目説明
支払店舗セブン-イレブン / ローソン / ファミリーマート / ミニストップ / その他。作成時に顧客(または管理画面)が選びます
受付番号13 桁の数字(先頭は 0 以外)。一意で、一覧・詳細・横断検索に表示します
支払期限申請から 加盟店設定の日数(既定 3 日、1〜30 日)。銀行振込の振込期限と同じ列を使います
支払日時店頭で支払われた(入金通知を受け取った)日時

ライフサイクル

状態意味次の操作
支払待ち(awaiting_payment)受付番号を発行し、店頭での支払いを待っている。申請中(pending)とは別の独立したステータス入金消込 / キャンセル / 失敗 / 期限切れ(期限超過時)
完了店頭で支払われた返金 / 領収書
期限切れ期限までに支払われなかった期限後に届いた入金通知は未消込入金に保留され、「期限後入金として消込」で完了にできる(決済申請)

決済申請一覧では、支払待ちのコンビニ決済は 振込待ちの銀行振込と同じ並び(期限が近い順に先頭、期限超過は赤)で表示し、「支払待ち」バッジを付けます。

入金通知(店頭で支払われたとき)

コンビニ決済ネットワークからの入金通知は POST /api/demo/cvs-notify が受け取り、銀行振込の入金消込と同じ処理(deposit アクション)で取引を完了にします。金額が不足していれば支払待ちのまま「不足」を記録します。

POST /api/demo/cvs-notify
Authorization: Bearer <DEPOSIT_NOTIFY_SECRET>
{ "eventId": "cvs-evt-0001", "receiptNo": "4102993827716", "mode": "test" }
  • 認証は銀行の入金通知と同じ DEPOSIT_NOTIFY_SECRET です。未設定なら本番以外で無認証、本番では 404 になります
  • mode(test / live)は 必須 です。取引の環境と一致しない通知は消込されず未消込入金(理由「環境不一致」)に保留されます。eventId(任意、128 文字以内)が同じ通知の再送は 200 { duplicate: true } で再適用されません。受信した通知はすべて 入金通知ログ に残ります
  • 完了時は加盟店へ payment.completed の Webhook と、顧客へ決済完了メールを送ります
  • 決済リンクページの「店頭で支払い済みにする(デモ)」ボタンも同じ処理を呼びます

期限切れと通知

  • cron(/api/cron/expire-transfers。デモの Vercel では 1 日 1 回、本番運用では毎時を推奨)が、期限を過ぎた支払待ちの受付番号を 期限切れ にします(銀行振込と同じ処理)。申請一覧の 期限超過 タブで、期限を過ぎたがまだ期限切れになっていない取引を確認できます
  • 通知センターには日次で「コンビニ支払期限超過」(cvs.overdue)が 1 通届きます(admin / accounting / cs)

顧客向けの案内

  • 作成時にメールテンプレート コンビニ支払案内(cvs_guide)を送信ログに記録します(支払店舗・受付番号・金額・期限)
  • 決済リンクページでは支払店舗を選択でき、作成後に受付番号と期限を表示します

加盟店設定

加盟店詳細 → 契約・手数料タブの「期限の設定」に コンビニ支払期限(日) があります(権限: admin / accounting)。