U bent hier:
InsCommissionService:berekenen
Gebruik deze service om de commissie voor een producent te berekenen.
Methode: calculate
Beschrijving
Deze service gebruikt details over de producent, het verzekeringsproduct en de voor vergoeding in aanmerking komende gebeurtenis om een commissie voor een producent te berekenen.
De manier waarop het werkt...
Als u een commissie wilt berekenen, doet deze service het volgende:
-
Accepteert
productionCode,producerId,productId,commissionableEvent,contexteneffectiveDateom de juisteCommissionSchedulete vinden voor de berekening. -
Berekent de commissie op basis van de Commissieplanning.
-
Evalueert de commissie om te bepalen of het een chargeback (een geretourneerd commissiebedrag) is.
-
Als het commissiebedrag negatief is, behandelt de service de commissie als een chargeback.
-
Als de commissie geen chargeback is, vergelijkt de service het berekende commissiebedrag met de minimale en maximale commissiebedragen. Als het berekende bedrag te laag of te hoog is, retourneert de service het minimum- of maximumbedrag in plaats van het berekende bedrag.
-
-
Retourneert het commissiebedrag, de ID van de commissieplanning die is gebruikt om deze te berekenen, en de minimum- en maximumbedragen die van toepassing zijn op deze commissie.
Invoer
Invoer |
Beschrijving |
|---|---|
|
Optioneel. De naam van de productiecode, niet de ID, van de verwerkende producent. |
|
Optioneel. De ID van de verwerkende producent. |
|
Verplicht. De ID van het product waarvoor de commissie wordt betaald. |
|
De event of transactie die via een trigger een commissieberekening activeert (bijvoorbeeld Offerte, Verkochte polis of Gewijzigd/Bevestigd). |
|
Optioneel. De ingangsdatum van de commissiebetaling. Indien null, gebruikt de service de datum van vandaag. |
|
Verplicht. Veldnaam- en waardeparen voor de record waarvoor commissie wordt berekend. U moet:
Notatie zonder opzoekveld:
Indeling met opzoekveld:
U kunt maximaal twee niveaus van velden opgeven als u de invoer opmaakt met een opzoekveld. |
|
Het bedrag waarop de commissieberekening is gebaseerd. |
Invoer-JSON
Invoer-JSON wordt als volgt opgemaakt.
{
"productionCode": ProductionCode.Name,
"producerId": Producer.Id,
"product2Id": Product2.Id,
"commissionableEvent": event type,
"commissionableAmount": amount of the transaction,
"context": {
"objectId": ID of applicable object used,
"objectAPI.fieldAPI" : value
}
}Dit voorbeeld berekent een commissie voor een bevestiging.
{
"productionCode":AX001,
"producerId":ay001jh002,
"product2Id":az011jh022,
"commissionableEvent":"Endorsement",
"commissionableAmount":500,
"context":{
"Quote.vlocity_ins__TotalPremiumforTerm__c":100,
"QuoteLineItem.vlocity_ins__GroupClassId__r.vlocity_ins__ClassCode__c":"Managers",
"QuoteLineItem.vlocity_ins__FeeAmount__c":5,
"objectId":ax003jh001
}
}Uitvoer-JSON
Hier is de indeling van uitvoer-JSON.
{
"commissionAmount": amount,
"commissionScheduleId": ID of the commission schedule used,
"minCommissionAmount": CommissionScheduleAssignment.MinCommissionAmount,
"maxCommissionAmount": CommissionScheduleAssignment.MaxCommissionAmount
}Hier is de voorbeelduitvoer die toont dat het berekende bedrag ($ 167) binnen het bereik valt dat is gedefinieerd door minimum- en maximumwaarden ($ 100-$ 500).
{
"commissionAmount":167,
"commissionScheduleId":"ab001od002",
"minCommissionAmount":100,
"maxCommissionAmount":500
}