Skip to main content

Appointment Scheduling - Technical Specification

Medical appointment booking and management system

Purpose

The Appointment Scheduling module manages the booking, tracking, and coordination of medical appointments for legal case patients. Each appointment must be linked to an authorization, tracked against the legal case, and integrated with provider schedules. The system handles various visit types, manages appointment statuses, and ensures proper authorization utilization while coordinating with claims processing.

Key Concepts

TermDefinition
AppointmentScheduled medical visit for a patient
Visit KindType of appointment (Initial, Follow-up, Therapy, etc.)
Appointment StatusCurrent state (Scheduled, Confirmed, Completed, Cancelled)
Authorization LinkConnection to pre-approved authorization
Provider ScheduleAvailable time slots for providers
Appointment SeriesRecurring appointments for ongoing treatment
No-ShowPatient failed to attend scheduled appointment
RescheduleMoving appointment to different time
Double BookingMultiple appointments in same slot (controlled)
Appointment ReminderAutomated patient notifications

User Roles

RoleDescriptionPermissions
SchedulerBooks and manages appointmentsFull CRUD
ProviderViews own scheduleRead, Update own
Case ManagerOversees patient appointmentsRead, Create
Patient CoordinatorAssists patients with schedulingCreate, Read, Update
Front DeskCheck-in/check-outRead, Update status
System AdministratorSystem configurationAll permissions

Field Documentation - Appointment Entity

Field NameTypeRequiredDescriptionValidation RulesRelated Entity
IDStringYesUnique appointment IDAuto-generated CUIDPrimary Key
Appointment NumberStringYesHuman-readable numberFormat: APT-YYYY-XXXXXXX-
Legal CaseLegalCaseYesAssociated legal caseMust be active caseLegalCase
PatientPatientYesPatient for appointmentMust match case patientPatient
MRNStringYesMember Registration NumberFrom legal case-
ProviderClinicalProviderYesRendering providerMust be activeClinicalProvider
VendorVendorYesProvider's vendorMust be activeVendor
LocationVendorLocationYesAppointment locationValid vendor locationVendorLocation
AuthorizationAuthorizationNoLinked authorizationMust be valid and activeAuthorization
Authorization NumberStringNoAuth referenceFrom authorization-
Visit KindStringYesType of visitEnum: Initial Eval, Follow-up, Therapy, Procedure, Imaging, Other-
Visit Type CodeStringNoSpecific visit codeBased on visit kind-
Appointment DateDateTimeYesDate of appointmentCannot be past for new-
Appointment TimeTimeYesStart timeValid business hours-
Duration MinutesIntegerYesAppointment length15-240 minutes-
End TimeTimeYesCalculated end timeStart + Duration-
Time ZoneStringYesLocation time zoneValid timezone-
Appointment StatusStringYesCurrent statusEnum: Scheduled, Confirmed, Arrived, In Progress, Completed, Cancelled, No Show-
Status ReasonStringNoReason for statusRequired for Cancel/No Show-
Status Changed AtDateTimeNoWhen status changedAuto-set on change-
Status Changed ByUserNoWho changed statusValid user IDUser
Chief ComplaintStringNoPrimary complaintMax 500 chars-
Appointment NotesTextNoScheduling notesMax 2000 chars-
Clinical NotesTextNoProvider notesMax 5000 chars-
Diagnosis CodesStringNoICD-10 codesComma-separated-
CPT CodesStringNoPlanned proceduresComma-separated CPT-
Confirmation StatusStringYesConfirmation stateEnum: Unconfirmed, Confirmed, Left Message-
Confirmation DateDateTimeNoWhen confirmedSet on confirmation-
Confirmed ByStringNoWho confirmedName or system-
Reminder SentBooleanYesReminder statusDefault false-
Reminder DateDateTimeNoWhen reminder sentSet when sent-
Reminder MethodStringNoHow remindedEnum: Phone, Text, Email-
Check In TimeDateTimeNoPatient arrivalSet on check-in-
Check Out TimeDateTimeNoPatient departureSet on check-out-
Actual Start TimeDateTimeNoWhen provider startedSet by provider-
Actual End TimeDateTimeNoWhen provider finishedSet by provider-
Wait Time MinutesIntegerNoCalculated wait timeCheck-in to Start-
Is TelehealthBooleanYesVirtual appointmentDefault false-
Telehealth PlatformStringNoVideo platformRequired if telehealth-
Telehealth LinkStringNoMeeting URLRequired if telehealth-
Series IDStringNoRecurring series IDLinks related appointments-
Series PositionIntegerNoPosition in series1, 2, 3, etc.-
Total Series CountIntegerNoTotal in seriesFor recurring appointments-
Referring ProviderStringNoWho referredProvider name-
Referring NPIStringNoReferrer's NPI10-digit NPI-
Transportation NeededBooleanYesNeeds transportDefault false-
Transportation ArrangedBooleanYesTransport scheduledDefault false-
Interpreter NeededBooleanYesNeeds interpreterFrom patient preference-
Interpreter LanguageStringNoLanguage neededRequired if interpreter-
Interpreter ArrangedBooleanYesInterpreter scheduledDefault false-
Special InstructionsTextNoSpecial requirementsMax 1000 chars-
Copay AmountDecimalNoPatient copayUsually 0 for legal cases-
Copay CollectedBooleanYesCopay receivedDefault false-
Created AtDateTimeYesCreation timestampAuto-generated-
Updated AtDateTimeYesUpdate timestampAuto-updated-
Created ByUserYesCreating userValid user IDUser
Updated ByUserYesUpdating userValid user IDUser
Rescheduled FromAppointmentNoOriginal appointmentFor rescheduledAppointment
Rescheduled ToAppointmentNoNew appointmentFor rescheduledAppointment
ClaimClaimNoRelated claimAfter service renderedClaim

