Clinic Portal Development on 1C-Bitrix
A patient takes tests on Monday. On Tuesday they call the clinic asking about results — "call back tomorrow, the lab hasn't sent them yet." On Wednesday they call again — "results are with the doctor, they'll call back." On Thursday the doctor calls back, but the patient is in a meeting. On Friday the patient comes in person. Five days to resolve what could be closed with a push notification "Your results are ready" with a view button in the personal cabinet. A clinic portal on 1C-Bitrix is not a business card with address and doctor list, but a working tool for interaction between clinic and patient.
Patient Personal Cabinet
The personal cabinet is the central element of the portal. Without it, the portal reduces to an informational website, with it — it becomes a service channel reducing reception desk and call center load.
Personal cabinet functions:
- Book appointment — choose doctor, specialization, date and time from current schedule
- My appointments — upcoming and past visits, ability to cancel/reschedule
- Test results — PDF or structured data from lab system
- Medical documents — discharge summaries, conclusions, referrals
- Prescriptions — electronic prescriptions with renewal option via request
- Finance — payment history, invoices, deposit balance (if clinic uses prepayment)
- Family access — manage children and elderly relatives' appointments
Authorization — by phone number with SMS code. No password — patients don't memorize medical portal passwords. Additionally — login via State Services (ESIA) for state and quasi-state clinics.
MIS Integration
MIS (medical information system) is the core of clinic automation: doctor schedules, electronic medical records, lab orders, billing. A portal without MIS integration is two parallel worlds: administrator manually enters appointment in MIS after patient books on website.
Typical MIS and integration methods:
| MIS | Protocol | Features |
|---|---|---|
| Infoklinika | SOAP/REST API | Widely used, documented API |
| MEDIOLOG | REST API | Modular architecture, flexible API |
| 1C:Medicine | COM/REST | Native 1C-Bitrix integration via exchange module |
| qMS | REST API | Modern API, webhook notifications |
| Custom MIS | Depends on implementation | Often — direct database access or CSV exchange |
What syncs:
- Schedule → portal requests free slots via MIS API every 5–15 minutes or in real-time on user request
- Appointment → when creating portal appointment — call MIS API to book slot. On cancellation — free it
- Test results → MIS sends webhook or portal periodically polls. Result saved in "Results" infoblock linked to patient
-
Invoices and payments → sync via 1C-Bitrix
salemodule and MIS payment module
Intermediate layer. Direct portal↔MIS integration is fragile: if MIS unavailable — portal doesn't work. Solution — intermediate queue (RabbitMQ or buffer table in database). Appointment created on portal, placed in queue, handler transfers to MIS. If MIS unavailable — retry in 5 minutes. Patient sees "Processing appointment" status, then "Confirmed."
Online Appointment Booking with Clinic Specifics
Appointment booking in clinic is not the same as restaurant reservation. There are nuances:
- First vs repeat visit — different slot duration (30 min vs 15 min), different cost
- Referrals — patient can only book specialists they have referral to (checked via MIS)
- Preparation instructions — for ultrasound, gastroscopy, tests — automatic instruction sending 48 hours before
- Complex programs — 5-visit checkup that needs booking sequentially in one day
- Cabinet schedule — doctor accepts, but cabinet is occupied by another specialist. Integration accounts for both doctor and cabinet
Patient notifications:
- Appointment confirmation — email + SMS
- 24-hour reminder — SMS
- 2-hour reminder — push (if mobile app exists)
- Review request — 24 hours after visit
Test Results and Documents
Viewing results is the function that brings patients back to portal.
Implementation:
- Results from lab arrive in MIS → webhook notifies portal → portal saves result in infoblock → patient gets push/SMS "Results ready"
- Display format: structured table (indicator, value, normal range, deviation) + PDF for download
- Reference values — deviations from norm highlighted in color (red — above/below normal)
- History — patient sees indicator dynamics (e.g., hemoglobin over last 12 months) on graph
Medical documents (summaries, conclusions) stored in 1C-Bitrix "Disk" module or separate infoblock with file properties. Access — only owner (patient) and treating doctor.
Telemedicine
Telemedicine consultations are mandatory function of modern clinic portal. After pandemic, patients expect remote consultation option.
Video consultation implementation:
- Integration with video platform: Jitsi Meet (self-hosted, unlimited), Zoom API, or Bitrix24 Video Calls
- Telehealth appointment booking — via same schedule but marked "online"
- 10 minutes before start — video room link in personal cabinet and SMS
- Doctor connects from MIS interface or separate portal cabinet
- Consultation recording (with patient consent) — for legal documentation of recommendations
Chat with doctor. Asynchronous text consultation — patient asks question, doctor replies during business day. Implemented via "Web messenger" module (im) or custom chat linked to medical record.
Data Protection
Medical data is a special category of personal data under Law 152-FZ.
Technical measures:
- Data storage in RF territory (for Russian clinics)
- Database encryption — at minimum disk-level encryption on OS level, recommended field-level encryption (policy numbers, diagnoses)
- Two-factor authentication for medical staff
- Access log — who, when, which patient data was viewed. Implemented via 1C-Bitrix event handler and custom log table
- Automatic session end — after 15 minutes inactivity for doctor cabinet
- Processing consent — at registration, each appointment, when transferring data to third parties (lab, insurance)
- WAF — 1C-Bitrix "Proactive Protection" module + external WAF (ModSecurity or CloudFlare)
SEO and Marketing
-
Doctor cards —
Physicianmicromarkup, unique meta tags, photo, services list -
Service pages —
MedicalProcedureby Schema.org, description, indications, preparation - Online booking in Google — Google Reserve integration (booking button right in search results)
-
Reviews —
AggregateRatingfor stars in snippet - Clinic blog — expert articles by doctors with author and qualifications listed (E-E-A-T for YMYL topics)
- LocalBusiness — markup for each branch with address, phone, working hours







