Authorization Management - Technical Specification
Prior authorization and service approval system
Purpose
The Authorization Management module handles the pre-approval of medical services for legal cases. Every appointment, service, treatment, and procedure requires an authorization number linked to the legal case. The system features an auto-approval backend service for Dates of Service (office visits) while managing complex authorization rules for specialized services. This module ensures services are approved before delivery and tracks utilization against authorized limits.
Key Concepts
| Term | Definition |
|---|---|
| Authorization | Pre-approval for medical services |
| Authorization Number | Unique identifier for each authorization |
| Auto-Approval | Automatic authorization for routine services |
| DOS (Date of Service) | Office visit dates that are auto-approved |
| Authorization Period | Valid date range for the authorization |
| Units/Visits | Number of services authorized |
| Utilization | Actual usage against authorized amount |
| Prior Authorization | Approval required before service delivery |
| Retro Authorization | Approval granted after service (exception) |
| Authorization Status | Current state (Approved, Pending, Denied, Expired) |
User Roles
| Role | Description | Permissions |
|---|---|---|
| Authorization Specialist | Manages authorization requests | Full CRUD |
| Medical Director | Reviews complex authorizations | Approve, Deny |
| Case Manager | Requests authorizations | Create, Read |
| Provider | Views authorizations | Read only |
| Claims Processor | Validates auth for claims | Read only |
| System Administrator | System configuration | All permissions |
Field Documentation - Authorization Entity
| Field Name | Type | Required | Description | Validation Rules | Related Entity |
|---|---|---|---|---|---|
| ID | String | Yes | Unique authorization ID | Auto-generated CUID | Primary Key |
| Authorization Number | String | Yes | Human-readable auth number | Format: AUTH-YYYY-XXXXXXX, unique | - |
| Legal Case | LegalCase | Yes | Associated legal case | Must be active case | LegalCase |
| Patient | Patient | Yes | Patient receiving services | Must match case patient | Patient |
| MRN | String | Yes | Member Registration Number | From legal case | - |
| Requesting Provider | ClinicalProvider | No | Provider requesting auth | Valid provider | ClinicalProvider |
| Authorized Provider | ClinicalProvider | Yes | Provider authorized to render | Must be active | ClinicalProvider |
| Authorized Vendor | Vendor | Yes | Vendor authorized | Must be active | Vendor |
| Service Location | VendorLocation | No | Specific location authorized | Valid vendor location | VendorLocation |
| Authorization Type | String | Yes | Type of authorization | Enum: Initial Eval, Follow-up, Therapy, Imaging, Surgery, DME, Other | - |
| Service Category | String | Yes | Category of service | Enum: Medical, Therapy, Diagnostic, Surgical, Equipment | - |
| CPT Codes | String | No | Specific CPT codes authorized | Comma-separated CPT codes | - |
| Service Description | Text | Yes | Description of authorized services | Max 1000 chars | - |
| Units Authorized | Integer | Yes | Number of units/visits | Positive integer (1-999) | - |
| Units Used | Integer | Yes | Units consumed | Calculated field, >= 0 | - |
| Units Remaining | Integer | Yes | Units available | Calculated: Authorized - Used | - |
| Authorization Start Date | DateTime | Yes | Authorization effective date | Cannot be before case start | - |
| Authorization End Date | DateTime | Yes | Authorization expiration | Must be after start date | - |
| Date Requested | DateTime | Yes | When auth requested | Auto-set on creation | - |
| Date Reviewed | DateTime | No | When auth reviewed | Set on status change | - |
| Reviewed By | User | No | User who reviewed | Valid user ID | User |
| Authorization Status | String | Yes | Current status | Enum: Pending, Approved, Denied, Expired, Cancelled | - |
| Status Reason | String | No | Reason for status | Required for Denied | - |
| Denial Reason | String | No | Specific denial reason | Required if Denied | - |
| Auto Approved | Boolean | Yes | Was auto-approved | Default false | - |
| Auto Approval Reason | String | No | Why auto-approved | Set by auto-approval engine | - |
| Priority | String | Yes | Request priority | Enum: Routine, Urgent, Emergency | - |
| Clinical Notes | Text | No | Clinical justification | Max 5000 chars | - |
| Diagnosis Codes | String | Yes | ICD-10 codes | Comma-separated, valid ICD-10 | - |
| Medical Necessity | Boolean | Yes | Medically necessary | Default true | - |
| TPA Review Required | Boolean | Yes | Needs TPA review | From contract rules | - |
| TPA Review Status | String | No | TPA review outcome | Enum: Pending, Approved, Denied | - |
| TPA Review Date | DateTime | No | When TPA reviewed | If TPA required | - |
| TPA Reference Number | String | No | TPA tracking number | From TPA system | - |
| Estimated Cost | Decimal | No | Estimated service cost | Positive decimal | - |
| Actual Cost | Decimal | No | Actual cost from claims | Sum of related claims | - |
| Related Authorization | Authorization | No | Parent/related auth | For extensions/modifications | Authorization |
| Extension Of | Authorization | No | Original authorization | For extensions | Authorization |
| Modified From | Authorization | No | Previous version | For modifications | Authorization |
| Retroactive | Boolean | Yes | Approved after service | Default false | - |
| Retroactive Reason | String | No | Why retro approved | Required if retroactive | - |
| Notification Sent | Boolean | Yes | Provider notified | Default false | - |
| Notification Date | DateTime | No | When notified | Set when sent | - |
| Attachments | Document[] | No | Supporting documents | Medical records, notes | Document (1:Many) |
| Created At | DateTime | Yes | Creation timestamp | Auto-generated | - |
| Updated At | DateTime | Yes | Update timestamp | Auto-updated | - |
| Created By | User | Yes | Creating user | Valid user ID | User |
| Updated By | User | Yes | Updating user | Valid user ID | User |
| Appointments | Appointment[] | No | Related appointments | - | Appointment (1:Many) |
| Claims | Claim[] | No | Related claims | - | Claim (1:Many) |
Workflows
Authorization Request Workflow
-
Request Initiation
- Select legal case
- Verify patient eligibility
- Choose service type
- Select provider/vendor
-
Service Details
- Specify CPT codes or service description
- Set number of units/visits
- Define authorization period
- Add clinical justification
-
Auto-Approval Check
- Check if service qualifies for auto-approval
- Office visits (E&M codes) → Auto-approve
- Initial evaluations → Auto-approve
- Other services → Manual review
-
Manual Review Process
- Route to appropriate reviewer
- Check medical necessity
- Verify against guidelines
- Review clinical notes
-
Decision
- Approve with conditions
- Deny with reason
- Request additional information
- Refer to Medical Director
-
Notification
- Generate authorization number
- Notify provider
- Update case record
- Send to patient if required
Auto-Approval Engine Workflow
-
Service Evaluation
IF service_type = 'Office Visit' AND provider_valid THEN
Auto-approve
ELSE IF service_type = 'Initial Evaluation' AND first_visit THEN
Auto-approve
ELSE IF cpt_code IN auto_approve_list THEN
Auto-approve
ELSE
Manual review required -
Automatic Processing
- Validate provider credentials
- Check case status
- Verify service parameters
- Generate authorization number
- Set appropriate limits
-
Audit Trail
- Log auto-approval reason
- Record decision criteria
- Track approval pattern
- Monitor for abuse
Utilization Tracking Workflow
-
Appointment Booking
- Link appointment to authorization
- Decrement available units
- Check remaining balance
- Alert if near limit
-
Claim Processing
- Match claim to authorization
- Verify DOS within auth period
- Update units used
- Calculate remaining
-
Extension Process
- Monitor utilization
- Alert at 80% usage
- Process extension request
- Link to original auth
Retroactive Authorization Workflow
-
Exception Request
- Document emergency/urgent situation
- Provide clinical justification
- Explain why prior auth not obtained
- Submit supporting documentation
-
Review Process
- Verify emergency criteria
- Check medical necessity
- Review documentation
- Make determination
-
Approval/Denial
- If approved, generate retro auth number
- Link to existing claims
- Document exception reason
- Update financial records
Business Rules
Auto-Approval Rules
- Office visits (CPT 99201-99215) auto-approved
- Initial evaluations auto-approved (first visit only)
- Maximum 12 office visits auto-approved per case
- Auto-approval only for credentialed providers
- DOS must be within case active period
Authorization Limits
- Maximum authorization period: 6 months
- Maximum units vary by service type:
- Office visits: 12 per auth
- Physical therapy: 24 visits
- Chiropractic: 12 visits
- Imaging: As specified
- Extensions require new authorization
Validation Rules
- Provider must be credentialed
- Service must be within scope of practice
- DOS cannot precede authorization start
- Cannot exceed case financial limits
- Diagnosis must support service
TPA Requirements
- TPA review required based on contract
- Certain CPT codes always need TPA
- Dollar thresholds trigger TPA review
- TPA decision is binding
- TPA turnaround: 3 business days
Integrations
| System | Integration Type | Purpose |
|---|---|---|
| Legal Case Management | Direct Database | Case validation |
| Provider Management | Direct Database | Provider verification |
| Appointment System | Direct Database | Utilization tracking |
| Claims Processing | Direct Database | Authorization validation |
| TPA Systems | API/EDI | External review |
| Notification System | Email/Fax | Provider notifications |
| Document Management | File System | Attachment storage |
Common Issues
| Issue | Description | Resolution |
|---|---|---|
| Units Exceeded | Service exceeds authorized units | Request extension |
| Expired Authorization | DOS after expiration | Retroactive auth or extension |
| Provider Mismatch | Different provider than authorized | Update authorization |
| Missing Auth | Service without authorization | Create retro auth |
| TPA Delays | TPA review taking too long | Escalation process |
Screenshots Needed
- Authorization Request Form
- Auto-Approval Configuration
- Authorization Search Grid
- Authorization Detail View
- Utilization Tracking Dashboard
- Review Queue Interface
- Extension Request Form
- Retroactive Auth Wizard
- TPA Review Status
- Provider Notification Template
Performance Considerations
- Auto-approval must be instant
- Authorization lookup sub-second
- Utilization calculation real-time
- Bulk authorization processing
- Historical auth data archival
Security Considerations
- PHI protection for clinical notes
- Audit trail for all decisions
- Role-based approval limits
- Provider access restrictions
- Financial limit enforcement
Notes
- Auto-approval rules configured per payer
- Authorization numbers are sequential per year
- Extensions maintain original auth number with suffix
- TPA integration requirements vary by contract