Sanka

サブスクリプションから売上請求を作成するルールビルダー

サブスクリプションから売上請求を作成するときのルールビルダーの使い方と、ファミリーキーや数式の考え方を説明します。

ガイドの概要

このガイドでは、サブスクリプションから売上請求を作成するときに使うルールビルダーの基本的な考え方を説明します。メーターの条件分け、単価計算、最低料金や固定料金の追加までを、1つの画面でまとめて設定できます。

事前準備

  • サブスクリプションに商品項目が登録されていること
  • 対象のメーターがサブスクリプションに紐づいていること
  • 必要に応じて、商品や商品項目に単価・最低料金・固定料金などの項目を作成していること

ステップ1:ルールビルダーを開く

  1. コマース > サブスクリプションを開きます。
  2. 対象のサブスクリプションを選択して、アクションからGenerate Invoice from Subscriptionを開きます。
  3. メーター請求を追加をオンにします。
  4. ルールビルダーを選択します。
補足:
  • シンプルビルダーは、1本の数式でシンプルに条件判定したいときに使います。
  • ルールビルダーは、分類ルール、料金ルール、調整ルールを分けて設定したいときに使います。

ステップ2:分類ルールを設定する

分類ルールでは、「どのメーターをどの料金グループで計算するか」を決めます。例:
  • Charge ID = 6303, 6304, 6305 なら通話用
  • Charge ID = 6302 ならSMS用
このときに使うのがファミリーキーです。ファミリーキーは、分類ルールと料金ルールをつなぐための共通キーです。例:
  • 通話用のファミリーキー: isdn_usd
  • SMS用のファミリーキー: sms_usd
ポイント:
  • 同じファミリーキーを、後続の料金ルール側にも設定します。
  • ファミリーキーは社内用の判定キーです。どの計算ルールを使うかを決めるための目印として使います。
  • 出力ラベルは、請求明細に表示したい名前です。
  • 構成要素ターゲットは、数式がどの商品項目を参照するかを決める設定です。

ステップ3:料金ルールを設定する

料金ルールでは、ファミリーキーごとに計算方法を設定します。1つのファミリーの中に、複数のパターンを持てます。上から順に判定され、最初に一致したパターンが使われます。例:
  • ファミリーキー isdn_usd
    • パターン1: usage >= 2
    • パターン2: それ以外
数式の考え方:
  • 数量数式: 請求数量を決めます
  • 単価数式: 1単位あたりの金額を決めます
  • 金額数式: 数量と単価ではなく、金額を直接出したいときに使います
よく使う数式例:
テキスト
meter_field("usage")
item_field("単価の項目ID")
line_field("line_total")
sum_lines("line_total")
意味:
  • meter_field(...): メーターの値を参照します
  • item_field(...): 商品や商品項目の値を参照します
  • line_field(...): 生成中の請求明細の値を参照します
  • sum_lines(...): 生成された複数明細の合計を参照します

ステップ4:調整ルールとプレビューを確認する

調整ルールは、メーター明細とは別に追加したい請求を扱うときに使います。例:
  • 月額固定料金を1行追加する
  • 最低料金に満たない場合だけ差額を追加する
  • 無料枠や割引分を差額として反映する
設定後はプレビューで結果を確認します。プレビューでは、最初に選択したサブスクリプションを対象に、どの分類ルール・どのファミリーキー・どのパターンが使われたかを先に確認できます。

運用ポイント

  • ファミリーキーは、分類ルールと料金ルールで必ず同じ値を使います。
  • パターンは上から順に評価されるため、条件が厳しいものを上に置くと整理しやすくなります。
  • 請求明細に見せたい名前はファミリーキーではなく出力ラベルで管理します。
  • まずは少ないルールで作り、プレビューで結果を確認しながら追加していくと設定ミスを減らせます。
  • 単純な条件だけで十分な場合は、シンプルビルダーの方が設定しやすいこともあります。