Loading
保险
InsPolicyService:createPolicyVersion

InsPolicyService:createPolicyVersion

使用此服务创建现有保单的新版本,同时保持现有保单记录不变。

此服务启用策略版本。对策略的所有更改将在该策略的不同版本中跟踪。您可以在修改策略和取消策略 OmniScript 和集成程序中使用它。您也可以使用此服务恢复过期和取消的保单。

此服务与 Salesforce Financial Services Cloud 配合使用,以获得可选付款计划创建支持。

类:InsPolicyService

方法:createPolicyVersion

工作原理

  1. 获取当前策略的assetId或policyId,以及inputKey指示的 JSON。

  2. 创建原始策略的克隆。

  3. 如果存在现有付款计划,服务会更新付款计划,并在背书生效日期创建付款计划条目。如果useIsPaidFlag为真,则没有交易(其状态字段为Valid,isPaid字段未选中)的所有未来付款计划条目(从生效日期开始)都会根据保费、税和费用的较新值进行更新。新的付款计划条目包含根据新的保费、税款和费用以及更新的付款计划条目调整的保费、税款和费用值。此外,每个付款计划条目中的保单组件的缴款记录也会更新。

  4. 该服务使用以前的保单的保费计算方法、付款类型和保费频率,以及新保单的定期总保费、定期总费用和定期总税额来生成修改后的付款计划。除了创建事务之外,事务细分数据会填充到事务详细信息对象中。此对象存储有关每个资产、参与者或承保范围在保费、税和费用方面对交易总额的贡献率的数据。仅显示保费、税或费用至少有一个值大于零的资产、参与者和承保范围。

    备注
    备注 保费计算方法、付款类型和保费频率不会从以前的保单复制,必须通过 JSON 作为输入传递到服务。
  5. 如果 includeRevenueSchedule 设置为真,它会调用收入计划服务来修改收入计划。

  6. 如果这是此策略的第一次修改,服务会使用相同assetId标记originalVersionId__c和previousVersionId__c。如果这不是此策略的首次修改,服务会将OriginalVersionId__c转移到新版本,并在新策略中将以前的assetId戳到PreviousVersionId__c。

  7. 如果taxesAndFees、taxAmount和/或feeAmount节点包含在输入 JSON 中,则会在新版本的策略上创建和按比例分配相应的税/费字段和/或记录。

  8. 如果适用,将为付款调整创建 InsurancePolicyTransaction。

  9. 如果 calculateCommission 是 true,服务会调用 InsurancePolicyService.calculateAndSaveCommission,这将为InsCommissionService.calculate和InsCommissionService.saveCommissions服务准备输入。计算服务处理输入后,保存服务将计算值存储在 TotalCommissionAmount 中,然后汇总该值并将其添加到原始策略的TotalCommissionAmount。

  10. 如果getquotedetail服务中的disableAttributeCategories标志设置为真,服务将从响应中忽略 attributeCategory 节点,createPolicyVersion服务无法创建策略条款。要确保 createPolicyVersion 服务创建策略条款,请将 getQuoteDetail 服务中的 disableAttributeCategories 标志设置为假。
备注
备注 该服务还支持对原始保单版本持续时间少于 365 天或闰年少于 366 天的保单进行背书。请参阅保险单注意事项和限制。

税费

以下是此服务在税费方面的工作方式:

  • 如果在 JSON 记录上指定了taxesAndFees字段,则taxesAndFees列表中的每个项目都会保留相应的AssetPricingAdjustment__c记录。

  • 如果在 JSON 记录上指定了taxAmount字段,则TaxAmount__c字段将设置为已创建AssetItem对象上taxAmount字段的值。

  • 如果在 JSON 记录上指定了feeAmount字段,则FeeAmount__c字段将设置为创建的AssetItem上的feeAmount字段的值。

就当前(新创建的策略)而言:

  • 如果当前保单有TotalTaxAmount__c,该值将在有效日期和结束日期之间按比例分配,并在TotalTaxForTerm__c字段中设置。

  • 如果当前保单有TotalFeeAmount__c,该值将在有效日期和结束日期之间按比例分配,并在TotalFeeForTerm__c字段中设置。

  • 如果当前保单的AssetItem有TaxAmount__c,该值将在有效日期和结束日期之间按比例分配,并在ProratedTaxAmount__c字段中设置。

  • 如果当前保单的AssetItem有FeeAmount__c,该值将在有效日期和结束日期之间按比例分配,并在ProratedFeeAmount__c字段中设置。

