Loading
Verzekering
InsClaimService:createUpdateClaim

InsClaimService:createUpdateClaim

Gebruik deze service om een claim te maken of bij te werken.

Klasse: InsClaimService

Methode: createUpdateClaim

De manier waarop het werkt...

Het product Salesforce Claims ondersteunt zowel het bestaande Vlocity-objectmodel (aangepaste objecten in beheerde pakketten) als het nieuwe Salesforce-objectmodel (standaard Salesforce-objecten). Het Vlocity-model ondersteunt de relatie Activum → InsuranceClaim tussen polissen en claims. Het Salesforce-model ondersteunt de InsurancePolicy → Claim-relatie tussen polissen en claims.

  1. Haalt een vooraf getransformeerde JSON op die door de inputKey wordt aangeroepen. Vervolgens controleert de service het element policyId in de invoer-JSON om te bepalen of de service een Vlocity- of een Salesforce FSC-claim maakt:

    • Als policyId bij een activumrecord hoort, maakt de service Vlocity-claimobjecten - InsuranceClaim__c, InsuranceClaimInvolvedInjury__c, InsuranceClaimInvolvedProperty__c en InsuranceClaimPartyRelationship__c.

    • Als policyId bij een InsurancePolicy hoort, maakt de service deze Salesforce FSC-claimobjecten: Claim, ClaimItem en ClaimParticipant.

    • Als het element policyId niet beschikbaar is in de invoer-JSON of als de waarde ervan leeg is, wordt de externe optie isAssetInsuranceClaim geselecteerd. Als de waarde ervan true is, maakt de service Vlocity-claimobjecten, anders maakt deze FSC-claimobjecten. Als policyId geen waarde heeft en isAssetInsuranceClaim niet is ingesteld, is de standaardwaarde van isAssetInsuranceClaim false.

  2. Als er geen claimId wordt doorgegeven, maakt de service een claimobject.

    Als een claimId wordt doorgegeven, werkt de service het claimobject bij.

  3. Als de generateClaimNumber of uniqueIdGeneratorObjectSetting of beide opties zijn ingesteld, gebruikt de service ze om een claimNumber te maken (veld Naam).

    Als best practice kunt u een uniek claimnummer toewijzen aan elke claim. Gebruik externe opties om aan deze aanbeveling te voldoen en zorg ervoor dat aangepaste werkstromen unieke claimNumber-waarden genereren. Als er geen unieke waarde is geconfigureerd, stelt het systeem claimnummers voor alle claims in op dezelfde waarde.

  4. Retourneert claimId, policyHolderClaimantId (of policyholderClaimParticipantId als het een FSC-claim is) en het involvedItems in de uitvoer-JSON.

Externe opties

Optie

Beschrijving

inputKey

Verplicht.

Haalt een lijst op van vooraf getransformeerde JSON-structuren die informatie bevatten die de service nodig heeft. Afhankelijk van de policyId gebruikt de claimJson een van de volgende claimobjectmodellen:

  • Salesforce FSC Claim Object Model

  • Claimobjectmodel van Vlocity

claimId

Optioneel.

Als de claimId wordt doorgegeven, werkt de service de claim bij.

Als de claimId niet wordt doorgegeven, maakt de service een claim.

generateClaimNumber

Optioneel.

Indien true, gebruikt de service de UniqueIdGeneratorService om een unieke sleutel te genereren en het veld Name in te stellen op die unieke sleutel.

uniqueIdGeneratorObjectSetting

Optioneel.

Als generateClaimNumber true is en deze parameter =null, zoekt de service de instelling Vlocity UniqueId Generator met Object Type = Claim.

Als de service meerdere instellingen vindt, retourneert de service een fout.

Als de service één instelling vindt, gebruikt de service die instelling.

Als generateClaimNumber true is en deze parameter niet = null, vindt de service Vlocity UniqueId Generator Setting met Name = < deze parameterwaarde > en Object Type = Claim. Deze instelling wordt vervolgens gebruikt om de unieke sleutel te genereren.

isAssetInsuranceClaim

Optioneel.

Bepaalt of de service een Vlocity-claim of een Salesforce FSC-claim maakt.

  • Als de waarde true is, maakt de service de Vlocity-claim.

  • Als de waarde false is, maakt de service een Salesforce FSC-claim.

Invoer-JSON (Salesforce FSC Claim Object Model)

Dit model is van toepassing in een van de volgende twee gevallen:

  • De policyID in claimJson behoort tot een InsuranceClaim-object.

  • De waarde van de externe optie isAssetInsuranceClaim is false.

    Opmerking
    Opmerking

    De externe optie isAssetInsuranceClaim wordt alleen toegepast wanneer policyId niet aanwezig is in de invoer-JSON of wanneer deze een blanco waarde heeft. Wanneer policyId geen waarde heeft en isAssetInsuranceClaim niet is ingesteld, is de standaardwaarde van isAssetInsuranceClaim ook false.

De service gebruikt de inputKey om een vooraf getransformeerde JSON op te halen die als invoer kan worden gebruikt. Deze service kan ook de specificatie van het verzekerde item rechtstreeks uit het product halen en een verzekerde partij of eigendom maken.

In dit voorbeeld is inputKey = claimJson.

Invoer

Beschrijving

inputKey = claimJson

claimJSON

De invoerelementen binnen de JSON-structuur:

  • policyholderInsurancePolicyParticipantId: De ID van de verzekeringsdeelnemer van de verzekeringnemer.

  • policyholderClaimParticipantRole: Een lijst van de rollen van de claimdeelnemer van de verzekeringnemer. Voeg tussen elke waarde een scheidingsteken met een puntkomma in.

    Voorbeeld: "Insured;Claimant"

  • lossDate: Verplicht wanneer claim is geconfigureerd met tijdgevoelige kenmerkklasse zoals Doorlopend en Agendajaar. Als er geen datum is opgegeven, worden er geen polisvoorwaarden met het duurtype Doorlopend en Kalenderjaar gemaakt.

