Vous êtes ici :
InsPolicyService:calculateTaxesAndFees
Utilisez ce service pour calculer et économiser les taxes et les frais sur un actif cible (police).
Les informations fiscales et de frais sont enregistrées dans l'objet Actif (police), et dans les champs AssetCoverage__c, AssetInsuredItem__c et AssetPartyRelationship__c.
Ce service permet également d'économiser les taxes détaillées comme indiqué à l'étape 3 ci-dessous.
Ce service prend en charge Salesforce Financial Services Cloud.
Fonctionnement
-
Le service prend la
assetId, laeffectiveDate(ouEffectiveDate_cla stratégie cible, ou la date du jour si la valeur est nulle). -
Selon les taxes et les éléments de frais associés à la police, aux couvertures et/ou aux éléments assurés, soit effectue le calcul simple spécifié, soit appelle la procédure de calcul ou la procédure d'intégration requise pour calculer les taxes et les frais.
RemarqueCe service peut également appeler des systèmes externes pour calculer les taxes et les frais. Spécifiez ces systèmes lors de la configuration des taxes et des frais.
-
Si saveChanges est défini (ou défini par défaut) sur
true, enregistre les taxes et les frais calculés de l'une des trois façons suivantes.-
Si un
AssetItema calculé les taxes et les frais, le service enregistre un enregistrementAssetPricingAdjustment__creprésentant cette taxe/ces frais.L'enregistrement
AssetPricingAdjustment__ccontient le montant calculé (Amount__c), lesAssetItem(AssetCoverageId__c/AssetInsuredItemId__c/AssetPartyRelationshipId__c) etAsset(AssetId__c) associés, le type (taxe ou frais;AdjustmentType__c) et la taxe/frais (PriceListEntryId__c) associés.AssetPricingAdjustment__ca uneAssetItemassociée. Par conséquent, le champApplicableItemType__csera également défini. Ce paramètre indique le type d'élément applicable : Couverture, Article assuré ou Relation de partie.Si l'option
transactionIdest spécifiée, leAssetTransactionId__cchamp est défini sur la valeurtransactionId. -
Si un
AssetItemou ses enfants ont calculé l'impôt, la somme des impôts calculés sur lui-même et ses enfants est stockée dans le champTaxAmount__c. -
Si un
AssetItemou ses enfants ont des frais calculés, la somme des frais calculés sur lui-même et ses enfants sera stockée dans le champFeeAmount__c.
-
-
Au niveau Actif, la somme de tous les montants de taxe et de frais est stockée respectivement dans les champs
TotalTaxAmount__cetTotalFeeAmount__c. -
Si l’actif cible (police) n’est pas la version originale de la police, les montants de taxe et de frais seront calculés au prorata en fonction de la
EffectiveDate__cet de laExpirationDate__cde l’actif. Les montants de taxe et de frais calculés au prorata pour uneAssetItemsont stockés dans les champsProratedTaxAmount__cetProratedFeeAmount__c. Les montants de taxe et de frais calculés au prorata pour l'actif sont stockés dans les champsTotalTaxForTerm__cetTotalFeeForTerm__c. -
Si une option de
transactionIdest fournie, l'évolution des montants totaux de taxe et de frais au prorata (la somme des montants de taxe et de frais au prorata dans la version de l'actif cible et dans toutes les versions antérieures de l'actif) entre la version actuelle de l'actif et les versions précédentes de l'actif sont stockés respectivement dans les champsTaxAmount__cetFeeAmount__cde la transaction cible.
Options distantes
Option |
Description |
|---|---|
|
Obligatoire ID de l'actif (police) pour lequel ce service calculera les taxes et les frais. |
|
Facultatif La transaction spécifiée sera mise à jour avec les montants de taxe et de frais calculés. |
|
Facultatif Calcule uniquement les taxes et les frais associés aux juridictions fournies. |
|
Facultatif Calculez les taxes et les frais en vigueur uniquement à la date spécifiée. Si elle n'est pas fournie, la valeur est définie par défaut sur la |
|
Facultatif
Par défaut Si Si |
JSON de sortie
Le service renvoie les taxes et les frais détaillés dans la hiérarchie des produits/produits enfants. Exemple :
{
"productId": 1,
"productName": "Product",
"ProductCode": "P",
"taxesAndFees": [{
"Id": 1,
"Amount__c": 10,
"PriceListEntryId__c": 11,
"AdjustmentType__c": "Tax"
}, {
"Id": 2,
"Amount__c": 15,
"PriceListEntryId__c": 12,
"AdjustmentType__c": "Fee"
}],
"taxAmount": 25
"feeAmount": 30
"childProducts": [{
"productId": 2,
"productName": "Insured Item",
"ProductCode": "II",
"instanceKey": "My Insured Item",
"taxesAndFees": [{
"Id": 3,
"Amount__c": 15,
"PriceListEntryId__c": 16,
"AdjustmentType__c": "Tax"
}],
"taxAmount": 15
}, {
"productId": 3,
"productName": "Coverage",
"ProductCode": "C",
"taxesAndFees": [{
"Id": 4,
"Amount__c": 15,
"PriceListEntryId__c": 21
"AdjustmentType__c": "Fee"
}],
"feeAmount": 15
}]
}
