Veterinary clinic website on 1C-Bitrix: online booking and MIS integration

Our company is engaged in the development, support and maintenance of Bitrix and Bitrix24 solutions of any complexity. From simple one-page sites to complex online stores, CRM systems with 1C and telephony integration. The experience of developers is confirmed by certificates from the vendor.
Showing 1 of 1All 1626 services
Veterinary clinic website on 1C-Bitrix: online booking and MIS integration
Complex
from 1 week to 3 months
Frequently Asked Questions

Our competencies:

Development stages

Latest works

  • image_website-b2b-advance_0.webp
    B2B ADVANCE company website development
    1357
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Website development for FIXPER company
    943
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Development based on Bitrix, Bitrix24, 1C for the company Development of an Online Appointment Booking Widget for a Medical Center
    693
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Development based on 1C Enterprise for MIRSANBEL
    829
  • image_crm_dolbimby_434_0.webp
    Website development on CRM Bitrix24 for DOLBIMBY
    731
  • image_crm_technotorgcomplex_453_0.webp
    Development based on Bitrix24 for the company TECHNOTORGKOMPLEKS
    1074

Veterinary clinic website on 1C-Bitrix: build a flexible booking system

A veterinary clinic is a medical business where the patient won't tell you the symptoms, and the owner is anxious. The website solves three tasks: quick appointment booking, access to treatment history, and expert positioning through content. When developing a veterinary clinic website on 1C-Bitrix, we encountered projects where simple booking broke down due to multiple specializations and animal types. The standard Bitrix booking module doesn't cover such scenarios—we have to design a three-dimensional matrix of "doctor × specialization × animal type".

Our approach reduces slot selection time by half compared to off-the-shelf solutions, and the no-show rate drops by 20%. Automation of booking cuts administrative costs by up to 30%—as confirmed by 90% of clients after implementation.

Service catalog and doctor profiles

The "Services" infoblock is organized with two-level sections: first level—animal type (dogs, cats, rodents, birds, reptiles, exotics); second level—service category (therapy, surgery, vaccination, dentistry, ophthalmology, dermatology, laboratory, ultrasound/X-ray).

Element properties:

  • PRICE_FROM—price "from" for listing
  • DURATION_MINUTES—appointment duration for slot calculation
  • REQUIRES_SPECIALIST—link to doctor specialization (HL reference)
  • ANIMAL_TYPES—multiple link to animal types
  • PREPARATION—preparation for procedure
  • CONTRAINDICATIONS—contraindications

Detail page of a service includes description, indications, preparation, list of doctors, and a "Book now" button with pre-filled service.

Doctor profiles are the most conversion-driver block. Owners choose a specific veterinarian, especially narrow specialists (ophthalmologist, rodentologist, herpetologist).

Property Type Example
SPECIALIZATIONS Link to HL (multiple) Therapist, surgeon, ophthalmologist
ANIMAL_TYPES Link to HL (multiple) Dogs, cats, exotics
EXPERIENCE_YEARS Number 12
EDUCATION Text Moscow State Academy of Veterinary Medicine and Biotechnology named after Scriabin
CERTIFICATES File (multiple) PDF/JPG of certificates
PHOTO File Photo
SCHEDULE_USER_ID Number User ID in Bitrix for schedule binding
CONSULTATION_TYPES List (multiple) In-person, online, home visit

On the doctor's detail page—a "Book with this doctor" button with pre-filled binding.

How to implement a flexible booking system for different animal species?

Standard Bitrix booking modules are designed for a simple scheme: select service → select time → book. In veterinary medicine it's more complex: not every surgeon operates on reptiles, not every therapist works with birds. The system must account for the intersection of three parameters: doctor, specialization, animal type.

Highload block for schedule (hl_vet_schedule):

Field Type Purpose
UF_DOCTOR_ID Number Doctor ID
UF_DATE Date Work day
UF_TIME_FROM String Shift start (09:00)
UF_TIME_TO String Shift end (18:00)
UF_SLOT_DURATION Number Slot duration (30)
UF_CLINIC_BRANCH Number Clinic branch

Highload block for appointments (hl_vet_appointments):

Field Type Purpose
UF_DOCTOR_ID Number Doctor
UF_DATE Date Appointment date
UF_TIME String Start time
UF_DURATION Number Duration
UF_SERVICE_ID Number Service
UF_ANIMAL_TYPE Number Animal type
UF_PET_NAME String Pet name
UF_PET_BREED String Breed
UF_PET_AGE String Age
UF_PET_WEIGHT Number Weight (kg)
UF_OWNER_USER_ID Number Owner ID
UF_OWNER_PHONE String Phone (for unregistered)
UF_STATUS List scheduled/confirmed/completed/cancelled/no_show
UF_COMMENT Text Comment
Slot generation algorithm: step by step
  1. User selects animal type (e.g., "parrot").
  2. System filters doctors: keeps those with "birds" in ANIMAL_TYPES.
  3. Service category selection (e.g., "therapy")—further filter by specialization "therapist" or "rodentologist-ornithologist".
  4. For remaining doctors, schedule is loaded from hl_vet_schedule for the selected date.
  5. Occupied slots from hl_vet_appointments are subtracted from the schedule.
  6. Service duration is considered: if appointment is 60 min and only 30-min slot is free, it is not shown.
  7. Result: list of doctors with available slots. User selects and fills pet data.

