【Zoho CRM】区分記載請求書等保存方式の設定(※エンタープライズプラン)

【Zoho CRM】区分記載請求書等保存方式の設定(※エンタープライズプラン)


2023年3月10日現在のインボイス制度の対応については、
以下をご参照ください。
この記事は過去のサブフォームを使わずに区分記載請求書に対応する方法です。

区分記載請求書等保存方式

消費税増税に伴い令和元年(2019年)10月からは、「区分記載請求書等保存方式」が義務付けられます。 
https://www.gov-online.go.jp/tokusyu/keigen_zeiritsu/jigyosya/kubunkisai.html

軽減、非軽減の税率別の商品の各総額を記載する場所を設けることです。


Zoho CRMのエンタープライズプランのカスタム関数機能で、消費税8%商品と10%商品の税込み額を個別記載できます。
※カスタム関数機能はZoho CRM エンタープライズプランのみの対応です。

請求書タブに消費税総額の「通貨」項目を作成

以下のよう請求書タブに追加項目を作成します。



タブへの項目の追加方法は以下をご参照ください。
https://www.zoho.com/jp/crm/help/customization/custom-fields.html

新項目のAPI名の確認

設定→開発者用情報→APIとSDK→API名→請求書→税総額(%)の項目が確認できます。
この名前を編集することも可能です。



のちにカスタム関数で使用しますので覚えます。

カスタム関数機能の設定

カスタム関数作成手順:
設定→自動化→処理→カスタム関数→関数の設定→「自分で作成する」をクリック


1) 「区分記載請求書」など名前を入力(半角ABC)
2)請求書をタブとして指定 


3) 以下のコードを記載します。

resp = zoho.crm.getRecordById("Invoices",invoiceid);
lineitems = resp.get("Product_Details");
eighttaxes = 0.0;
tentaxes = 0.0;
for each  item in lineitems
{
Tax = item.get("Tax");
//info Tax;
//info item ;
if(Tax != 0)
{
percentage = item.get("line_tax").toMap().get("percentage");
//info percentage;
if(percentage = 8)
{
eighttaxes = eighttaxes + item.get("net_total");
}
if(percentage = 10)
{
tentaxes = tentaxes + item.get("net_total");
}
}
}
mp = Map();
mp.put("xxxxx",eighttaxes);
mp.put("yyyyy",tentaxes);
update = zoho.crm.updateRecord("Invoices",invoiceid,mp);
info update;

4)「Edit Auguments」をクリックし、-「invoiceid」という名前を付け、「請求書ID」を選択します



5)xxxxを8%の税額フィールドAPI名に、yyyyを10%の税総額のAPI名に置き換えます。 

mp.put("xxxxx",eighttaxes);
mp.put("yyyyy",tentaxes);

mp.put("TaxEight",eighttaxes);
mp.put("TaxTen",tentaxes);

6)「保存する」をクリックし、請求書項目のワークフロールールに関連付けます。

上記のカスタム関数によって、8%と10%の税込み商品のNet_total(総額)を個別に合計し、2つのカスタム項目に表示できます。

請求書テンプレートの差し込み項目を追加

このままですと、請求書タブにしか表示されませんので、請求書テンプレートを編集して、2つの通貨項目の差し込みタグを追加します。


繰り返しワークフローの設定

このままですと、カスタム関数は項目入力時の一回しか動かないので、カスタム関数を項目変更ごとに動かすワークフローを設定します。


完成

請求書項目には税別総額が表示され、テンプレートを適用したプレビューでも項目が反映されています。