Loading
保险
InsCommissionService:calculate

InsCommissionService:calculate

使用此服务计算生产者的佣金。

类:InsCommissionService

方法:calculate

描述

此服务使用有关生产者、保险产品和可委托事件的详细信息来计算生产者的佣金。

工作原理

要计算佣金,此服务:

  1. 接受productionCode、producerId、productId、commissionableEvent、context和effectiveDate输入,以找到用于计算的适当CommissionSchedule。

  2. 根据佣金计划计算佣金。

  3. 评估佣金,以确定它是否是退款(退还的佣金金额)。

    • 如果可佣金金额为负数,服务会将佣金视为退款。

    • 如果佣金不是退款,服务会将计算的佣金金额与最低和最高佣金金额进行比较。如果计算的金额太低或太高,服务将返回最小或最大金额,而不是计算的金额。

  4. 返回佣金金额、用于计算的佣金计划的 ID 以及适用于此佣金的最小和最大金额。

输入

输入

描述

productionCode

可选。

加工生产商的生产代码名称,而不是 ID。

producerId

可选。

加工生产者的 ID。

productId

必需。

支付佣金的产品 ID。

commissionableEvent

可选。

触发佣金计算的事件或交易(例如报价、已售保单或已更改/背书)。

effectiveDate

可选。

佣金付款的生效日期。如果为空,服务将使用今天的日期。

context

必需。

计算佣金的记录的字段名称和值对。您必须:

  • 在 API 名称中包含命名空间(如果存在)。

  • 包括objectId,即计算佣金的记录的 ID。

不带查找字段的格式:

{ objectAPI.fieldAPI : fieldValue }

带有查找字段的格式:

{ objectAPI.relationshipAPI.fieldAPI : fieldValue }

如果您使用查找字段格式化输入,您最多可以指定两个级别的字段。

commissionableAmount

可选。

佣金计算所依据的金额。

输入 JSON

以下是如何格式化输入 JSON。

{
   "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
   }
}

此示例计算背书的佣金。

{
   "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
}
 
正在加载
Salesforce Help | Article