您位於此處:
InsPolicyService:calculateTaxesAndFees
使用此服務可計算和儲存目標資產 (保單) 的稅額和費用。
稅金和費用資訊會儲存在資產 (保單) 物件以及 AssetCoverage__c、AssetInsuredItem__c 和 AssetPartyRelationship__c 欄位上。
此服務也會儲存項目化稅額,如下方步驟 3 中所述。
此服務支援 Salesforce Financial Services Cloud。
運作方式
-
服務會取得
assetId、effectiveDate(或EffectiveDate_c在目標原則上,或今天日期 (如果值為空值)。 -
根據與保單、涵蓋範圍和/或投保項目相關聯的稅金和費用項目,可指定簡單計算,或呼叫計算程序或計算稅金和費用所需的「整合程序」。
-
如果將 saveChanges 設為 (或預設為)
true,則會以三種方式的其中一種方式儲存計算的稅金和費用。-
如果
AssetItem已計算稅額和費用,則服務會儲存代表該稅額/費用的AssetPricingAdjustment__c記錄。AssetPricingAdjustment__c記錄會包含計算金額 (Amount__c)、相關聯的AssetItem(AssetCoverageId__c/AssetInsuredItemId__c/AssetPartyRelationshipId__c) 和Asset(AssetId__c),類型 (稅金或費用;AdjustmentType__c),以及相關聯的稅金/費用 (PriceListEntryId__c)。AssetPricingAdjustment__c有相關聯的AssetItem,因此也會設定ApplicableItemType__c欄位。此設定表示適用的項目類型:涵蓋範圍、受保項目或當事人關係。如果已指定
transactionId選項,則AssetTransactionId__c欄位會設定為transactionId值。 -
如果
AssetItem或其子系已計算稅額,則自己及其子系的計算稅額總和會儲存在TaxAmount__c欄位中。 -
如果
AssetItem或其子系已計算費用,則本身及其子系的計算費用總和將儲存在FeeAmount__c欄位中。
-
-
在「資產」層級,所有稅額和費用金額的總和會分別儲存在
TotalTaxAmount__c和TotalFeeAmount__c欄位上。 -
如果目標資產 (保單) 不是原始版本的保單,則稅金和費用金額將根據資產的
EffectiveDate__c和ExpirationDate__c進行比例分配。AssetItem的按比例分配稅金與費用金額會儲存在ProratedTaxAmount__c和ProratedFeeAmount__c欄位上。資產的按比例分配稅金與費用金額會儲存在TotalTaxForTerm__c和TotalFeeForTerm__c欄位上。 -
如果提供
transactionId選項,則目前資產版本與先前資產版本之間的按比例分配稅金和費用總金額變更 (目標資產版本和所有先前資產版本之間按比例分配稅金和費用總金額總和) 會分別儲存在目標交易的TaxAmount__c和FeeAmount__c欄位上。
遠端選項
選項 |
描述 |
|---|---|
|
必要 此服務將計算稅金與費用的資產 (保單) 識別碼。 |
|
選擇性 指定的交易將更新為已計算的稅金與費用金額。 |
|
選擇性 僅計算與所提供的管轄權相關聯的稅金和費用。 |
|
選擇性 計算僅在指定日期有效的稅金和費用。 若未提供,則值預設為目標原則的 |
|
選擇性
預設為 如果為 如果為 |
輸出 JSON
服務會傳回產品/子系產品階層中的項目化稅額與費用。範例如下:
{
"productId": 1,
"productName": "Product",
"ProductCode": "P",
"taxesAndFees": [{
"Id": 1,
"Amount__c": 10,
"PriceListEntryId__c": 11,
"AdjustmentType__c": "Tax"
}, {
"Id": 2,
"Amount__c": 15,
"PriceListEntryId__c": 12,
"AdjustmentType__c": "Fee"
}],
"taxAmount": 25
"feeAmount": 30
"childProducts": [{
"productId": 2,
"productName": "Insured Item",
"ProductCode": "II",
"instanceKey": "My Insured Item",
"taxesAndFees": [{
"Id": 3,
"Amount__c": 15,
"PriceListEntryId__c": 16,
"AdjustmentType__c": "Tax"
}],
"taxAmount": 15
}, {
"productId": 3,
"productName": "Coverage",
"ProductCode": "C",
"taxesAndFees": [{
"Id": 4,
"Amount__c": 15,
"PriceListEntryId__c": 21
"AdjustmentType__c": "Fee"
}],
"feeAmount": 15
}]
}