claimPropertyItems of claimPartyItems

De lijst van invoer voor eigendommen en letsel. Deze invoerparameter is onderdeel van claimJSON.

  • insurancePolicyParticipantId: De ID van de polisdeelnemer die gewond is geraakt of schade heeft geleden. Als u deze ID opgeeft, gebruikt de service de juiste ContactId en AccountId uit de InsurancePolicyParticipant. U kunt contactId en accountId weglaten als u insurancePolicyParticipantId opgeeft.

  • contactId: De ID van de contactpersoon die gewond is geraakt of schade heeft geleden. Geef contactId op als de eiser geen ID van de polisdeelnemer heeft. Als u deze ID opgeeft, gebruikt de service de juiste AccountId uit de contactpersoonsrecord. U kunt accountId weglaten als u contactId opgeeft.

  • accountId: De ID van de account. Geef accountId op als de eiser geen ID van polisdeelnemer heeft en u geen contactId opgeeft.

  • claimParticipantRoles: Een lijst van de rollen van de claimdeelnemer van de verzekeringnemer. Voeg tussen elke waarde een scheidingsteken met een puntkomma in.

    Voorbeeld: "Insured;Claimant"

  • insuredItemId: Deze invoer accepteert de ID van een InsurancePolicyAsset-record.

additionalClaimParticipants

De lijst van extra claimdeelnemers. Deze invoerparameter is onderdeel van claimJSON.

Geef minstens een van de ID-velden op: insurancePolicyParticipantId, contactId, of accountId.

  • insurancePolicyParticipantId: De ID van een extra deelnemer voor deze claim. Als u deze ID opgeeft, gebruikt de service de juiste ContactId en AccountId uit de InsurancePolicyParticipant. U kunt contactId en accountId weglaten als u insurancePolicyParticipantId opgeeft.

  • contactId: De ID van de contactpersoon die een extra deelnemer aan deze claim is. Als u deze ID opgeeft, maar geen insurancePolicyParticipantId, gebruikt de service de juiste AccountId uit de contactpersoonsrecord. U kunt accountId weglaten als u contactId opgeeft.

  • accountId: De ID van de account.

  • claimParticipantRoles: Een lijst van de rollen van de claimdeelnemer. Voeg tussen elke waarde een scheidingsteken met een puntkomma in.

    Voorbeeld: "Claimant;Payee;Witness"

Hier is een voorbeeld van de invoer-JSON voor een Salesforce FSC-claim:

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

Uitvoer-JSON

Hier is een voorbeeld van een uitvoer-JSON voor een Salesforce FSC-claim:

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

Invoer-JSON (Vlocity Claim Object Model)

Dit model is van toepassing in een van de volgende twee gevallen:

  • De policyID in claimJson behoort tot een activumobject.

  • De waarde van de externe optie isAssetInsuranceClaim is true.

    Opmerking
    Opmerking

    De externe optie isAssetInsuranceClaim wordt alleen toegepast wanneer policyId niet aanwezig is in de invoer-JSON of wanneer deze een blanco waarde heeft. Wanneer policyId geen waarde heeft en isAssetInsuranceClaim niet is ingesteld, is de standaardwaarde van isAssetInsuranceClaim ook false.

De service gebruikt de inputKey om een vooraf getransformeerde JSON op te halen die als invoer kan worden gebruikt. Deze service kan ook de specificatie van het verzekerde item rechtstreeks uit het product halen en een verzekerde partij of eigendom maken.

In dit voorbeeld is inputKey = claimJson.

Invoer

Beschrijving

inputKey = claimJson.

claimJSON

De invoerelementen binnen de JSON-structuur:

  • policyHolderPartyId: Partij-ID op basis van de ID van het object Partij (Party__c).

  • policyHolderPartyName: Naam van partij op basis van de naam van het object Partij (Party__c). Het moet de naam van een bestaande Party__c zijn.

  • policyHolderPartyRelationshipTypeId: ID van type relatie op basis van de ID van het object Vlocity Party Relationship Type (PartyRelationshipType__c).

  • policyHolderPartyRelationshipType: Naam van relatietype op basis van de naam van het object Relatietype van Vlocity-partij (PartyRelationshipType__c). Het moet de naam van de bestaande PartyRelationshipType__c zijn.

claimPropertyItems of claimPartyItems

De lijst van invoer voor eigendommen en letsel. Deze invoerparameter is onderdeel van claimJSON.

Eigenschap

  • claimantPartyId

  • claimantPartyName

  • claimantPartyRelationshipTypeId

  • claimantPartyRelationshipTypeName

  • insuredItemId

Letsel

  • partyId

  • partyName

  • claimPartyRelationshipTypeId

  • claimPartyRelationshipTypeName

Voor claimantPartyRelationshipTypeID en claimantPartyRelationshipTypeName hebt u slechts één van deze twee elementen nodig.

Voor claimantPartyName en claimantPartyID hebt u slechts één van deze twee elementen nodig.

U moet een pakket hebben van een van deze invoertypen die overeenkomen.

Als het een nieuwe combinatie is, wordt er een record ingevoegd. Als het geen nieuwe combo is, wordt de bestaande record voor de combo gebruikt.

De uitvoer is een claimantId (niet een partyId).

Hier is de indeling van de invoer-JSON voor een Vlocity-claim:

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

Uitvoer-JSON

Hier is de indeling van de uitvoer-JSON voor een Vlocity-claim:

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

Voorbeeldinterface (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
    }
  }
}
 
Wordt geladen
Salesforce Help | Article