Usted está aquí:
InsClaimService:createUpdateClaim
Utilice este servicio para crear o actualizar una reclamación.
Funcionamiento
El producto Reclamaciones de Salesforce admite tanto el modelo de objetos de Vlocity existente (objetos personalizados en paquete gestionado) como el nuevo modelo de objetos de Salesforce (objetos estándar de Salesforce). El modelo Vlocity admite la relación Activo → InsuranceClaim entre pólizas y reclamaciones. El modelo de Salesforce admite la relación InsurancePolicy → Reclamación entre pólizas y reclamaciones.
-
Obtiene un JSON pretransformado llamado por el
inputKey. A continuación, el servicio comprueba el elementopolicyIden el JSON de entrada para determinar si el servicio crea una reclamación de Vlocity o Salesforce FSC:-
Si
policyIdpertenece a un registro Activo, el servicio crea objetos de reclamación de Vlocity:InsuranceClaim__c,InsuranceClaimInvolvedInjury__c,InsuranceClaimInvolvedProperty__cyInsuranceClaimPartyRelationship__c. -
Si
policyIdpertenece a un registro deInsurancePolicy, el servicio crea estos objetos de reclamación de Salesforce FSC:Claim,ClaimItemyClaimParticipant. -
Si el elemento
policyIdno está disponible en el JSON de entrada o su valor está en blanco, se selecciona la opción remotaisAssetInsuranceClaim. Si su valor estrue, el servicio crea objetos de reclamación de Vlocity, de lo contrario crea objetos de reclamación de FSC. En caso de quepolicyIdno tenga ningún valor yisAssetInsuranceClaimno esté establecido, el valor predeterminado deisAssetInsuranceClaimesfalse.
-
-
Si no se pasa ninguna
claimId, el servicio crea un objeto de reclamación.Si se pasa un
claimId, el servicio actualiza el objeto de reclamación. -
Si las opciones
generateClaimNumberouniqueIdGeneratorObjectSettingo ambas están establecidas, el servicio las utiliza para crear unclaimNumber(campo Nombre).Como mejor práctica, asigne un número de reclamación exclusivo a cada reclamación. Utilice opciones remotas para cumplir esta recomendación y asegúrese de que cualquier flujo de trabajo personalizado genera valores de claimNumber exclusivos. Si no se configura un valor exclusivo, el sistema establece los números de reclamación para todas las reclamaciones en el mismo valor.
-
Devuelve
claimId,policyHolderClaimantId(opolicyholderClaimParticipantIdsi es una reclamación FSC) y el nodoinvolvedItemsen el JSON de salida.
Opciones remotas
Opción |
Descripción |
|---|---|
|
Obligatorio. Obtiene una lista de estructuras JSON pretransformadas que contienen información que necesita el servicio. Dependiendo del
|
|
Opcional. Si se pasa el Si no se pasa el |
|
Opcional. Si es |
|
Opcional. Si Si el servicio encuentra múltiples parámetros, el servicio devuelve un error. Si el servicio encuentra una configuración, el servicio utiliza esa configuración. Si |
|
Opcional. Determina si el servicio crea una reclamación de Vlocity o una reclamación de Salesforce FSC.
|
JSON de entrada (modelo de objeto de reclamación de Salesforce FSC)
Este modelo es aplicable en cualquiera de los dos casos siguientes:
-
El
policyIDen claimJson pertenece a un objeto InsuranceClaim. -
El valor de la opción remota de
isAssetInsuranceClaimesfalse.NotaLa opción remota de
isAssetInsuranceClaimse aplica solo cuando elpolicyIdno está presente en el JSON de entrada o cuando tiene un valor en blanco. Además, cuandopolicyIdno tiene ningún valor yisAssetInsuranceClaimno está establecido, el valor predeterminado deisAssetInsuranceClaimesfalse.
El servicio utiliza el inputKey para obtener un JSON pretransformado para utilizar como entrada. Este servicio también puede tomar la especificación del artículo asegurado del producto directamente y crear una parte o propiedad asegurada.
En este ejemplo, inputKey = claimJson.
Este es un ejemplo del JSON de entrada para una reclamación de Salesforce FSC:
{
"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 de salida
Este es un ejemplo de un JSON de salida para una reclamación de Salesforce FSC:
{
"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 de entrada (modelo de objeto Reclamación de ciudad)
Este modelo es aplicable en cualquiera de los dos casos siguientes:
-
El
policyIDen claimJson pertenece a un objeto Activo. -
El valor de la opción remota de
isAssetInsuranceClaimestrue.NotaLa opción remota de
isAssetInsuranceClaimse aplica solo cuando elpolicyIdno está presente en el JSON de entrada o cuando tiene un valor en blanco. Además, cuandopolicyIdno tiene ningún valor yisAssetInsuranceClaimno está establecido, el valor predeterminado deisAssetInsuranceClaimesfalse.
El servicio utiliza el inputKey para obtener un JSON pretransformado para utilizar como entrada. Este servicio también puede tomar la especificación del artículo asegurado del producto directamente y crear una parte o propiedad asegurada.
En este ejemplo, inputKey = claimJson.
Ingreso |
Descripción |
|---|---|
|
|
|
Los elementos de entrada en la estructura JSON:
|
|
La lista de entradas de propiedades y lesiones. Este parámetro de entrada forma parte de claimJSON. Propiedad
Lesión
|
Para claimantPartyRelationshipTypeID y claimantPartyRelationshipTypeName solo necesita uno de estos dos elementos.
Para claimantPartyName y claimantPartyID solo necesita uno de estos dos elementos.
Debe tener un paquete de una de estas entradas que coincidan.
Si es una nueva combinación, inserta un registro. Si no es un nuevo combinado, utiliza el registro existente para el combinado.
El resultado es un claimantId (no un partyId).
Este es el formato del JSON de entrada para una reclamación de Vlocity:
{
"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 de salida
Este es el formato del JSON de salida para una reclamación de Vlocity:
{
"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>
}
]
}
}Interfaz de muestra (modelo de objeto Reclamación de ciudad)
{
"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
}
}
}