Integration of 1C-Bitrix with Email Marketing Services
Imagine: you launch a mass mailing from Bitrix — 50% of emails land in spam, and open rates are negligible. The built-in Sender module doesn't give flexibility in domain and signature setup. Recently, an online store with a catalog of 50,000 products approached us: their mailings via Sender had a 12% open rate and 40% unsubscribes. After integration with SendPulse, the open rate rose to 35%, and unsubscribes dropped to 5%. Proper integration with an external ESP (Email Service Provider) solves these problems: deliverability rises to 99%, A/B tests and advanced segmentation become available. We have completed more than 50 such projects and guarantee results.
How subscriber synchronization works
Regardless of the specific service, integration solves three tasks: subscriber export, segment synchronization, and reverse sync of unsubscribes. Let's look at each using a typical project example.
Subscriber export
Site users who subscribe are automatically added to the mailing service list. To do this, we hook into the OnSubscribeSubscribe event and pass data via the ESP's REST API. Example code:
AddEventHandler('subscribe', 'OnSubscribeSubscribe', function($subscribeId, $email, $fields) { $espClient = new EspApiClient(); $user = CUser::GetByLogin($email)->Fetch(); $subscriberData = [ 'email' => $email, 'first_name' => $user['NAME'] ?? '', 'last_name' => $user['LAST_NAME'] ?? '', 'tags' => getSubscriberTags($user), 'source' => 'bitrix_subscribe', ]; $espClient->addOrUpdateContact($subscriberData); }); function getSubscriberTags(array $user): array { $tags = ['site-subscriber']; // Add tags based on purchase history if (hasOrders($user['ID'])) $tags[] = 'buyer'; if (isVipClient($user['ID'])) $tags[] = 'vip'; return $tags; } Detailed documentation on Subscribe module events is available at subscribe module events.
Behavior-based segmentation
The value of integration lies in transferring behavioral site data to the mailing service for trigger scenarios. Events are tracked via handlers like OnSaleOrderSaved, OnSaleBasketSaved, and agents for activity checks.
| Bitrix event | ESP action |
|---|---|
| Added product to cart, didn't purchase | Add to "Abandoned cart" segment, trigger a chain |
| Placed an order | Add to "Buyers" segment, trigger a welcome series |
| No login for 90 days | Add to "Inactive" segment, trigger reactivation |
| Birthday in 7 days | Add to "Birthday" segment, send a personal offer |
We also transfer events to the ESP for Bitrix triggered emails: abandoned cart, welcome series, reactivation. Integration with an ESP is 1.4 times better than the built-in Sender in open rate and 2 times better in unsubscribes.
Reverse synchronization of unsubscribes
The ESP sends unsubscribe notifications via webhooks. We receive the webhook at a dedicated URL (/bitrix/tools/esp_webhook.php) and update the status in Bitrix:
// esp_webhook.php $payload = json_decode(file_get_contents('php://input'), true); $email = $payload['email'] ?? ''; $event = $payload['event'] ?? ''; // 'unsubscribe', 'spam_complaint' if (in_array($event, ['unsubscribe', 'spam_complaint'])) { // Unsubscribe in Bitrix $subscribeEmail = CSubscribeEmail::GetByEmail($email)->Fetch(); if ($subscribeEmail) { CSubscribeEmail::Update($subscribeEmail['ID'], ['CONFIRMED' => 'N']); } } Why use an ESP instead of the built-in Sender?
The built-in Sender does not manage domain reputation and lacks DKIM/SPF authentication mechanisms. ESPs automate these settings and provide a warm IP pool. Compare:
| Parameter | Built-in Sender | ESP (SendPulse) |
|---|---|---|
| Average deliverability | 65-75% | 97-99% |
| A/B testing | no | yes |
| Behavior-based segmentation | manual | automatic |
| Real-time analytics | no | yes |
Using an ESP, you typically increase open rates by 1.4 times and reduce spam complaints by half. Integration pays for itself in about 2 months.
How to achieve 99% deliverability for transactional emails?
Transactional emails (order confirmation, status) can be sent through the ESP instead of Bitrix's built-in mail server — for better deliverability and analytics. Override the email event handler in bitrix/php_interface/init.php:
AddEventHandler('main', 'OnBeforeEventSend', function(&$eventFields, &$template) { // Intercept the email and send via ESP $esp = new EspTransactionalSender(); $esp->send($eventFields['EMAIL'], $template['SUBJECT'], $template['BODY_HTML']); return false; // prevent sending via built-in SMTP }); This approach allows tracking every transactional email — when it was opened, which link was clicked. Get a consultation on setting this up for your project.
What's included in the integration?
After completion, you receive:
- Documentation on subscriber and segment synchronization scheme.
- Access to the ESP account with configured email templates.
- Training for your team on working with trigger chains.
- A 6-month warranty on all work and support.
How are cost and timeline estimated?
We analyze your project for free — audit the current mailing scheme, infoblock structure, and user fields. After that, we provide accurate timeline and cost. Approximate effort:
| Task | Effort |
|---|---|
| Subscriber export + event handlers | 4–6 h |
| Behavior-based segmentation | 6–10 h |
| Reverse sync of unsubscribes | 3–4 h |
| Transactional emails via ESP | 4–6 h |
Final timeline depends on project complexity. Contact us to discuss details and get an accurate estimate.
Our guarantees and results
We have been working on Bitrix projects for over 10 years and have completed more than 50 ESP integrations. We hold 1C-Bitrix certifications and provide a warranty on all work. Each project is accompanied by documentation and access transfer. Order an integration — get a ready-made solution with support.

