Loading
Forsikring
InsEnrollmentService:enrollPlans

InsEnrollmentService:enrollPlans

Bruk denne tjenesten til å opprette poliseposter (Aktiva- eller Forsikringspolise) for registrerte valgte medisinske, dental, vision og andre planer.

Viktig
Viktig Fra og med Winter '23 har vi aktivert InsEnrollmentServiceStd:enrollPlans-tjenesten for å fungere med Salesforce Standard Data Model for Financial Services Cloud og Health Cloud. Eksisterende kunder kan fortsette å bruke denne tjenesten, men ingen ytterligere forbedringer vil bli levert i den administrerte pakken for Forsikring.

Klasse: InsEnrollmentService

Metode: enrollPlans

Slik fungerer det for Forsikringspolise-poster

Registreringstjenester kan skrive til Forsikringspolise og relaterte objekter (Harmonisert polisedatamodell) eller Aktivum-objekter (Vlocity-modell) , avhengig av isFsc-parameteren og den tilpassede innstillingen for defaultIsFSCOption. Tjenesten gjør følgende:

  1. Tjenesten tar inndata-JSON-koden og ser etter informasjonen for å opprette polisene (Forsikringspolise).

    defaultIsFSCOption

    isFsc parameter

    Policyer opprettet

    True

    NA

    Forsikringspolise-poster (InsurancePolicy)

    False

    True

    Forsikringspolise-poster (InsurancePolicy)

    False

    False

    Aktivumposter (Asset)

    NA

    True

    Forsikringspolise-poster (InsurancePolicy)

    NA

    False

    Aktivumposter (Asset)

  2. For Forsikringspolise-posten kan medlemmet representeres som enten en kontakt eller en personkonto. Når et medlem (primært eller avhengig) representeres som en konto og kontakt begge deler, bruker tjenesten kontorepresentasjonen.

  3. Knytter avhengige til polisene som Forsikringspolisedeltakere (InsurancePolicyParticipants). Den oppretter en annen Forsikringspolisedeltaker (InsurancePolicyParticipant) for det primære medlemmet.

    Postene for InsurancePolicyParticipants fylles ut i henhold til disse reglene:

    Personkontoflyt

    Du kan opprette personkontoer for medlemmene i den gitte folketellingen. For å støtte Personkonto-flyten:

    • Hvis Primært medlem representeres som en personkonto, angis medlemmets Person Account Id som policyens konto.

    • Hvis Primært medlem representeres som en personkonto, er Primært deltakerkonto-ID i primærens InsurancePolicyParticipant-post Primært medlems personkonto-ID og Primært deltakerkontakt-ID er personAccount.personContactId.

    • Hvis Primært medlem av den avhengige er representert som Personkonto, er Primært deltakerkonto-ID i den avhengiges InsurancePolicyParticipant-post det primære medlemmets personkonto-ID.

    • Hoveddeltaker-kontakt-ID for den underordnedes InsurancePolicyParticipant-post er hovedmedlemmets personAccount.personContactId.

    • Hvis avhengig representeres som en personkonto, er Relatert deltakerkonto-ID for den avhengiges InsurancePolicyParticipant-post Relatert medlems personkonto-ID.

    • Hvis den avhengige er representert som en personkonto, er Relatert deltaker-kontakt-ID i den avhengiges InsurancePolicyParticipant medlemmets personAccount.personContactId.

    Ikke-personlig kontoflyt

    • Hvis Primært medlem representeres som en kontakt, angis medlemmets Account.Id som policyens konto.

    • Hvis Primært medlem representeres som en kontakt, er Primært deltakerkontakt-ID i primærens InsurancePolicyParticipant-post Primært medlems kontakt-ID.

    • Hvis Primært medlem av den avhengige er representert som Kontakt, er Primært deltakerkontakt-ID for InsurancePolicyParticipant det primære medlemmets kontakt-ID.

    • Hvis avhengig er representert som Kontakt, er Relatert deltaker-kontakt-ID for InsurancePolicyParticipant primærmedlemmets kontakt-ID.

  4. Henter ProductId fra planen og stempler InsurancePolicy.ProductId = plan.Product2Id.

  5. Oppretter disse relasjonene:

    Forsikringspolise

    InsurancePolicy.EffectiveDate= Contract.StartDate eller EffectiveStart i inndata-JSON-filen.

    InsurancePolicy.ExpirationDate = Contract.EndDate eller EffectiveEnd i inndata-JSON-filen.

    InsurancePolicy.ContractLineItemId__c = Plan.Id

  6. Tjenesten beregner InsurancePolicy.PolicyTerm basert på Contract.ContractTerm:

    Forsikringspolise

     ContractTerm = 12, InsurancePolicy.PolicyTerm= Annual.

    ContractTerm = 6, InsurancePolicy.PolicyTerm= Semi-Annual

    ContractTerm = 1, InsurancePolicy.PolicyTerm= Monthly

    ContractTerm = Eventuell annen verdi, InsurancePolicy.PolicyTerm= Tilpasset.

  7. Henter Price-nøkkelen fra inndata-JSON-filen og oppretter disse relasjonene:

    Forsikringspolise

    InsurancePolicy.PremiumAmount = Pris

    InsurancePolicy.TermPremiumAmount = proporsjonal pris basert på gyldighetsdatoen angitt i #5.

    InsurancePolicy.MonthlyPremium__c = Price/ContractTerm

  8. Oppretter Forsikringspolisedekninger (InsurancePolicyCoverages) for dekningselementene.

