Loading
보험
InsPolicyService:createPolicyVersion

InsPolicyService:createPolicyVersion

이 서비스를 사용하여 기존 정책 레코드를 그대로 유지하면서 새 버전의 기존 정책을 만듭니다.

이 서비스는 정책 버전 관리를 활성화합니다. 정책에 대한 모든 변경 사항은 다른 버전의 정책에서 추적됩니다. 정책 수정 및 정책 OmniScript 및 통합 절차 취소에 사용할 수 있습니다. 이 서비스를 사용하여 만료 및 취소된 정책을 복원할 수도 있습니다.

이 서비스는 옵션인 결제 일정 만들기 지원을 위해 Salesforce Financial Services Cloud와 함께 작동합니다.

클래스: InsPolicyService

방법: createPolicyVersion

작동 방법

  1. 현재 정책의 assetId 또는 policyId 및 inputKey에 표시된 JSON을 가져옵니다.

  2. 원래 정책의 복제본을 만듭니다.

  3. 기존 결제 일정이 있는 경우 서비스가 결제 일정을 업데이트하고 보증 유효일에 결제 일정 항목을 만듭니다. useIsPaidFlag가 true인 경우 트랜잭션이 없는 모든 향후 결제 일정 항목(적용일 이후)(상태 필드가 Valid이고 isPaid 필드가 선택되지 않음)이 새로운 보험료, 세금 및 수수료 값을 기반으로 업데이트됩니다. 새 결제 일정 항목에는 새 보험료, 세금, 수수료, 업데이트된 결제 일정 항목을 기반으로 조정된 보험료, 세금, 수수료 값이 포함됩니다. 또한 각 결제 일정 항목의 증권 구성 요소의 기여 레코드가 업데이트됩니다.

  4. 서비스는 이전 증권의 보험료 계산 방법, 결제 유형, 보험료 빈도, 새 증권의 기간 총 보험료, 기간 총 수수료, 기간 총 세금을 사용하여 수정된 결제 일정을 생성합니다. 트랜잭션 생성 외에도 트랜잭션 분석 데이터가 트랜잭션 세부 사항 개체에 채워집니다. 이 개체는 각 자산, 참가자 또는 보장 범위가 보험료, 세금, 수수료와 관련하여 총 거래 금액에 얼마나 기여하는지에 대한 데이터를 저장합니다. 보험료, 세금 또는 수수료의 값이 0 이상인 자산, 참가자, 보장 범위만 표시됩니다.

    노트
    노트 프리미엄 계산 방법, 결제 유형 및 프리미엄 주기는 이전 정책에서 복사되지 않으며 JSON을 통해 서비스에 입력으로 전달해야 합니다.
  5. includeRevenueSchedule가 true로 설정된 경우 매출표 서비스를 호출하여 매출표를 수정합니다.

  6. 이 정책을 처음으로 수정하는 경우 서비스는 originalVersionId__c 및 previousVersionId__c에 동일한 assetId을 지정합니다. 이 정책의 첫 번째 수정이 아닌 경우 서비스는 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 플래그가 true로 설정된 경우 서비스가 응답에서 attributeCategory 노드를 생략하고 createPolicyVersion 서비스에서 정책 조건을 만들 수 없습니다. createPolicyVersion 서비스가 정책 조건을 생성하는지 확인하려면 getQuoteDetail 서비스의 disableAttributeCategories 플래그를 false로 설정합니다.
노트
노트 또한 서비스는 원래 증권 버전의 기간이 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 옵션(아래 참조)이 true로 설정되어 있고 새 정책 버전에 관련 세금 및 수수료가 있는 경우 생성된 거래의 TaxAmount__c 및 FeeAmount__c 필드가 새(현재) 정책과 이전 정책의 TotalTaxForTerm__c 및 TotalFeeForTerm__c 간의 차이로 설정됩니다.

원격 옵션

옵션

설명

assetId 또는 policyId

(필수)

현재 정책의 ID입니다.

createContactForParticipants

(선택 사항)

true 또는 false

기본값은 true입니다.

false인 경우 서비스에서 연락처 레코드를 생성하지 않습니다.

createInsuredItemsRelationships

true 또는 false

이 옵션이 true로 설정된 경우 보험 항목 간의 instanceKey > parentInstanceKey 관계 목록을 지정할 수 있습니다.

이 옵션은 상위 > 하위 및 상위 > 하위 > 손자 보험 항목 관계를 지원합니다.

createTransaction

(선택 사항)

true 또는 false

기본값은 false입니다.

true하면 서비스가 매출표 서비스에서 사용할 거래를 생성합니다.

effectiveDate

“YYYY-MM-DD HH:MM:SS” 또는 %OmniScriptDataElement%

정책이 적용되는 날짜입니다.

옵션 맵에 effectiveDate 값이 없는 경우 서비스가 rootAttributes 맵에서 해당 값을 찾습니다. 서비스에서 effectiveDate를 찾을 수 없는 경우 오늘 날짜를 사용합니다.

Insurance Industries Extension 패키지를 사용하는 경우 effectiveDate 옵션의 타임스탬프 값이 무시됩니다. 대신 유효 일자 타임스탬프 값은 선택한 유효 일자의 오전 12시로 설정되고, 선택한 만료 일자의 만료 일자 값은 오후 11시 59분으로 설정됩니다. 타임스탬프는 사용자의 지정된 시간대를 사용하여 설정됩니다.

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(기본값)로 설정하면 서비스에서 커미션을 계산하지 않습니다.

노트
노트

이 옵션을 true로 설정하는 경우 제조업체 또는 프로덕션 코드 값(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시로 지정됩니다.
term

서비스에서 만든 정책의 기간입니다.

InsPolicyService:createPolicyVersion은 연간 증권 조건만 지원합니다.

useIsPaidFlag

선택 사항

IsPaid 플래그를 활성화해야 하는지 여부를 지정합니다.

true인 경우 결제 일정 항목 개체의 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