Loading
Verzekering
InsClaimItemService:calculateCoverages

InsClaimItemService:calculateCoverages

Gebruik deze service om het dekkingsbedrag en het aangepaste bedrag voor een claimregelitem te berekenen. Deze bedragen worden gebruikt als betalingsbedrag wanneer de claimexpert het claimregelitem betaalt.

Bij het maken van aanpassingen houdt de service rekening met van toepassing zijnde eigen risico's, copays, coinsurance en out-of-pocket maxima.

Deze service evalueert de formule voor berekening van dekking als deze is gedefinieerd in de dekkingsspecificatie.

Klasse: InsClaimItemService

Methode: calculateCoverages

De manier waarop het werkt...

De service gebruikt veldnamen van objectinterfaces als standaardinvoer en uitvoer voor gemeenschappelijke velden in zowel Vlocity- (ClaimLineItem__c) als Salesforce FSC-gegevensmodellen (ClaimCoveragePaymentDetail).

Deze service werkt anders afhankelijk van het gegeven of er een formule voor berekening van dekking bestaat voor de dekkingsspecificatie.

Wanneer er geen formule voor berekening van dekking aanwezig is, doet deze service het volgende:

  1. Gebruikt de volgende informatie voor het ophalen van de claimrecord, de gekoppelde polisrecord en kenmerkwaarden voor zowel de claim als de polis.

    • claimId

    • claimCoverageId

    • claimItemId (indien beschikbaar)

    • claimAmount

  2. Roept de InsPolicyTermsService:-processervice aan.

    Deze service berekent alle verzekerde verplichtingsbedragen (medebetaling/medeverzekering, eigen risico en max. eigen risico) en retourneert deze gegevens.

  3. Trekt de verzekerde verplichtingsbedragen af van het claimbedrag, als er een of meer verzekerde verplichtingsbedragen bestaan.

  4. Retourneert de uitvoer inclusief het definitieve aangepaste bedrag en onderliggende claimitems (indien aanwezig).

Wanneer er een formule voor berekening van dekking bestaat voor de dekkingsspecificatie, doet deze service het volgende:

  • Gebruikt de volgende informatie voor het ophalen van de claimrecord, de gekoppelde polisrecord en kenmerkwaarden voor zowel de claim als de polis.

    • claimId

    • claimCoverageId

    • claimItemId (indien beschikbaar)

    • claimAmount

  • Compileert de volgende objecten (inclusief AttributeSelectedValues <productcode.key>) om ze beschikbaar te maken voor de formule voor berekening van dekking voor de dekkingsspecificatie:

    • Claim

    • Beleid

    • Polisdekking

    • InsuredParty

    • InsuredItem

    • Betrokkenletsel

    • BetrokkenProperty

  • Voert de formule voor berekening van dekking uit.

  • Roept de InsPolicyTermsService:-processervice aan.

    Deze service berekent alle verzekerde verplichtingsbedragen (medebetaling/medeverzekering, eigen risico en max. eigen risico) en retourneert deze gegevens.

  • Trekt de verzekerde verplichtingsbedragen af van het claimbedrag, als er een of meer verzekerde verplichtingsbedragen bestaan.

  • Retourneert de uitvoer inclusief het definitieve aangepaste bedrag en onderliggende claimitems (indien aanwezig).

Externe opties

Optie

Beschrijving

claimId

Verplicht.

De ID van de claim waarvoor de service het dekkingsbedrag berekent.

claimItemId

Optioneel.

Gebruik deze optie wanneer u een bestaand claimregelitem bijwerkt met opnieuw berekende dekking en aangepaste bedragen.

claimCoverageId

Verplicht.

De ID van de dekking waarvoor de service een bedrag berekent.

additionalInput

Verplicht.

JSON van mogelijke aanvullende invoer voor gebruik in de dekkingsformules, die moet worden opgeslagen in de record van het claimregelitem (als saveLineItem true (waar) is). Deze moet de volgende invoer hebben:

  • ClaimLineItem.claimAmount

  • ClaimLineItem.recipientId

Deze optie gebruikt de namen van interfacevelden die in deze tabel worden beschreven in de invoer en uitvoer voor gemeenschappelijke velden in Vlocity ClaimLineItem__c en Salesforce FSC ClaimCoveragePaymentDetail:

Veldnaam gebruikersinterface

Gemeenschappelijke velden in gegevensmodellen van Vlocity ClaimLineItem__c en Salesforce FSC ClaimCoveragePaymentDetail

ClaimLineItem.name

Gebruik voor ClaimLineItem__c.Name and ClaimCoveragePaymentDetail.Name