Slik fungerer den for aktiva

  1. Tjenesten tar inndata-JSON-koden og ser etter informasjonen for å opprette policyene (aktivaene).

    defaultIsFSCOption

    isFsc parameter

    Policyer opprettet

    True

    NA

    Forsikringspolise-poster (InsurancePolicy)

    False

    True

    Forsikringspolise-poster (InsurancePolicy)

    False

    False

    Aktivumposter (Asset)

    NA

    True

    Forsikringspolise-poster (InsurancePolicy)

    NA

    False

    Aktivumposter (Asset)

  2. Knytter det primære medlemmets contactId til policyen som en kontakt.

  3. Stempler registreringskontraktens accountId som polisens konto.

  4. Henter RawPriceData-nøkkelen eller RateBandTierPriceData-nøkkelen fra inndata-JSON-filen og stempler den til Asset.PricingLogData__c-feltet.

  5. Henter ProductId fra planen og stempler Asset.Product2Id = plan.Product2Id__c.

  6. Oppretter følgende relasjoner:

    Aktiva

    Asset.EffectiveDate__c = Contract.StartDate eller EffectiveStart i inndata-JSON-filen.

    Asset.ExpirationDate__c = Contract.EndDate eller EffectiveEnd i inndata-JSON-filen.

    Asset.BenefitPlanId__c = Plan.Id

  7. Tjenesten beregner Asset.Term__c basert på Contract.ContractTerm:

    Aktiva

    ContractTerm = 12, Asset.Term__c = Årlig.

    ContractTerm = 6, Asset.Term__c = Halvårlig

    ContractTerm = 1, Aktivum.Term__c = Månedlig

    ContractTerm = En hvilken som helst annen verdi, Asset.Term__c = Custom.

  8. Henter Price-nøkkelen fra inndata-JSON-filen og oppretter disse relasjonene:

    Aktiva

    Asset.StandardPremium__c = Pris

    Asset.TotalPremiumTerm__c = proporsjonal pris basert på gyldighetsdatoen angitt i #7

    Asset.AnnualPremium__c = Price/ContractTerm*12

    Asset.MonthlyPremium__c = Price/ContractTerm

  9. Knytter avhengige til policyene som Held Product Relationships (AssetPartyRelationship__c). Når du oppretter aktivumpartsrelasjon for avhengige, må partyId oppgis i dependents-noden.

    Merk
    Merk

    En annen Forsikringspolisedeltaker (InsurancePolicyParticipant) opprettes for det primære medlemmet, men ingen post opprettes for det primære medlemmet i Held Product Relationship (AssetPartyRelationship__c).

  10. Oppretter polisedekninger (AssetCoverage__c) for dekningselementene.

Eksterne alternativer

Alternativ

Beskrivelse

inputKey

Obligatorisk.

Nøkkelen til en forhåndstransformert JSON-struktur som inneholder informasjon tjenesten trenger.

memberPlanIntegrationProcedure

Starter en tilpasset integreringsprosedyre basert på brukerkonfigurasjonen. Når du bruker dette alternativet, overføres alle alternativer for tjenesten til den tilpassede integrasjonsprosedyren og alle policy-ID-er som inndata for å integreres med objektet, for eksempel forsikringspoliseobjektet med medlemsplanen.

Inndata-JSON

Tjenesten tar JSON-koden som er angitt av inputKey. I dette eksemplet er inputKey = enrollmentJson.

Tjenesten krever følgende:

  • contractId: <verdi>

  • Dependents: <liste over kart for contactId og relationshipType av de avhengige>.

    Merk
    Merk

    Når du bruker enrollPlans-tjenesten til å generere Asset og AssetPartyRelationship, må tilhørende partyId oppgis hvis avhengige overføres i enrollmentJson.

  • Produkt-JSON-strukturmodell inkludert attributter og underordnede produkter

Denne JSON-koden for inndata kan ha enten en liste over objekter eller et kart fordi tjenesten støtter opprettelse av én policy eller flere policyer.

For å støtte Personkonto-ID er primaryMemberId en ny node lagt til i enrollmentJson. Den støtter både Personkonto-ID og ContactId for bakoverkompatibilitet. Basert på id-typen primaryMemberId fungerer tjenestene som beskrevet i tjenestebeskrivelsen.

På samme måte legges memberId-node til for avhengige. Den støtter både personkonto-ID og kontakt-ID for bakoverkompatibilitet. Basert på id-typen memberId fungerer tjenestene som beskrevet i tjenestebeskrivelsen.

I dette eksemplet inkluderer JSON-koden tre policyer.

