The current incentive model of a healthcare insurance company is to maximize profits:
Patient Premiums - Operating expenses - Claims paid = Profits
This creates maligned incentives. Open/permissionless finance is a promising use-case for a public blockchain. In the case of insurance, it is possible to realign incentives through a decentralized co-operative. Our goal is to redistribute the profits of an insurance company back to patients and physicians and undercut the centralized healthcare insurance company business model.
What it does
Patients create a policy by depositing ETH into a "pool contract". When a physician treats a patient, they request reimbursement from the "pool contract". Because the patient's policy exists on-chain, we can programmatically determine if the patient has coverage for the treatment rendered by the physician.
There exists the possibility of collusion between a patient and a physician to siphon funds out of the "pool contract". For this reason, we introduce the concept of "treatment points" which are earned in a 1:1 ratio alongside reimbursement for treating patients (Total existing treatment tokens = Total Reimbursements Issued). Treatment points give physicians fractional ownership of any balance remaining in the "pool contract" at the end of a billing cycle. This symmetrically rewards physicians who treat patients and gives every physician holding "treatment points" the incentive to act as a gatekeeper against fraudulent withdrawal of funds from the "pool contract". When a physician requests reimbursement, this request must be signed-off by an auditing doctor who holds "treatment points".
On top of this, we have layered a staking/slashing incentive game that provides short-term rewards for both the treating physician and an auditing doctor to behave honestly within the system.
How I built it
Solidity, Truffle, Redux, React
Challenges I ran into
- Time constraints implementing viable lock/reveal voting functionality that slashes voters for not revealing
- Generating trustless randomness on-chain to minimize possibility of collusion
Accomplishments that I'm proud of
- Using redux to create a functional state-based UI
- Deducing the treatment point incentive model
What I learned
- Upgradeable contracts
- Creating our own Solidity Libraries
- Game Theory/Mechanism Design for P2P arbitration
What's next for OpenCoverage
- Distribute a percent of profits as refunds to patients based on policy size.
- Build time features around billing cycles such that doctors have a defined window to claim their fractional ownership of the co-operative's profits.
- Build out more expansive policies that map to industry billing standards (ICD-10 codes & CPT codes). Starting point would be disaster coverage (critical illness, level I trauma, surgical emergencies).
- Fully implement and formalize the incentives behind the arbitration system.
- Support uploading and encrypting of standardized claims forms (CMS-1490S). All US hospitals submit these independent of the insurance carrier.
- Random selection of auditing doctors (based on % ownership of "treatment points") to minimize collusion.
- Pilot model with an initially centrally managed pool of doctors and patients.