Loading
Forsikring
InsClaimService:createUpdateClaim

InsClaimService:createUpdateClaim

Bruk denne tjenesten til å opprette eller oppdatere et krav.

Klasse: InsClaimService

Metode: createUpdateClaim

Slik virker det

Salesforce-krav-produktet støtter både den eksisterende Vlocity-objektmodellen (tilpassede objekter i administrert pakke) og den nye Salesforce-objektmodellen (standard Salesforce-objekter). Vlocity-modellen støtter relasjonen Aktivum → InsuranceClaim mellom poliser og krav. Salesforce-modellen støtter InsurancePolicy → Claim-relasjonen mellom poliser og krav.

  1. Henter en forhåndstransformert JSON kalt opp av inputKey. Tjenesten kontrollerer deretter policyId-elementet i inndata-JSON-koden for å finne ut om tjenesten oppretter et Vlocity-krav eller et Salesforce FSC-krav:

    • Hvis policyId tilhører en Aktivum-post, oppretter tjenesten Vlocity-kravobjekter - InsuranceClaim__c, InsuranceClaimInvolvedInjury__c, InsuranceClaimInvolvedProperty__c og InsuranceClaimPartyRelationship__c.

    • Hvis policyId tilhører en InsurancePolicy-post, oppretter tjenesten disse Salesforce FSC-kravobjektene: Claim, ClaimItem og ClaimParticipant.

    • Hvis policyId-elementet ikke er tilgjengelig i inndata-JSON-filen eller verdien er tom, merkes det eksterne alternativet isAssetInsuranceClaim. Hvis verdien er true, oppretter tjenesten Vlocity-kravobjekter, ellers oppretter den FSC-kravobjekter. Hvis policyId ikke har noen verdi og isAssetInsuranceClaim ikke er angitt, er standardverdien for isAssetInsuranceClaim false.

  2. Hvis ingen claimId overføres, oppretter tjenesten et kravobjekt.

    Hvis en claimId overføres, oppdaterer tjenesten kravobjektet.

  3. Hvis generateClaimNumber eller uniqueIdGeneratorObjectSetting eller begge alternativene er angitt, bruker tjenesten dem til å opprette en claimNumber (Navn-felt).

    En god fremgangsmåte er å tildele et unikt kravnummer til alle krav. Bruk eksterne alternativer til å oppfylle denne anbefalingen, og forsikre deg om at eventuelle tilpassede arbeidsflyter genererer unike claimNumber-verdier. Hvis en unik verdi ikke er konfigurert, setter systemet kravnumre for alle krav til samme verdi.

  4. Returnerer claimId, policyHolderClaimantId (eller policyholderClaimParticipantId hvis det er et FSC-krav) og involvedItems-noden i utdata-JSON-koden.

Eksterne alternativer

Alternativ

Beskrivelse

inputKey

Obligatorisk.

Få en liste over forhåndstransformerte JSON-strukturer som inneholder informasjon tjenesten trenger. Avhengig av policyId bruker claimJson en av følgende kravobjektmodeller:

  • Salesforce FSC-kravobjektmodell

  • Vlocity Claim Object Model

claimId

Valgfritt.

Hvis claimId overføres, oppdaterer tjenesten kravet.

Hvis claimId ikke overføres, oppretter tjenesten et krav.

generateClaimNumber

Valgfritt.

Hvis true, bruker tjenesten UniqueIdGeneratorService til å generere en unik nøkkel og til å angi Name til den unike nøkkelen.

uniqueIdGeneratorObjectSetting

Valgfritt.

Hvis generateClaimNumber er true og denne parameteren =null, finner tjenesten innstillingen Vlocity UniqueId Generator med Object Type = Claim.

Hvis tjenesten finner flere innstillinger, returnerer tjenesten en feil.

Hvis tjenesten finner én innstilling, bruker tjenesten den innstillingen.

Hvis generateClaimNumber er true og denne parameteren ikke er = null, finner tjenesten Vlocity UniqueId Generator Setting med Name = < denne parameterverdien > og Object Type = Claim. Den bruker deretter denne innstillingen til å generere den unike nøkkelen.

isAssetInsuranceClaim

Valgfritt.

Bestemmer om tjenesten oppretter et Vlocity-krav eller et Salesforce FSC-krav.

  • Hvis verdien er true, oppretter tjenesten Vlocity-krav.

  • Hvis verdien er false, oppretter tjenesten et Salesforce FSC-krav.

Inndata-JSON (Salesforce FSC Claim Object Model)

Denne modellen gjelder i ett av følgende to tilfeller:

  • policyID i claimJson tilhører et InsuranceClaim-objekt.

  • Verdien i alternativet for isAssetInsuranceClaim er false.

    Merk
    Merk

    Alternativet for ekstern isAssetInsuranceClaim brukes bare når policyId ikke finnes i inndata-JSON-filen, eller når den har en tom verdi. Når policyId ikke har noen verdi og isAssetInsuranceClaim ikke er angitt, er standardverdien for isAssetInsuranceClaim også false.

Tjenesten bruker inputKey til å hente en forhåndstransformert JSON som inndata. Denne tjenesten kan også ta spesifikasjonen for det forsikrede elementet direkte fra produktet og opprette en forsikret part eller eiendom.

I dette eksemplet er inputKey = claimJson.

Inndata

Beskrivelse

inputKey = claimJson

claimJSON

Inndataelementene i JSON-strukturen:

  • policyholderInsurancePolicyParticipantId: ID-en til forsikringsholderens forsikringsdeltaker.

  • policyholderClaimParticipantRole: En liste over rollene til forsikringsholderens kravdeltaker. Sett inn et semikolonskilletegn mellom hver verdi.

    Eksempel: "Insured;Claimant"

  • lossDate: Kreves når et krav er konfigurert med en tidssensitiv attributtklasse som Rullende og Kalenderår. Hvis det ikke oppgis noen dato, opprettes ikke Policy Terms med varighetstypen Rullende og Kalenderår.

