Кожен п'ятий дзвінок в російському інтернет-магазині з високим оборотом не доходить до менеджера — клієнт скидає після 20 секунд очікування. Без інтеграції телефонії губляться дані про того, хто дзвонить, неможливо автоматично створити задачу в CRM та оцінити відсоток дожатих лідів. Ми підключаємо Zadarma до вашого сайту за 2–5 робочих днів: налаштовуємо вебхуки, зворотний виклик, WebRTC-дзвінки, запис розмов та передачу даних в AmoCRM, Bitrix24 або будь-яку іншу систему. Багаторічний досвід інтеграцій телефонії під ключ дозволяє скоротити пропущені дзвінки на 40% та підвищити конверсію з дзвінка в лід на 15%.
Технічна реалізація інтеграції
Вебхуки сповіщень
Route::post('/webhooks/zadarma', function (Request $request) {
$data = $request->except('sign');
ksort($data);
$sign = md5(http_build_query($data) . env('ZADARMA_SECRET'));
if ($request->sign !== $sign) return response('Invalid sign', 403);
$event = $data['event'];
switch ($event) {
case 'NOTIFY_START':
$caller = $data['caller_id'];
$this->handleIncomingCall($caller);
break;
case 'NOTIFY_END':
CallLog::create([
'zadarma_callid' => $data['call_id_with_rec'],
'caller' => $data['caller_id'],
'duration' => $data['duration'],
'disposition' => $data['disposition']
]);
break;
case 'NOTIFY_RECORD':
$recordingUrl = $data['link'];
CallLog::where('zadarma_callid', $data['call_id_with_rec'])
->update(['recording_url' => $recordingUrl]);
break;
}
});
API для зворотного виклику
$params = [
'from' => $agentPhone,
'to' => $customerPhone,
'sip_id' => env('ZADARMA_SIP_ID')
];
ksort($params);
$sign = base64_encode(hash_hmac(
'sha1',
env('ZADARMA_KEY') . urldecode(http_build_query($params)) . md5(serialize($params)),
env('ZADARMA_SECRET')
));
Http::withHeaders([
'Authorization' => env('ZADARMA_KEY') . ':' . $sign
])->get('https://api.zadarma.com/v1/request/callback/', $params);
WebRTC — дзвінок з браузера
<script src="https://my.zadarma.com/webphoneApi/v3/js/zadarmawebrtc.js"></script>
<script>
var webrtcPhone = new ZadarmaWebRTC({
sipId: '{{ $sipId }}',
sipPass: '{{ $sipPassword }}',
onCallStateChange: function(state, data) {
console.log('Call state:', state);
}
});
webrtcPhone.dial('79001234567');
</script>
Отримання та зберігання записів
$response = Http::get('https://api.zadarma.com/v1/pbx/record/request/', [
'call_id' => $zadarmaCallId,
'pbx_call_id'=> $pbxCallId
]);
$downloadUrl = $response->json()['link'];
Які проблеми вирішує інтеграція з Zadarma?
Пропущені дзвінки — головна втрата для інтернет-магазину. Без callback-віджета клієнт чекає відповіді та скидає. Ми налаштовуємо зворотний виклик: система сама передзвонює клієнту через 30 секунд, знижуючи відтік на 40%. Відсутність аналітики — друга проблема. Без запису розмов та логу дзвінків неможливо визначити ефективність каналів. Після інтеграції в базі CallLog з'являються caller_id, duration, disposition та посилання на запис. Ручна передача заявок в CRM уповільнює обробку та загрожує помилками — ми автоматизуємо створення угод при кожному дзвінку. В одному з проєктів (інтернет-магазин електроніки) пропущені дзвінки скоротилися з 25% до 8%, а замовлення через телефон зросли на 18% за місяць.
Чому варто обрати Zadarma?
Zadarma — міжнародний провайдер з номерами в 100+ країнах та гнучкою віртуальною АТС. API дозволяє реалізувати будь-який сценарій: від віджета до контакт-центру. Вартість дзвінків — від 0,5 ₴/хв, а інтеграція в 2–3 рази швидша, ніж ручне налаштування. Головна перевага — низька ціна та простота webhook- і REST-інтеграції. Порівняно з провідною телефонією, Zadarma економить до 60% на абонентській платі та міжміських дзвінках.
Порівняння: наша інтеграція vs ручне налаштування
| Критерій | Наша інтеграція | Ручний режим |
|---|---|---|
| Час підключення | 2–5 днів | від 2 тижнів |
| Запис розмов | автоматично | потрібне обладнання |
| Інтеграція з CRM | через API | вручну, із затримками |
| Надійність | 99.9% uptime | залежить від обладнання |
| Контроль якості | записи та статистика | обмежений |
Порівняння тарифів Zadarma для бізнесу
| Параметр | Базовий | Розширений |
|---|---|---|
| Абонентська плата | від 199 ₴/міс | від 499 ₴/міс |
| Хвилина на номери РФ | 0,5 ₴ | 0,4 ₴ |
| Запис розмов | є | є |
| WebRTC | так | так |
| Інтеграція по API | так | так + пріоритетна підтримка |
Приклад розрахунку економії
При 1000 вхідних дзвінках на місяць та середній тривалості 3 хвилини економія на зв'язку з Zadarma становить до 60% порівняно з провідною телефонією. Налаштування callback знижує пропущені дзвінки на 40%, що при середньому чеку 5000 ₴ дає додатковий дохід.
Типові помилки при самостійній інтеграції
- Неправильний підпис вебхуків. Без ksort та MD5 з секретним ключем Zadarma поверне 403. Перевіряйте сортування та http_build_query.
- Відсутність обробки NOTIFY_END. Без цієї події лог дзвінка залишиться порожнім — не отримаєте caller_id, duration та статус.
- Проблеми з кодуванням. Для REST API використовуйте urlencode з PHP_QUERY_RFC3986, інакше підпис не співпаде.
- Ігнорування помилок API. Завжди перевіряйте $response->json()['status'] — не всі запити повертають success.
Етапи роботи по інтеграції
- Аналітика — вивчаємо поточну схему телефонії, навантаження та потреби в CRM.
- Проєктування — обираємо сценарії: callback, WebRTC, запис, інтеграція.
- Реалізація — пишемо код, налаштовуємо вебхуки та API, інтегруємо з CRM.
- Тестування — перевіряємо всі сценарії: вхідні, вихідні, запис, передачу в CRM.
- Деплой — розгортаємо на бойовому сервері, навчаємо співробітників.
Що ви отримуєте в результаті
- Документація по інтеграції з описом ендпоінтів.
- Доступ до панелі керування та логів.
- Навчання співробітників роботі з системою.
- Підтримка 2 місяці після запуску.
- Гарантія коректної роботи всіх сценаріїв.
Оцінимо ваш проєкт. Зв'яжіться з нами — напишемо план інтеграції. Працюємо під ключ за 2–5 днів. Замовте консультацію та отримайте аналіз поточної телефонної схеми.
За даними документації Zadarma, uptime сервісу становить 99.9%. Для роботи через WebRTC потрібен сучасний браузер.







