Вы находитесь здесь:
InsPolicyService:calculateTaxesAndFees
Используйте эту службу для расчета и сохранения налогов и платежей по целевому активу (полису).
Сведения о налоге и платеже сохраняются в объекте актива (полиса), а также в полях AssetCoverage__c, AssetInsuredItem__c и AssetPartyRelationship__c.
Эта служба также сохраняет детализированные налоги, как описано в шаге 3 ниже.
Данная служба поддерживает Salesforce Financial Services Cloud.
Принцип работы
-
Служба использует
assetId,effectiveDate(илиEffectiveDate_cцелевую политику, или сегодняшнюю дату, если значение нулевое). -
В зависимости от элементов налогов и платежей, связанных с полисом, покрытий и/или застрахованных элементов, либо выполняет простой расчет, либо вызывает процедуру расчета или процедуру интеграции, необходимую для расчета налогов и платежей.
ПримечаниеЭта служба также может вызвать внешние системы для расчета налогов и платежей. Укажите эти системы при настройке налогов и сборов.
-
Если saveChanges установлено (или по умолчанию) на
true, сохраняет вычисленные налоги и платежи одним из трех способов.-
Если
AssetItemрассчитал налоги и платежи, служба сохраняет записьAssetPricingAdjustment__c, представляющую этот налог/сбор.Запись
AssetPricingAdjustment__cсодержит вычисленную стоимость (Amount__c), связанныеAssetItem(AssetCoverageId__c/AssetInsuredItemId__c/AssetPartyRelationshipId__c) иAsset(AssetId__c), тип (налог или сбор;AdjustmentType__c) и связанный налог/сбор (PriceListEntryId__c).У
AssetPricingAdjustment__cесть связанныйAssetItem, поэтому полеApplicableItemType__cтакже будет установлено. Данный параметр определяет тип элемента, который должен быть применен: Покрытие, застрахованный элемент или взаимосвязь сторон.Если параметр
transactionIdуказан,AssetTransactionId__cполе устанавливается на значениеtransactionId. -
Если
AssetItemили его дети вычислили налоги, сумма вычисленных налогов для себя и своих дочерних организаций будет храниться в полеTaxAmount__c. -
Если
AssetItemили его дочерние объекты вычислили платежи, сумма вычисленных платежей для себя и своих дочерних объектов будет храниться в полеFeeAmount__c.
-
-
На уровне актива сумма всех сумм налога и сборов хранится в полях
TotalTaxAmount__cиTotalFeeAmount__cсоответственно. -
Если целевой актив (полис) не является исходной версией полиса, суммы налога и платежа будут пропорционально распределены на основе
EffectiveDate__cиExpirationDate__cактива. Пропорциональные суммы налога и платежа дляAssetItemхранятся в поляхProratedTaxAmount__cиProratedFeeAmount__c. Пропорциональные суммы налога и платежа для актива хранятся в поляхTotalTaxForTerm__cиTotalFeeForTerm__c. -
Если предоставлен вариант
transactionId, изменение общей пропорциональной стоимости налога и платежа (сумма пропорционально распределенных сумм налога и платежа в версии целевого актива и во всех предыдущих версиях актива) между текущей версией актива и предыдущими версиями актива сохраняется в поляхTaxAmount__cиFeeAmount__cцелевой транзакции соответственно.
Удаленные параметры
Параметр |
Описание |
|---|---|
|
Обязательно Код актива (полиса), для которого эта служба рассчитает налоги и платежи. |
|
Дополнительно Указанная транзакция будет обновлена вычисленными суммами налога и платежа. |
|
Дополнительно Рассчитывает налоги и платежи, связанные только с предоставленными юрисдикциями. |
|
Дополнительно Вычислите налоги и платежи, действующие только в указанную дату. Если значение не предоставлено, по умолчанию используется |
|
Дополнительно
По умолчанию — Если Если |
Вывод JSON
Служба возвращает детализированные налоги и платежи в иерархии продуктов/дочерних продуктов. См. пример ниже:
{
"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
}]
}