Workflows

Appointment Booking Workflow

  1. Patient Selection

    • Select legal case
    • Verify patient information
    • Check case status
    • Review appointment history
  2. Authorization Check

    • Lookup active authorizations
    • Verify units available
    • Check authorization dates
    • Select appropriate auth
  3. Provider Selection

    • Filter by specialty
    • Check provider availability
    • Verify location
    • Confirm credentialing
  4. Schedule Selection

    • View available slots
    • Check for conflicts
    • Consider travel time
    • Select date/time
  5. Appointment Creation

    • Create appointment record
    • Link to authorization
    • Decrement auth units
    • Set initial status
  6. Confirmation Process

    • Send confirmation to patient
    • Add to provider schedule
    • Create reminder tasks
    • Update case record

Appointment Check-In Workflow

  1. Patient Arrival

    • Verify patient identity
    • Confirm appointment details
    • Update arrival time
    • Collect any copay
  2. Documentation

    • Verify insurance (if applicable)
    • Update contact information
    • Collect consent forms
    • Note special needs
  3. Status Update

    • Change status to "Arrived"
    • Notify provider
    • Calculate wait time
    • Update display board

Appointment Completion Workflow

  1. Service Delivery

    • Provider sees patient
    • Document services
    • Enter clinical notes
    • Record CPT codes
  2. Check-Out

    • Update completion status
    • Schedule follow-up if needed
    • Provide patient instructions
    • Process paperwork
  3. Post-Appointment

    • Update authorization usage
    • Create claim if billable
    • Send notes to case manager
    • Schedule next appointment

Recurring Appointment Workflow

  1. Series Setup

    • Define frequency (weekly, biweekly, etc.)
    • Set number of occurrences
    • Choose time slot
    • Link to authorization
  2. Series Creation

    • Generate all appointments
    • Assign series ID
    • Check authorization units
    • Block provider schedule
  3. Series Management

    • Handle individual cancellations
    • Reschedule within series
    • Track attendance
    • Monitor progress

Business Rules

Scheduling Rules

  • Cannot book appointments in the past
  • Appointment must be within authorization dates
  • Provider must be available at scheduled time
  • Location must be open during appointment
  • Cannot exceed authorization units

Cancellation Rules

  • 24-hour cancellation notice required
  • Three no-shows may suspend scheduling
  • Late cancellations count as no-show
  • Provider cancellations require rescheduling
  • Cancelled appointments restore auth units

Authorization Rules

  • Appointment requires valid authorization
  • Authorization must have units available
  • Service type must match authorization
  • Provider must match authorization
  • DOS auto-approved don't need prior auth

Status Rules

  • Status changes must be sequential
  • Completed appointments cannot be cancelled
  • No-show cannot be changed to completed
  • Cancelled appointments can be rescheduled
  • Status changes are audited

Integrations

SystemIntegration TypePurpose
Authorization SystemDirect DatabaseAuth validation and usage
Provider ManagementDirect DatabaseProvider schedules
Claims ProcessingDirect DatabaseClaim creation
Patient PortalWeb ServiceSelf-scheduling
Reminder SystemSMS/EmailAppointment reminders
Calendar SystemsAPIProvider calendar sync
Telehealth PlatformAPIVirtual appointments

Common Issues

IssueDescriptionResolution
Double BookingSame slot booked twiceConflict resolution workflow
No AuthorizationAppointment without authCreate retroactive auth
Provider UnavailableProvider called outReschedule all appointments
No-Show PatternRepeated no-showsCase manager intervention
Wrong LocationPatient at wrong officeRedirect or reschedule

Screenshots Needed

  • Appointment Calendar View
  • Appointment Booking Form
  • Provider Schedule Grid
  • Patient Appointment List
  • Check-In Interface
  • Series Creation Wizard
  • Authorization Selection
  • Confirmation Dialog
  • Reschedule Interface
  • No-Show Report

Performance Considerations

  • Calendar must load in < 2 seconds
  • Real-time availability updates
  • Support 1000+ appointments/day
  • Efficient recurring appointment generation
  • Quick search across all appointments

Security Considerations

  • PHI protection in appointment details
  • Provider schedule privacy
  • Audit trail for all changes
  • Role-based viewing permissions
  • Telehealth link security

Notes

  • SMS reminders require patient consent
  • Telehealth appointments need special setup
  • Integration with provider EMRs planned
  • Mobile app for scheduling in development