ClaimLineItem.claimAmount

Gebruik voor ClaimLineItem__c.ClaimAmount__c  en ClaimCoveragePaymentDetail.ClaimedAmount

ClaimLineItem.description

Gebruik voor ClaimLineItem__c.Description__c and ClaimCoveragePaymentDetail.Description

ClaimLineItem.recipientId

Gebruik voor ClaimLineItem__c.PayeeAcccountId__c, ClaimLineItem__c.PayeeContactId__c, ClaimLineItem.PayeeAccountId__c__c, and ClaimCoveragePaymentDetail.ClaimParticipantRecipientId

ClaimLineItem.benefitType

Gebruik voor ClaimLineItem__c.BenefitType__c and ClaimCoveragePaymentDetail.BenefitName

ClaimLineItem.reserveAmount

Gebruik voor ClaimLineItem__c.ReserveAmount__c  en ClaimCoveragePaymentDetail.ClaimCoverageReserveDetailId.ReserveAmount

ClaimLineItem.status

Gebruik voor ClaimLineItem__c.Status__c and ClaimCoveragePaymentDetail.Status

ClaimLineItem.type

Gebruik voor ClaimLineItem__c.Type__c and ClaimCoveragePaymentDetail.Type

ClaimLineItem.unitCount

Gebruik voor ClaimLineItem__c.Quantity__c and ClaimCoveragePaymentDetail.LimitUnitCount

ClaimLineItem.uom

Gebruik voor ClaimCoveragePaymentDetail.LimitUnitOfMeasure

ClaimLineItem.currencyIsoCode

Gebruik voor ClaimLineItem__c.CurrencyIsoCode en ClaimCoveragePaymentDetail.CurrencyIsoCode

Gebruik voor velden die hier niet worden vermeld, de volledig gekwalificeerde naam van het veld.

Kenmerken met als prefix ClaimLineItem die de API van het claimregelitem hebben, worden opgeslagen in het claimregelitem dat wordt gemaakt.

Invoer-JSON en uitvoer-JSON

Als kant-en-klare methoden voor het bepalen van het aangepaste bedrag voor een betalingsdetail voldoen aan uw bedrijfsbehoeften, kunt u deze sectie overslaan. Maar als u bedragen van betalingsdetails wilt aanpassen op manieren die niet kant-en-klaar worden ondersteund, is deze sectie iets voor u.

Doorgaans zijn deze kant-en-klare gebruikscases bedoeld voor scenario's die niet onder stroomkenmerkklassen vallen, zoals:

  • Voorwaardelijk eigen risico, waarbij twee eigen risico's bestaan voor dezelfde dekkingsspecificatie. Eigen risico A is bijvoorbeeld van toepassing op brandschade en Eigen risico B is van toepassing op overstromingsschade. U wilt dat het systeem tijdens run-time bepaalt welk eigen risico moet worden toegepast op de betalingsdetails.

  • Volgorde van bewerkingen voor medebetaling/medeverzekering. Zo bestaan medeverzekering en copay beide op dezelfde dekkingsspecificatie en wilt u de medeverzekering toepassen voordat u de copay toepast op een betalingsdetail.

  • Berekening van een uitbetalingsbedrag voor een type voordeel. Voor een voordeeltype Wellnessbezoek wilt u bijvoorbeeld dat het systeem een bedrag van € 50 berekent voor de betalingsdetails.

Nadat u inzicht hebt in de JSON-indeling voor InsClaimItemService: calculateCoverages, kunt u de werking van een machtskenmerk implementeren om uitbetalingsbedragen en aanpassingen te berekenen zonder een onderliggende machtskenmerkklasse te hebben.

Laten we, voordat we op de zaken vooruitlopen, een eenvoudig voorbeeld gebruiken om de uitvoer-JSON te illustreren die naar verwachting door InsClaimItemService: calculateCoverages wordt geretourneerd. Overweeg een eenvoudige gebruikscase die wordt ondersteund door de kant-en-klare klasse Aftrekbaar vermogen.

Voorbeeld: $ 5000 claimbedrag voor een polis met een eigen risico van $ 1000

Hier is de invoer-JSON voor InsClaimItemService: calculateCoverages.

{ 
	"claimId": "01t000000000000001",
	"claimCoverageId": "01t000000000000002",
	"claimItemId": "01t000000000000003",
	"additionalInput": {
		"ClaimLineItem.claimAmount": 5000
		"ClaimLineItem.description": "first party claim payment"
		"ClaimLineItem.recipientId": "01t000000000000004"
	}
}

Hier is de uitvoer-JSON die wordt geretourneerd door InsClaimItemService: calculateCoverages.

