← Files BeautyLinks 店舗サポートARCHIVED FILE
skills/beautylinks-support/references/code-promotions.md
3.63 KB · Oct 3, 2026 · 06:36 UTC
# コード照合:クーポン・紹介の条件 確認版:`source-index.md` の F・B(2026-09-20)。原本p.54〜61と併用する。コード断片は P1〜P4。 ## 誕生日クーポン 入口:「売上向上 → クーポン → 誕生日クーポン」。配布タイミング・送信時刻・期限・割引・利用先を設定し、「自動配信を有効にする」を確認して「誕生日クーポン設定を保存」。 | 質問 | 確認した条件 | | --- | --- | | 自動と手動は同じ対象か | 手動は送信時刻を待たず実行するが、誕生日と何日前に配布するかの条件は残る。7日前なら7日後が誕生日のお客様が対象。全顧客への送信ではない。 | | 手動テストは自分だけに届くか | 自分専用のプレビューではない。「今日の対象者」へ実際にLINE配信する。同じお客様・同じ年にも新しいクーポンを再発行できる。 | | OFFのまま試せるか | 設定がOFFなら処理をスキップし、画面にONで保存するよう表示する。手動配信は保存済み設定を使う。 | | 対象0人になる | 配布日条件、生年月日、有効な顧客、LINE連携、同意を確認する。管理画面だけで作成したLINE未連携顧客は対象にならない。 | | 発行数とLINE成功数が違う | クーポン発行とLINE送信は別処理。発行済みでも送信に失敗する場合がある。成功・失敗の内訳を確認し、手動実行を重ねて余分なクーポンを増やさない。 | | 年1回だから連打しても同じか | 自動配信には年単位の重複防止があるが、手動テストには同じ制限を適用しない。 | 手動の入口は「今すぐ手動配信」。対象条件と実送信・再発行の影響を確認して、確認画面の「今すぐ配信する」。結果の対象人数・新規発行・LINE送信成功・失敗を確認する。このプラグインが配信を実行したとは言わない。 根拠:F `CouponManagementPanel.tsx` の手動配信処理、B `coupon_routes.py` の `run_birthday_coupon_now` → `BirthdayCouponService.run_due`。手動の引数は `force_time=True` と `allow_repeat_per_customer=True`。この意味を「対象条件を全解除する」と誤読しない。 ## 友達紹介 入口:「売上向上 → 友達紹介」。被紹介者(紹介されたお客様)向けの登録特典と、紹介者向けの初回来店後特典を分ける。 - 自分自身への紹介は不可。 - 紹介された方に来店済み予約がある場合は、初回来店前の条件を満たさない。 - 紹介者と紹介された方の電話番号が同じ場合は登録不可になる。 - 同じ紹介の登録をもう一度行うことと、別の紹介者へ変更することは別。既に別の紹介者が登録されていれば拒否される。 - 紹介者特典の判定は、紹介された方の予約が「来店済み」になった処理で行う。予約作成だけ、予約日時の到来だけ、紹介者自身の来店だけを条件達成と扱わない。 - 紹介登録日より前の日付の予約や、初回ではない来店済み予約には対象外になる分岐がある。 - 発行済みでもLINEが失敗している場合がある。履歴で発行・送信を区別する。「届かないので紹介登録をやり直す」と即断しない。 根拠:B `referral_service.py` の紹介登録処理、`process_completed_reservation`、`issue_referrer_reward`。画面の特典名・割引・ON/OFFは固定値と決めつけず、対象店舗の設定を確認してもらう。
SHA-256: 6cbd2aff6dfb1ba1adf21bd2b91ce034cde4a4157ce2d8b8ffd995f7bfe49a5f