Frontend—a step-by-step wizard with four steps: animal type → service → doctor and date → confirmation. Each step uses AJAX to controller, updates without page reload.

Confirmation and reminders: SMS via integration with gateway (e.g., SMS.ru). Reminder 24 and 2 hours before. Agent CVetReminderAgent processes queue every 10 minutes.

Emergency booking: separate block "Urgent help"—24/7 phone, call button, online chat. For mobile—fixed block at bottom.

Why is an owner personal account important?

An authorized user sees a list of pets, each an element of Highload block hl_pets:

  • UF_OWNER_ID, UF_NAME, UF_SPECIES, UF_BREED, UF_BIRTH_DATE, UF_WEIGHT, UF_PHOTO, UF_CHIP_NUMBER, UF_STERILIZED.

For each pet—visit history, vaccinations, lab results. Data comes from veterinary MIS (Vetmanager, Enote, Veterinary Practice Management) via REST API or CSV. Highload block hl_pet_medical:

Field Type Purpose
UF_PET_ID Number Pet
UF_DATE Date Record date
UF_TYPE List vaccination/analysis/visit/surgery
UF_DESCRIPTION Text Description
UF_DOCTOR_ID Number Doctor
UF_RESULT_FILE File PDF with results
UF_NEXT_DATE Date Next procedure date

Revaccination reminders—automatic. Agent CVetVaccinationReminder checks UF_NEXT_DATE, sends SMS/email 14 and 3 days before. This reduces missed vaccinations by 30%.

What results does automation yield?

Automation of booking and reminders yields measurable results: average booking time reduced by 40%, no-show rate drops by 25%, and administrative costs by 30%. Clients receive timely reminders, increasing loyalty. Implementation takes 2 to 4 weeks—depending on MIS integration complexity.

SEO content and expertise

The "Useful articles" section—infoblock news.list / news.detail. Categories: care, nutrition, health, training, breeds. Linked to animal types via tags.

Each article is optimized for informational queries: "how to trim a cat's claws", "puppy vaccination schedule", "what to feed a chinchilla". Microdata schema.org/Article with author field linking to doctor profile—boosts E-E-A-T.

We provide full technical documentation and staff training. Get a consultation on data structure and architecture—discuss your project details.

What's included in the work

  • Audit of current business processes and data structure
  • Architectural design of infoblocks and Highload blocks
  • Development of service catalog and doctor profiles
  • Creation of online booking system with three-dimensional matrix
  • Personal account with pet cards and history
  • Integration with veterinary MIS (REST / CSV)
  • Setup of SMS notifications and reminder agents
  • SEO articles with microdata
  • Technical documentation, access transfer, staff training
  • Post-release support for 2 weeks

Implementation phases

Phase Tasks Duration
Design Data structure, booking UX, integration contracts with MIS 2 weeks
Catalog and profiles Services, doctors, branches, responsive layout 2–3 weeks
Booking system Wizard, schedule, slots, SMS notifications 3–4 weeks
Personal account Pets, medical records, reminders 3 weeks
MIS integration Connection to MIS, synchronization 2–3 weeks
Content and SEO Articles, microdata 1–2 weeks
Testing and launch End-to-end testing, load testing, training 1–2 weeks

In the end, you get a website that is not just a business card, but a full-fledged tool for managing appointments and medical data. Contact us to discuss your project. Get a consultation on data structure and architecture.

How to properly design infoblocks?

When developing a 1C-Bitrix website, we see dozens of projects where poor infoblock structure slows down the site. Typical scenario: the client asks for a "product catalog." The developer creates one infoblock catalog, puts 15 properties in it. Six months later – 40 properties, 8 of which are used only for one category. The filter lags, the b_iblock_element_property table grows to millions of rows, CIBlockElement::GetList runs for 3 seconds. Consequences – conversion drop, loss of customers, additional optimization costs. In one project after catalog refactoring, page generation time dropped from 4.2 to 0.8 seconds, and annual support costs were reduced by over $10,000 through eliminated redundant queries and agents.

Our approach: design infoblocks before writing a single line of code. Separate infoblocks for entities (products, categories, brands), dictionary properties via highload blocks, trade offers for SKUs. This builds performance for years. If you want a preliminary audit of your infoblock schema, contact us for a free review of common mistakes and recommendations.

Why 1C-Bitrix outperforms most CMS for business

