商品と価格
Salesforce と Stripe 間で商品と価格を同期する方法についてご紹介します。
Salesforce で作成した商品と価格は、すぐに Stripe に同期されるわけではありません。商品と価格が Stripe と同期されるのは、有効化された注文で使用されたときです。Stripe でこの情報を手動で作成する必要はありません。
Salesforce は、商品と価格に関する情報の主要な情報源です。このため、価格、商品の説明、SKU などはすべて、Salesforce から Stripe に同期されます。Stripeでこの情報を更新しても、Salesforce の関連する商品と価格は更新されません。また、更新された商品または価格の情報を使用して Salesforce で新しい注文を有効にすると、このアクションにより、Stripe で行った対応する変更が更新されます。
価格を作成する
価格データは、Salesforce の OrderItem
または関連付けられた PricebookEntry
から取得されます。Stripe の価格の作成時に、コネクターはこれらの Salesforce オブジェクト間の違いを確認し、どちらを使用するかを決定します。PricebookEntry
データが OrderItem
データと異なる場合、コネクターは OrderItem
を使用して Stripe の価格を作成します。それ以外の場合、コネクターは PricebookEntry
を使用します。
Stripe の価格を再利用する
Stripe Billing Connector for Salesforce CPQ は、コネクターが以前に同期した PricebookEntry
から作成された価格を再利用します。コネクターは、OrderItem
を使用して生成された価格の新しい価格を作成します。注文アイテムは一意であるため再利用できませんが、価格表エントリーは複数の注文アイテムで再利用できます。いずれの場合でも、対応する Stripe の価格 ID が Salesforce オブジェクトに書き戻されます。
商品のフィールドマッピング
Stripe Billing Connector for Salesforce CPQ では、Salesforce に関連するデータがない場合でも Stripe に商品が作成されます。商品フィールドはすべてオプションです。
Salesforce のフィールド (Product2 オブジェクト) | Stripe の商品 |
---|---|
名前 | Name (名前) |
説明 | Description (説明) |
価格のフィールドマッピング
コネクターは Stripe 内の次の価格タイプに対応しています。
- ライセンス料金: Salesforce の請求タイプ (
SBQQ_
) フィールドが None または Advanced の場合、コネクターは Stripe 内にライセンス料金を作成します。BillingType_ c - 従量制、使用量ベースの価格: Salesforce の請求タイプ (
SBQQ_
) フィールドが Arrears の場合、コネクターは従量制または使用量ベースの価格を作成します。BillingType_ c - 小数点を含む価格: 価格の 10 進数が小数点以下 12 桁よりも精度が高い場合、コネクターは価格を小数点以下 12 桁に丸めます。
- 1 回限りの価格と継続的な価格: コネクターは、サブスクリプションフィールドに値が設定されているすべての商品を継続的な価格扱いにします。従量制価格は継続的である必要がありますが、段階的な価格は 1 回限りに設定することもできます。1 回限りの価格を作成する場合は、Salesforce の商品に次のフィールドを設定しないでください。
- サブスクリプションの料金 (
SBQQ_
)_ SubscriptionPricing_ _ c - サブスクリプションの種類 (
SBQQ_
)_ SubscriptionType_ _ c - サブスクリプションの規約 (
SBQQ_
)_ SubscriptionTerm_ _ c - 請求頻度 (
SBQQ_
)_ BillingFrequency_ _ c
- サブスクリプションの料金 (
Salesforce フィールド (PricebookEntry オブジェクト) | Stripe の Price | 注 | 必須 |
---|---|---|---|
製品 | Product (商品) | Stripe 内の対応する Price オブジェクトを使用して Salesforce Product オブジェクトおよび Pricebook オブジェクトにリンクされた Stripe Product オブジェクトをマッピングします。 | |
説明 | Description (説明) | ||
単価 | Unit amount decimal (単価の小数) | Billing Frequency フィールドで指定された頻度で顧客に請求する金額を表します。 | |
請求頻度 | Recurring, interval count (定期 - 期間数) | 継続的な価格の場合にのみ必須です。対応している値は、毎月、毎四半期、半年ごと、毎年です。これらの値は対応する整数値にマッピングされます。 | |
請求タイプ | Recurring, usage type (定期 - 使用量タイプ) | 継続的な価格にのみ必須です。Arrears の値は従量課金にマッピングされます。Advanced の値はライセンスにマッピングされます。 | |
CPQ グローバル期間単位設定 | Recurring, interval (定期 - 期間) | 継続的な価格の場合にのみ必須。これは設定時に選択され、フィールドレベルのマッピングではありません。 | |
通貨 | Currency (通貨) | お客様の Salesforce 組織で多通貨が有効になっている場合、Stripe では PricebookEntry の CurrencyIsoCode を Stripe 通貨に関連付けます。有効になっていない場合、設定されているデフォルトの通貨を使用します。 |
消費スケジュールを使用した段階制料金
Salesforce で商品に Salesforce 消費スケジュールと関連レートを設定することで、Stripe で段階制料金を設定できます。Stripe では消費スケジュールを使用して、従量制またはライセンス制の課金で請求されるラインアイテムに段階制料金を関連付けます。注文ラインごとに使用できる消費スケジュールは 1 つのみです。
Stripe Billing では、限度設定がない段階が存在している必要があります。このため、上限値が設定されていない消費レートが必要です。コネクターは消費レートの処理順序も、注文商品に関連付けられている消費スケジュールの請求期間や請求期間単位も使用しません。代わりに、コネクターは注文ラインアイテムの請求サイクルおよびサブスクリプション期間を使用します。
段階制料金の場合、コネクターは以下の Salesforce オブジェクトのデータをマッピングします。
OrderLine
:OrderLine
のデータが対応するPricebookEntry
と異なる場合、コネクターはOrderLine
のデータを使用し、Stripe で新しいPrice
オブジェクトを作成します。PricebookEntry
: 価格データがOrderLine
に一致し、消費スケジュールおよび消費レートのデータが顧客ごとにカスタマイズされていない場合、コネクターはこの値を使用します。Consumption Schedule
: Salesforce では複数の消費スケジュールを 1 つの商品に関連付けることができますが、コネクターで使用できる消費スケジュールは注文ラインごとに 1 つのみです。Consumption Rate
: コネクターは消費スケジュールに関連付けられているレートを使用して、Stripe の価格の各段階エントリーを定義します。1 つの消費スケジュールに対して複数のレートを設定できます。
注
フィールドマッピングをカスタマイズして、Stripe で段階制料金を生成したり、価格または段階の境界のカスタムフィールドを使用したりすることはできません。
顧客ごとに消費スケジュールおよび消費レートをカスタマイズした場合、Stripe では新しい Price
オブジェクトを作成してカスタマイズされた料金を表します。新しい価格は、Salesforce の Order Line
オブジェクトの Stripe ID フィールドに表示されます。
段階制料金のマッピングを定義するには、次の PricebookEntry
を価格フィールドマッピングに追加します。このフィールドは必須です。
Salesforce フィールド (PricebookEntry オブジェクト) | Stripe の Price | 注 |
---|---|---|
Billing scheme (請求スキーム) | Salesforce の注文ラインに消費スケジュールが関連付けられている場合、tiered に設定されます。 |
Salesforce の消費スケジュール | Stripe の Price | 注 |
---|---|---|
タイプ | Tiers mode (段階制) | タイプがスラブの場合は、graduated が使用されます。タイプが範囲の場合は、volume が使用されます。 |
消費スケジュールに関連付けられている消費レートごとに、Stripe の Price
オブジェクトに追加の段階エントリーが生成されます。これらのフィールドは必須です。
Salesforce の消費レート | Stripe の Price | 注 |
---|---|---|
上限 | Tiers, Up to (段階制 - 最大) | Stripe では下限がなく、最初の段階の下限値がゼロであるものと想定されます。Salesforce でこの値が空の場合、Stripe では inf 値を使用して、上限がないことを示します。 |
価格設定方法 | 値がユニットあたりである場合、コネクターは価格のマッピング時に unit_ フィールドを使用します。値が定額の場合、コネクターは価格に flat_ フィールドを使用します。 | |
価格 | 段階制 - Flat amount decimal (定額の小数) または Unit amount decimal (単価の小数) | 使用される価格設定タイプは、Pricing Method フィールドによって異なります。 |
商品と価格を手動で同期する
Salesforce サンドボックス環境でテストする際には、Stripe テストアカウントで商品カタログ全体を手動で同期して調べることができます。手動同期では、設定したすべての商品および価格のフィルターが適用されます。
コネクターの設定セクションで以下のボタンを使用します。
Sync all products (すべての商品を同期): 最終更新時刻に関係なく、すべての商品 (価格は含まない) が Stripe テストアカウントと同期されます。この実行はバックグラウンドで行われ、完了に数分かかることがあります。Salesforce で商品を削除しても、Stripe ではその商品の削除もアーカイブも行われません。
価格表を同期: 手動同期機能にレコード ID を入力して、
PricebookEntry
をテスト用 Stripe アカウントに手動で同期します。この操作はバックグラウンドで実行されます。Salesforce で価格を削除しても、Stripe ではその価格の削除もアーカイブも行われません。Stripe で価格を作成して継続的な請求のスケジュールを設定した後は、Salesforce でパラメーターを更新することも同期することもできません。該当する操作を試行すると、同期エラーが発生します。
商品または価格が Stripe アカウントにすでに同期されているときに、新たに同期する場合は、Salesforce アカウントの Salesforce オブジェクトの Stripe ID フィールドの内容を削除できます。次に、再び同期して、Stripe で新しいリソースを作成します。
注文の商品の価格設定をカスタマイズする
Salesforce CPQ では、見積もりの商品の単価を必要に応じてカスタマイズできます。価格をカスタマイズした場合、有効化された注文の商品にリンクされている価格と情報が異なることになります。この場合、コネクターは Stripe で一意の価格を作成して、カスタマイズした価格を表します。Stripe の価格 ID が注文の Stripe ID フィールドに表示されます。
注文でカスタマイズされた価格を使用してデータマッピングを作成した場合、価格は、Salesforce の価格表エントリーのレベルではなく、注文ラインのレベルで表示されます。料金がカスタマイズされたと見なされるのは、関連するフィールド (継続フィールド、金額、通貨など) のいずれかが、価格表エントリーの価格と注文ラインアイテムの価格で異なる場合です。
多通貨への対応
Salesforce 組織で多通貨が有効化されている場合、コネクターは Stripe 価格の作成時に PricebookEntry
の CurrencyIsoCode
を対応する Stripe の通貨に関連付けます。これにより、以降の Invoice (請求書) が正しい通貨で請求されるようになります。
複数の通貨で請求するときは、以下を考慮してください。
Stripe 顧客 1 人につき対応できる通貨の数
Stripe で対応できる有効な通貨は、顧客 1 人につき 1 つです。言い換えると、Stripe の顧客は、異なる通貨を使用する有効な Subscription (サブスクリプション) を複数利用できません。たとえば、USD で請求される有効なSubscription (サブスクリプション)を顧客が利用している場合、そのサブスクリプションの終了を待ってから、異なる通貨 (GBP など) のサブスクリプションを新規に作成する必要があります。
注文の修正
Salesforce の注文を修正する際は、常に元の注文と同じ通貨を使用する必要があります。注文と注文の修正で、注文アイテムごとに異なる通貨を使用することはできません。
為替レート
コネクターは通貨換算を行いません。単に、PricebookEntry
に見つかった価格と通貨のペアを渡します。