ポイント・ギフト券・クーポン(Points System)¶
ポイント/ギフト券/クーポンの運用を支えるプラグイン。ギフト券コード登録によるポイント加算、ポイント残高/履歴の取得、クーポン割引の仮想商品出力を担う。
役割¶
- ギフト券コード登録(Storefrontのマイメニュー/URL query からの登録)
- ポイント残高と獲得履歴の提供(Shop/Admin API)
- ギフト券コードの無効化/削除(Vendure Dashboard)
- クーポン割引の仮想商品出力(SMILE連携のCSV出力で利用)
プラグイン情報¶
- コード配置:
packages/plugins/points-system - エントリーポイント:
packages/plugins/points-system/src/index.ts - 初期化:
PointsSystemPlugin.init({ ... })
GraphQL API¶
Shop API¶
pointSummary: ポイント残高と次回失効情報pointHistory: 獲得履歴applyGiftCode(code: String!): ギフト券コード登録
Admin API¶
pointSummaryForCustomer(customerId: ID!)pointHistoryForCustomer(customerId: ID!)disableGiftCode(code: String!): 未使用コードの無効化deleteGiftCode(code: String!): 未使用コードの削除
データモデル¶
- ポイント台帳:
ritsubi_point_ledger - 付与/減算履歴を保持(有効期限あり)
- ギフト券マスタ:
ritsubi_gift_voucher - 付与ポイント/登録期限/有効期限(相対・固定日)/対象制限
- ギフト券コード:
ritsubi_gift_voucher_code status(ACTIVE/USED/DISABLED)、disabledAtを保持issuedByAdminId(発行者)- ギフト券マスタ
issuedByAdminId(発行者)- クーポンコード上書き:
ritsubi_coupon_code_override - クーポンコードごとの仮想商品コード上書き
Vendure Dashboard¶
- 配置: 「マーケティング」配下に「ギフト券コード管理」
- 機能: 個別コードの無効化/削除
SMILE連携¶
- クーポン割引は 仮想商品行 として注文CSVに出力
- ベース仮想商品コード を使い、クーポンコードごとの上書きを優先
運用ルール¶
- 無効化が基本: 監査/問い合わせ対応のため履歴を保持
- 削除は例外運用: 誤発行・未使用のみ(使用済みは削除不可)
- 発行者管理: 発行時の管理者IDを記録し、表示時に管理者名を参照する
設定¶
PointsSystemPlugin.init のオプションで仮想商品の基準コードを指定できる。
giftBaseProductCode: ギフト券のベース仮想商品コード(例:80000060)couponBaseProductCode: クーポンのベース仮想商品コード(例:80000088)