Sie befinden sich hier:
InsEnrollmentService:enrollPlans
Verwenden Sie diesen Service, um Policendatensätze (Vermögenswert- oder Versicherungspolice) für ausgewählte medizinische, zahnärztliche, visionäre und andere Pläne zu erstellen.
Methode: enrollPlans
Funktionsweise für Versicherungspolicen-Datensätze
Registrierungsservices können je nach Parameter "isFsc" und benutzerdefinierter Einstellung für "defaultIsFSCOption" entweder in die Versicherungspolice und zugehörige Objekte (Datenmodell der harmonisierten Police) oder in Vermögenswertobjekte (Vlocity-Modell) schreiben. Der Service führt Folgendes aus:
-
Der Service verwendet die Eingabe-JSON und sucht nach den Informationen zum Erstellen der Policen (Versicherungspolice).
defaultIsFSCOption
Parameter isFsc
Erstellte Policen
Wahr
NA
Datensätze für Versicherungspolicen (
InsurancePolicy)Falsch
Wahr
Datensätze für Versicherungspolicen (
InsurancePolicy)Falsch
Falsch
Vermögenswert-Datensätze (
Asset)NA
Wahr
Datensätze für Versicherungspolicen (
InsurancePolicy)NA
False
Vermögenswert-Datensätze (
Asset) -
Für den Versicherungspolice-Datensatz kann das Mitglied entweder als Kontakt oder als Personenaccount dargestellt werden. Wenn ein Mitglied (primär oder abhängig) als Account dargestellt wird und beide kontaktiert, verwendet der Service die Accountdarstellung.
-
Ordnet abhängige Personen den Policen als "Versicherungspolicenteilnehmer (
InsurancePolicyParticipants)" zu. Es wird ein weiterer Versicherungspolice-Teilnehmer (InsurancePolicyParticipant) für das primäre Mitglied erstellt.Die Datensätze für
InsurancePolicyParticipantswerden nach den folgenden Regeln ausgefüllt:Sie können für die Mitglieder in der angegebenen Zählung Personenaccounts erstellen. Unterstützen des Personenaccount-Flows:
-
Wenn "Primäres Mitglied" als "Personenaccount" dargestellt wird, wird als
Person Account Iddes Mitglieds "Account" der Richtlinie festgelegt. -
Wenn "Primäres Mitglied" als "Personenaccount" dargestellt wird, entspricht die Account-ID des primären Teilnehmers dem
InsurancePolicyParticipantdes primären Mitglieds und die Kontakt-ID des primären Teilnehmers dempersonAccount.personContactId. -
Wenn "Primäres Mitglied der abhängigen Person" als "Personenaccount" dargestellt wird, ist die Account-ID des primären Teilnehmers des
InsurancePolicyParticipantdes abhängigen Mitglieds die Personenaccount-ID des primären Mitglieds. -
Die Kontakt-ID des primären Teilnehmers des
InsurancePolicyParticipantdes abhängigen Mitglieds ist diepersonAccount.personContactIddes primären Mitglieds. -
Wenn "Abhängig" als "Personenaccount" dargestellt wird, ist "Account-ID des verbundenen Teilnehmers" des
InsurancePolicyParticipantdes abhängigen Mitglieds die Personenaccount-ID des zugehörigen Mitglieds. -
Wenn abhängig als Personenaccount dargestellt wird, ist die Kontakt-ID des verbundenen Teilnehmers des
InsurancePolicyParticipantdes abhängigen Mitglieds diepersonAccount.personContactIddes zugehörigen Mitglieds.
-
Wenn "Primäres Mitglied" als Kontakt dargestellt wird, wird als
Account.Iddes Mitglieds "Account" der Richtlinie festgelegt. -
Wenn "Primäres Mitglied" als Kontakt dargestellt wird, ist die Kontakt-ID des primären
InsurancePolicyParticipantdie Kontakt-ID des primären Mitglieds. -
Wenn "Primäres Mitglied der abhängigen Person" als "Kontakt" dargestellt wird, ist die Kontakt-ID des primären Teilnehmers der
InsurancePolicyParticipantdie Kontakt-ID des primären Mitglieds. -
Wenn abhängig als Kontakt dargestellt wird, ist die Kontakt-ID des verbundenen Teilnehmers von
InsurancePolicyParticipantdie Kontakt-ID des primären Mitglieds.
-
-
Ruft die
ProductIdaus dem Plan ab und stempeltInsurancePolicy.ProductId=plan.Product2Id. -
Erstellt die folgenden Beziehungen:
Versicherungspolice
InsurancePolicy.EffectiveDate=Contract.StartDateoder EffectiveStart in der Eingabe-JSON.InsurancePolicy.ExpirationDate=Contract.EndDateoder EffectiveEnd in der Eingabe-JSON.InsurancePolicy.ContractLineItemId__c=Plan.Id -
Der Service berechnet
InsurancePolicy.PolicyTermanhand der folgendenContract.ContractTerm:Versicherungspolice
ContractTerm = 12, InsurancePolicy.PolicyTerm= Annual.
ContractTerm = 6, InsurancePolicy.PolicyTerm= Semi-Annual
ContractTerm = 1, InsurancePolicy.PolicyTerm= Monthly
ContractTerm = Jeder andere Wert, InsurancePolicy.PolicyTerm = Custom.
-
Ruft den
Price-Schlüssel aus der Eingabe-JSON ab und erstellt die folgenden Beziehungen:Versicherungspolice
InsurancePolicy.PremiumAmount= PreisInsurancePolicy.TermPremiumAmount= anteiliger Preis basierend auf den in #5 angegebenen Datumsangaben für das Inkrafttreten.InsurancePolicy.MonthlyPremium__c= Preis/Vertragslaufzeit -
Erstellt Versicherungspolicenabdeckungen (
InsurancePolicyCoverages) für die Deckungsposten.
Funktionsweise für Vermögenswerte
-
Der Service verwendet die Eingabe-JSON und sucht nach den Informationen zum Erstellen der Richtlinien (Vermögenswerte).
defaultIsFSCOption
Parameter isFsc
Erstellte Policen
Wahr
NA
Datensätze für Versicherungspolicen (
InsurancePolicy)Falsch
Wahr
Datensätze für Versicherungspolicen (
InsurancePolicy)Falsch
Falsch
Vermögenswert-Datensätze (
Asset)NA
Wahr
Datensätze für Versicherungspolicen (
InsurancePolicy)NA
False
Vermögenswert-Datensätze (
Asset) -
Ordnet die
contactIddes primären Mitglieds der Richtlinie als Kontakt zu. -
Stempelt den
accountIddes Registrierungsvertrags als Account der Police. -
Übernimmt die
RawPriceData-Taste oder dieRateBandTierPriceData-Taste aus der Eingabe-JSON und stempelt sie in dasAsset.PricingLogData__c-Feld. -
Ruft die
ProductIdaus dem Plan ab und stempeltAsset.Product2Id=plan.Product2Id__c. -
Erstellt die folgenden Beziehungen:
Vermögenswerte
Asset.EffectiveDate__c=Contract.StartDateoder EffectiveStart in der Eingabe-JSON.Asset.ExpirationDate__c=Contract.EndDateoder EffectiveEnd in der Eingabe-JSON.Asset.BenefitPlanId__c=Plan.Id -
Der Service berechnet
Asset.Term__canhand der folgendenContract.ContractTerm:Vermögenswerte
ContractTerm = 12, Asset.Term__c = Annual.
ContractTerm = 6, Asset.Term__c = Semi-Annual
ContractTerm = 1, Asset.Term__c = Monthly
ContractTerm = Jeder andere Wert, Asset.Term__c = Custom.
-
Ruft den
Price-Schlüssel aus der Eingabe-JSON ab und erstellt die folgenden Beziehungen:Vermögenswerte
Asset.StandardPremium__c= PreisAsset.TotalPremiumTerm__c= anteiliger Preis basierend auf den in #7 angegebenen Datumsangaben für das InkrafttretenAsset.AnnualPremium__c= Preis/Vertragslaufzeit*12Asset.MonthlyPremium__c= Preis/Vertragslaufzeit -
Ordnet abhängige Elemente den Policen als "Held Product Relationships (
AssetPartyRelationship__c)" zu. Beim Erstellen der Vermögenswert-Beziehung der beteiligten Personen für abhängige Personen muss die partyId im Knoten "abhängige Personen" angegeben werden.HinweisFür das primäre Mitglied wird ein anderer Versicherungspolice-Teilnehmer (
InsurancePolicyParticipant) erstellt, für das primäre Mitglied wird jedoch kein Datensatz unter "Held Product Relationship" (Vermögenswert-Parteibeziehung__c) erstellt. -
Erstellt Policenabdeckungen (
AssetCoverage__c) für die Abdeckungselemente.
Remote-Optionen
Option |
Beschreibung |
|---|---|
|
Pflichtangabe. Der Schlüssel zu einer vortransformierten JSON-Struktur, die Informationen enthält, die der Service benötigt. |
|
Initiiert ein benutzerdefiniertes Integrationsverfahren anhand der Benutzerkonfiguration. Wenn Sie diese Option verwenden, werden alle Optionen des Service an das benutzerdefinierte Integrationsverfahren und alle Policen-IDs als Eingabe für die Integration in das Objekt übergeben, beispielsweise das Objekt "Versicherungspolice" mit dem Mitgliedsplan. |
Input JSON
Der Service verwendet die vom inputKey angegebene Eingabe-JSON. In diesem Beispiel ist inputKey = enrollmentJson.
Für den Service ist Folgendes erforderlich:
-
contractId: <value> -
Dependents: <Liste der Zuordnungen für contactId und relationshipType der Angehörigen>.HinweisWenn Sie den Service enrollPlans zum Generieren von "Asset" und "AssetPartyRelationship" verwenden, muss die entsprechende partyId angegeben werden, wenn abhängige Personen in enrollmentJson übergeben werden.
-
Produkt-JSON-Strukturmodell mit Attributen und untergeordneten Produkten
Diese Eingabe-JSON kann entweder eine Liste von Objekten oder eine Zuordnung aufweisen, da der Service das Erstellen einer Richtlinie oder mehrerer Richtlinien unterstützt.
Zur Unterstützung der Personenaccount-ID ist primaryMemberId ein neuer Knoten, der dem enrollmentJson hinzugefügt wurde. Sie unterstützt die Personenaccount-ID und ContactId für die Abwärtskompatibilität. Je nach ID-Typ der primaryMemberId funktionieren die Services wie in der Servicebeschreibung beschrieben.
Ebenso wird für abhängige Personen der memberId-Knoten hinzugefügt. Sie unterstützt die Personenaccount-ID und die Kontakt-ID für die Abwärtskompatibilität. Je nach ID-Typ der memberId funktionieren die Services wie in der Servicebeschreibung beschrieben.
In diesem Beispiel enthält die JSON drei Richtlinien.
{
"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"
}
]
}
}
]
}
}
]
}
}
]
}Ausgabe-JSON
Die Liste der vom Service erstellten Richtlinien.
assetIds |
Datensatz-IDs von InsurancePolicy für Versicherungspolice-Datensätze. Vermögenswert-Datensatz-IDs für Vermögenswert-Datensätze. |
|---|---|
policyIds |
Datensatz-IDs der InsurancePolicy. Wird nur für Versicherungspolice-Datensätze generiert. |
{
"assetIds":[
{
"assetId":"0036F00002Q4wlSQAR"
},
{
"assetId":"0036F00002Q4wlSQAQ"
}
],
"policyIds":[
"0036F00002Q4wlSQAR",
"0036F00002Q4wlSQAQ"
]
}
