您位於此處:
InsClaimItemService:calculateCoverages
使用此服務可計算索賠條列項目的涵蓋範圍金額和調整金額。當索賠調整員支付索賠條列項目時,這些金額會作為付款金額使用。
當建立調整時,服務會考量適用的扣款、共同保險、共同保險及現金超額上限。
如果涵蓋範圍規格上已定義「涵蓋範圍計算公式」,則此服務會評估此公式。
方法:calculateCoverages
運作方式
此服務使用物件介面欄位名稱作為 Vlocity (ClaimLineItem__c) 和 Salesforce FSC (ClaimCoveragePaymentDetail) 資料模型中常見欄位的預設輸入和輸出。
此服務的運作方式會視涵蓋範圍規格上是否存在「涵蓋範圍計算公式」而不同。
-
使用下列資訊取得索賠記錄、相關聯的原則記錄,以及索賠與原則的屬性值。
-
claimId -
claimCoverageId -
claimItemId(若可用) -
claimAmount
-
-
呼叫 InsPolicyTermsService:處理服務。
此服務會計算所有投保義務金額 (copay/coinsurance、可扣除和現金上限),並傳回此資料。
-
如果存在一或多個受保義務金額,則從索賠金額減去受保義務金額。
-
傳回輸出,其中包括最終調整金額和子系索賠項目 (若有的話)。
當涵蓋範圍規格上存在「涵蓋範圍計算公式」時,此服務會:
-
使用下列資訊取得索賠記錄、相關聯的原則記錄,以及索賠與原則的屬性值。
-
claimId -
claimCoverageId -
claimItemId(若可用) -
claimAmount
-
-
編譯下列物件 (包括 AttributeSelectedValues <productcode.key>),使其可供涵蓋範圍規格上的「涵蓋範圍計算公式」使用:
-
索賠
-
原則
-
PolicyCoverage
-
InsuredParty
-
InsuredItem
-
InvolvedInjury
-
InvolvedProperty
-
-
執行「涵蓋範圍計算公式」。
-
呼叫 InsPolicyTermsService:處理服務。
此服務會計算所有投保義務金額 (copay/coinsurance、可扣除和現金上限),並傳回此資料。
-
如果存在一或多個受保義務金額,則從索賠金額減去受保義務金額。
-
傳回輸出,其中包括最終調整金額和子系索賠項目 (若有的話)。
遠端選項
選項 |
描述 |
|---|---|
|
必要。 服務計算涵蓋範圍金額的索賠識別碼。 |
|
選擇性。 當您使用重新計算的涵蓋範圍和調整的金額來更新現有索賠條列項目時,請使用此選項。 |
|
必要。 服務計算金額的涵蓋範圍識別碼。 |
|
必要。 可能在涵蓋範圍公式中使用的其他輸入 JSON,可儲存在索賠條列項目記錄中 (如果 saveLineItem 為 true)。它必須有下列輸入:
|
此選項針對 Vlocity ClaimLineItem__c 和 Salesforce FSC ClaimCoveragePaymentDetail 資料模型中的通用欄位,在輸入和輸出中使用此表格中所述的介面欄位名稱:
使用者介面欄位名稱 |
Vlocity |
|---|---|
|
用於 |
|
用於 |
|
用於 |
|
用於 |
|
用於 |
|
用於 |
|
用於 |
|
用於 |
|
用於 |
|
用於 |
|
用於 |
針對未列於此處的欄位,請使用欄位的完全合格名稱。
具有索賠條列項目 API 的 ClaimLineItem 字首屬性會儲存至建立的索賠條列項目。
輸入 JSON 與輸出 JSON
如果決定付款詳細資料調整金額的立即可用方法符合您的業務需求,您可以略過此區段。但如果您想要透過不支援立即可用的方式調整付款詳細資料金額,則此區段適用於您。
這些立即可用的使用個案通常適用於權限屬性類別未涵蓋的情境,例如:
-
條件式扣款,其中相同涵蓋範圍規格中存在兩個扣款。例如,「扣除 A」適用於燃燒損害損失,而「扣除 B」適用於洪水損害損失。您想讓系統在執行階段決定要套用至付款詳細資料的扣款。
-
營運的 Copay/Coinsurance 訂單。例如,共保險與共保險皆存在於相同的涵蓋規格上,且您想要在套用付款詳細資料的共保之前先套用共保險。
-
福利類型的支出金額計算。例如,針對「健康造訪」福利類型,您希望系統計算付款詳細資料的 $50 金額。
瞭解 InsClaimItemService: calculateCoverages 輸出 JSON 格式後,您可以實作類似權益屬性的行為,以計算支出金額和調整,而無須具備基本權益屬性類別。
在我們開始之前,讓我們先使用簡單的範例說明 InsClaimItemService:
calculateCoverages 預期傳回的輸出 JSON。請考慮立即可用的「扣除電量」屬性類別支援的簡單使用個案。
範例:保單上索賠 $5,000 的金額,且應扣款 $1,000
以下是 InsClaimItemService:
calculateCoverages 的輸入 JSON。
{
"claimId": "01t000000000000001",
"claimCoverageId": "01t000000000000002",
"claimItemId": "01t000000000000003",
"additionalInput": {
"ClaimLineItem.claimAmount": 5000
"ClaimLineItem.description": "first party claim payment"
"ClaimLineItem.recipientId": "01t000000000000004"
}
}以下是由 InsClaimItemService:
calculateCoverages 傳回的輸出 JSON。
{
"claimItem": {
"adjustedAmount": 4000 // loss item adjusted amount
},
"claimLineItemAdjustment": {
"attributeClass": "Deductible", // policy terms attribute class
"adjustedAmount": 1000, // policy terms tracking entry postedAmount
"assetTermId": "a6ERN00000000dg2AA", // policy terms id
"remainingAmount": 0 // policy terms tracking entry remainingAmount
}
}以下是「財務」索引標籤上使用者互動叫用服務的方式、InsClaimItemService: calculateCoverages 取得資料的方式,以及資料之後會發生的狀況。
-
(1) 在索賠的「財務」索引標籤上,使用者按一下「新損失項目」,然後輸入 $5,000 美元的索賠金額。按 Tab 以從「索賠金額」移至下一個欄位會叫用
InsClaimItemService: calculateCoverages。在此範例中,從InsClaimItemService: calculateCoverages傳回的 JSON 輸出包含以下值。-
claimLineItem: adjustedAmount扣除索賠金額後,已支付給收款人的金額:$5,000-$1,000=$4,000。此值會在「新損失項目」表單的「已調整金額」欄位中向使用者顯示。 -
claimLineItemAdjustment:adjustedAmount索賠涵蓋範圍付款詳細資料的調整金額,在此個案中為從索賠金額減去的 $1,000 扣款。 -
claimLineItemAdjustment:attributeClass核發給收款人的金額原因與索賠金額不同。在我們的範例中,索賠金額會減少 $1,000,因為會套用 $1,000 扣款 (attributeClass = 扣款)。 -
claimLineItemAdjustment:assetTermId建立原則條款追蹤項目的原則條款。在我們的範例中,這是「可扣除」保單條款的識別碼。 -
claimLineItemAdjustment:remainingAmount保單條款追蹤項目中要設定的金額,在此個案中為 $0,因為此交易之後沒有可扣除的餘額。
-
-
(2) 按一下 新增以儲存新的損失項目會叫用
InsClaimItemService: add,其會使用傳回的 JSON 輸出從InsClaimItemService: calculateCoverages保留資料至 ClaimCoveragePaymentDetail、ClaimCoveragePaymentAdjustment 和 InsurancePolicyTermTrackingEntry 記錄。(InsClaimItemService: update服務的運作方式類似。)每個記錄皆包含與我們範例相關的值:-
ClaimCoveragePaymentDetail 記錄具有 $5,000 的 ClaimCoveragePaymentDetail.ClaimedAmount,以及 $4,000 的 ClaimCoveragePaymentDetail.AdjustedAmount。
-
ClaimCoveragePaymentAdjustment 記錄具有可扣除的 ClaimCoveragePaymentAdjustment.AdjustedReason 和 $1,000 的 ClaimCoveragePaymentAdjustment.AdjustedAmount。
-
InsurancePolicyTermTrackingEntry 記錄具有 InsurancePolicyTermTrackingEntry.PostedAmount 為 $1,000,且 InsurancePolicyTermTrackingEntry.RemainingAmount 為 $0。
-
瞭解輸出 JSON 的基本結構後,您可以透過在涵蓋範圍規格中將邏輯導入至「涵蓋範圍計算公式」來設定更進階的使用個案。
範例:在涵蓋範圍規格的「詳細資料」索引標籤上,您使用用於 additionalInput 的相同 ClaimLineItem 語法,輸入類似此類的「涵蓋範圍計算公式」。
InvokeIP('ClaimCoverage_ClaimCoverageFormula', , INPUT('claimId', ClaimLineItem.claimId) INPUT('benefitType', ClaimLineItem.benefitType), INPUT('quantityCount', ClaimLineItem.unitCount), 'result')
在執行階段,此公式會呼叫名為 ClaimCoverage_ClaimCoverageFormula 的整合程序。此整合程序預期為 claimId、benefitType 和 quantityCount 輸入,如範例輸入 JSON 中所示,用於測試整合程序:
{
"claimId": "a2b4W000007W2pQQAS",
"benefitType": "Ambulance - Air",
"quantityCount": "1",
}「涵蓋範圍計算公式」指定 ClaimCoverage_ClaimCoverageFormula 整合程序的輸出 JSON 位於稱為 result 的節點中。只要該 result 節點中的 JSON 結構符合預期的 InsClaimItemService: calculateCoverages 輸出 JSON 格式,則系統的行為完全如同使用基本的電源屬性類別:在按一下「新增」按鈕後,向使用者顯示「 調整金額 」,並將持續資料顯示至 ClaimCoveragePaymentDetail、ClaimCoveragePaymentAdjustment 和 InsurancePolicyTermTrackingEntry 記錄。
在此輸出 JSON 範例中,適用於「健康造訪」的 $50 支出,result 節點會造成 InsClaimItemService: add 將 50 筆的插入執行至 ClaimCoveragePaymentDetail.AdjustedAmount。
{
"result": {
"claimLineItem": {
"adjustedAmount": "50"
}
},
}以下是設定計算的一些祕訣。
-
如果您的使用個案涉及現有的電力屬性類別,您可以在套用調整之前,使用
InsurancePolicyTerms: getCurrentStandings來判斷保單條款的剩餘值。此步驟可讓您套用正確的調整,並傳回適當的 assetTermId。在這些使用個案中,請設定整合程序傳回的 JSON 結構,以包含 claimLineItem 和 claimLineItemAdjustment 節點。在 claimLineItemAdjustment 節點中,確定:
-
包含 assetTermId。
-
包含 attributeClass。
InsClaimItemService: add服務需要這兩個值來決定如何建立保單上該特定次要屬性的保單條款追蹤項目記錄。例如,具有條件性扣除的涵蓋範圍規格有兩個可扣除的電力屬性:針對燃燒的「A」扣除,針對洪水的「B」扣除。「涵蓋範圍計算」公式中的整合程序可以使用InsurancePolicyTerms: getCurrentStandings來判斷此保單的「扣除 A」為 $1,000,而「扣除 B」為 $500。接著,根據此索賠的損失原因,整合程序可以確定要套用的扣除項目。傳回輸出 JSON 時,請確保根據套用的扣除值傳回正確的 assetTermId。 -
-
某些使用個案不涉及立即可用的電源屬性類別,但仍需要對付款詳細資料進行調整。例如,當提供者計費超過協商匯率時,您需要 ClaimCoveragePaymentAdjustment 記錄以說明調整付款金額小於索賠金額的原因。在這些使用個案中,請設定整合程序傳回的 JSON 結構,以包含 claimLineItem 和 claimLineItemAdjustment 節點。
在 claimLineItemAdjustment 節點中:
-
請省略 assetTermId,因為沒有定義此調整的權限屬性類別。
-
包含 attributeClass 作為調整原因 (例如「覆蓋調整」)。
InsClaimItemService: add服務會使用 attributeClass 字串填入 ClaimCoveragePaymentDetail.AdjustedReason 欄位,即使沒有相關的 attributeClass。 -
-
如果使用個案涉及福利類型的支出金額,則索賠金額與調整金額之間不會有任何不一致。例如,每日 $100 的固定價格適用於住院。在這些情況下,將整個 claimLineItemAdjustment 節點保留在 JSON 之外。

