HandyCafe Docs
owner cashier

タイムパッケージ

タイムパッケージはメンバーにプリペイドの分数残高を提供します。標準料金で時間単位の支払いをする代わりに、メンバーは分数のブロックを事前に購入し、複数のセッションにわたって使用できます。システムは残高を追跡し、メンバーがPCやコンソールを使用する際に自動的に分数を差し引きます。

タイムクレジットシステム

ウォレットシステムと同様に、タイムパッケージはクレジットベースのアーキテクチャを使用します。時間残高の追加ごとに新しいタイムクレジットが作成されます。各クレジットは独自の分数残高、ソース、有効期限、デバイス制限を持つ独立したレコードです。

メンバーの利用可能な総分数は、すべてのアクティブなタイムクレジットの残り分数の合計です。

タイムクレジットのフィールド

各タイムクレジットレコードには以下が含まれます。

フィールド 説明
総分数 クレジット作成時にロードされた元の分数。
残り分数 このクレジットの未使用分数の現在の残高。メンバーのセッション利用に応じて減少します。
クレジットタイプ このクレジットの作成方法(以下のクレジットタイプを参照)。
デバイス制限 このクレジットから消費できるデバイスタイプ(以下のデバイス制限を参照)。
ステータス クレジットの現在のライフサイクル状態。
有効期限 有効期限のタイムスタンプ(任意)。この日付以降、残り分数は使用できなくなります。
購入ID このクレジットがキャンペーンパッケージの購入から作成された場合、その購入レコードへの参照。

クレジットタイプ

各タイムクレジットは作成方法を追跡します。

クレジットタイプ 説明
有料 メンバーがこの分数を支払いました。直接購入またはキャンペーンパッケージの基本特典として。
ボーナス パッケージ購入に付随するプロモーション分数。たとえば「120分購入で30分ボーナス無料」。
手動 キャッシャーまたは管理者が手動で追加した分数。好意的なクレジット、補償、特別な取り決めに使用されます。

クレジットのステータス

各タイムクレジットは以下の状態を経て進行します。

  • アクティブ: クレジットに残り分数があり、有効期限が切れていません。このクレジットから分数を消費できます。
  • 期限切れ: クレジットの有効期限日が過ぎています。残高がゼロより大きくても、残り分数は使用できません。
  • 消費済み: 通常の利用により残り分数がゼロに達しました。
  • キャンセル: 管理者がクレジットを手動でキャンセルし、残り分数が無効化されました。

デバイス制限

各タイムクレジットには、どのタイプのデバイスがクレジットから差し引きできるかを制御するデバイス制限があります。

制限 意味
クライアント クライアントPCで使用可能。明示的に制限されない限りコンソールでも使用可能。
コンソール ゲーミングコンソールで使用可能。明示的に制限されない限りPCでも使用可能。
PCのみ クライアントPCでのみ使用可能。コンソールセッションではこのクレジットから差し引きできません。
コンソールのみ ゲーミングコンソールでのみ使用可能。PCセッションではこのクレジットから差し引きできません。
両方 デバイスタイプの制限なし。デフォルトです。

デバイス制限はクレジット作成時に設定され、後から変更できません。制限は通常、クレジットを生成したキャンペーンパッケージの定義から継承されます。

消費の追跡

タイムクレジットから分数が差し引かれるたびに、システムは時間消費レコードを作成します。

フィールド 説明
消費分数 この消費イベントで差し引かれた分数。常に正の整数です。
消費日時 差し引きが発生したタイムスタンプ。
コンテキスト 差し引きのトリガー(以下を参照)。
参照 差し引きの原因となった特定のセッション、クレジット、調整への参照。

コンテキストタイプ

コンテキスト 説明
セッション利用 アクティブセッションの支払いとして消費された分数。主要な消費パスです。
有効期限 クレジットの期限切れや有効期限イベントによる残り分数の調整で削除された分数。
返金 返金プロセスの一環としてクレジットに返却された分数(負の消費または新しいクレジットエントリとして記録)。

キャンペーンパッケージとの連携

タイムクレジットは主にキャンペーンパッケージの購入を通じて作成されます。

  1. オーナーが「分数」タイプの1つ以上のパッケージを含むキャンペーンを作成します。
  2. メンバーがパッケージを選択して購入します(クライアント側のメンバーパネルまたはカウンターのキャッシャーを通じて)。
  3. システムが適切なタイムクレジットを作成します。
    • 基本分数特典(パッケージの基本量)の有料クレジット
    • パッケージにゼロより大きいボーナス量の「分数」タイプのボーナスが定義されている場合、ボーナス分数の別のボーナスクレジットが作成されます。
  4. クレジットはパッケージのデバイス制限設定を継承します。
  5. パッケージに有効期間が設定されている場合、クレジットの有効期限は購入日に有効日数を加算して計算されます。

セッション中の時間の差し引き方法

利用可能な時間分数を持つメンバーがセッションを開始すると:

  1. システムがセッションのデバイスタイプに一致するアクティブなタイムクレジットを確認します。
  2. クレジットは有効期限日の早い順(最も早く期限切れになるものから)に消費され、期限切れ間近のクレジットからの無駄を最小化します。
  3. セッションの実行中、対象のクレジットから分数が定期的に差し引かれます。
  4. 各差し引きは「セッション利用」エントリとして消費レコードを作成します。
  5. セッション終了前にすべてのタイムクレジットが使い果たされた場合、セッションは継続し、残りの時間は標準の時間単価で課金されます(セッション終了時に支払い)。

つまり、メンバーの時間残高とウォレット残高は連携して機能します。タイムクレジットで可能な分数をカバーし、超過分はウォレット残高または現金支払いに引き継がれます。