Express Implement
Express Enroll Implement API directly exposes rebalance/realloaction portion of Morningstar® Retirement Manager™ functionality enabling clients to integrate real time participant rebalance into their participant interfaces, internal systems and operational processes. API returns fund allocation recommendations
Overview
Functionality will be exposed in a form of an externally accessible synchronous RESTful endpoint.
Input Parameters
Required Parameters
The following parameters are mandatory for successful implementation:
- 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 | Annual salary |
| 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 |
| Transaction HTTP Endpoint | optional | Transaction endpoint |
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
UAT
POST https://api-uat.morningstar.com/rm/v1/express/enroll/implement
Production
POST https://api.morningstar.com/rm/v1/express/enroll/implement
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