위치:
InsClaimService:createUpdateClaim
이 서비스를 사용하여 청구를 만들거나 업데이트합니다.
작동 방법
Salesforce 청구 제품은 기존 Vlocity 개체 모델(관리 패키지의 사용자 정의 개체)과 새 Salesforce 개체 모델(표준 Salesforce 개체)을 모두 지원합니다. Vlocity 모델은 증권과 청구 간의 Asset → InsuranceClaim 관계를 지원합니다. Salesforce 모델은 증권과 청구 간의 InsurancePolicy → 청구 관계를 지원합니다.
-
inputKey에서 호출한 미리 변환된 JSON을 가져옵니다. 그런 다음 서비스는 입력 JSON의policyId요소를 확인하여 서비스가 Vlocity 또는 Salesforce FSC 클레임을 생성하는지 확인합니다.-
policyId가 자산 레코드에 속하는 경우 서비스에서InsuranceClaim__c,InsuranceClaimInvolvedInjury__c,InsuranceClaimInvolvedProperty__c및InsuranceClaimPartyRelationship__cVlocity 클레임 개체를 만듭니다. -
policyId가InsurancePolicy레코드에 속하는 경우 서비스에서 다음의 Salesforce FSC 클레임 개체를 만듭니다.Claim,ClaimItem,ClaimParticipant. -
입력 JSON에서
policyId요소를 사용할 수 없거나 해당 값이 비어 있는 경우 원격 옵션isAssetInsuranceClaim이 선택됩니다. 값이true이면 서비스가 Vlocity 클레임 개체를 생성하고, 그렇지 않으면 FSC 클레임 개체를 생성합니다.policyId에 값이 없고isAssetInsuranceClaim가 설정되지 않은 경우isAssetInsuranceClaim의 기본값은false입니다.
-
-
claimId가 전달되지 않으면 서비스가 청구 개체를 만듭니다.claimId가 전달되면 서비스가 청구 개체를 업데이트합니다. -
generateClaimNumber또는uniqueIdGeneratorObjectSetting또는 두 옵션을 모두 설정한 경우 서비스에서 해당 옵션을 사용하여claimNumber(이름 필드)를 만듭니다.가장 좋은 방법은 모든 청구에 고유한 청구 번호를 할당하는 것입니다. 원격 옵션을 사용하여 이 권장 사항을 충족하고 사용자 정의 워크플로가 고유한 claimNumber 값을 생성하는지 확인합니다. 고유 값이 구성되지 않은 경우 모든 클레임에 대한 청구 번호가 동일한 값으로 설정됩니다.
-
출력 JSON에서
claimId,policyHolderClaimantId(또는 FSC 클레임인 경우policyholderClaimParticipantId) 및involvedItems노드를 반환합니다.
원격 옵션
옵션 |
설명 |
|---|---|
|
(필수) 서비스에 필요한 정보가 포함된 사전 변환된 JSON 구조 목록을 가져옵니다.
|
|
(선택 사항)
|
|
(선택 사항)
|
|
(선택 사항)
서비스에서 여러 설정을 찾으면 오류가 반환됩니다. 서비스에서 하나의 설정을 찾으면 서비스에서 해당 설정을 사용합니다.
|
|
(선택 사항) 서비스에서 Vlocity 클레임 또는 Salesforce FSC 클레임을 생성하는지 여부를 결정합니다.
|
입력 JSON(Salesforce FSC 클레임 개체 모델)
이 모델은 다음 두 가지 사례 중 하나에 적용됩니다.
-
claimJson의
policyID는 InsuranceClaim 개체에 속합니다. -
isAssetInsuranceClaim원격 옵션의 값은false입니다.
서비스는 inputKey을 사용하여 미리 변환된 JSON을 입력으로 사용할 수 있습니다. 이 서비스는 제품에서 직접 보험 항목 사양을 가져와 보험 당사자 또는 부동산을 만들 수도 있습니다.
이 예에서는 inputKey = claimJson입니다.
다음은 Salesforce FSC 클레임에 대한 입력 JSON의 예입니다.
{
"claimJson": {
"claimAttributes": {
"amountDeductible": "500.00"
},
"claimPropertyItems": {
"autoClaimInvolvedVehicle": [
{
"claimParticipantRoles": "First Party Claimant; Insured",
"insurancePolicyParticipantId": "0ao5w0000000Cl7AAE",
"contactId": null,
"accountId": null,
"insuredItemId": "0YW5w0000000HLKGA2",
"additionalFields": {},
"productCode": "autoClaimInvolvedVehicle",
"avMake": "Jeep",
"avModel": "Wrangler",
"avLicNum": "49J9384",
"avLicState": "CA",
"avYear": "2019",
"avColor": "Red",
"claimInsuredProp": true,
"claimEstimate": null,
"claimPropertyLoc": null,
"claimSeverity": null,
"claimDamage": "Front End Damage",
"claimDamageLoc": null,
"claimDrivable": false
},
{
"claimParticipantRoles": "Third Party Claimant",
"insurancePolicyParticipantId": null,
"contactId": "0ao5w0000000J47AX5",
"accountId": null,
"insuredItemId": null,
"additionalFields": {},
"productCode": "autoClaimInvolvedVehicle",
"avMake": "Audi",
"avModel": "A5",
"avLicNum": "48H03949",
"avLicState": "WA",
"avYear": "2015",
"avColor": "Blue",
"claimInsuredProp": false,
"claimEstimate": null,
"claimPropertyLoc": null,
"claimSeverity": null,
"claimDamage": "Rear End Damage",
"claimDamageLoc": null,
"claimDrivable": false
}
]
},
"claimPartyItems": {
"claimInjuredPerson": [
{
"claimParticipantRoles": "Third Party Claimant",
"contactId": "0ao5w0000000J47AX5",
"accountId": null,
"insurancePolicyParticipantId": null,
"additionalFields": {},
"productCode": "claimParticipantPerson",
"injDescription": "Whiplash"
}
],
"additionalClaimParticipants": [
{
"Id": null,
"insurancePolicyParticipantId": null,
"contactId": null,
"accountId": "0015g00000H480EAAR",
"claimParticipantRoles": "Witness",
"additionalFields": {}
}
]
},
"additionalFields": {},
"policyholderClaimParticipantRole": "Insured",
"policyholderInsurancePolicyParticipantId": "0ao5w0000000Cl7AAE",
"policyId": "0YT5w0000000ieyGAA",
"lossDate": "2021-03-29T16:00:00.000Z",
"productCode": "autoClaimProduct"
}
} 출력 JSON
다음은 Salesforce FSC 클레임에 대한 출력 JSON의 예입니다.
{
"CreateUpdateClaimRemoteAction": {
"involvedItems": [
{
"insuredItemId": "0YW5w0000000HLKGA2",
"claimItemId": "0dq5w0000008PrNAAU",
"accountId": "0035w000034fL4YAK",
"contactId": "0035w000039cfL2AAI",
"insurancePolicyParticipantId": "0ao5w0000000Cl7AAE",
"claimParticipantRoles": "First Party Claimant; Insured",
"claimParticipantId": "0aS5w00000007r3EAA"
},
{
"insuredItemId": null,
"claimItemId": "0dq5w0000008PrNAAU",
"accountId": null,
"contactId": "0035w000039cfL2AAI",
"insurancePolicyParticipantId": "0ao5w0000000Cl7AAE",
"claimParticipantRoles": "Third Party Claimant",
"claimParticipantId": "0aS5w00000004K59dD"
}
],
"policyholderClaimParticipantId": "0ao5w0000000Cl7AAE",
"claimId": "0Zk5w0000000IOVCA2"
},
"policyTermIds": [
"a6Q5w0000002x6oEAA",
"a6Q5w0000002x6pEAA",
"a6Q5w0000002x6qEAA",
"a6Q5w0000002x6rEAA",
"a6Q5w0000002x6sEAA",
"a6Q5w0000002x6tEAA"
]
}입력 JSON(Vlocity 클레임 개체 모델)
이 모델은 다음 두 가지 사례 중 하나에 적용됩니다.
-
claimJson의
policyID은 Asset 개체에 속합니다. -
isAssetInsuranceClaim원격 옵션의 값은true입니다.
서비스는 inputKey을 사용하여 미리 변환된 JSON을 입력으로 사용할 수 있습니다. 이 서비스는 제품에서 직접 보험 항목 사양을 가져와 보험 당사자 또는 부동산을 만들 수도 있습니다.
이 예에서는 inputKey = claimJson입니다.
입력 |
상세 설명 |
|---|---|
|
|
|
JSON 구조 내의 입력 요소:
|
|
부동산 및 부하 입력 목록입니다. 이 입력 매개 변수는 claimJSON의 일부입니다. 속성
부상
|
claimantPartyRelationshipTypeID 및 claimantPartyRelationshipTypeName에는 이 두 요소 중 하나만 필요합니다.
claimantPartyName 및 claimantPartyID에는 이 두 요소 중 하나만 필요합니다.
일치하는 각 입력 중 하나의 패키지가 있어야 합니다.
새 조합인 경우 레코드를 삽입합니다. 새 콤보가 아닌 경우 콤보에 기존 레코드를 사용합니다.
출력은 claimantId(partyId 아님)입니다.
다음은 Vlocity 클레임에 대한 입력 JSON 형식입니다.
{
"input": {
"claimJson": {
"claimAttributes": {
"amountDeductible": <Decimal>
},
"claimPropertyItems": {
"homeUnit": [
{
"Id": <Id>,
"claimantPartyRelationshipTypeName": <String>,
"claimantPartyRelationshipTypeId": <Id>,
"claimantPartyName": <String>,
"claimantPartyId": <Id>,
"insuredItemId": <Id>,
"additionalFields": {},
"productCode": <String>,
"productName": <String>,
"productId": <Id>
}
],
"claimClaimantPerson": [
"additionalFields": {
"Name": <String>
},
"productCode": <String>,
"persPhone": <String>,
"persLastName": <String>,
"persName": <String>,
"persFirstName": <String>,
"persEmail": <String>,
"claimInjury": <String>,
"claimPartyRelationshipTypeName": <String>,
"claimPartyRelationshipTypeId": <Id>,
"partyName": <String>
"partyId": <Id>
]
},
"additionalFields": {},
"policyHolderPartyRelationshipType": <String>,
"policyHolderPartyRelationshipTypeId": <Id>,
"policyHolderPartyName": <String>,
"policyHolderPartyId": <Id>,
"policyId": <Id>,
"policyNumber": <String>,
"lossDate": <Date>,
"productCode": "deluxeHomeowners",
"productName": "Deluxe Homeowners",
"productId": <Id>
}
}
}출력 JSON
다음은 Vlocity 클레임의 출력 JSON 형식입니다.
{
"output": {
"claimId": <String>,
"policyHolderClaimantId": <Id>,
"involvedItems": [
{
"insuredItemId": <Id>,
"claimantPartyAccountName": <String>,
"claimantPartyContactName": <String>,
"claimantPartyId": <Id>,
"claimantId": <Id>,
"involvedItemId": <Id>
},
{
"heldProductRelationshipId": <Id>,
"claimantPartyAccountName": <String>,
"claimantPartyContactName": <String>,
"claimantPartyId": <Id>,
"claimantId": <Id>,
"involvedInjuryId": <Id>
}
]
}
}샘플 인터페이스(Vlocity 클레임 개체 모델)
{
"input": {
"claimJson": {
"claimPropertyItems": {
"claimVehicle": [
{
"insuredItemId": null,
"claimantPartyId":null,
"claimantPartyName":null,
"claimantPartyRelationshipTypeId":null,
"claimantPartyRelationshipTypeName":null,
"additionalFields": {},
"productCode": "claimVehicle",
"productName": "Damaged Vehicle",
"productId": "01t3i0000001cWAAAY",
"autoBodyType": null,
"autoColor": null,
"autoLicNum": null,
"autoLicState": null,
"autoMake": null,
"autoModel": null,
"autoVIN": null,
"autoYear": null,
"claimDamage": null,
"claimDamageLoc": null,
"claimDrivable": false,
"claimImage": null,
"claimInsuredProp": false,
"claimEstimate": null,
"claimPropertyLoc": null,
"claimSeverity": null
}
]
},
"claimPartyItems": {
"claimWitness": [
{
"heldProductRelationshipId": null,
"partyId": null,
"partyName": null,
"claimPartyRelationshipTypeId":null,
"claimPartyRelationshipTypeName":null,
"additionalFields": {},
"productCode": "claimWitness",
"productName": "Witness",
"productId": "01t3i0000001cWCAAY",
"claimRel": null,
"claimStatement": null,
"claimTestify": false,
"persPhone": null,
"persSalutation": null,
"persAddress": null,
"persBirthdate": null,
"persEmail": null,
"persFirstName": null,
"persLastName": null,
"persMiddleName": null,
"persName": null
}
],
"claimInjuredPerson": [
{
"heldProductRelationshipId": null,
"partyId": null,
"partyName": null,
"claimPartyRelationshipTypeId":null,
"claimPartyRelationshipTypeName":null,
"additionalFields": {},
"productCode": "claimInjuredPerson",
"productName": "Injured Person",
"productId": "01t3i0000001cWEAAY",
"claimCarrier": null,
"claimInjury": null,
"claimPhysician": null,
"claimPolicyNumber": null,
"claimRel": null,
"claimStatement": null,
"claimTreatLoc": null,
"claimInsuredProp": false,
"claimEstimate": null,
"claimSeverity": null,
"persAddress": null,
"persBirthdate": null,
"persEmail": null,
"persFirstName": null,
"persLastName": null,
"persMiddleName": null,
"persName": null,
"persPhone": null,
"persSalutation": null,
"claimantPartyRelationshipTypeId":null
}
],
"claimDriver": [
{
"heldProductRelationshipId": null,
"partyId": null,
"partyName": null,
"claimPartyRelationshipTypeId":null,
"claimPartyRelationshipTypeName":null,
"additionalFields": {},
"productCode": "claimDriver",
"productName": "Driver",
"productId": "01t3i0000001cWBAAY",
"persAddress": null,
"Birthdate": null,
"persEmail": null,
"First Name": null,
"persIDJuris": null,
"perIDNumber": null,
"persIDType": null,
"LastName": null,
"MiddleName": null,
"NAME": null,
"persPhone": null,
"persSalutation": null,
"claimCarrier": null,
"claimInjury": null,
"claimInsured": false,
"claimPhysician": null,
"claimPolicyNumber": null,
"claimRel": null,
"claimStatement": null,
"claimTestify": false,
"claimTreatLoc": null
}
]
},
"additionalFields": {},
"policyHolderPartyId": null,
"policyHolderPartyName": null,
"policyHolderPartyRelationshipTypeId": null,
"policyHolderPartyRelationshipType": null,
"policyId": null,
"policyNumber": null,
"lossDate": null,
"productCode": "claimPerilAutoCollision",
"productName": "Auto Collision",
"productId": null
}
}
}