Loading
Verzekering
InsPolicyService:createUpdatePolicy

InsPolicyService:createUpdatePolicy

Gebruik deze service om een nieuwe verzekeringspolis te maken of om een bestaande polis bij te werken met nieuwe informatie.

Deze service kan worden gebruikt met Salesforce Financial Services Cloud voor optionele ondersteuning voor het maken van betalingsschema's.

Klasse: InsPolicyService

Methode: createUpdatePolicy

Hoe het werkt

  1. De service zoekt in de invoer-JSON naar de inputKey. Het inputKey bevat de informatie die de service nodig heeft om een beleid te maken of bij te werken. De informatie die deze service vereist, omvat:

    • accountId

    • term

    • Records productConfigurationDetail

    • insuredItems (optioneel)

    • endDate

    • effectiveDate

  2. Maakt een object Polis (activum).

  3. Als er een bestaande betalingsplanning voor de polis is, retourneert de service een foutbericht.

  4. Als er een initiële betaling is, wordt er een InsurancePolicyTransaction gemaakt. Naast het maken van de transactie worden transactiesplitsingsgegevens ingevuld in het transactiedetailobject. Dit object slaat gegevens op over hoeveel elk activum, elke deelnemer of elke dekking bijdraagt aan de totale transactiebedragen in termen van premie, belasting en kosten. Alleen activa, deelnemers en dekkingen met minstens één waarde groter dan nul voor premie, belasting of kosten worden weergegeven. U moet het transactiedetailobject toevoegen aan de gerelateerde lijst voor transactie.

  5. Als u de betalingsplanning opslaat, worden de records gekoppeld aan de oorspronkelijke polis-ID van de polis.

  6. Als taxesAndfees, taxAmount en/of feeAmount aanwezig zijn in de invoer-JSON, worden de belasting- en/of kostenrecords gemaakt.

  7. Retourneert een beleids-ID in de uitvoer-JSON als de service geen assetId wordt doorgegeven.

    Als aan de service een assetId wordt doorgegeven in de invoer-JSON, werkt deze het activum bij dat door de assetId is opgegeven.

  8. Indien calculateCommission=true: de service roept InsurancePolicyService.calculateAndSaveCommission aan, die de invoer voorbereidt voor de InsCommissionService.calculate en InsCommissionService.saveCommissions. Nadat de berekeningsservice de invoer heeft verwerkt, slaat de opslagservice de berekende waarde op in TotalCommissionAmount.

    • De service roept InsurancePolicyService.calculateAndSaveCommission aan, die de invoer voorbereidt voor de InsCommissionService.calculate en InsCommissionService.saveCommissions.

    • Het commissietype (bijvoorbeeld Commissie of Bonus) wordt doorgegeven aan de InsCommissionService.saveCommissions als commissionType.

    • De commissiestatus (bijvoorbeeld Vrijgesteld of Betaald) wordt doorgegeven aan de InsCommissionService.saveCommissions als commissionStatus.

    Nadat de berekeningsservice de invoer heeft verwerkt, slaat de opslagservice de berekende waarde op in TotalCommissionAmount.

Opmerking
Opmerking De endDate en effectiveDate bepalen de polisduur. De duur van de eerste polisversie kan minder dan 365 dagen zijn, of minder dan 366 dagen in een schrikkeljaar. Zie Overwegingen en beperkingen bij verzekeringspolissen.

Belastingen en toeslagen

Deze service werkt als volgt als belastingen en toeslagen worden gebruikt:

  • Als het veld taxesAndFees is opgegeven voor een JSON-record, blijft er een overeenkomende AssetPricingAdjustment__c bestaan voor elk item in de taxesAndFees.

  • Als het veld taxAmount is opgegeven voor een JSON-record, wordt het veld TaxAmount__c ingesteld op de waarde van het veld taxAmount voor de gemaakte AssetItem.

  • Als het veld feeAmount is opgegeven voor een JSON-record, wordt het veld FeeAmount__c ingesteld op de waarde van het veld feeAmount aan de AssetItem.

Externe opties

Optie

Beschrijving

assetId

Optioneel.

De ID van een bestaand beleid dat deze service bijwerkt op basis van nieuwe of bijgewerkte informatie. Gebruikt wanneer de service een bestaand beleid moet bijwerken.

createContactForParticipants

Optioneel.

true of false

De standaardwaarde is true.

