您位於此處:
InsCommissionService:adjust
使用此服務可調整「產生者佣金」金額。
方法:adjust
運作方式
若要調整佣金,此服務會:
-
接受
commissionId輸入,接收對應的「生產者佣金」記錄。如果已調整佣金,則服務需要最近調整的
commissionId。 -
如果
useOriginalSchedule為 true,則會針對計算使用在收取的「產生者佣金」記錄中指定的「佣金排程」。如果
useOriginalSchedule為 false,則服務會使用productionCode、producerId、productId、commissionableEvent、context和effectiveDate輸入來決定要使用的「佣金排程」。 -
根據「佣金排程」計算佣金。
-
評估佣金以判斷其是否為收回費用 (退貨的佣金金額)。
-
如果可訂購金額為負數,則服務會將佣金視為收回費用。
-
如果佣金不是收回費用,則服務會將計算的佣金金額與最低和最高佣金金額進行比較。如果計算的金額過低或過高,服務會傳回最小或最大金額,而非計算的金額。
-
-
傳回佣金金額、用於計算的佣金排程識別碼,以及套用至此佣金的最小和最大金額。
輸入
輸入 |
描述 |
|---|---|
|
必要。 要調整的「產生者佣金」識別碼。 |
|
設定為 設定為 |
|
選擇性。 處理產生者的生產代碼名稱,而非識別碼。 |
|
處理產生者的識別碼。 |
|
如果 支付佣金的產品識別碼。 |
|
觸發佣金計算的事件或交易 (例如「報價」、「已售出原則」或「已變更/已贊同」)。 |
|
選擇性。 調整生效日期。如果為空值,則服務會使用今天的日期。 |
|
必要。 計算佣金的記錄其欄位名稱和值配對。您必須:
不含對應欄位的格式:
含對應欄位的格式:
如果您使用對應欄位格式化輸入,您最多可以指定兩個欄位層級。 |
|
計算佣金所依據的金額。 |
輸入 JSON
以下是設定輸入 JSON 格式的方式。
{
"commissionId": ProducerCommission.Id,
"useOriginalSchedule": true,
"productionCode": ProductionCode.Name,
"producerId": Producer.Id,
"product2Id": Product2.Id,
"commissionableEvent": event type,
"commissionableAmount": amount of the transaction,
"context": {
"objectId": ID of applicable object used,
"objectAPI.fieldAPI" : value
}
}此範例會使用原始使用的相同佣金排程,調整為贊同核發的佣金。
{
"commissionId": apwe045asx,
"useOriginalSchedule": true,
"productionCode":AX001,
"producerId":ay001jh002,
"product2Id":az011jh022,
"commissionableEvent":"Endorsement",
"commissionableAmount":500,
"context":{
"Quote.vlocity_ins__TotalPremiumforTerm__c":100,
"QuoteLineItem.vlocity_ins__GroupClassId__r.vlocity_ins__ClassCode__c":"Managers",
"QuoteLineItem.vlocity_ins__FeeAmount__c":5,
"objectId":ax003jh001
}
}輸出 JSON
以下是輸出 JSON 的格式。
{
"commissionAmount": amount,
"commissionScheduleId": ID of the commission schedule used,
"minCommissionAmount": CommissionScheduleAssignment.MinCommissionAmount,
"maxCommissionAmount": CommissionScheduleAssignment.MaxCommissionAmount
}以下範例輸出顯示計算金額 ($167) 在最小值和最大值 ($100-$500) 定義的範圍內。
{
"commissionAmount":167,
"commissionScheduleId":"ab001od002",
"minCommissionAmount":100,
"maxCommissionAmount":500
}