对于已经创建的保单,以下是如何转移税款和费用的:

  • 如果以前的保单有TotalTaxAmount__c,该值将在新的生效日期和结束日期按比例分配,并在TotalTaxForTerm__c字段中设置。

  • 如果以前的保单有TotalFeeAmount__c,该值将在新的生效日期和结束日期按比例分配,并在TotalFeeForTerm__c字段中设置。

  • 如果 AssetItem 字段包含TaxAmount__c,则该值将在新的生效日期和结束日期之间按比例分配,并在ProratedTaxAmount__c字段中设置。

  • 如果上一个保单中的 ⁇ AssetItem 字段有FeeAmount__c,该值将根据新的生效日期和结束日期按比例分配,并在ProratedFeeAmount__c字段上设置。

最后,如果createTransaction选项(见下文)设置为真,并且新保单版本具有关联的税费,则创建的交易上的TaxAmount__c和FeeAmount__c字段将设置为新(当前)保单与之前保单的TotalTaxForTerm__c和TotalFeeForTerm__c之间的差值。

远程选项

选项

说明

assetId 或 policyId

必需。

当前策略的 ID。

createContactForParticipants

可选。

true 或 false

默认为 true。

如果false,服务不会创建联系人记录。

createInsuredItemsRelationships

true 或 false

如果此选项设置为真,您可以指定instanceKey > 保险项目之间的parentInstanceKey关系列表。

此选项支持父级 > 子级和父级 > 子级 > 孙级保险项目关系。

createTransaction

可选。

true 或 false

默认为 false。

如果true,服务会创建将由收入计划服务使用的交易。

effectiveDate

“YYYY-MM-DD HH:MM:SS” 或 %OmniScriptDataElement%

保单生效的日期。

如果在选项映射中没有effectiveDate值,服务会在rootAttributes映射中查找它。如果服务未在此处找到effectiveDate,则使用今天的日期。

如果您正在使用保险行业扩展软件包,将忽略effectiveDate选项中的时间戳值。相反,有效日期时间戳值设置为选定有效日期的 12:00 a.m.,过期日期值设置为选定过期日期的 11:59 p.m.。时间戳通过使用用户指定的时区来设置。

getDataCustomClassName

可选。

此服务用于检索保单(资产)信息的自定义类的名称。

如果您正在使用 Salesforce FSC,您必须指定此选项或postDataDRBundleName。

默认值设置为 ⁇ GetInsurancePolicy。

getDataDRBundleName

可选,

此服务用于检索保单(资产)信息的数据映射器的名称。

如果您正在使用 Salesforce FSC,您必须指定此选项或getDataCustomClassName。

  • 如果您同时指定两者,服务将使用 getDataDRBundleName 值。

  • 如果您未指定,服务会使用默认值 getDataCustomClassName (GetInsurancePolicy)。

includePaymentSchedule

可选。

True是否将为保单更新付款计划。

默认值是 false。

includeRevenueSchedule

可选。仅在 createTransaction 设置为 true 时使用。

true 或 false

如果true,此选项调用 InsPolicyRevenueScheduleService:修改

inputKey

必需。

%theJSONyouneed%

isCreatingPolicyTerms

true 或 false

在设置为 true 时,服务会在输出 JSON 中返回一个policyTermIds节点。

postDataCustomClassName

可选。

此服务用于保存新策略版本的自定义类的名称。

如果您正在使用 Salesforce FSC,您必须指定此选项或postDataDRBundleName。

默认值设置为 ⁇ PostInsurancePolicy。

postDataDRBundleName

可选。

此服务用于保存新策略版本的数据映射器的名称。

如果您正在使用 SalesForce FSC,您必须指定此选项或postDataCustomClassName。

  • 如果您同时指定两者,服务将使用 postDataDRBundleName 值。

  • 如果您未指定,服务会使用默认值 postDataCustomClassName (PostInsurancePolicy)。

transactionType

可选。仅在 createTransaction 设置为 true 时使用。

如果未为transactionType提供值,则默认设置为 Changed/Endorsed。

updateDataCustomClassName

可选。

更新当前策略。

如果您正在使用 Salesforce FSC,您必须指定此选项或updateDataDRBundleName。

默认值设置为 ⁇ PostInsurancePolicy。

updateDataDRBundleName

可选。

此服务用于更新当前策略的数据映射器的名称。

如果您正在使用 Salesforce FSC,您必须指定此选项或updateDataCustomClassName。

  • 如果您同时指定两者,服务将使用 updateDataDRBundleName 值。

  • 如果您未指定,服务会使用默认值 updateDataCustomClassName (PostInsurancePolicy)。

useLocalTimezone

true 或 false

默认为 true。

在设置为 true 时,此服务使用创建策略版本的本地时区。

在设置为 false 时,此服务使用 GMT 作为时区。

calculateCommission

true 或 false

在设置为 true 时,服务会计算根项目的佣金,并将总金额保存到 TotalCommissionAmount。

当设置为 false(默认)时,服务不会计算佣金。

备注
备注

如果您将此选项设置为真,您还需要输入至少一个生产者或生产代码值:producerId 、productionCodeId 或 productionCodeName。

commissionType

可选。

佣金类型(例如,奖金或标准)。