In false maakt de service geen contactpersoonsrecords.

createInsuredItemsRelationships

true of false

Als deze optie is ingesteld op true (waar), kunt u een lijst van instanceKey > parentInstanceKey tussen verzekerde items opgeven.

Deze optie ondersteunt relaties tussen bovenliggend > onderliggend en bovenliggend > onderliggend > kleinkind verzekerd item.

createTransaction

Optioneel.

true of false

De standaardwaarde is false.

Indien true, maakt de service een transactie die wordt gebruikt door de omzetplanningsservices.

De service vult ook transactieopsplitsingsgegevens in het transactiedetailobject in. Het geeft gegevens weer over hoeveel elk activum, elke deelnemer en elke dekking bijdraagt aan het totale transactiebedrag in termen van premie, belasting en kosten. Alleen die activa, deelnemers en dekkingen worden weergegeven die minstens één niet-nulwaarde voor premie-, belasting- en kostenbedragen hebben. Het transactiedetailobject moet worden toegevoegd aan de gerelateerde lijst van transacties.

coolingOffPeriod

Optioneel

Het aantal dagen dat u de eerste invoer van de betalingsplanning kunt uitstellen.

Bij een afkoelingsperiode wordt de datum van de eerste betalingsplanning van de polis berekend als de ingangsdatum + het aantal dagen.

Zo is er een maandelijkse betalingsfrequentie waarbij de ingangsdatum 5 januari is en de datum van de eerste betalingsplanning 5 januari is. Als we een afkoelingsperiode van 14 dagen toepassen, verandert de ingang van de eerste betalingsplanning van 5 januari in 19 januari. De resterende datums van de maandelijkse betalingsplanning blijven ongewijzigd.

Opmerking
Opmerking De afkoelingsperiode moet tussen 1 en 28 dagen liggen vanaf de begindatum van de polis.

effectiveDate

%“JJJJ-MM-DD UU:MM:SS” of %OmniScriptDataElement%

De datum waarop het beleid (of de beleidsupdate) van kracht wordt.

Als er geen effectiveDate in de optiekaart staat, zoekt de service ernaar in de rootAttributes. Als de service daar geen effectiveDate kan vinden, wordt de datum van vandaag gebruikt.

Als u het pakket Insurance Industries Extension gebruikt, wordt de tijdstempelwaarde in de optie effectiveDate genegeerd. In plaats daarvan wordt de tijdstempelwaarde van de ingangsdatum ingesteld op 12:00 uur van de geselecteerde ingangsdatum en wordt de waarde van de vervaldatum ingesteld op 23:59 uur voor de geselecteerde vervaldatum. Het tijdstempel wordt ingesteld met behulp van de opgegeven tijdzone van de gebruiker.

generatePolicyNumber

waar of onwaar

Indien true, gebruikt deze optie de UniqueIdGenerator om een uniek polisnummer te maken. Dit nummer wordt opgeslagen als Asset.SerialNumber.

includePaymentSchedule

Optioneel.

True of de betalingsplanning voor de polis wordt gemaakt.

Standaard is false.

includeRevenueSchedule

Optioneel.

true of false

Indien true roept deze optie de service InsPolicyRevenueScheduleService: createRevenueSchedule aan om een omzetplanning te maken of InsPolicyRevenueScheduleService: modifyRevenueSchedule als het beleid wordt bijgewerkt.

In false maakt de service geen omzetplanning voor dit beleid.

initialPaymentRule

Optioneel.

Percentage, Maanden of dagen.

initialTransactionName

Optioneel.

De transactienaam.

De standaardwaarde is om dezelfde waarde als initialPaymentTransactionType te gebruiken.

initialPaymentTransactionType

Optioneel.

Het transactietype.

De standaardwaarde is Premiekosten.

initialPaymentValue

Verplicht als de initialPaymentRule is verstrekt.

De waarde Percentage, of het aantal maanden of dagen.

inputKey

Verplicht.

Een JSON waaruit deze service de benodigde informatie ophaalt om een beleid te maken of bij te werken.

isCreatingPolicyTerms

true of false

Indien ingesteld op true, retourneert de service een policyTermIds in de uitvoer-JSON.

isFsc

Optioneel.

True of de te maken Polis een InsurancePolicy-object is.

Standaard is false.

U kunt een van beidepostDataCustomClassName opgeven of postDataDRBundleName.

