Skip to content

muzammilibm/claims-reporting-ui

Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

32 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ₯ Healthcare Claims Reporting Pipeline

Problem: Auto-Adjudication (AA) reporting is manual, slow, and decision-heavy.

This repository showcases a Streamlit-based UI that automates claims data processing and turns a fragmented AA reporting workflow into a streamlined, end-to-end pipelineβ€”from raw mainframe data to shareable, email-ready reports.


Problem Statement

The existing AA reporting process is fragmented and labor-intensive:

  • Manual data handling β€” Teams extract JCL data into Excel
  • Slow processing β€” Requires cleanup, validation, and human decision-making
  • Error-prone β€” Inconsistent schemas, manual transformations, and duplicate efforts
  • Poor visibility β€” Stakeholders wait for Excel reports and email handoffs
  • Siloed storage β€” Results scattered across SharePoint, email archives, and local drives

Current Workflow (Before)

JCL/Mainframe Extract β†’ Manual Excel Cleanup β†’ Validation β†’ Email β†’ SharePoint Storage

❌ Pain points:

  • Time-consuming manual steps
  • High risk of human error
  • Delayed insights and reporting
  • No audit trail or consistency

Solution (After)

CSV/TXT Upload β†’ Ingest β†’ Validate β†’ Transform β†’ Aggregate β†’ Export β†’ Email Preview

βœ… Key improvements:

  • Centralized Streamlit UI β€” Single point for file upload and pipeline execution
  • Automated data pipeline β€” Ingest, validate, transform, and aggregate in seconds
  • Intelligent AA transformation β€” Business logic to process claims and compute metrics
  • Real-time dashboards β€” View overall AA rate, segment breakdowns, and key metrics
  • Email automation β€” Generate HTML-ready reports with one click
  • Historical tracking β€” Automatically appends daily AA metrics to historical datasets (westmarket.xlsx) for trend analysis
  • Configuration-driven β€” Easy customization via config.yaml for recipients, paths, and templates

Impact

Metric Improvement
Processing Time ⏱️ From hours to seconds
Manual Effort πŸ“‰ ~80% reduction in Excel work
Data Quality βœ… Automated validation eliminates human error
Stakeholder Visibility πŸ“Š Real-time metrics and summaries
Consistency πŸ”„ Repeatable, audit-ready pipeline

Demo

Include screenshots or a GIF here to show the UI flow and output.

  • Screenshot: input upload screen input upload screen
  • Screenshot: AA metric summary AA metric summary
  • GIF: report preview and email-ready output 1777176277842

Getting Started

Prerequisites

  • Python 3.8+
  • pip or conda package manager

1. Clone the Repository

git clone https://github.com/muzammil-13/claims-reporting-ui.git
cd claims-reporting-ui

2. Create a Virtual Environment (Recommended)

python -m venv venv

# Activate virtual environment
# On Windows:
venv\Scripts\activate
# On macOS/Linux:
source venv/bin/activate

3. Install Dependencies

pip install -r requirements.txt

4. Configure the Pipeline (Optional)

Edit config.yaml to customize:

  • Input and output directories
  • Email recipients and sender
  • Report subject templates

5. Start the Streamlit App

streamlit run app.py

The app will open in your browser at http://localhost:8501


Project Structure

claims-reporting-ui/
β”‚
β”œβ”€β”€ app.py                    # 🎨 Streamlit UI entry point
β”œβ”€β”€ config.yaml               # βš™οΈ  Configuration (paths, email, templates)
β”‚
β”œβ”€β”€ pipeline/                 # πŸ”„ Core data pipeline
β”‚   β”œβ”€β”€ ingest.py            # Load CSV/TXT from mainframe exports
β”‚   β”œβ”€β”€ validate.py          # Schema validation and data quality checks
β”‚   β”œβ”€β”€ transform.py         # AA business logic and claims processing
β”‚   β”œβ”€β”€ aggregate.py         # Compute metrics (AA rate, LOB summaries)
β”‚   └── export.py            # Generate Excel reports (YTD) and update historical datasets (Westmarket)
β”‚
β”œβ”€β”€ automation/              # πŸ“¬ Reporting automation
β”‚   └── email.py             # Generate HTML email content (Outlook/SMTP ready)
β”‚
β”œβ”€β”€ data/
β”‚   β”œβ”€β”€ input/               # Raw mainframe extracts (CSV/TXT)
β”‚   └── output/              # Generated reports and exports
β”‚
β”œβ”€β”€ requirements.txt         # Python dependencies
└── README.md               # This file

