U bent hier:
InsPolicyService:cancelPolicy
Gebruik deze service om een bestaande verzekeringspolis op te zeggen.
Deze service werkt samen met de InsPolicyService:prepareToCancelPolicy en met de InsPolicyRevenueScheduleService:cancelRevenueSchedule om alle wijzigingen te voltooien die nodig zijn om een polis te annuleren, een restitutiebedrag op te geven en de omzetplanning te beëindigen (indien nodig).
Methode: cancelPolicy
De manier waarop het werkt...
-
Neemt de
assetIdofpolicyIdvan de te annuleren polis en deeffectiveDatewaarop de annulering van kracht wordt.Opmerking De ingangsdatum van de annulering kan niet groter zijn dan vandaag. -
Werkt de polisstatus bij naar
Canceled, de oorspronkelijke Vervaldatum naar de huidige waarde van de Vervaldatum en Vervaldatum naar een dag vóór de Annuleringsdatum (met Tijdstempel van 23:59 uur). -
Wijzigt de vervaldatum in de
effectiveDatedie is doorgegeven aan de service met een tijdstempel van 23:59 PM. -
Gebruikt het juiste berekeningsproces op basis van de
useIsPaidFlag.Als
useIsPaidFlagis ingesteld op false (niet geselecteerd), pro rata de Totale premie voor looptijd, Totale kosten voor looptijd en Totale belasting voor looptijd van de polis, en berekent terugbetaalde bedragen op basis van de Annuleringsdatum en de Tot op heden betaalde polis. Als Polis Betaald aan datum null is, houdt de service rekening met de volledig betaalde polis en wordt Vervaldatum gebruikt.Met
useIsPaidFlagingesteld optrue(geselecteerd), de service:-
Gebruikt betalingsschema om het totaalbedrag te berekenen dat al voor de polis is betaald. Het totaalbedrag dat voor de polis is betaald, is gelijk aan de som van bedragen in betalingsschema's met Is betaald ingesteld op true (waar) (geselecteerd). Dit bedrag wordt gebruikt in berekeningen van restituties.
-
Pro rata van Totale premie voor looptijd, Totale kosten voor looptijd en Totale belasting voor looptijd van de polis, en berekent restitutiebedragen op basis van de annuleringsdatum en het totaalbedrag dat al voor de polis is betaald.
-
Past betalingsplanningen aan op basis van de huidige datum of de annuleringsdatum, afhankelijk van welke later is. Als betalingsplanningen op of na deze datum Is betaald zijn ingesteld op false (niet geselecteerd), verwijdert de service deze.
-
Werkt de status bij van alle onbetaalde betalingsschema's (die in het verleden zijn geweest vanaf
cancellationDate) naarInvalid. Het onbetaalde bedrag wordt toegevoegd aan de nieuwe betalingsplanning. -
Maakt een nieuwe betalingsplanning voor de huidige datum met een bedrag dat gelijk is aan het reeds berekende restitutiebedrag en markeert de status als
Valid. AlscreateTransactiontrue (waar) is, maakt de service een annuleringstransactie. -
Werkt alle toekomstige polisversies bij met annuleringsgegevens:
-
Status: Geannuleerd
-
Annuleringsdatum: De
effectiveDatedie is doorgegeven aan de service -
Premie voor termijn, Belasting voor termijn en Termijnkosten: 0
-
Vervaldatum: Dag voordat de
effectiveDateaan de service is doorgegeven met een tijdstempel van 23:59 PM
-
-
-
Legt de pro rata TotalPremiumForTerm vast in de database.
Als createTransaction=true en de doorgegeven ID assetId is, wordt AssetTransaction_c (Amount_c=refund, postDate_c en transactionDate_c=effectiveDate, type=transactionType (standaard geannuleerd) gemaakt. Als createTransaction=true en de doorgegeven ID policyId is, maakt de service InsurancePolicyTransaction_c of InsurancePolicyTransaction (Amount_c=refund, postDate_c en transactionDate_c=effectiveDate, type=transactionType (standaard geannuleerd).
De service vult ook transactieopsplitsingsgegevens in het transactiedetailobject in. Het geeft gegevens weer over hoeveel elk activum, elke deelnemer en elke dekking bijdraagt aan het totale transactiebedrag in termen van premie, belasting en kosten. Alleen die activa, deelnemers en dekkingen worden weergegeven die minstens één niet-nulwaarde voor premie, belasting en kosten hebben.-
Roept InsPolicyRevenueScheduleService:cancel aan met behulp van de
assetIden de nieuw gemaaktetransactionId. -
De service InsPolicyRevenueScheduleService: cancel berekent het einde van de omzetplanning en post de resultaten in de sectie Omzetplanning van het beleid. De restitutiebedragen zijn vanuit het perspectief van de verzekeringsmaatschappij. Een negatief bedrag resulteert in een restitutie aan de verzekeringnemer en een positief bedrag vertegenwoordigt een niet-betaald bedrag door de verzekeringnemer.
De service ondersteunt ook annulering van polissen waarbij de oorspronkelijke polisversie een duur van minder dan 365 dagen of minder dan 366 dagen in een schrikkeljaar heeft. Zie Overwegingen en beperkingen bij verzekeringspolissen.
Toeslagen (belastingen en toeslagen)
Deze service (samen met de prepareToCancel) faciliteert pro rata en restituties voor belastingen en vergoedingen wanneer een polis wordt geannuleerd. Dat werkt als volgt:
-
Als het doelbeleid een
TotalTaxAmount__cheeft, wordt die waarde pro rata berekend over de annuleringsdatum en ingesteld op het veldTotalTaxForTerm__c. -
Als het doelbeleid een
TotalFeeAmount__cheeft, wordt die waarde pro rata berekend over de annuleringsdatum en ingesteld op het veldTotalFeeForTerm__c. -
Als de
createTransaction(zie hieronder) is ingesteld op true (waar) en het doelbeleidAssetPricingAdjustment__cheeft die kunnen worden gerestitueerd, worden de pro rata restitutiebedragen ingesteld voor deTaxAmount__cenFeeAmount__cvan de transactie.
Als u het objectmodel Verzekeringspolis gebruikt (in plaats van het objectmodel Activum), zijn de veldnamen anders:
-
TotalTaxAmount__c=StandardTaxAmount -
TotalTaxForTerm__c=TermTaxAmount -
TotalFeeAmount__c=StandardFeeAmount -
TotalFeeForTerm__c=TermFeeAmount -
AssetPricingAdjustment__c=InsurancePolicySurcharge -
TaxAmount__c=TransactionTaxAmount -
FeeAmount__c=TransactionFeeAmount
Wilt u meer weten over de overstap van het objectmodel Activum naar het objectmodel Verzekeringspolis? Lees Verzekeringspolissen harmoniseren.
Externe opties
Uitvoer-JSON
Als u het objectmodel Activum gebruikt, retourneert deze service een JSON output. Hier is een voorbeeld:
{
"output": {
"records": [
{
"instest10__TotalAmount__c": 420.97,
"instest10__TaxAmount__c": 37.93,
"instest10__FeeAmount__c": 3.68,
"instest10__Amount__c": 379.36,
"Id": "a416g0000002CZpAAM"
}
],
"totalSize": 1
}
}Als u het objectmodel Verzekeringspolis gebruikt, retourneert deze service een JSON results. Hier is een voorbeeld:
{
"result": {
"type": "Cancelled",
"transactionNumber": null,
"transactionDate":
"totalAmount": null,
"taxAmount": null,
"postDate": "2021-09-01T07:00:00.000Z",
"name": "Cancelled"
"Id": null,
"feeAmount": null,
"amount": -133.4,
"additionalInfo": null
},
"error": "OK"
}