Als u geen van deze opties opgeeft, wordt de service standaard postDataCustomClassName.

paymentCalculationMethod

Verplicht als includePaymentSchedule true is.

Overschrijft de waarde van de premieberekeningsmethode van de polis.

paymentFrequency

Verplicht als includePaymentSchedule true is.

Overschrijft de waarde PremiumFrequency van het beleid.

paymentStartDate

Optioneel.

De datum van de eerste ingang van de betalingsplanning.

Standaard is de ingangsdatum van het beleid.

paymentType

Verplicht als includePaymentSchedule true is.

Overschrijft de waarde Premiebetalingstype van de polis.

postDataCustomClassName

Optioneel.

U moet deze optie of postDataDRBundleName opgeven.

De standaardwaarde is ingesteld op PostInsurancePolicy.

postDataDRBundleName

Optioneel.

U moet deze optie of postDataCustomClassName opgeven.

Als u deze optie niet opgeeft, is de standaardinstelling postDataCustomClassName.

transactionType

%OmniScriptDataElement%

Gebruik dit als includeRevenueSchedule is ingesteld op true (waar).

Als er geen waarde is ingesteld, wordt standaard Verkochte polis ingesteld.

calculateCommission

true of false

Indien ingesteld op true, berekent de service commissies voor de rootitems en wordt het totaalbedrag opgeslagen in TotalCommissionAmount.

Indien ingesteld op false (standaard), berekent de service geen commissies.

Opmerking
Opmerking

Als u deze optie instelt op true (waar), vereist de service minstens één van de waarden van de producent- of productiecode: producerId , productionCodeId of productionCodeName.

commissionType

Optioneel

Type commissie (bijvoorbeeld Bonus of Standaard).

commissionStatus

Optioneel

Status van de commissie (bijvoorbeeld In behandeling, Betaald of Ontheffing).

producerId

Optioneel

De ID van de verwerkende producent, dat wil zeggen de producent die is gebruikt om de commissionScheduleId op te halen en het commissiebedrag te berekenen.

Toegewezen aan toegewezen aan InsurancePolicy.ProducerId.

productionCodeId

Optioneel

De ID van de productiecode.

Toegewezen aan InsurancePolicy.ProductionCodeId__c.

productionCodeName

Optioneel

De naam van de productiecode doorgegeven aan de service InsCommissionService.calculate.

Als u geen productionCodeId invoert, gebruikt de service productionCodeName om de productionCodeId op te zoeken. Als u beide waarden invoert, maar ze niet overeenkomen, heeft productionCodeId prioriteit.

memberPlanIntegrationProcedure

Initieert een aangepaste integratieprocedure op basis van de gebruikersconfiguratie. Wanneer u deze optie gebruikt, geeft deze alle opties van de service door aan de aangepaste integratieprocedure en alle polis-ID's als invoer voor integratie met het object, bijvoorbeeld het verzekeringspolisobject met het ledenplan.

ratingDate

De beoordelingsdatum die is gebruikt voor de prijsstelling van de invoer-JSON.

Opmerking
Opmerking U kunt geen specifieke tijd doorgeven voor ratingField, aangezien het veldtype Datum is. Het tijdstempel van de beoordelingsdatum wordt dus standaard ingesteld op 12:00 uur.

term

De termijn van het beleid dat de service gaat maken.

InsPolicyService:createUpdatePolicy ondersteunt alleen jaarlijkse beleidsvoorwaarden.

useIsPaidFlag

Optioneel

Indien true (waar) met includePaymentSchedule ook true (waar) ingesteld, maakt de service bijdragerecords van poliscomponenten voor elke ingang van de betalingsplanning.

De standaardwaarde is false (onwaar).

Invoer-JSON

Deze service zoekt naar de waarde van de inputKey.

In dit voorbeeld is inputKey = newPolicyJSON.

"newPolicyJSON": {
  "accountId": "001f400000OSHq2AAH",
  "term": "Annual",
  "endDate": "2019-05-14T07:00:00.000Z",
  "effectiveDate": "2018-05-15T07:00:00.000Z",
  "productConfigurationDetail": {
    ...
  },
  "insuredItems": {
    ...
  },
  "additionalFields": {
    "SerialNumber": "AUTO-123",
    "Status": "InForce",
    "vlocityins2__Type__c": "AUTO",
    "vlocityins2__PaymentMethodId__c": "a2Rf40000002NrgEAE"
  },
}