claimPropertyItems eller claimPartyItems

Listen over inndata for eiendom og skade. Denne inndataparameteren er en del av claimJSON.

  • insurancePolicyParticipantId: ID-en til polisedeltakeren som enten er skadet eller har hatt tap av eiendom. Hvis du oppgir denne ID-en, bruker tjenesten den riktige ContactId og AccountId fra InsurancePolicyParticipant-posten. Du kan utelate contactId og accountId hvis du oppgir insurancePolicyParticipantId.

  • contactId: ID-en til kontakten som er skadet eller har hatt tap av eiendom. Oppgi contactId hvis kravvergeren ikke har en polisedeltaker-ID. Hvis du oppgir denne IDen, bruker tjenesten den riktige AccountId fra Kontakt-posten. Du kan utelate accountId hvis du oppgir contactId.

  • accountId: ID-en til kontoen. Oppgi accountId hvis kravvergeren ikke har en polisedeltaker-ID og du ikke oppgir contactId.

  • claimParticipantRoles: En liste over rollene til forsikringsholderens kravdeltaker. Sett inn et semikolonskilletegn mellom hver verdi.

    Eksempel: "Insured;Claimant"

  • insuredItemId: Denne verdien godtar ID-en til en InsurancePolicyAsset-post.

additionalClaimParticipants

Listen over flere kravdeltakere. Denne inndataparameteren er en del av claimJSON.

Angi minst ett av ID-feltene: insurancePolicyParticipantId, contactId, eller accountId.

  • insurancePolicyParticipantId: ID-en til en annen deltaker i dette kravet. Hvis du oppgir denne ID-en, bruker tjenesten den riktige ContactId og AccountId fra InsurancePolicyParticipant-posten. Du kan utelate contactId og accountId hvis du oppgir insurancePolicyParticipantId.

  • contactId: ID-en til kontakten som er en ekstra deltaker i dette kravet. Hvis du oppgir denne IDen, men ikke insurancePolicyParticipantId, bruker tjenesten den riktige AccountId fra Kontakt-posten. Du kan utelate accountId hvis du oppgir contactId.

  • accountId: ID-en til kontoen.

  • claimParticipantRoles: En liste over kravdeltakerens roller. Sett inn et semikolonskilletegn mellom hver verdi.

    Eksempel: "Claimant;Payee;Witness"

Her er et eksempel på JSON-koden for inndata for et Salesforce FSC-krav:

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

Utdata-JSON

Her er et eksempel på en utdata-JSON for et Salesforce FSC-krav:

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

Input JSON (Vlocity Claim Object Model)

Denne modellen gjelder i ett av følgende to tilfeller:

  • policyID i claimJson tilhører et Aktivum-objekt.

  • Verdien i alternativet for isAssetInsuranceClaim er true.

    Merk
    Merk

    Alternativet for ekstern isAssetInsuranceClaim brukes bare når policyId ikke finnes i inndata-JSON-filen eller når den har en tom verdi. Når policyId ikke har noen verdi og isAssetInsuranceClaim ikke er angitt, er standardverdien for isAssetInsuranceClaim også false.

Tjenesten bruker inputKey til å hente en forhåndstransformert JSON som inndata. Denne tjenesten kan også ta spesifikasjonen for det forsikrede elementet direkte fra produktet og opprette en forsikret part eller eiendom.

I dette eksemplet er inputKey = claimJson.

Inndata

Beskrivelse

inputKey = claimJson.

claimJSON

Inndataelementene i JSON-strukturen:

  • policyHolderPartyId: Part-ID basert på ID-en til Part-objektet (Party__c).

  • policyHolderPartyName: Partsnavn basert på navnet på Part-objektet (Party__c). Det må være navnet på en eksisterende Party__c-post.

  • policyHolderPartyRelationshipTypeId: Relasjonstype-ID basert på ID-en til objektet Partstype for Vlocity-relasjon (PartyRelationshipType__c).

  • policyHolderPartyRelationshipType: Navn på relasjonstype basert på navnet på objektet Partstype for Vlocity-relasjon (PartyRelationshipType__c)). Det må være navnet på en eksisterende PartyRelationshipType__c-post.

claimPropertyItems eller claimPartyItems

Listen over inndata for eiendom og skade. Denne inndataparameteren er en del av claimJSON.

Egenskap

  • claimantPartyId

  • claimantPartyName

  • claimantPartyRelationshipTypeId

  • claimantPartyRelationshipTypeName

  • insuredItemId

Skade

  • partyId

  • partyName

  • claimPartyRelationshipTypeId

  • claimPartyRelationshipTypeName

For claimantPartyRelationshipTypeID og claimantPartyRelationshipTypeName trenger du bare ett av disse to elementene.

For claimantPartyName og claimantPartyID trenger du bare ett av disse to elementene.

Du må ha en pakke med én av hver av disse inndataene som samsvarer.

Hvis det er en ny kombinasjon, settes det inn en post. Hvis det ikke er en ny kombinasjon, bruker den den eksisterende posten til kombinasjonen.

Utdata er en claimantId (ikke en partyId).

Her er formatet på inndata-JSON-koden for et Vlocity-krav:

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

Utdata-JSON

Her er formatet på JSON-koden for utdata for et Vlocity-krav:

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

Eksempel på grensesnitt (Vlocity Claim Object Model)

{
  "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
    }
  }
}
 
Laster
Salesforce Help | Article