対象プラン(法人)
|
新プラン | アドバンス | エンタープライズ | |
旧プラン | プロフェッショナル | エンタープライズ | ||
対象プラン(個人) | ||||
その他 | freee経理 | freee支出管理 経費精算Plus | freee支出管理 Full | freee請求書 アドバンス |
freee for Salesforceでは、カスタムオブジェクトを含めた任意のオブジェクトからfreee会計へ「見積書」・「請求書」を送信できます。
詳しくは「【freee for Salesforce】freee会計へ送信する見積書・請求書の内容をカスタマイズする」をご覧ください。
ただし、Salesforce上でのデータ保持形式によっては連携の設定を行いにくいケースがあります。その多くの場合は、カスタムフィールドを作成することで解決できます。
※ 設定についてはfreee サポートデスクではご案内できません。専門家(Salesforceのインプリパートナー)のご紹介は可能です
目次
オブジェクトからうまく連携できないケース
任意のオブジェクト・フィールドからfreeeの見積書・請求書へ連携する場合、「書類上のどの項目に、salesforce側のどの項目を連携するか」について設定できます。
詳しくは「【freee for Salesforce】freee会計へ送信する見積書・請求書の内容をカスタマイズする」をご覧ください。
このため、下記のようにデータレコードの金額が請求書発行の粒度と合わない場合、「freee請求オブジェクト設定」を行うだけでは書類を作成できません。
- データレコードは年額となっているが、月額で作成したい
- データレコードは月額となっているが、年額で作成したい
このような場合、連携元のオブジェクトにカスタムフィールドを追加し適切な金額を用意することで、任意の金額の請求書を発行できます。
特に、数式のフィールドを用いることで、表計算ソフトのような感覚で柔軟なカスタマイズを実施できます。高度な数式項目の例も紹介されています。
商談の月額/年額が請求書と合わないとき
この場合、次の2つのカスタムフィールドを追加して対応できます。
- 受注に関するオブジェクト(商談、案件、注文など)
- 「月額/年額」のフィールド(選択リスト)
- 受注した商品・サービスに関するオブジェクト(商談商品、案件商品、注文商品など)
- 「請求金額」のフィールド(数式:戻り値が数値)
下記では、商談及び商談商品に設定するケースを例示します。
- [歯車アイコン]→[設定]を開きます。
- [オブジェクトおよび項目]→[オブジェクトマネージャー]を開きます。
- [項目とリレーション]→[新規]ボタンをクリックします。
- データ型から[選択リスト]をチェックし、[次へ]ボタンをクリックします。
- 商談オブジェクトに選択リストとして支払方法のフィールドを追加し、「月額」「年額」を選択するようにします。
- 商談商品オブジェクトへ請求金額のフィールド(数式、数値が戻り値)を追加し、月額か年額かで数値が切り替わるようにします。なお、CASE関数については「CASE」をご覧ください。
- 商談が月額で登録されているが年額で請求したいとき(例:商談商品から商談に設定した「月額/年額」フィールドを参照、年額のときの金額が月額の10倍であるケース)
- 商談が年額で登録されているが月額で請求したいとき(例:商談商品から商談に設定した「月額/年額」フィールドを参照、年額のときの金額が月額の10倍であるケース)
- 商談が月額で登録されているが年額で請求したいとき(例:商談商品から商談に設定した「月額/年額」フィールドを参照、年額のときの金額が月額の10倍であるケース)
- 「freee請求オブジェクト設定」画面にて、上述の請求金額に設定したAPI参照名を販売価格の欄へ設定します。
※ カスタムフィールド追加前のデータレコードにおける「月額/年額」フィールドの空欄を考慮する場合、空欄の分のelse_resultを設定します。
CASE( Opportunity.MonthlyOrYearly__c , "月額" , UnitPrice , "年額" , UnitPrice * 10 , 0)
※ 値下げをfreee for Salesforceの機能で反映したい場合、リスト価格側でも同様の対応が必要です
初回の請求だけ金額が異なるとき
1. 商談レコードに対して複数回の請求があり、単純に掛け算・割り算で請求金額が定まらない場合、さらにフィールドの追加が必要です。
初回の請求だけ金額が異なる場合、次のカスタムフィールドの追加で対応できます。
- 受注に関するオブジェクト(商談、案件、注文など)
- 「支払回数」のフィールド(数値)
- 「初回請求済み」のフィールド(チェックボックス)
- 受注した商品・サービスに関するオブジェクト(商談商品、案件商品、注文商品など)
- 「初回請求金額」のフィールド(数値)
- 「請求金額(2回目以降)」のフィールド(数式:戻り値が数値)
- 商品・サービスに関するオブジェクトに「freee連携用請求金額」のフィールド(数式:戻り値が数値)
下記では、商談及び商談商品に設定するケースを例示します。
- 「商談の月額/年額が請求書と合わないとき」の手順1~3と同じ順序で「ステップ 1. データ型の選択」画面を開きます。
- 商談オブジェクトに「支払回数」のフィールド、「初回請求済み」のフィールドを追加します。
※「支払回数」のフィールドを作成する場合はデータ型で[数値]を選択し、「初回請求済み」のフィールドを作成する場合はデータ型で[チェックボックス]を選択します。
2. 商談商品オブジェクトに手動入力用の「初回請求金額」のフィールド(InitialPaymentInput__c)を[数値]として追加します。また、2回目以降の支払額用のフィールド(SecondAndSubsequent__c)を[数式](戻り値:数値)で追加します。
3. 初回請求済みかどうかによって変化する、freee連携用の請求額フィールドを追加します。
4. 「freee請求オブジェクト設定」画面にて、上述のfreee連携用の請求額フィールドに設定したAPI参照名を販売価格の欄へ設定します。
※ 上述の処理では端数処理の対応を含めていませんが、端数を初回の支払いに含めるように自動で調整したい場合、商品・サービスに関するオブジェクトに別途「初回請求金額(端数調整後)」のフィールド(数式:戻り値が数値)を追加し、そのフィールドから連携するといった対応ができます。
InitialPaymentInput__c + ( ListPrice - ( InitialPaymentInput__c + SecondAndSubsequent__c * ( Opportunity.NumberOfPayments__c - 1 )))
「割引」を単価に反映したいとき
freee for Salesforceでデフォルトの「商談設定」という設定では、販売価格としてListPriceを設定しています。この場合、Sales Cloudの割引機能(パーセンテージで割引率を入力するもの)が反映されないため、カスタムフィールドを追加しそのフィールドを設定することが必要です。
詳しくは「「割引」フィールドのパーセンテージを反映する方法」をご覧ください。
テキストを条件に応じて変化させるとき
freeeの請求書の備考欄など長文を入力できる欄について、その一部のみを条件に応じて変更したいケースがあります。その場合、複数のフィールドを参照するカスタムフィールド(数式:戻り値がテキスト)を用いることで、テキストの中の一部分を条件に応じて変更できます。
なお、数値や日付、選択リスト等の項目をテキストとして用いる場合はTEXT関数を用いる必要があります。
例:納品場所のカスタムフィールドDeliveryLocation__c(テキスト型)が空欄でない場合、備考の手数料の記述の前に挿入する。
IF (ISBLANK( DeliveryLocation__c ), "振込手数料はご負担ください" , DeliveryLocation__c & BR() & "振込手数料はご負担ください")
サブスクリプション商材がある場合のベストプラクティス
一度の受注に対し複数の請求が発生するサブスクリプション商材では、案件・受注に関するオブジェクトのレコードと請求書発行の粒度は合わなくなります。
そのため、上述してきたように商材に関するオブジェクトのカスタムフィールドにて計算後の金額を用意する対応が必要となりやすい面があります。しかしながら、サブスクリプション商材であっても支払いの周期や金額が流動的になりうる点も踏まえ、「請求」に関するカスタムオブジェクトを用意することがより有効です。
Salesforceのエディションによってはカスタムオブジェクト数に制限があるため常に有効とは限りませんが、カスタムオブジェクト数に余裕があればこちらの方法がおすすめです。特に複数のレコードを参照し合算請求するようなケースにおいて、データハンドリングの複雑性が下がるためです。
活用例:明細行に複合的なテキストを表示
例①:明細行に商品コード、商品名、備考を入力する
商談商品に数式のカスタムフィールド(戻り値:テキスト)を追加し、そのフィールドをfreee連携に用いるようにします。(商品コード(ProductCode__c)と備考(PublicDescription__c)で予めカスタムフィールドを追加した例)
例②:明細行に商品コード、商品名を入力する。備考は、入力がある場合のみ括弧書きで記載する。
ISBLANK関数で備考の入力について判定します。
上述の例から派生して、備考テキストの有無による判定を加えたパターンです。数式フィールドの関数を用いることで、テキストの内容は柔軟に制御できます。