De JSON binnen de inputKey omvat diverse sleutel-/waardeparen die de service nodig heeft om een beleid te maken of bij te werken. Het omvat ook het product JSON, met prijzen voor de verzekerde items en de totale polis.

Sleutel

Waarde

accountId

De gegenereerde account-ID voor het activum.

additionalFields

Optioneel.

Sleutel-/waardeparen inclusief alle polisvelden (activa) die geen deel uitmaken van de service.

endDate

Optioneel.

De datum waarop de polis komt te vervallen.

effectiveDate

De datum waarop de polis van kracht wordt.

Als er geen effectiveDate in de optiekaart staat, zoekt de service ernaar in de rootAttributes. Als de service daar geen effectiveDate kan vinden, wordt de datum van vandaag gebruikt.

insuredItems

De sleutel-/waardeparen van de verzekerde items die de service gebruikt om de polis te maken.

modificationDate

De datum waarop het beleid is gewijzigd

productConfigurationDetail

Een array van records die het product-JSON-structuurmodel volgen.

term

De termijn van het beleid dat de service gaat maken.

De insuredItems voor dit voorbeeld omvat de verzekerde items en de waarden die de gebruiker voor elk item heeft geselecteerd.

In dit voorbeeld is inputKey = quotepolicyJSON.

"quotepolicyJson": {
  "productConfigurationDetail": {
    ...
  }
  "insuredItems": {
    "DRIVER": [{
        "GENDER": "Female",
        "FN": "Joan",
        "AGE": 20,
        "LN": "Smith",
        "instanceKey": "Joan Smith",
        "isPrimary": false
        "isParent": false
      },
      {
        "GENDER": "Male",
        "FN": "John",
        "AGE": 30,
        "LN": "Smith",
        "instanceKey": "John Smith",
        "isPrimary": false
        "isParent": false
      },
      {
        "GENDER": "Male",
        "FN": "Robert",
        "AGE": 30,
        "LN": "Henderson",
        "instanceKey": "Robert Henderson",
        "isPrimary": false
        "isParent": false
      },
      {
        "GENDER": "Female",
        "FN": "Kinsey",
        "AGE": 20,
        "LN": "Schell",
        "instanceKey": "Kinsey Schell",
        "isPrimary": false
        "isParent": false
      }
    ],
    "AUTO": [{
        "autoLicNum": "Lexus",
        "autoModel": "LX250",
        "autoYear": 2015,
        "instanceKey": "2015 Lexus LX250",
        "BodyClass": "Sedan/Saloon",
        "VehicleType": "PASSENGER CAR",
        "isPrimary": true
        "isParent": true
      },
      {
        "autoLicNum": "Honda",
        "autoModel": "Odyssey",
        "autoYear": 2006,
        "instanceKey": "2006 Honda Odyssey",
        "BodyClass": "Minivan",
        "VehicleType": "MULTIPURPOSE PASSENGER VEHICLE (MPV)",
        "isPrimary": true
        "isParent": true                                
      }
    ]
  },
  "accountId": "0011I00000QknfjQAB",
  "opportunityId": "0061I00000AV8gBQAT"
},
"quoteId": "0Q01I000000206USAQ",
"error": "OK"

Uitvoer-JSON

De service retourneert de polis-ID van de nieuw gemaakte polis.

{
    "policyId": "02if4000001uCZXAA2",
    "error": "OK"
}

Als de externe optie isCreatingPolicyTerms is ingesteld op true, wordt er een policyTermIds opgenomen. Hier is een voorbeeld van een policyTermIds:

{  
   "policyId": "02i6g000000h110AAA",
   "policyTermIds": [
    "a5X6g000001LeUUEA0",
    "a5X6g000001LeUVEA0",
    "a5X6g000001LeUWEA0",
    "a5X6g000001LeUXEA0",
    "a5X6g000001LeUYEA0",
    "a5X6g000001LeUZEA0",
    "a5X6g000001LeUaEAK",
    "a5X6g000001LeUbEAK",
    "a5X6g000001LeUcEAK",
    "a5X6g000001LeUdEAK",
    "a5X6g000001LeUeEAK",
    "a5X6g000001LeUfEAK"
  ]
}

Voorbeelden

De service wordt doorgaans gebruikt in het OmniScript-patroon Offerte-naar-beleid.

 
Wordt geladen
Salesforce Help | Article