2026-06-08 朝 提示用 / 部下4人(既存コード調査・Stripe/会計/法務FC・回数券データ設計・前回の料金FC)+一次情報で検証
30秒まとめ:ご質問の論点(期限一覧・1枚購入・返金・パジャマ切れ時の私服・実装場所)はすべて設計でき、実装も可能です。ただし2つ大事な事実:
実装場所はご提案どおり「容姿選択の入口で AI生成 / プリセット に分岐」でOK(コード調査で裏取り済み)。最大の難所は料金ではなく絵本生成器にカスタムアンカーを渡す改修(一発勝負)です。
CLAUDE.md「お金・決済の規制は専門家に」に該当。私(Claude)だけで「本番GO」とは言えない領域です。前回PMが選んだ"残高を持たない安全策(買い切り¥500)"から、あえて"残高を持つ回数券"に踏み込む形になる点はご認識ください。
今の容姿選択(プリセット372種)の入口に、「✨AIで専用アンカーを作る(有料) / プリセットから選ぶ(無料)」のモード選択を前置きするのが最も自然、とコード調査で確認しました。新規登録と「お子さま情報の変更」の両方を1か所に集約できます。
技術:LIFFの容姿選択画面(refSelection)の表示開始に分岐を追加+編集メニューに4択目。課金は既存の単品購入(single_order・確認画面・Stripe)の仕組みをほぼ流用できます。
買うたびに「ひと束(バッチ)」として記録し、期限が近い束から自動で使います(FIFO)。マイルと同じ考え方。これでご要望の「タップ→期限を一覧表示」が自然にできます。
データは2つの表で管理:①束(購入日/残数/期限)=一覧表示用 ②台帳(いつ何に使ったか・追記専用)=返金やトラブルで後から追える用。期限14日前にLINE通知で「使い忘れ」を防止。
| 案 | 判定 | 理由 |
|---|---|---|
| 1枚¥10 都度購入 | ✕ 不可 | StripeのJPY最低決済額が¥50(公式Docsで確認)。¥10単発は受け付けられない |
| 10枚 ¥100(推奨) | ◎ | 1回¥100の決済なら手数料負けしない。1枚あたり¥10を維持 |
| 30枚¥300 / 60枚¥600 | ◯ | お得感のため併売(単価は¥10据え置きでOK) |
返金はStripeのAPIでとても簡単(全額も一部も一行)。注意は「元の決済手数料は戻らない」点(少額返金は当方が手数料を被る)。残数の減算もDB側で容易ですが、ポリシーをシンプルにするのが事故防止のコツ。
| ケース | 推奨対応 |
|---|---|
| 買った直後・1枚も使っていない束 | 全額返金OK(束を無効化+台帳記録) |
| 1枚でも使った束 | 返金不可(按分計算のもめ事を避ける・規約に明記) |
| 二重課金・システム起因 | 全額返金(こちらの非) |
おやすみ便はパジャマ姿の絵本。パジャマアンカーが無い/回数券が足りない時は、私服アンカーで生成します(止めずに届ける)。これは生成器に「パジャマ無→私服で代用」の分岐を1つ足せば実現でき、一貫性も保てます(実コードで確認済み)。
ポイント:「作れない・止まる」ではなく「私服で代わりに届く(ちゃんと楽しめる)」と前向きに見せてクレームを断つ。
| アクション | 消費 | 備考 |
|---|---|---|
| 私服を1枚作る(初回・やり直し問わず) | 1枚 | やり直しのたびに1枚 |
| パジャマを作る(確定時) | 1枚 | |
| =新規キャラ最低 | 2枚 | 私服1+パジャマ1(やり直しゼロの場合) |
| 優先 | 問題 | 推奨対応 |
|---|---|---|
| 🔴 | 資金決済法リスク(回数券=前払式) | 6ヶ月失効・繰越なしを厳守+専門家確認(必須) |
| 🔴 | 生成失敗時に回数を消すか | 消さない=自動で1枚戻す(安全フィルタ誤ブロック対策)+二重課金防止 |
| 🔴 | 残数0での生成ブロック | 生成の入口で残数チェック→減算→生成を1かたまり(トランザクション)で。失敗時は戻す |
| 🟠 | 期限切れの自動失効 | 消費時に期限切れ束はスキップ+日次で失効処理。残数表示は常に「有効な束の合計」 |
| 🟠 | 二重課金・Webhook重複 | 冪等キー+mark-before-process(既存単品の作法を流用) |
| 🟠 | 確定前のやり直しで枚数だけ減るUX | やり直しボタンに「1枚つかいます/残りX枚」を毎回明示 |
| 🟡 | 残数のリアルタイム表示ズレ | 表示は常にサーバ計算(クライアントに持たせない)・生成直後に再取得 |
| 🟡 | パジャマ切れ時の私服フォールバック | 生成器に分岐+§6の文言通知 |
料金・回数券まわりは実装可能(テーブル2枚=束+台帳・FIFO・期限一覧・パック¥100・返金・パジャマ代替・残数表示)。課金は既存の単品購入を雛形に流用できます。
🔴 本当の難所は料金ではなく「絵本生成器にカスタムアンカーを渡す改修」です。今の絵本生成は属性から焼き込み画像を引く作りで、お客様のアンカー画像を読みません。ここに「カスタムアンカーURLを使う分岐」を新設する必要があり、本番(Cloud Run)改修+Docker再ビルド+サンプル実生成1冊での検証が必須(一発勝負・リリース後修正不可の領域)。スパイクでローカル実証は済んでいますが、本番反映は慎重に。
決定後 → 設計書(AI_CUSTOM_ANCHOR_FEATURE_DESIGN.md)の価格欄を回数券方式へ更新+プロトタイプに「回数パック購入UI+残数表示」を実装。出典(Stripe Docs/資金決済法/国税庁/消費者庁)は議論ログに保存済み。