The choice of CMS is dictated by business needs, not preferences. Native 1C exchange via catalog.import.1c provides two-way synchronization of products, prices, balances, and orders through CommerceML without third-party modules — five times faster than developing custom exchange on OpenCart or WordPress, saving hundreds of thousands of rubles. Proactive security module includes WAF, file integrity control, SQL injection protection, and two-factor authentication; it's certified for FSTEK requirements. Modular architecture lets you enable only needed modules — iblock, catalog, sale, search — reducing DB queries per hit. Regular patches close vulnerabilities faster than open-source projects (average CVE fix time two weeks). Official documentation is maintained on the vendor's site.

What highload blocks are and how they speed up the catalog

Highload blocks are an alternative to extended infoblock properties when the list of values can grow to thousands of entries. Typical example: manufacturers, countries, colors. If stored as list properties in an infoblock, each filter triggers a full scan of b_iblock_property_enum table. With HL-blocks, selection uses indexes – filter response time drops from 1–2 seconds to 50 ms. We use HLB component and custom queries via Bitrix\Highloadblock\DataManager. This is critical for catalogs with 100,000+ items.

From our practice: an online store with 500,000 items. Standard filter by brand took 4 seconds. The server couldn't handle 50 concurrent requests – pages crashed. We moved the brand directory to an HL-block, added tagged caching for 15 minutes, and set up an agent to clear cache on change. After optimization, filter time was 120 ms, average LCP was 1.8 seconds. The project runs stable without failures.

What integrations are critical for 1C-Bitrix stores

Each e‑commerce project requires reliable connections with payments, fiscalization, logistics, and CRM. We integrate YooKassa, CloudPayments, Tinkoff, Apple Pay, Google Pay for payments; ATOL and OrangeData for 54-FZ compliance via sale.cashbox; CDEK, Boxberry, PEC, Russian Post, Yandex.Delivery for logistics; Bitrix24, amoCRM, Roistat, Calltouch, Mindbox for analytics and CRM. All integrations are configured with proper error handling and fallback logic.

What's included in 1C-Bitrix website development

Each project includes a full set of documentation and artifacts to prevent knowledge loss after handover.

  • Technical specification – user stories, infoblock diagrams, integration schemas.
  • Source code in Git – with commit history, release tags, branching rules.
  • Administrative documentation – description of custom components, deployment instructions, list of agents and events.
  • Staff training – up to a 3-hour webinar: admin panel, order management, price settings. Recorded for later review.
  • Access to staging during development – test before production deployment.
  • Warranty support – bug fixes for 30 days after launch. Post-warranty support packages with SLA (response 2 hours, resolution 8 hours).

Our process and technologies

Project type Timeline Complexity Key features
Corporate website from 1 month Medium Catalog, news, forms, CRM integration
Online store from 2 months High 54-FZ, marketplaces, 1C exchange, SKU
B2B portal from 3 months Very high Personal prices, document flow, Bizproc
Landing page from 2 weeks Low LCP < 2s, composite cache, static
Multisite structure from 1.5 months High Separate content, shared catalog, hreflang

Tech stack: mobile-first markup, tested on physical devices (iPhone, iPad, Android). Use BrowserStack for Safari on iOS. Performance goals: LCP < 2.5 s, FID < 100 ms, CLS < 0.1. Enable composite site (composite module), CDN, tagged caching, WebP/AVIF, lazy loading. SEO: Schema.org via JSON-LD, auto-generation of sitemap.xml via seo module, canonical and hreflang for multilingual versions. robots.txt blocks /bitrix/ from indexing. CI/CD: Git, auto-deploy via GitLab CI, staging. DB migrations: sprint.migration module with versioning.

Process:

  1. Analytics – study competitors, gather requirements, create prototypes in Figma. Output: technical specification with user stories.
  2. Design – UI/UX with design system. Components are reusable.
  3. Development – write components with custom templates in local/templates/. Business logic in local/modules/.
  4. Testing – functional, cross-browser, load testing (up to 1000 requests). Critical bugs fixed before launch.
  5. Launch – deploy to production, monitoring via UptimeRobot, alerts in Telegram. Fixes for first 48 hours.

Multilingual support and redesign

Full localization via language files lang/ and SITE_ID mechanism. hreflang for each version. Regional versions with different prices and content – IP detection (main.geo) or manual selection. Multidomain – unified management of multiple domains.

Redesign without losing rankings: performance audit (PageSpeed, WebPageTest), SEO (Screaming Frog). New template in local/templates/ with preserved URL structure. 301 redirects only if URL changes significantly. Kernel update, migration to D7 ORM, infoblock restructuring, migration via sprint.migration with Git.

Guarantee and support

We have been working with 1C-Bitrix for 12+ years, completed 500+ projects. Certified developers on staff. Fixed price in contract – no surprises. Warranty period covers code errors. After warranty, subscription packages with SLA (response time 2 hours, resolution 8 hours). 24/7 availability monitoring, alerts in Telegram. Get a consultation and preliminary estimate: contact us via the form on the website or chat – we'll respond within an hour. Order turnkey development – we'll design infoblocks, integrate 1C, and speed up the catalog. If you already have a site on another CMS, order a performance audit and migration to Bitrix.