U bent hier:
InsCommissionService:aanpassen
Gebruik deze service om een bedrag van de Producentencommissie aan te passen.
Methode: adjust
Beschrijving
Deze service gebruikt een bestaande record Producentencommissie en Commissieplanning om een commissiebedrag voor een producent aan te passen.
Hoe het werkt
Als u een commissie wilt aanpassen, doet deze service het volgende:
-
Accepteert
commissionIden haalt de corresponderende record Producentencommissie op.Als een commissie al is aangepast, vereist de service de
commissionIdvoor de meest recente aanpassing. -
Als de
useOriginalScheduletrue (waar) is, wordt de commissieplanning gebruikt die is opgegeven in de opgehaalde record Producentencommissie voor de berekening.Als de
useOriginalSchedulefalse (onwaar) is, gebruikt de serviceproductionCode,producerId,productId,commissionableEvent,contexteneffectiveDateom te bepalen welke commissieplanning moet worden gebruikt. -
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 |
|---|---|
|
Verplicht. ID van de aan te passen producentencommissie. |
|
Indien ingesteld op Indien ingesteld op |
|
Optioneel. De naam van de productiecode, niet de ID, van de verwerkende producent. |
|
De ID van de verwerkende producent. |
|
Verplicht als 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 aanpassing. 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.
{
"commissionId": ProducerCommission.Id,
"useOriginalSchedule": true,
"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 past een commissie aan die is uitgegeven voor een bevestiging, met behulp van dezelfde commissieplanning die oorspronkelijk is gebruikt.
{
"commissionId": apwe045asx,
"useOriginalSchedule": true,
"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
}