Integration of the life:) SMS SMS service (Belarus) with Bitrix24

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

Integration of life:) SMS (Belarus) with Bitrix24

The company works in Bitrix24, the client database is in the CRM, and SMS notifications are sent manually through the life:) account. A manager opens a deal card, copies the phone number, goes to the life:) interface, pastes the number, writes the text, sends it. Delivery status is somewhere in the life:) account; the CRM doesn't know about it. There are no automated notifications by funnel stages. Integration directly connects Bitrix24 and life:) SMS: sending from CRM, automation via robots, delivery status returned to the card.

life:) SMS API and SMPP: Protocol Choice

life:) (Turkcell brand, operator #3 in Belarus) provides an SMS gateway through two protocols:

HTTP API — REST interface for sending SMS via HTTP/HTTPS requests. Simple integration: one request—one message. Suitable for transactional SMS and small volumes (up to a few hundred messages per day).

SMPP (Short Message Peer-to-Peer) — binary protocol with persistent TCP connection. Advantages: higher sending speed (100+ SMS/sec), built-in delivery reports on the same connection, lower latency. Suitable for mass distributions.

For integration with Bitrix24, the choice depends on volume:

Criterion HTTP API SMPP
Volume Up to 500 SMS/day From 500 SMS/day
Speed 5–10 SMS/sec 50–100+ SMS/sec
Delivery reports Callback URL Inline over connection
Infrastructure Simple handler (PHP/Node.js) SMPP client (daemon, persistent process)
Implementation cost Lower Higher (requires server with daemon)

For most implementations, we use HTTP API. SMPP is connected for mass distributions via CRM marketing, when a campaign sends 5000+ messages.

Registering a Provider in Bitrix24

Connection via the messageservice module:

messageservice.sender.add({
  CODE: "life_sms_by",
  TYPE: "SMS",
  HANDLER: "https://your-domain.com/handler/life-sms.php"
})

The handler receives requests from Bitrix24 and translates them to the life:) API:

  1. Receives POST from Bitrix24: message_to, message_body, message_id.
  2. Normalizes the number to +375XXXXXXXXX format (life:) API requires international format).
  3. Sends a request to the life:) API: endpoint, authorization data, number, text, Sender ID.
  4. Receives a response: message identifier, queuing status.
  5. Saves the mapping message_id (Bitrix24) ↔ msg_id (life:)).
  6. Returns confirmation to Bitrix24.

Sender ID: Registration with life:)

life:) Belarus requires registration of an alphabetic sender name. Procedure:

  • Request via life:) manager or corporate client personal account.
  • Name — up to 11 Latin characters. Cyrillic is not supported in Sender ID.
  • Attached: copy of organization's registration certificate, description of distribution purpose.
  • Approval time — 5 to 10 business days.
  • Possible to register multiple names: one for transactional, another for marketing SMS.

Without a registered Sender ID, the life:) API rejects the send request.

Delivery Reports: Obtaining Delivery Status

life:) supports delivery reports (DLR) in two ways:

Via HTTP callback:

  • The handler URL is specified in life:) settings.
  • When the status changes, life:) sends POST with msg_id and status.
  • The handler finds the associated message_id in Bitrix24 and updates the status.

Via SMPP (when using SMPP protocol):

  • DLR arrives over the same SMPP connection as deliver_sm PDU.
  • Parsing: id, stat (DELIVRD, EXPIRED, UNDELIV, REJECTD).
  • Faster than HTTP callback — status arrives almost instantly.

life:) statuses:

Status Description In Bitrix24
DELIVRD Delivered Delivered
EXPIRED Delivery deadline expired Not delivered
UNDELIV Unavailable Not delivered
REJECTD Rejected Error
ACCEPTD Accepted, awaiting delivery Sent

Without DLR processing, all messages in the CRM show "Sent", even if the subscriber is unavailable for a week.

Belarusian Phone Number Format

The handler normalizes numbers from the Bitrix24 database:

  • +375251234567 — no changes
  • 80251234567+375251234567
  • 375 25 123-45-67+375251234567
  • 25 1234567+375251234567

Mobile operator codes in Belarus: 25, 29, 33, 44 — life:) historically uses 25 and 29 (partially). SMS via life:) gateway are sent to numbers of any operator—not just life:).

Automation via CRM Robots

Typical scenarios:

Sales funnel:

  • New lead → SMS "{NAME}, request received. We'll contact you within 15 minutes"
  • Deal "Awaiting payment" → SMS with payment link (ERIP or bank acquiring)
  • Deal closed → SMS with thanks

Service and reminders:

  • Appointment booking → reminder one day before
  • Missed call → automatic SMS

CRM field substitution in text: #CONTACT_NAME#, #DEAL_TITLE#, #DEAL_UF_XXX#.

Cost Optimization

  • Message length: Cyrillic — 70 characters per segment (67 when concatenating). Each character beyond 70 — second segment. Templates should fit 70 characters.
  • Duplicate filtering: add a condition to the robot—send only if UF_CRM_SMS_SENT field is empty.
  • Number verification: before mass distribution, run the database through normalization and remove invalid numbers.

Implementation Timeline

Scope What's included Timeline
Basic (HTTP API) life:) SMS connection, manual sending, one robot 3–5 days
Standard 3–5 robots, callback DLR, phone number normalization 1 week
Extended (SMPP) SMPP client, mass distributions, inline DLR, analytics 2–3 weeks

What We Configure

  • Registration of life:) SMS as a provider via messageservice.sender.add
  • Handler for requests from Bitrix24 → life:) SMS API (HTTP or SMPP)
  • Assistance with Sender ID registration with life:)
  • Normalization of Belarusian phone numbers
  • Processing delivery reports (callback or SMPP inline)
  • CRM robots for transactional SMS by funnel stages
  • Mass distributions via CRM marketing
  • SMS templates with CRM field substitution
  • Testing: manual sending, robots, DLR, mass distribution to test segment