Formal Sector Modules
Digital Square D1 proposal: Support for Formal Sector schemes and Configurable Claims Workflow in openIMIS
Teams:
Swiss TPH (@Patrick Delcroix @Dragos Dobre @Siddharth Srivastava)
SolDevelo (@Kamil Madej (Deactivated) @Damian Borowiecki (Deactivated), @Beata Komorowska (Deactivated) , @Rafał Stencel (Deactivated) , @Seweryn Niedzielski , @Joanna Bebak (Deactivated) )
Concepts and interaction with openIMIS
The goal of this development is to reuse the openIMIS people and family registration, claim management and the logic to extend the coverage to the family members.
This module will add a new enrollment methods, the Group enrollment: A Policy Holder (a enterprise in case on Nepal) will take policy on the behalf of its employee and their famillies.
the relationships will be:
Every period (monthly in case of Nepal), a contract will be created between the policy holder and each enterprise.
The periodicity will depend on the contribution plan and therefore will be configuration
The same insurance product could have different contribution plan therefore different contribution periodicity
Every covered employee will be mentioned in the contract along with the list of insurance product that will be part of their coverage.
once the contract validated and paid, the policy of the emöployee and their family will be activated for the period covered by the contract
the period of the contract doesn’t have to be the period of the policy: this will enable having coverage limits (max amount, max surgery …) that could be shared for several periods
In case of a insuree have multiple employers, the system will activate only one policy per product.
insuree should be able to move between the formal and informal sector
Objectives
This project aims to develop the "Formal Sector" features requested by institutions in charge of developing health financing schemes in Nepal, in particular the management of enrolment of the insuree as part of an insurance group.
Here are the high-level use cases to be covered by this design:
Manage group insurance
UC1 - The Scheme Administrator wants to manage the policy holder insurees and their policy entitlement. (includes UC2 from the proposal)
UC3 - The Scheme Administrator wants to manage the policy holder contract.
UC4 - The Scheme Administrator wants to manage the policy holder contract payment.
UC5 - The Scheme Administrator wants policy holders insuree policies covered by a contract to auto activate based on policy holders contract payment.
UC7 - The Scheme Administrator wants to manage policy holders.
Contribution Plan and Contribution Plans Bundle to manage the Policy Value
UC8 - The Scheme Administrator wants to add a Contribution plan (pricing rules linked to an insurance product).
UC9 - The Scheme Administrator wants to be able to configure the calculation parameters in the Contribution plan.
UC10 - The Scheme Administrator wants to add a Contribution Plan Bundle.
UC11 - The Scheme Administrator wants to enable some Contribution Plan Bundles per policy holder.
Policy holder Portal
UC12 - The policy holder wants to manage its policy holder insurees and their policy entitlement.
UC13 - Policy holder wants to manage its users.
UC14 - Policy holder wants to manage its contracts.
Not Functional
UC15 – Administrator wants to assign group insurance authorities (rights) to openimis role
UC16 – Manage the calculations
UC17 – add “nepal” calculations for policy value on income and contract rejection when important change are detected
Modules
The following module are part of the Formal Sector scheme management:
General topics (compitation accross modules)
Authorities
To manage the group insurance several authorities will be added, the existing authorities have a "*" :
PolicyHolder
C/R/U/D (4 authorities)
Portal R
PolicyHolderInsuree
C/R/U/D (4 authorities)
Approve (TBC)
Portal C/R/U/D (4 authorities)
PolicyHolderContract
C/R/U/D (4 authorities)
Submit
Approve/ask for change
Amend
Portal Submit
Portal Amend
PolicyHolderContractDetails
C/R/U/D (4 authorities)
Approve
Portal C/R/U/D (4 authorities)
PolicyHolderUser
C/R/U/D (4 authorities)
Portal C/R/U/D (4 authorities)
Payment
C*/R*/U*/D*(4 authorities)
Submit (TBC)
Validate
CreditNote
ContributionPlanBundle
C/R/U/D(4 authorities)
replace
Portal R
ContributionPlan
C/R/U/D(4 authorities)
repalce
Portal R
Profile
C/R/U/D(4 authorities)
Duplicate
Roles
To manage the group insurance several roles will be added, the existing roles have a "*" :
SchemeClerk( Clerck)
PolicyHolder*
C/R/U
PolicyHolderInsuree
C/R/U/D
Approve (TBC)
PolicyHolderUser
C/R/U/D
PolicyHolderContract
C/R/U
Submit
Approve
ContributionPlanBundle
R
ContributionPlan
R
PolicyHolderContributionPlan
R
SchemeAdmin*
PolicyHolder
C/R/U/D
PolicyHolderInsuree
C/R/U/D
Approve (TBC)
PolicyHolderUser
C/R/U/D
PolicyHolderContract
C/R/U/D
Submit
Approve
ContributionPlanBundle
C/R/U/D
replace
ContributionPlan
C/R/U/D
replace
PolicyHolderContributionPlan
C/R/U/D
PolicyHolderClerk
PolicyHolderInsuree
C/R/U
PolicyHolderContract
R/U
Submit
ContributionPlanBundle
R
ContributionPlan
R
payment
submits
accountant*
Payment
Validate
Database Versioning
The entities will have different versioning in place:
Entity related to a specific date (contract …) no versioning will be in place only logging/audition, the code or reference will be used to differentiate them on a business level.
Configuration item (Product, plans, bundle, calculation, policy holder, policyholders insuree): those could be replaced by another version at a given time therefore no CI could have the same code and overlapping validity dates; they will have
DateValidFrom (date)
DateValidTo (date)
isDeleted
Code (this stays the same across version)
Sub tables won't have any versioning because a new version of the parent table will create a new row in the sub tables.
Drop down list
The configuration of the the droip down list won’t be on the database but on the module configuration, in case a configuration is required across al module, the code will be updated to accept this configuration
Requirement Traceability Matrix
Scope | platform | # | sub | details | steps | SOP/MODULE | Requirement closing date | ETA |
general | any | UC1 |
| The Scheme Administrator wants to manage the policy holder insurees and their policy entitlement. (includes UC2 from the proposal) | SOP#001b | 30/10/20 | 28/02/21 | |
general | any | UC3 |
| The Scheme Administrator wants to manage the policy holder contract. | SOP#001a | 31/12/20 | 28/02/21 | |
general | any | UC4 |
| The Scheme Administrator wants to manage the policy holder contract payment. |
| 31/12/20 | 28/02/21 | |
general | any | UC5 |
| The Scheme Administrator wants policy holders insuree policies covered by a contract to auto activate based on policy holders contract payment. |
| 31/12/20 | 28/02/21 | |
general | any | UC7 |
| The Scheme Administrator wants to manage policy holders. |
| 30/10/20 | 31/12/20 | |
general | any | UC8 |
| The Scheme Administrator wants to add a Contribution plan (pricing rules linked to an insurance product). |
| 30/10/20 | 31/12/20 | |
general | any | UC9 |
| The Scheme Administrator wants to be able to configure the calculation parameters in the Contribution plan. |
| 30/10/20 | 31/12/20 | |
general | any | UC10 |
| The Scheme Administrator wants to add a Contribution Plan Bundle. |
| 30/10/20 | 31/12/20 | |
general | any | UC11 |
| The Scheme Administrator wants to enable some Contribution Plan Bundles per policy holder. |
| 30/10/20 | 31/12/20 | |
general | any | UC12 |
| The policy holder wants to manage its policy holder insurees and their policy entitlement. |
| 31/12/20 | 28/02/21 | |
general | any | UC13 |
| Policy holder wants to manage its users. |
| 31/01/21 | 28/02/21 | |
general | any | UC14 |
| Policy holder wants to manage its contracts. |
| 31/01/21 | 28/02/21 | |
general | any | UC15 |
| Administrator wants to assign group insurance authorities to openimis role |
| 31/12/20 | 28/02/21 | |
general | any | UC16 |
| Manage the calculations |
| 30/09/20 | 31/10/20 | |
calculation | backend | UC16 | 1 | add a new Calculation rule (needs to change the openimis.json). | calculation | 30/09/20 | 31/10/20 | |
calculation | webapp | UC16 | 2 | use the frontend contribution to select a calculation rule. | calculation | 30/09/20 | 31/10/20 | |
calculation | webapp | UC16 | 3 | use the fronend contribution to display the parameters required by multiple calculation for an object. | calculation | 30/09/20 | 31/10/20 | |
calculation | backend | UC16 | 4 | replace a calculation rule. | calculation | 30/09/20 | 31/10/20 | |
calculation | backend | UC16 | 5 | remove a calculation rule. | calculation | 30/09/20 | 31/10/20 | |
calculation | backend | UC17 | 1 | have a calculation rule to calculate the policy value based on policyholderInsuree income | calculation | 31/12/20 | 28/02/21 | |
calculation | backend | UC17 | 2 | have a calculation rule to set contract as to-be-reviewed when the expected value is 15% more or less than submitted | calculation | 31/12/20 | 28/02/21 | |
contribution plan bundles | webapp | UC10 | 1 | Search | contribution plan bundles List > use the search box > search, the default list will show only the active contribution plan bundle | contribution plan | 30/10/20 | 31/12/20 |
contribution plan bundles | webapp | UC10 | 2 | Add | contribution plan bundle List > 'add' contribution plan bundle > fill the details on the contribution plan bundle page > save | contribution plan | 30/10/20 | 31/12/20 |
contribution plan bundles | webapp | UC10 | 3 | Update | contribution plan bundles List > "Select" contribution plans bundles > update the details on the contribution plan bundle > save | contribution plan | 30/10/20 | 31/12/20 |
contribution plan bundles | webapp | UC10 | 4 | Delete | contribution plan bundle List > "Select" contribution plan bundle > "Delete (this role should be only available to admin, others should only archive by setting the DateValidTo) | contribution plan | 30/10/20 | 31/12/20 |
contribution plan bundles | webapp | UC10 | 5 | Replace | contribution plan bundle-> List contribution plan bundle List > "Select" contribution plan bundle > update the details on the contribution plan bundle, update the contribution plan > replace version > add ValidityTo (DateValidTo of the to-be-replace CPB will be set are the Validity from the new CPB ) | contribution plan | 30/10/20 | 31/12/20 |
contribution plan bundles | backend | UC10 | 6 | Replacing / removing propagation to policyholder contribution plan bundle | contribution plan | 30/10/20 | 31/12/20 | |
contribution plan bundles | backend | UC10 | 7 | Replacing / removing propagation to policyholder insure contribution plan bundle | contribution plan | 30/10/20 | 31/12/20 | |
contribution plan | webapp | UC8 | 1 | Search | contribution plan List > use the search box > search, the default list will show only the active contribution plan | contribution plan | 30/10/20 | 31/12/20 |
contribution plan | webapp | UC8 | 2 | Add | contribution plan List > 'add' contribution plan > fill the details on the contribution plan page > save | contribution plan | 30/10/20 | 31/12/20 |
contribution plan | webapp | UC8 | 3 | Update | contribution plan List > "Select" contribution plan > update the details on the contribution plan > save | contribution plan | 30/10/20 | 31/12/20 |
contribution plan | webapp | UC8 | 4 | Delete | contribution plan List > "Select" contribution plan > "Delete (this role should be only available to admin, others should only archive by setting the DateValidTo) | contribution plan | 30/10/20 | 31/12/20 |
contribution plan | webapp | UC8 | 5 | Replace | contribution plan bundle List > List contribution plan > "Select" contribution plan > update the details on the contribution plan > create a new version > add ValidityTo (DateValidTo of the to-be-replace CPB will be set are the Validity from the new CPB ) | contribution plan | 30/10/20 | 31/12/20 |
contribution plan | backend | UC8 | 6 | Replacing / removing propagation to contribution plan bundle | contribution plan | 30/10/20 | 31/12/20 | |
Policy holder | webapp | UC7 | 1 | Search | PolicyHolder List > use the search box > search, the default list will show only the active policy holder | Policy holder | 30/09/20 | 31/10/20 |
Policy holder | webapp | UC7 | 2 | Add | PolicyHolder List > "add" PolicyHolder > fill the details on the Policy holder page > save | Policy holder | 30/09/20 | 31/10/20 |
Policy holder | webapp | UC7 | 3 | Update | PolicyHolder List > "Select" PolicyHolder > update the details on the Policy holder page > save | Policy holder | 30/09/20 |
Did you encounter a problem or do you have a suggestion?
Please contact our Service Desk
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License. https://creativecommons.org/licenses/by-sa/4.0/