Technologies Used

Component Technology
UI Framework Streamlit 1.20+
Data Processing Pandas 1.5+
Configuration PyYAML 6.0
Excel Support OpenPyXL 3.1+
Formatting Tabulate 0.9+

How It Works

User Flow

  1. Upload β€” User uploads raw claims data (CSV/TXT from mainframe)
  2. Preview β€” Pipeline shows data preview for validation
  3. Execute β€” Click "Run Pipeline" to trigger automated workflow
  4. Process β€”
    • βœ… Data Ingested (load into DataFrame)
    • βœ… Data Validated (schema checks, required fields)
    • βœ… Data Transformed (apply AA business logic)
    • βœ… Metrics Aggregated (calculate AA rates, LOB summaries)
    • βœ… Reports Generated (export YTD reports with Raw Data & Segment Summary sheets, and update historical trends)
  5. Review β€” See AA rate, segment summaries, and key metrics
  6. Share β€” Generate HTML email preview or send directly

Configuration (config.yaml)

paths:
  input_dir: "data/input"      # Where uploads are stored
  output_dir: "data/output"    # Where reports are generated
  
email:
  sender: "pipeline@example.com"
  recipients: ["stakeholders@example.com"]
  subject_template: "Daily Healthcare Claims AA Report - {date}"

Future Enhancements

  • πŸ”— SharePoint API integration β€” Automated report publishing to SharePoint
  • πŸ“ˆ Interactive dashboards β€” Charts for AA trends over time
  • ⏰ Scheduler support β€” Cron / Apache Airflow integration for automated runs
  • πŸ” Backend authentication β€” Real database integration for secure data access
  • πŸ“„ PDF export β€” Direct PDF generation for archival
  • πŸ§ͺ Unit testing β€” Comprehensive test coverage for pipeline stages
  • 🐳 Containerization β€” Docker support for easy deployment
  • πŸ“Š Advanced analytics β€” Drill-down analysis by line of business, claim type, etc.

Learning & Technical Highlights

This project demonstrates:

  • Enterprise workflow automation β€” Translating manual processes into scalable pipelines
  • Data engineering in production β€” Ingest β†’ validate β†’ transform β†’ aggregate β†’ export
  • Rapid prototyping with Streamlit β€” Building functional UIs without frontend overhead
  • Configuration-driven design β€” Easy customization without code changes
  • Error handling & validation β€” Robust schema validation and graceful failure modes
  • Business logic implementation β€” Real-world AA calculation rules and metrics

πŸ™Œ About This Project

  • Built during: Internship at IBM Consulting Client Innovation Center
  • Domain: Healthcare Claims Processing & Auto-Adjudication (AA) Reporting
  • Inspired by: Real-world challenges in enterprise claims processing workflows
  • Status: πŸš€ Active and ready for customization

πŸš€ Quick Reference

Task Command
Install dependencies pip install -r requirements.txt
Run the app streamlit run app.py
View config options cat config.yaml
Access UI http://localhost:8501

πŸ“¬ Questions or Collaboration?

If you're working on similar automation, data pipeline, or healthcare integration projects, feel free to reach out!


⭐ If you found this useful, consider giving it a star!

Made with ❀️ for healthcare data automation.

About

Streamlit ui for Automating Auto-Adjudication (AA) Reporting from Raw Claims Data to Shareable Insights

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Python 100.0%