Using temporal data in member snapshots
In member snapshots, each coverage has anenrolled_members list. Each enrolled member can include effective_start_date, effective_end_date, and optionally latest_change_effective_date; these dates determine the individual enrollment timeline for that member.
The carrier_config on a coverage is assigned an effective date based on the coverage’s enrolled_members in this order:
- The system looks for the first enrolled member in list order where
individual_type == "employee"- If that employee has
latest_change_effective_date, that date is used - Otherwise, that employee’s
effective_start_dateis used
- If that employee has
- If there is no employee in
enrolled_members, the system uses the first enrolled member in the list, which should be a dependent.- If that dependent has
latest_change_effective_date, that date is used - Otherwise, that dependent’s
effective_start_dateis used
- If that dependent has
enrolled_members is used to determine the carrier_config effective date.
To represent changes during the year, provide separate effective periods. Coverage level fields such as carrier_config and cobra_details, and enrolled member fields such as volume, can then produce distinct temporal records.
Important concepts
effective_start_date- The original date that a member started coverage on a plan. When members are terminated and rehired, they get new effective start dates. This can differ from some other industry definitions, which define a new start any time benefits change.effective_end_date- The end date of coverage on a plan. Unless the coverage itself is ending, this should be set to datemax (9999-12-31). Read more here.effective_date- A query parameter for some endpoints that allow the user to specify the relative date for which to see the state of a record.latest_change_effective_date- The effective date of the temporal data contained within the coverage block. See below for example usage.
Example scenarios
Mid-year benefit class change
If an employee has a QLE on June 1st that changes their benefit class from A to B for a coverage that’s active from January 1st, there are two ways to represent this in the member snapshot payload. Preferred method: one coverage block with alatest_change_effective_date
Add a latest_change_effective_date to the enrolled member, and pass the new benefit class value in the carrier_config section.
Example Request
effective_dates
Edit the effective dates for each enrolled member in the original coverage block to January 1st through May 31st and leave the original carrier_config in place.
Then add a second coverage block with an effective date of June 1st, with the new benefit class defined in the associated carrier_config section.
This method is not recommended because specifying the previous state (benefit class A) can cause Noyo to attempt to fulfill that previous state at the carrier and thus run afoul of the carrier’s retro rules. For this example scenario, the user likely just wants to change the benefit class to B starting 6/1 and is not concerned with the earlier state.
Example Request
Open enrollment election
During open enrollment, employees may enroll in new coverages with future effective dates while still being enrolled in current-year coverage. To express this in a member snapshot, you should ensure that any coverages that are discontinuing have aneffective_end_date set. Then add a new coverage block for each new enrollment and set the effective_start_date to the day after the current coverage ends.
Note that this specific scenario is often considered a “plan switch.”
Request
