Integrate Wubook with 1C-Bitrix: Real-Time Sync via Zak API

Integrate Wubook with 1C-Bitrix: Real-Time Sync via Zak API A hotel owner configured Wubook as a PMS and channel manager, but the Bitrix website operates separately. Bookings from the site don't reach Wubook, availability isn't synchronized — overbooking and lost orders become the norm. Our team

Our competencies:

Frequently Asked Questions

Latest works

  • image_website-b2b-advance_0.webp
    B2B ADVANCE company website development
    1415
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Website development for FIXPER company
    995
  • 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
    733
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Development based on 1C Enterprise for MIRSANBEL
    863
  • image_crm_dolbimby_434_0.webp
    Website development on CRM Bitrix24 for DOLBIMBY
    772
  • image_crm_technotorgcomplex_453_0.webp
    Development based on Bitrix24 for the company TECHNOTORGKOMPLEKS
    1134

Integrate Wubook with 1C-Bitrix: Real-Time Sync via Zak API

A hotel owner configured Wubook as a PMS and channel manager, but the Bitrix website operates separately. Bookings from the site don't reach Wubook, availability isn't synchronized — overbooking and lost orders become the norm. Our team has developed a proven solution: an integration guaranteeing stable operation.

Wubook is an Italian PMS with a channel manager. Unlike Russian property management systems, it actively works with European properties but is also used by independent Russian hotels, especially those managing Booking.com and Airbnb through a single channel manager. The goal of integrating with Bitrix is to replicate Wubook's online booking engine on the website without abandoning the PMS, and to synchronize data in both directions. According to our estimates, the integration pays for itself in 3–4 months by reducing manual entry and eliminating duplicates. The average cost of such integration varies, but time savings on booking processing reach 80%.

How Zak API Simplifies Booking Management?

Wubook provides two APIs: XML-RPC (legacy, but still functional) and Zak API (REST) — modern, JSON, base URL https://wubook.net/api/zak/. For new integrations, we recommend Zak: it's faster, easier to debug, and supports OAuth 2.0. Key differences:

Feature XML-RPC API Zak API
Data format XML JSON
Authorization Session key (lkey) Bearer token (OAuth 2.0)
Webhook support No Yes
Request speed ~200 ms ~50 ms
Wubook recommendation Legacy For new projects

Retrieving a session key for XML-RPC:

$client = new \PhpXmlRpc\Client('https://wubook.net/xrws/'); $msg = new \PhpXmlRpc\Request('wired.acquire_token', [ new \PhpXmlRpc\Value(WUBOOK_USER), new \PhpXmlRpc\Value(WUBOOK_PASS), new \PhpXmlRpc\Value(WUBOOK_PROVIDER_KEY), ]); $response = $client->send($msg); $token = $response->value()->scalarval(); 

For Zak API, authorization uses Authorization: Bearer {access_token}, obtained via OAuth 2.0. According to official Wubook documentation (https://wubook.net/api/zak/), Zak API handles up to 1000 requests per minute without limits.

Why Real-Time Availability Synchronization Matters?

Wubook's channel manager distributes rooms across channels: Booking.com, Airbnb, direct website. If a room is booked on one channel, Wubook automatically reduces availability for others. The issue is that an agent polling every 15 minutes may not update quickly enough, and a guest from the website might get confirmation for an already occupied room. The solution is webhook notifications. Wubook supports push notifications (notifications) via POST /properties/{id}/notifications/subscribe. Upon receiving an availability_changed notification, we immediately invalidate the cache and make a targeted availability request for the affected dates and room types.

Zak API method GET /properties/{id}/rooms returns room types. Method GET /properties/{id}/availability returns availability for a range. The response structure includes rooms (array of types) and for each — an array of dates with avail field (number of available rooms). We write to bl_wubook_availability:

foreach ($availData['rooms'] as $roomType) { foreach ($roomType['dates'] as $dateEntry) { WubookAvailabilityTable::addOrUpdate([ 'ROOM_TYPE_ID' => $roomType['id'], 'DATE' => new \Bitrix\Main\Type\Date($dateEntry['date']), 'QTY' => (int)$dateEntry['avail'], ]); } } 

How We Create a Booking via Zak API?

POST /properties/{id}/reservations:

$payload = [ 'checkin' => $dateFrom, 'checkout' => $dateTo, 'rooms' => [['id' => $wubookRoomId, 'amount' => 1]], 'customer' => [ 'name' => $guestName, 'email' => $guestEmail, 'phone' => $guestPhone, ], 'amount' => $totalAmount, 'currency' => 'RUB', 'channel' => 'WEB', 'notes' => 'Order #' . $orderId . ' from website', ]; $result = $zakClient->post('/properties/' . WUBOOK_PROPERTY_ID . '/reservations', $payload); 

Wubook returns reservation_id (numeric) and reservation_code (string, for display to guest). Both are saved in the Bitrix order.

Booking Cancellation and Error Handling

DELETE /properties/{id}/reservations/{reservation_id} or PUT with status cancelled. Wubook immediately releases the slot for other channels. In Bitrix, the order status handler on transition to "Cancelled" calls the cancellation API. On network error, we save a retry job in bl_wubook_pending_ops and process it via agent. Each failed operation stores the attempt count (max 5). An agent retries failed requests every 2 minutes. After 5 attempts, the record is marked as erroneous and an administrator notification is sent. This scheme ensures delivery guarantee even with temporary Wubook network issues.

Step-by-Step Integration Setup

  1. Register application in Wubook – obtain client_id and client_secret for OAuth 2.0.
  2. Get Bearer token – make POST request to /oauth/access_token.
  3. Create HL-blocks – bl_wubook_availability and bl_wubook_pending_ops.
  4. Set up agents – availability sync agent (5 min interval) and queue processing agent.
  5. Subscribe to webhooks – register URL for availability_changed and reservation_created notifications.
  6. Test – verify booking creation on a test property and availability synchronization.

What's Included in the Work

  • Setup of Zak API and OAuth 2.0 – application registration, token retrieval.
  • Synchronization of rooms and availability – HL-blocks for data storage, agents for periodic sync.
  • Two-way booking management – create, modify, cancel from site and from Wubook.
  • Webhooks and push notifications – event subscription, real-time processing.
  • Retry queue for failed operations – guaranteed delivery on failures.
  • Logging and monitoring – request recording for debugging.
  • Testing on your property – verification with real data.

Timeline and Experience

Stage Duration
Zak API + OAuth setup 1 day
Room and availability sync 2–3 days
Booking creation and cancellation 2 days
Webhook subscription and handler 2 days
Testing with real property 2 days
Total 9–12 days

Our experience in PMS and Bitrix integrations: 10+ years of development, over 50 successful projects for hotels and hostels. We guarantee stable synchronization with no data loss and provide operational documentation. Contact us to assess your project — we'll calculate the exact scope of work within one day. Get a consultation to learn how Wubook with 1C-Bitrix integration will reduce overbooking and manual entry.