詳細情報:
InsPolicyService:createPolicyVersion
このサービスを使用して、既存の保険契約レコードをそのまま維持しながら、既存の保険契約の新しいバージョンを作成します。
このサービスにより、ポリシーのバージョン管理が可能になります。ポリシーへの変更はすべて、そのポリシーの異なるバージョンで追跡されます。これは、ポリシーの変更とポリシーのキャンセルの OmniScript および Integration Procedure で使用できます。このサービスを使用して、期限切れまたはキャンセルされた保険契約を復元することもできます。
操作手順
-
現在のポリシーの
assetIdまたはpolicyId、およびinputKeyで示される JSON を取得します。 -
元のポリシーのコピーを作成します。
-
既存の支払スケジュールがある場合、サービスは支払スケジュールを更新し、承認の発効日に支払スケジュールエントリを作成します。
useIsPaidFlagが true の場合、トランザクションのない ([状況] 項目が [Valid] で [isPaid] 項目がオフになっている) 今後のすべての支払スケジュールエントリは、保険料、税金、手数料の新しい値に基づいて更新されます。新しい支払スケジュールエントリには、新しい保険料、税金、手数料と更新された支払スケジュールエントリに基づいて調整された保険料、税金、手数料の値が含まれます。また、各支払スケジュールエントリの保険契約コンポーネントの貢献レコードも更新されます。 -
このサービスでは、以前の保険契約の保険料計算方法、支払種別、保険料頻度と、新しい保険契約の [期間の保険料合計]、[期間の手数料合計]、[期間の税額合計] を使用して、変更された支払スケジュールが生成されます。トランザクションの作成に加えて、トランザクション内訳データがトランザクション詳細オブジェクトに入力されます。このオブジェクトには、各納入商品、関係者、または補償が保険料、税金、手数料の観点で取引総額にどの程度寄与しているかに関するデータが保存されます。納入商品、関係者、および保険料、税金、手数料の値が 0 より大きい補償のみが表示されています。
メモ [Premium Calculation Method (プレミアム計算方法)]、[Payment Type (支払種別)]、[Premium Frequency (プレミアム頻度)] は以前のポリシーからコピーされず、JSON を介してサービスへの入力として渡す必要があります。 -
includeRevenueScheduleを true に設定すると、収益スケジュールサービスをコールして収益スケジュールを変更します。 -
このポリシーの最初の変更の場合、サービスは
originalVersionId__cとpreviousVersionId__cに同じassetIdスタンプを付けます。これがこのポリシーの最初の変更でない場合、サービスはOriginalVersionId__cを新しいバージョンに継承し、以前のassetIdを新しいポリシーのPreviousVersionId__cにスタンプします。 -
taxesAndFees、taxAmount、feeAmountノードが入力 JSON に含まれている場合、対応する税金/手数料項目またはレコードが新しいバージョンのポリシーで作成および按分されます。 -
該当する場合は、支払調整用の InsurancePolicyTransaction が作成されます。
-
calculateCommissionがtrueの場合、サービスはInsurancePolicyService.calculateAndSaveCommissionをコールし、InsCommissionService.calculateおよびInsCommissionService.saveCommissionsサービスの入力を準備します。計算サービスで入力が処理されると、保存サービスで計算された値がTotalCommissionAmountに保存されます。その後、値を積み上げ集計して元のポリシーのTotalCommissionAmountに追加します。 getquotedetailサービスのdisableAttributeCategoriesフラグが true に設定されている場合、サービスは応答から attributeCategory ノードを省略し、createPolicyVersionサービスはポリシー規約の作成に失敗します。createPolicyVersionサービスでポリシー条件が作成されるように、getQuoteDetailサービスの のdisableAttributeCategoriesフラグを false に設定します。
税金と手数料
このサービスの税金と手数料の仕組みを次に示します。
-
JSON レコードで
taxesAndFeesフィールドが指定されている場合、対応するAssetPricingAdjustment__cレコードがtaxesAndFeesリストの各項目に対して保持されます。 -
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] オプション (下記を参照) が true に設定されていて、新しいポリシーバージョンに税金と手数料が関連付けられている場合、作成されたトランザクションの [TaxAmount__c] 項目と [FeeAmount__c] 項目は、新しい (現在の) ポリシーと前のポリシーのTotalTaxForTerm__cおよびTotalFeeForTerm__cの差に設定されます。
リモートオプション
Input 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"
]
}