commissionStatus

可选。

佣金的状态(例如,待处理、已付款或已放弃)。

producerId

可选。

处理生产者 ID,即用于检索 commissionScheduleId 和计算佣金金额的生产者。

分配给InsurancePolicy.ProducerId。

productionCodeId

可选。

生产代码 ID。

分配给InsurancePolicy.ProductionCodeId__c。

productionCodeName

可选。

传递到 InsCommissionService.calculate 服务的生产代码名称。

如果 ⁇ 您未输入productionCodeId,服务会使用 productionCodeName 查找 ⁇ productionCodeId。如果输入两个值但不匹配,则优先productionCodeId。

memberPlanIntegrationProcedure

根据用户配置启动自定义集成程序。当您使用此选项时,它会将服务的所有选项传递给自定义集成程序,并将所有保单 ID 作为与对象集成的输入,例如带有成员计划的保险单对象。

ratingDate

用于为输入 JSON 定价的评级日期。

备注
备注 您无法为 ratingField 传递特定时间,因为字段类型是日期。因此,评级日期时间戳默认为 12:00 am。
term

服务创建的策略期限。

InsPolicyService:createPolicyVersion 仅支持年度保单术语。

useIsPaidFlag

可选

指定是否必须启用IsPaid标志。

如果为真,则在保费、税和费用计算期间考虑付款计划条目对象中的isPaid字段。

默认值是 false。

输入 JSON

此服务查找产品 JSON 中指定的inputKey。

"policyJson": {
  "productConfigurationDetail": {
    "insuredItems": {
      "Auto": [{
          "instanceKey": "2015 Lexus LX250",
          "autoLicNum": "Lexus",
          "autoModel": "LX150",
          "autoYear": 2015,
          "BodyClass": "Sedan/Saloon",
          "VehicleType": "PASSENGER CAR",
          "isPrimary": true
                                        "isParent": true
        },
        {
          "instanceKey": "2006 Honda Odyssey",
          "autoLicNum": "Honda",
          "autoModel": "Odyssey",
          "autoYear": 2006,
          "BodyClass": "Minivan",
          "VehicleType": "MULTIPURPOSE PASSENGER VEHICLE (MPV)",
          "isPrimary": true
                                        "isParent": true
        },
        {
          "instanceKey": "2018 530 BMW",
          "autoLicNum": "530",
          "autoModel": "BMW",
          "autoYear": 2018,
          "BodyClass": "Sedan/Saloon",
          "VehicleType": "PASSENGER CAR",
          "isPrimary": true
                                        "isParent": true
        },
        {
          "instanceKey": "2016 Camry Toyota",
          "autoLicNum": "Camry",
          "autoModel": "Toyota",
          "autoYear": 2016,
          "BodyClass": "Sedan/Saloon",
          "VehicleType": "PASSENGER CAR",
          "isPrimary": true
                                        "isParent": true
        }
      ],
      "Driver": [{
          "AGE": 20,
          "instanceKey": "Joan Smith",
          "FN": "Joan",
          "GENDER": "Female",
          "LN": "Smith",
          "isPrimary": false
                                        "isParent": false
        },
        {
          "AGE": 30,
          "instanceKey": "John Smith",
          "FN": "John",
          "GENDER": "Male",
          "LN": "Smith",
          "isPrimary": false
                                        "isParent": false
        },
        {
          "AGE": 30,
          "instanceKey": "Robert Henderson",
          "FN": "Robert",
          "GENDER": "Male",
          "LN": "Henderson",
          "isPrimary": false
                                        "isParent": false    
        },
        {
          "AGE": 20,
          "instanceKey": "Kinsey Schell",
          "FN": "Kinsey",
          "GENDER": "Female",
          "LN": "Schell",
          "isPrimary": false
                                        "isParent": false
        }
      ]
    },
    "accountId": "001f400000RrQSrAAN"
  }

如果isCreatingPolicyTerms远程选项设置为true,则包含policyTermIds节点。以下是policyTermIds节点的示例:

{  
   "policyId": "02i6g000000h110AAA",
   "policyTermIds": [
    "a5X6g000001LeUUEA0",
    "a5X6g000001LeUVEA0",
    "a5X6g000001LeUWEA0",
    "a5X6g000001LeUXEA0",
    "a5X6g000001LeUYEA0",
    "a5X6g000001LeUZEA0",
    "a5X6g000001LeUaEAK",
    "a5X6g000001LeUbEAK",
    "a5X6g000001LeUcEAK",
    "a5X6g000001LeUdEAK",
    "a5X6g000001LeUeEAK",
    "a5X6g000001LeUfEAK"
  ]
}

输出 JSON

该服务会在输出 JSON 中返回新保单版本号。

{
    "policyId": "02i0b00000uRwhVAAS"
    "error": "ok"
}
 
正在加载
Salesforce Help | Article