{  
	"claimItem": {
		"adjustedAmount": 4000 // loss item adjusted amount
	},
	"claimLineItemAdjustment": {
		"attributeClass": "Deductible", // policy terms attribute class
		"adjustedAmount": 1000, // policy terms tracking entry postedAmount
		"assetTermId": "a6ERN00000000dg2AA", // policy terms id
		"remainingAmount": 0 // policy terms tracking entry remainingAmount
	}
}

Hier is de manier waarop gebruikersinteracties op het tabblad Financiële zaken services aanroepen, hoe InsClaimItemService: calculateCoverages aan gegevens komt en wat er daarna met de gegevens gebeurt.

Illustreert de gegevensstroom van deze service.
  • (1) Op het tabblad Financiële zaken van een claim klikt een gebruiker op Nieuwe verliespost en geeft een claimbedrag van € 5000 op. Als u op Tab drukt om van Claimbedrag naar het volgende veld te gaan, wordt InsClaimItemService: calculateCoverages aangeroepen. In dit voorbeeld omvat de JSON-uitvoer die wordt geretourneerd vanuit InsClaimItemService: calculateCoverages deze waarden.

    • claimLineItem: adjustedAmount Het bedrag dat na het eigen risico aan de begunstigde wordt betaald, wordt afgetrokken van het claimbedrag: $5,000-$1,000=$4,000. Deze waarde wordt terug aan de gebruiker gepresenteerd in het veld Aangepast bedrag op het formulier Nieuwe verliespost.

    • claimLineItemAdjustment:adjustedAmount Het bedrag van de aanpassing van de betalingsdetails van de claimdekking, in dit geval het eigen risico van $ 1000, afgetrokken van het claimbedrag.

    • claimLineItemAdjustment:attributeClass De reden waarom het aan de begunstigde uit te geven bedrag verschilt van het geclaimde bedrag. In ons voorbeeld wordt het geclaimde bedrag verminderd met € 1000 omdat er een eigen risico van € 1000 van toepassing is (attributeClass = Eigen risico).

    • claimLineItemAdjustment:assetTermId De polisvoorwaarde waarvoor een ingang voor bijhouden van polisvoorwaarde wordt gemaakt. In ons voorbeeld is dit de ID van de polisvoorwaarde Aftrekbaar.

    • claimLineItemAdjustment:remainingAmount Het bedrag dat moet worden ingesteld in de invoer voor het bijhouden van de polisterm, in dit geval $ 0, omdat er geen eigen risico resteert na deze transactie.

  • (2) Door op Toevoegen te klikken om het nieuwe verliesitem op te slaan, wordt InsClaimItemService: add aangeroepen, dat geretourneerde JSON-uitvoer uit InsClaimItemService: calculateCoverages gebruikt om gegevens te bewaren naar de records ClaimCoveragePaymentDetail, ClaimCoveragePaymentAdjustment en InsurancePolicyTermTrackingEntry. (De InsClaimItemService: update werkt op dezelfde manier.) Elke record bevat waarden die zijn gerelateerd aan ons voorbeeld:

    • De record ClaimCoveragePaymentDetail heeft een ClaimCoveragePaymentDetail.ClaimedAmount van € 5000 en een ClaimCoveragePaymentDetail.AdjustedAmount van € 4000.

    • De record ClaimCoveragePaymentAdjustment heeft de waarde ClaimCoveragePaymentAdjustment.AdjustedReason of ClaimCoveragePaymentAdjustment.AdjustedAmount van € 1000.

    • De record InsurancePolicyTermTrackingEntry heeft een InsurancePolicyTermTrackingEntry.PostedAmount van € 1000 en een InsurancePolicyTermTrackingEntry.RemainingAmount van € 0.

Met inzicht in de basisstructuur van uitvoer-JSON kunt u een meer geavanceerde gebruikscase instellen door logica in de formule voor berekening van dekking te introduceren in een dekkingsspecificatie.

Voorbeeld: Op het tabblad Details van een dekkingsspecificatie geeft u een formule voor berekening van dekking op zoals deze, met behulp van dezelfde syntaxis van ClaimLineItem als voor additionalInput.

InvokeIP('ClaimCoverage_ClaimCoverageFormula', , INPUT('claimId', ClaimLineItem.claimId) INPUT('benefitType', ClaimLineItem.benefitType), INPUT('quantityCount', ClaimLineItem.unitCount), 'result')

Illustreert het veld Formule voor berekening van dekking in de UI.

