Vous êtes ici :
InsPolicyService:cancelPolicy
Utilisez ce service pour annuler une police d'assurance existante.
Ce service fonctionne avec le service de InsPolicyService:prepareToCancelPolicy et le service de InsPolicyRevenueScheduleService:cancelRevenueSchedule pour effectuer toutes les modifications nécessaires pour annuler une police, fournir un montant de remboursement et terminer le calendrier de revenu (si nécessaire).
Méthode : cancelPolicy
Fonctionnement
-
Prend la
assetIdou lapolicyIdde la police à résilier et laeffectiveDateà laquelle l'annulation entre en vigueur.Remarque La date d'annulation effective ne peut pas être supérieure à aujourd'hui. -
Met à jour le statut de la police sur
Canceled, la Date d'expiration d'origine sur la valeur actuelle de la Date d'expiration et la Date d'expiration sur un jour avant la Date d'annulation (avec l'horodatage de 23h59). -
Change la date d'expiration en
effectiveDatetransmis au service avec un horodatage à 23h59. -
Utilise le processus de calcul approprié basé sur la valeur
useIsPaidFlag.Lorsque
useIsPaidFlagest défini sur false (désélectionné), le service calcule au prorata la prime totale pour la durée, les frais totaux pour la durée et la taxe totale pour la durée de la police, et calcule les montants remboursés en fonction de la date d'annulation et de la police payée à ce jour. Si Police payée à ce jour est nulle, le service considère que la police a été payée en totalité et utilise la Date d'expiration.Lorsque
useIsPaidFlagest défini surtrue(sélectionné), le service :-
Utilise le calendrier de paiement pour calculer le montant total déjà payé pour la police. Le montant total payé pour la police est égal à la somme des montants dans les calendriers de paiement avec Est payé défini sur true (sélectionné). Ce montant est utilisé dans les calculs de remboursement.
-
Calcule au prorata la prime totale pour la durée, les frais totaux pour la durée et la taxe totale pour la durée de la police, et calcule les montants de remboursement en fonction de la date d'annulation et du montant total déjà payé pour la police.
-
Ajuste les calendriers de paiement en fonction de la date actuelle ou de la date d'annulation, selon la dernière de ces dates. Si les calendriers de paiement à partir de cette date ont été payés définis sur false (désélectionné), le service les supprime.
-
Met à jour le statut de tous les calendriers de paiement impayés (passés depuis
cancellationDate) surInvalid. Le montant impayé est ajouté au nouveau calendrier de paiement. -
Crée un nouveau calendrier de paiement pour la date actuelle avec un montant égal au montant de remboursement déjà calculé et marque le statut sur
Valid. SicreateTransactionest true, le service crée une transaction d'annulation. -
Met à jour toutes les futures versions de stratégie avec des informations d'annulation :
-
Statut : Annulé
-
Date d'annulation : Le
effectiveDatetransmis au service -
Prime à terme, taxe à terme et frais à terme : 0
-
Date d'expiration : Le jour précédant le passage du
effectiveDateau service avec un horodatage à 23h59
-
-
-
Engage le TotalPremiumForTerm au prorata dans la base de données.
Si createTransaction=true et que l'ID transmis est assetId, crée AssetTransaction_c (Amount_c=refund, postDate_c et transactionDate_c=effectiveDate, type=transactionType (par défaut Annulé). Si createTransaction=true et que l'ID transmis est policyId, le service crée InsurancePolicyTransaction_c ou InsurancePolicyTransaction (Amount_c=refund, postDate_c et transactionDate_c=effectiveDate, type=transactionType (par défaut Annulé).
Le service remplit également les données de répartition des transactions dans l'objet Détails de la transaction. Il affiche des données sur la contribution de chaque actif, participant et couverture au montant total de la transaction en termes de prime, de taxe et de frais. Seuls les actifs, les participants et les couvertures qui ont au moins une valeur différente de zéro pour les primes, les taxes et les frais sont affichés.-
Appelle InsPolicyRevenueScheduleService:cancel en utilisant le
assetIdet le nouveautransactionIdcréé. -
InsPolicyRevenueScheduleService : cancel service calcule la fin du calendrier de revenu et publie les résultats dans la section calendrier de revenu de la stratégie. Les montants de remboursement sont du point de vue de la compagnie d'assurances. Un montant négatif entraîne un remboursement au souscripteur et un montant positif représente un montant impayé par le souscripteur.
Le service prend également en charge l'annulation des polices dont la version d'origine a une durée inférieure à 365 jours, ou inférieure à 366 jours par année bissextile. Consultez Considérations et limitations relatives aux polices d'assurance.
Suppléments (taxes et frais)
Ce service (avec le service de prepareToCancel) facilite le calcul au prorata et le remboursement des taxes et des frais lorsqu'une police est annulée. Voici comment cela fonctionne :
-
Si la stratégie cible a une
TotalTaxAmount__c, cette valeur est calculée au prorata sur la date d'annulation et définie dans le champTotalTaxForTerm__c. -
Si la stratégie cible a une
TotalFeeAmount__c, cette valeur est calculée au prorata sur la date d'annulation et définie dans le champTotalFeeForTerm__c. -
Si l'option de
createTransaction(voir ci-dessous) est définie sur true et que la stratégie cible contient des enregistrements deAssetPricingAdjustment__cremboursables, les montants de remboursement au prorata sont définis dans les champsTaxAmount__cetFeeAmount__cde la transaction.
Si vous utilisez le modèle d'objet Police d'assurance (au lieu du modèle d'objet Actif), les noms de champ sont différents :
-
TotalTaxAmount__c=StandardTaxAmount -
TotalTaxForTerm__c=TermTaxAmount -
TotalFeeAmount__c=StandardFeeAmount -
TotalFeeForTerm__c=TermFeeAmount -
AssetPricingAdjustment__c=InsurancePolicySurcharge -
TaxAmount__c=TransactionTaxAmount -
FeeAmount__c=TransactionFeeAmount
Vous souhaitez en savoir plus sur la transition depuis le modèle d'objet Actif vers le modèle d'objet Police d'assurance ? Lisez Harmonisation des polices d'assurance.
Options distantes
JSON de sortie
Si vous utilisez le modèle d'objet Actif, ce service renvoie un nœud output JSON. Exemple :
{
"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
}
}Si vous utilisez le modèle d'objet Police d'assurance, ce service renvoie un nœud results JSON. Exemple :
{
"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"
}