{
   "enrollmentJson":[
      {
         "primaryMemberContactId":"0035w00003HjCFcAAN",
                  "primaryMemberId" : "0015e00000DvQ89AAF"
         "contractId":"8005w000001mT4MAAU",
         "dependents":{
            "IsSpouse":false,
            "contactId":"0035w00003HhfXPAAZ",
            "memberId": "0015e00000RvO24IAJ"
            "LastName":"Jones",
            "FirstName":"Jean",
            "relationshipType":"Child"
         },
         "Id":"01t5w00000EZUtMAAX",
         "Name":"HMO 500",
         "Family":"Other",
         "ProductCode":"SG-HMO-500",
         "Type__c":"Medical",
         "SubType__c":"HMO",
         "RecordTypeName__c":"Product",
         "IsConfigurable__c":false,
         "PricingFormula__c":"GroupPremium",
         "productId":"01t5w00000EZUtMAAX",
         "currencyCode":"USD",
         "currencySymbol":"$",
         "Price":300,
         "planId":"a2S5w0000034B2cEAE",
         "planRateType":"Age",
         "attributeCategories":{
            "totalSize":1,
            "records":[
               {
                  "Code__c":"SG_Medical",
                  "Name":"SG Medical",
                  "id":"a085w00000uA9v6AAC",
                  "productAttributes":{
                     "totalSize":1,
                     "records":[
                        {
                           "rulesCode":"SG-HMO-500.SG_annualDed_INN",
                           "productCode":"SG-HMO-500",
                           "code":"SG_annualDed_INN",
                           "dataType":"text",
                           "inputType":"text",
                           "multiselect":false,
                           "required":false,
                           "readonly":true,
                           "disabled":true,
                           "filterable":true,
                           "attributeId":"a095w000010zIYkAAM",
                           "label":"Deductible",
                           "hasRules":false,
                           "hidden":false,
                           "cloneable":true,
                           "isNotTranslatable":false,
                           "values":[
                              {
                                 "readonly":true,
                                 "disabled":true
                              }
                           ],
                           "userValues":"$500 / $1,000",
                           "attributeGroupType":"In-Network"
                        }
                     ]
                  }
               }
            ]
         },
         "childProducts":{
            "totalSize":1,
            "records":[
               {
                  "Id":"01t5w00000EZUA7AAP",
                  "Name":"Emergency Services",
                  "ProductCode":"SG_Emerg_Serv",
                  "Type__c":"Medical",
                  "IsRecommended__c":false,
                  "RecordTypeName__c":"CoverageSpec",
                  "IsConfigurable__c":true,
                  "productId":"01t5w00000EZUA7AAP",
                  "pciId":"a3A5w000000Ib6fEAC",
                  "isOptional":false,
                  "isSelected":true,
                  "attributeCategories":{
                     "totalSize":1,
                     "records":[
                        {
                           "Code__c":"SG_Medical",
                           "Name":"SG Medical",
                           "id":"a085w00000uA9v6AAC",
                           "productAttributes":{
                              "totalSize":1,
                              "records":[
                                 {
                                    "code":"SG_urgentCareFacility_OON",
                                    "dataType":"text",
                                    "inputType":"dropdown",
                                    "multiselect":false,
                                    "required":false,
                                    "readonly":false,
                                    "disabled":false,
                                    "filterable":true,
                                    "attributeId":"a095w000010zIZRAA2",
                                    "label":"Urgent Care Facility",
                                    "hasRules":false,
                                    "hidden":false,
                                    "cloneable":true,
                                    "isNotTranslatable":false,
                                    "values":[
                                       {
                                          "id":"0",
                                          "label":"Not Covered",
                                          "readonly":false,
                                          "disabled":false,
                                          "value":"Not Covered"
                                       },
                                       {
                                          "id":"1",
                                          "label":"40% Coins After Ded",
                                          "readonly":false,
                                          "disabled":false,
                                          "value":"40% Coins After Ded"
                                       },
                                       {
                                          "id":"2",
                                          "label":"50% Coins After Ded",
                                          "readonly":false,
                                          "disabled":false,
                                          "value":"50% Coins After Ded"
                                       },
                                       {
                                          "id":"3",
                                          "label":"30% Coins After Ded",
                                          "readonly":false,
                                          "disabled":false,
                                          "value":"30% Coins After Ded"
                                       }
                                    ],
                                    "userValues":"Not Covered",
                                    "attributeGroupType":"Out-Of-Network"
                                 }
                              ]
                           }
                        }
                     ]
                  }
               }
            ]
         }
      }
   ]
}

Utdata-JSON

Listen over policyer opprettet av tjenesten.

assetIds

InsurancePolicy-post-ID-er for Forsikringspolise-poster.

Aktivumpost-ID-er for Aktiva-poster.

policyIds

InsurancePolicy-post-ID-er. Genereres bare for Forsikringspolise-poster.

{
   "assetIds":[
      {
         "assetId":"0036F00002Q4wlSQAR"
      },
      {
         "assetId":"0036F00002Q4wlSQAQ"
      }
   ],
   "policyIds":[
      "0036F00002Q4wlSQAR",
      "0036F00002Q4wlSQAQ"
   ]
}
 
Laster
Salesforce Help | Article