Tijdens run-time roept deze formule een integratieprocedure aan met de naam ClaimCoverage_ClaimCoverageFormula. Deze integratieprocedure verwacht invoer voor claimId, benefitType en quantityCount, zoals getoond in deze voorbeeldinvoer-JSON voor het testen van de integratieprocedure:

{ 
	"claimId": "a2b4W000007W2pQQAS",
	"benefitType": "Ambulance - Air",
	"quantityCount": "1",
}

De formule voor berekening van dekking geeft aan dat de uitvoer-JSON voor de integratieprocedure ClaimCoverage_ClaimCoverageFormula zich in een knooppunt bevindt met de naam result. Zolang de JSON-structuur in dat result voldoet aan de verwachte JSON-indeling voor InsClaimItemService: calculateCoverages, gedraagt het systeem zich exact alsof het een onderliggende klasse voor stroomkenmerken gebruikt: het aangepaste bedrag wordt weergegeven aan de gebruiker en de resterende gegevens worden weergegeven in de records ClaimCoveragePaymentDetail, ClaimCoveragePaymentAdjustment en InsurancePolicyTermTrackingEntry nadat op de knop Toevoegen is geklikt.

In dit uitvoer-JSON-voorbeeld van een uitbetaling van € 50 voor een wellnessbezoek zorgt het result ervoor dat InsClaimItemService: add een insert van 50 uitvoert in ClaimCoveragePaymentDetail.AdjustedAmount.

{  
	"result": {
		"claimLineItem": {
			"adjustedAmount": "50"
			}
	},
}

Hier zijn enkele tips voor het configureren van uw berekening.

  • Als uw gebruikscase bestaande stroomkenmerkklassen omvat, kunt u InsurancePolicyTerms: getCurrentStandings gebruiken om te bepalen hoeveel er nog resteert voor een polisvoorwaarde voordat u een aanpassing toepast. Met deze stap kunt u de juiste aanpassing toepassen en de juiste assetTermId doorgeven. In deze gebruikscases configureert u de JSON-structuur die door uw integratieprocedure wordt geretourneerd, zodat deze zowel de knooppunten claimLineItem als claimLineItemAdjustment omvat.

    Zorg in het knooppunt claimLineItemAdjustment voor het volgende:

    • Neem assetTermId op.

    • Neem attributeClass op.

    De InsClaimItemService: add heeft deze beide waarden nodig om te bepalen hoe de record voor het bijhouden van de verzekeringspolisvoorwaarde voor dat specifieke machtskenmerk voor de polis moet worden gemaakt. Zo heeft een dekkingsspecificatie met een voorwaardelijk eigen risico twee kenmerken van Aftrekbaar vermogen: Eigen risico A voor brand en Eigen risico B voor overstroming. De integratieprocedure binnen de formule Dekkingsberekening kan InsurancePolicyTerms: getCurrentStandings gebruiken om te bepalen dat Eigen risico A voor deze polis € 1000 is en Eigen risico B € 500. Vervolgens kan de integratieprocedure op basis van de oorzaak van het verlies voor deze claim bepalen welk eigen risico moet worden toegepast. Zorg er bij het retourneren van de uitvoer-JSON voor dat u de juiste assetTermId retourneert op basis van welk eigen risico is toegepast.

  • Sommige gebruikscases omvatten niet de kant-en-klare stroomkenmerkklassen, maar vereisen nog wel een aanpassing van de betalingsdetails. Wanneer een aanbieder bijvoorbeeld meer dan een overeengekomen tarief factureert, hebt u een record ClaimCoveragePaymentAdjustment nodig om uit te leggen waarom het aangepaste betalingsbedrag lager is dan het geclaimde bedrag. In deze gebruikscases configureert u de JSON-structuur die door uw integratieprocedure wordt geretourneerd, zodat deze zowel de knooppunten claimLineItem als claimLineItemAdjustment omvat.

    In het knooppunt claimLineItemAdjustment:

    • Laat assetTermId weg, omdat er geen klasse voor machtskenmerken is die deze aanpassing definieert.

    • Neem attributeClass op als reden voor aanpassing (bijvoorbeeld "Aanpassing van overfacturering").

    De InsClaimItemService: add gebruikt de tekenreeks attributeClass om het veld ClaimCoveragePaymentDetail.AdjustedReason in te vullen, zelfs als er geen gerelateerde attributeClass is.

  • Als een gebruikscase een uitbetalingsbedrag voor een type voordeel omvat, is er geen verschil tussen geclaimde en aangepaste bedragen. Zo is er een vast tarief van $ 100/dag van toepassing op ziekenhuisverblijven. In deze gevallen laat u het gehele claimLineItemAdjustment-knooppunt buiten uw JSON.

 
Wordt geladen
Salesforce Help | Article