Integration of 1C-Bitrix with the delivery service TechnoLogist (Belarus)

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.
Our competencies:
Development stages
Latest works
  • image_website-b2b-advance_0.png
    B2B ADVANCE company website development
    1175
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Website development for FIXPER company
    811
  • 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
    564
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Development based on 1C Enterprise for MIRSANBEL
    747
  • image_crm_dolbimby_434_0.webp
    Website development on CRM Bitrix24 for DOLBIMBY
    655
  • image_crm_technotorgcomplex_453_0.webp
    Development based on Bitrix24 for the company TECHNOTORGKOMPLEKS
    976

1C-Bitrix Integration with TechnoLogist Delivery Service (Belarus)

TechnoLogist is a Belarusian logistics operator specializing in e-shop delivery across Belarus. Own courier service, pickup points and fulfillment. Main currency — Belarusian ruble (BYN). For shops operating on RB market, one of main delivery options alongside EuroPochta and SDEK.

TechnoLogist API

TechnoLogist provides REST API for integration with e-shops. Documentation provided to partners upon connection. Authorization by token in header. Endpoints:

  • POST /orders — create request
  • GET /orders/{id} — request status
  • GET /orders/{id}/label — label for printing
  • POST /orders/calculate — calculate cost
  • GET /pvz — list of pickup points

Delivery Module in Bitrix

Class inherits \Bitrix\Sale\Delivery\Services\Base. Module parameters:

  • TECHNOLOGIST_TOKEN — API access token
  • SENDER_ID — sender identifier
  • DEFAULT_CITY — default city for calculation (Minsk)
  • CURRENCY — BYN (Belarusian ruble)

In calculateConcrete() execute cost calculation request considering weight, dimensions, delivery type (courier/PVZ) and recipient city.

Features of Belarusian Market

When integrating with Belarusian delivery services, important to account for:

Currency. Order sum and delivery cost transmitted in BYN. If shop works in multiple currencies, in calculateConcrete() convert via Bitrix rate mechanism (CCurrencyRates::ConvertCurrency()).

Customer phone. Belarusian numbers: +375 (XX) XXX-XX-XX. In API request send in format 375XXXXXXXXX — no plus, no brackets. Normalization via regex in handler.

Addresses. Belarus doesn't use KLADR system (Russian standard). TechnoLogist uses own reference of populated places. When ordering, city search — via GET /cities?q={query} with result caching.

Cash on delivery. Widespread in Belarus. When CashOnDelivery > 0, courier accepts cash or card (depending on courier terminal equipment — check with TechnoLogist).

Creating Request

$payload = [
    'externalOrderId' => 'SHOP-' . $bitrixOrderId,
    'senderId'        => $senderId,
    'recipient' => [
        'name'    => $recipientName,
        'phone'   => $normalizedPhone,
        'address' => [
            'cityId'  => $cityId,
            'street'  => $street,
            'house'   => $house,
            'flat'    => $flat,
        ],
    ],
    'deliveryType'  => 'courier', // or 'pvz'
    'pvzId'         => $pvzId,
    'weight'        => $weightKg,
    'dimensions'    => $dimensions,
    'declaredValue' => $declaredValueBYN,
    'cod'           => $codAmountBYN,
    'comment'       => $deliveryComment,
];

In response receive orderId in TechnoLogist system and trackingNumber. Save to b_sale_order_props.

Statuses

TechnoLogist notifies on status change via webhook (POST to shop URL) or via polling. Mapping:

TechnoLogist Status Bitrix
Accepted Sent for delivery
On sorting Processing
In delivery Courier in transit
Delivered Delivered
Return Return

Pickup Point Integration

List of PVZ loaded once per day by Bitrix agent and saved to HL-block. For Minsk — several tens of points, across all Belarus — less than major Russian operators. Display on map with coordinates from API response.

Timeline

Scope Components Duration
Basic integration Calculation + requests + statuses 3–5 days
+ Pickup point map HL-block + widget +2 days
+ Multi-currency Conversion to BYN + logic +1 day