Barbershop Website Development on 1C-Bitrix Turnkey

When implementing online booking on a typical barbershop template, a problem surfaces: direct AJAX requests to YCLIENTS from the browser lead to API key leakage and CORS errors. Clients cannot book, conversion drops. Instead, we proxy all requests through a Bitrix controller — hiding keys, caching r

Our competencies:

Frequently Asked Questions

When implementing online booking on a typical barbershop template, a problem surfaces: direct AJAX requests to YCLIENTS from the browser lead to API key leakage and CORS errors. Clients cannot book, conversion drops. Instead, we proxy all requests through a Bitrix controller — hiding keys, caching responses, and synchronizing via webhooks. Our barbershop website development on 1C-Bitrix with online booking can save you up to 50% compared to a custom CMS.

A typical project includes a service catalog with masters, online booking via YCLIENTS or Dikidi, a merch store, and a blog. In 30–45 working days you get a client-ready resource. All pages load in an average of 0.8 seconds thanks to composite cache, boosting conversion by 38%.

Barbershop services and prices Men's haircut ($25), beard grooming ($15), royal shave ($30), "haircut + beard" combo ($35), gray camouflage ($20), kids' haircut ($18).

The necessity of a proxy server for online booking

Without a proxy, the YCLIENTS API key is visible in the browser — anyone can make a request on your behalf. We implement a server proxy: the browser sends a request to /api/yclients/..., the Bitrix controller inserts the key from config, makes a CURL call to YCLIENTS, and returns the result. The response is cached in CPHPCache — date list for 5 minutes, slots for 2 minutes. This reduces load on YCLIENTS by 70% and speeds up response.

Service catalog and masters

The "Services" infoblock contains items: men's haircut ($25), beard grooming ($15), royal shave ($30), "haircut + beard" combo ($35), gray camouflage ($20), kids' haircut ($18). Properties of each item: duration (minutes), category (basic / premium), process description, photo result.

The "Masters" infoblock is key for a barbershop. Properties:

  • Photo — must be professional, resized on upload via CIBlock::ResizeImageGet
  • Specialization — binding to service infoblock elements (multiple property of type E)
  • Experience — numeric
  • Portfolio — multiple "File" property (before/after work photos)
  • Rating — numeric, updated by agent based on reviews
  • Schedule — binding to HL-block schedule
  • External ID — master identifier in YCLIENTS / Dikidi (string)

On the master detail page, a portfolio gallery with a comparison slider is displayed (two <img> in a container with overflow: hidden and input[type=range]). Under the gallery, reviews linked to the master.

How to prevent double bookings?

When booking through our own HL-block schedule, the agent generates slots for a month ahead. Transactional locking START TRANSACTION + SELECT ... FOR UPDATE prevents double booking: if two clients select the same slot simultaneously, only the first confirms; the second gets an error. When integrating with YCLIENTS, webhooks update the slot cache at the moment of booking via the admin panel — the site sees the actual schedule.

Step-by-step integration guide

  1. Set up infoblocks for services and masters with appropriate properties.
  2. Configure the proxy controller for YCLIENTS or Dikidi, including API key in config.
  3. Implement caching with CPHPCache for slots and dates.
  4. Test the booking flow and handle double booking logic with transaction locks.

Merch store: care products

The store section is built on the standard catalog + sale bundle. Products — hair pomades ($12), beard oils ($15), shampoos ($10), balms ($8), accessories ($5). Trade catalog with SKU: One product "Beard Oil Brand X" has offers by volume (30 ml / 50 ml / 100 ml).

Implementation features:

  • Master recommendations — on the master detail page, a "Recommends" block linked to catalog products
  • Purchase during booking — during online booking, a product is offered to add to cart via cross-sell component
  • Pickup from barbershop — delivery service sale.delivery with "pickup" type, the client collects the order on their next visit

Payment — online via sale.paysystem or on delivery.

Men's style blog

A section on an infoblock with sections: hairstyles (trends, face shape selection), beard (care, styles), style (clothing, accessories). The article author is linked to the masters infoblock — this builds personal brand and internal linking. SEO-friendly URLs follow the pattern /blog/section/article-name/. XML sitemap is generated by the Bitrix SEO module.

Turnkey development deliverables

Stage Result Duration Cost
Analytics and design Prototypes, technical specification, integration choices 3–5 days $300
Design (responsive) Mobile-first layouts, UI kit 5–7 days $500
Backend development Infoblocks, integrations, REST proxy 10–15 days $1,000
Frontend and caching Components, composite cache 5–7 days $400
Testing and deploy QA, load testing, server setup 3–5 days $300

Total: from $2,500 (basic package). Upon completion, you receive a full package: commented source code, integration documentation, admin guide, access to all subsystems, and 3 months of warranty support.

What are typical development mistakes?

  • Using a ready template without adapting for booking — losing up to 30% conversion.
  • Direct AJAX requests to YCLIENTS with API key — data leak risk.
  • Lack of composite cache for master pages — speed drop on mobile.
  • Ignoring webhooks for back-sync — slots not updating.

Advantages of 1C-Bitrix over custom CMS

1C-Bitrix provides ready modules for catalogs, orders, and caching. According to documentation at dev.1c-bitrix.ru, tagged caching allows resetting only changed sections — this speeds up content updates without full invalidation. Unlike custom solutions, there is no need to design admin panel and access rights — everything is in the core. The content management system allows a manager to add services and products without a programmer.

Comparison with alternatives:

Parameter 1C-Bitrix WordPress + plugins Custom CMS
Built-in cache Tagged cache, composite Plugins only Need to write
HL-block support Out of the box None Need to write
REST API Own REST, CRM compatibility Through hacks Full control
Security updates Automatic Depends on plugins Manual
Cost $2,500+ $500+ (plus plugins) $5,000+

Our team specializes in 1C-Bitrix for over 5 years and has implemented 20+ projects for the service industry. Composite caching reduces page load times to 0.8 seconds — three times faster than custom CMS without cache. The barbershop website cost starts at $1,500 for a basic setup.

Technical foundation

  • Responsiveness — mobile-first, booking on mobile takes 3 taps: master → service → time
  • Composite cache — for service catalog, master pages, blog. Shop and schedule — no cache, AJAX
  • Notifications — SMS reminder 2 hours before visit via messageservice, push if PWA wrapper is present

Common questions answered: Development time ranges from 30 to 60 working days, with the basic package taking 30 days. Supported booking systems include YCLIENTS, Dikidi, and custom HL-block schedules. A merch store can be added with SKU support. The schedule is kept up-to-date using caching with a TTL of 2-5 minutes and webhooks. The final delivery includes commented source code, integration documentation, administrator training, and 3 months of warranty support.

We'll evaluate your project in one day. Contact us for a consultation — we'll find the optimal solution for your barbershop's tasks. Get a commercial proposal with detailed stages and budget.