Express Enroll
Express Enroll API directly exposes enrollment portion of MorningstarĀ® Retirement ManagerSM functionality enabling clients to integrate real time participant enrollment into their participant interfaces, internal systems and operational processes. API returns fund allocation recommendations
Overview
Input Parameters
Required Parameters
The following parameters are mandatory for successful enrollment:
- Client Id: Your organization identifier
- Participant XML: RM Participant XML data
- Enrollment info: Enrollment information object
| Parameter | Required | Description |
|---|---|---|
| Client Id | required | Your organization identifier |
| Participant XML | required | RM Participant XML data |
| Retirement Age | optional | Retirement age |
| Savings rates | optional | Savings rate details |
| Salary | optional | Salary details |
| Pensions | optional | Pension information |
| Exclude Social Security | optional | Whether to exclude Social Security |
| DOB | optional | Date of birth |
| Gender | optional | Gender |
| State Of Residence | optional | State of residence |
| Desired Retirement Income | optional | Desired retirement income |
| Enrollment info | required | Enrollment information |
| Forecast type | optional | Type of forecast |
| Transaction HTTP Endpoint | optional | Transaction endpoint details |
Output (Success)
| Field | Description |
|---|---|
| Enrollment Result | Details about the enrollment operation |
| Strategy | Investment strategy recommendations |
| Transaction XML | Transaction data |
Output (Error)
| Field | Description |
|---|---|
| Error Object | Error details and messages |
API Endpoint
Invoke Express Enroll
UAT
POST https://api-uat.morningstar.com/rm/v1/express/enroll
Production
POST https://api.morningstar.com/rm/v1/express/enroll
Request Headers
Required Headers
Content-Type: application/json
Authorization: Bearer {access_token}
Sample Requests & Responses
Request Payload
{
"ClientId": "ABCD",
"DesiredRetirementIncome": {
"Type": "0",
"Value": "100"
},
"DOB": "2020-11-04T18:44:12.301Z",
"EnrollmentInfo": [
{
"PlanId": "planId",
"PlanType": "Plan Type",
"ServiceOption": "ManagedAccounts"
}
],
"ExcludeSocialSecurity": true,
"Gender": "F",
"ParticipantXML": "RM Participant XML",
"PensionTypes": [
{
"Amount": 13000,
"Cola": true,
"IsFromRecordKeeper": true,
"StartYear": "2021"
}
],
"RetirementAge": 71,
"Salary": 75000,
"SavingsRateDetails": [
{
"PlanId": "XYZ_PLAN",
"SavingsType": "0",
"Value": "0"
}
],
"StateOfResidence": "IL",
"ForecastType":"Revised",
"TransactionHTTPEndpoint":
{
"TransURL": "https://www.test.com/gettransaction",
"SID": "sdhgjkjhgfdgujytrfrthwfwdfter",
"Cookie": "wesrtdfgyuhjkftdtyg"
}
}
Success Response
{
"EnrollmentResult": {
"Success": true,
"ErrorMessage": "",
"TransactionId": "123",
"ClientTransactionId": "456",
"RKTransactionId": "789",
"RKTransactionMessage": "",
"TransactionState": "",
"TransactionReturnCode": "",
"TransactionData": "",
"HtmlTransactionConfirmation": true,
"ClientId": "ABCD",
"AnnuityPurchaseRequest": null
},
"Strategy":
{
"StrategyOutput": [
{
"InvestmentSelections": {
"--UNIQUEIDENTIFIER--": []
},
"AssetMixAdvisableAccounts": {
"--UNIQUEIDENTIFIER--": {
"Asset": [
{
"AssetClass": "LargeCap",
"Weight": "20"
}
],
"RiskLevel": "3"
}
},
"AssetMixHousehold": {
"Asset": [
{
"AssetClass": "LargeCap",
"Weight": "31"
}
],
"RiskLevel": "3"
},
"AssetMixOverall": {
"Asset": [],
"RiskLevel": ""
},
"AssetMixOther": [
{
"AssetMix": {
"Asset": [
{
"AssetClass": "LargeCap",
"Weight": "24.724200"
}
],
"RiskLevel": "3"
},
"Id": "RMDefaultTaxableAccount"
}
],
"BalanceHistory": {
"--UNIQUEIDENTIFIER--": []
},
"HistoricalScenarios": [
{
"Balance": [
{
"Year": "2025",
"Month": "2",
"Value": 0.00,
"BenchmarkValue": 0.0000
},
{
"Year": "2025",
"Month": "3",
"Value": 0.0000,
"BenchmarkValue": 0.00000000
}
],
"Name": "Name",
"BenchmarkName": "BName"
}
],
"Percentile": [
{
"IncomeSources": [
{
"Values": [
{
"Age": "50",
"Value": 0.0
}
],
"Type": "AccountIncome",
"Account": "RMDefaultTaxableAccount",
"Investor": "Participant",
"ContributionType": "PostTax",
"CatchupType": "Type"
}
],
"TotalWealth": {
"Values": [
{
"Age": "50",
"Value": 0.0
}
]
},
"OverallEndingBalance": {
"Values": [
{
"Age": "50",
"Value": 0.0
}
]
},
"Taxes": {
"Values": [
{
"Age": "50",
"Value": 0.0
}
]
},
"RetirementIncomeAtVariousRetirementAges": [],
"Percentage": 50.0,
"Label": "Strong Market",
"SustainableRetirementIncome": 0.0,
"AccountBalance": [
{
"Values": [
{
"Age": "50",
"Value": 0.0
}
],
"Type": "BeginingBalance",
"Account": "RMDefaultTaxableAccount",
"Investor": "Participant",
"ContributionType": "PostTax",
"CatchupType": "Type"
},
{
"Values": [
{
"Age": "50",
"Value": 0.0
}
],
"Type": "BeginingBalance",
"Account": "--UNIQUEIDENTIFIER--",
"Investor": "Participant",
"ContributionType": "PostTax",
"CatchupType": "Type"
}
]
}
],
"SavingsRateDetail": [
{
"SavingsComponent": [
{
"PlanId": "ID",
"Type": "Pretax",
"Value": 0.0,
"IsRoth": false,
"NumberOfYears": 0,
"DollarAmount": 0.0
}
],
"Account": "--UNIQUEIDENTIFIER--"
}
],
"AccountSavingsRateDetail": [
{
"SavingsComponent": [
{
"PlanId": "ID",
"Type": "Pretax",
"Value": 0.0,
"IsRoth": false,
"NumberOfYears": 0,
"DollarAmount": 0.0
}
],
"Account": "--UNIQUEIDENTIFIER--"
}
],
"CSSellOffData": [],
"StrategyType": "Type",
"Rating": "3",
"RiskLevel": "3",
"RetirementAge": "65",
"RetirementSpouse": "",
"SavingsRate": 0.0,
"NetRetirementIncomeGoalParticipant": 0.0,
"NetRetirementIncomeGoal": 0.0,
"SocialSecurity": [
{
"Age": "67",
"FullBenefitAge": 67,
"Amount": 0.0,
"GrossAmount": 0.0,
"FullBenefitAmount": 0.0,
"Account": "--UNIQUEIDENTIFIER--",
"Investor": "Participant"
}
],
"ModelPortfolioIndex": 4,
"SavingsRateTaxableOverflow": {
"Value": 0.0,
"DollarAmount": 0.0
},
"SavingsRateOverall": {
"Value": 0.0,
"DollarAmount": 0.0
},
"RisOutput": {
"AnnuityType": "GMWB",
"Recommendations": [
{
"AnnuityType": "GMWB",
"LoweringAnnuitizationAdvisable": true,
"Percentage": 0.12064,
"Amount": 0.0
}
]
}
}
],
"AccountMappings": [
{
"AccountId": "UNIQUEIDENTIFIER",
"PlanId": "planId",
"PlanType": "Plan Type"
}
],
} ,
"Transaction": "ENCODED TRANSACTION XML"
}
Data Tables
Input Data Points
Total: 0Required: 0Optional: 0Showing: 0
Parameter | Type | Required | Description | Example |
|---|
No parameters found
No parameters found
Output Data Points
Total: 0Showing: 0
Parameter | Type | Description | Example |
|---|
No parameters found
No parameters found