W większości firm, które audytujemy, telefon jest osobnym światem. Handlowiec ma CRM na jednym ekranie, komórkę służbową w kieszeni i żadnego połączenia między nimi poza własną pamięcią. To, co ustalił przez telefon, trafia do systemu wtedy, gdy mu się chce to przepisać: zwykle w poniedziałek i w piątek, a między nimi historia kontaktu z klientem nie istnieje.
Właśnie wdrażamy telefonię Zadarma w customowym CRM dla biura podróży: każde połączenie i każdy SMS ląduje przy karcie klienta, a handlowiec dzwoni jednym kliknięciem z tej samej karty, na której ma rezerwację. Poniżej mechanika techniczna, pułapki prawne przy nagraniach i SMS-ach oraz moment, w którym warto dołożyć n8n.
TL;DR: Zadarma daje wirtualną centralę, numery i API z webhookami na start, odebranie i koniec rozmowy, więc rejestr połączeń przy kliencie buduje się sam. Dzwonienie z karty klienta załatwia callback albo widget WebRTC. Nagrania wymagają obowiązku informacyjnego z RODO, a SMS marketingowy uprzedniej zgody z art. 398 Prawa komunikacji elektronicznej. Popularne CRM-y mają gotowe integracje, przy własnym systemie budujesz to sam albo przez n8n.
Co się psuje, gdy telefon żyje obok CRM
Rozdzielenie telefonu i CRM-u kosztuje w czterech miejscach naraz, a firmy zwykle zauważają tylko ostatnie. Znika historia: klient dzwoni po tygodniu, trafia na inną osobę i słyszy „proszę mi przypomnieć, o co chodziło". Nikną nieodebrane, bo nikt nie widzi listy osób, które próbowały się dodzwonić i nie zostawiły wiadomości. Wpisywanie notatek przegrywa z pracą, bo handlowiec po rozmowie może albo dzwonić dalej, albo przepisywać ustalenia, a rozliczany jest z pierwszego.
Czwarte kosztuje najwięcej: nie da się niczego zmierzyć. Ile prób kontaktu potrzeba do zamknięcia sprzedaży, w jakich godzinach klienci odbierają, jaki procent zapytań ginie na pierwszym telefonie. Bez rejestru połączeń przy rekordzie klienta te pytania nie mają odpowiedzi. Jeśli dopiero układasz sam CRM, zacznij od oceny, czy w ogóle go potrzebujesz, bo telefonia wpięta w zły proces tylko go utrwali.
Integracja telefonii nie rozwiąże problemu sprzedażowego. Robi jedną rzecz: rejestr kontaktu powstaje sam. Reszta bierze się z tego, że wreszcie jest co czytać.
Zadarma w skrócie: centrala, numery, API
Zadarma to operator VoIP z wirtualną centralą w chmurze. Liczą się trzy warstwy: centrala (numery wewnętrzne, IVR, kolejki, przekierowania, poczta głosowa, nagrywanie do chmury, statystyki, wszystko w panelu bez własnego serwera), numery (wirtualne w ponad 110 krajach, w tym komórkowe z obsługą SMS) oraz API, na którym stoi cała integracja.
Interfejs REST działa pod adresem https://api.zadarma.com/v1/, a autoryzacja opiera się na parze klucz plus sekret: parametry sortujesz alfabetycznie, składasz z nich zapytanie, liczysz MD5, podpisujesz HMAC-SHA1 i kodujesz Base64, a efekt trafia do nagłówka Authorization jako klucz:podpis. To pierwsze miejsce, w którym ludzie się zacinają, ale gotowe biblioteki (PHP, Python, C#, TypeScript) i schematy OpenAPI zdejmują ten problem.
Najważniejsze metody z perspektywy CRM-u:
| Metoda API | Do czego służy |
|---|---|
/request/callback/ | zestawienie rozmowy między numerem wewnętrznym a klientem (click-to-call) |
/webrtc/get_key | klucz do widgetu dzwoniącego w przeglądarce |
/sms/send/ | wysyłka SMS-a, jednorazowo nawet do 20 numerów |
/pbx/record/request/ | pobranie nagrania rozmowy |
/statistics/pbx/ | historia połączeń centrali |
Limity opisano wprost: 100 zapytań na minutę dla większości metod i tylko 3 na minutę dla statystyk, a po przekroczeniu dostajesz HTTP 429 (z nagłówkami X-RateLimit-*). Te trzy zapytania to nie drobiazg: przekreślają pomysł „co minutę odpytam API i zsynchronizuję połączenia". Historię buduje się z webhooków, nie z odpytywania.
Rozważasz innego operatora? Sprawdź to samo w tej samej kolejności, według listy z tekstu o tym, jak sprawdzić, czy narzędzie ma API.
Click-to-call: dwa sposoby dzwonienia z karty klienta
Pod jedną nazwą kryją się dwa różne rozwiązania.
Callback. Handlowiec klika ikonę telefonu przy numerze klienta, CRM woła /request/callback/ z jego numerem wewnętrznym i numerem docelowym, a centrala dzwoni najpierw do handlowca, potem łączy go z klientem. Działa z każdym urządzeniem, także ze zwykłą komórką, ale trzeba odebrać własny telefon, zanim usłyszy się sygnał u klienta.
Widget WebRTC. Rozmowa idzie przez przeglądarkę, bez telefonu. Do osadzenia potrzebujesz klucza z metody /webrtc/get_key i strony po HTTPS. Jakość zależy tu od sieci i sprzętu, więc na słabym WiFi usłyszysz to od razu.
W CRM-ie dla biura podróży wybraliśmy callback, bo część zespołu pracuje w terenie z komórek. WebRTC ma sens tam, gdzie ludzie siedzą przy biurkach i dzwonią seryjnie.
Niezależnie od wyboru zaplanuj normalizację numerów. W bazach CRM ten sam numer żyje w kilkunastu wariantach (+48 601 234 567, 601-234-567, 0601234567). API oczekuje formatu międzynarodowego, webhooki zwracają numer w swojej postaci, więc bez jednej funkcji normalizującej dopasowanie rozmów do klientów rozjedzie się w drugim tygodniu.
Rejestr połączeń, czyli webhooki robiące robotę
Zadarma wysyła POST-em powiadomienia na adres podany w panelu (Ustawienia, sekcja API). Zestaw zdarzeń jest szeroki: NOTIFY_START, NOTIFY_INTERNAL, NOTIFY_OUT_START, NOTIFY_ANSWER, NOTIFY_END, NOTIFY_OUT_END, NOTIFY_RECORD, NOTIFY_IVR, a poza połączeniami także SMS, SPEECH_RECOGNITION, CALL_TRACKING i NUMBER_LOOKUP. W praktyce wystarczą cztery, a zbudowanie tego kawałka zajmuje mniej czasu niż spory o to, kto ma oddzwaniać:
- Połączenie przychodzące.
NOTIFY_STARTprzynosi numer dzwoniącego. Endpoint szuka go w bazie i od razu odpowiada, a odpowiedź jest częścią mechaniki:{"redirect": "101", "return_timeout": "15"}kieruje rozmowę do opiekuna klienta,{"caller_name": "..."}podaje nazwę wyświetlaną na telefonie odbierającego. - Pop-up karty klienta. Po
NOTIFY_INTERNALCRM pokazuje kartę rozmówcy: ostatnia rezerwacja, poprzednie ustalenia. Gdy numeru nie ma w bazie, pokazujesz formularz nowego kontaktu z wypełnionym numerem. - Zamknięcie rozmowy.
NOTIFY_ENDlubNOTIFY_OUT_ENDprzynosi czas rozpoczęcia, identyfikator rozmowy, numer, długość i status (odebrana, zajęte, brak odpowiedzi). Zapisujesz to jako aktywność przy kliencie, a nieodebrane zamieniasz w zadanie „oddzwonić" z terminem. - Nagranie.
NOTIFY_RECORDprzynosi identyfikator, plik pobierasz metodą/pbx/record/request/i podpinasz pod tę samą aktywność.

„Najwięcej wartości w integracji telefonii nie daje wcale click-to-call, tylko rejestr nieodebranych. Kiedy firma pierwszy raz widzi listę klientów, którzy próbowali się dodzwonić i do których nikt nie oddzwonił, dyskusja o sensie wdrożenia kończy się w dwie minuty." — Mikołaj Brunka, założyciel NoCodeWork
Webhooki potrafią przyjść w innej kolejności, niż się spodziewasz, i potrafią przyjść dwa razy, więc identyfikator rozmowy trzymaj jako klucz i pisz obsługę idempotentnie. Pilnuj też czasu odpowiedzi endpointu, bo od niej zależy zachowanie centrali przy NOTIFY_START. Ciężką robotę wykonuj po odpowiedzi, nie przed.
Nagrania rozmów a RODO
Włączenie nagrywania w panelu to jedno kliknięcie i dlatego ta część wdrożenia bywa robiona najbardziej niedbale. Nagranie rozmowy jest daną osobową, a jego przechowywanie przetwarzaniem, więc razem z tym kliknięciem bierzesz na siebie kilka obowiązków.
Informacja. Rozmówca musi wiedzieć, że rozmowa jest nagrywana, kto ją nagrywa i po co. Standardem jest zapowiedź na początku połączenia plus pełna klauzula z art. 13 RODO pod adresem podanym w zapowiedzi. Zdanie w regulaminie, którego klient nigdy nie otworzy, nie wystarczy.
Podstawa prawna. Ustal ją świadomie, zamiast zakładać, że „przecież każdy nagrywa". Inaczej wygląda to przy reklamacjach, inaczej przy szkoleniu handlowców.
Retencja. Ustal czas przechowywania i zautomatyzuj kasowanie. Nagrania sprzed trzech lat to sam ciężar: ryzyko przy wycieku i praca przy każdym wniosku o dostęp do danych.
Dostęp. Kto może odsłuchać nagranie w CRM-ie i czy to zdarzenie jest logowane. Jedna rola i jeden wpis w logu, ale zaprojektowane od początku.
Przemyśl też, gdzie nagrania fizycznie leżą i kto jest procesorem; szerzej o tej klasie decyzji piszemy przy n8n i RODO oraz AI Act i RODO w polskiej firmie. Transkrypcja przez model AI dokłada kolejnego odbiorcę danych i kolejny punkt w rejestrze czynności przetwarzania. Zadarma ma własne rozpoznawanie mowy pod zdarzeniem SPEECH_RECOGNITION, ale zanim oprzesz na nim proces, sprawdź jakość na polskich nagraniach z realnych warunków: telefon z samochodu brzmi inaczej niż demo.
SMS transakcyjny kontra marketingowy
SMS jest w tej układance najprostszy technicznie i najbardziej ryzykowny prawnie. Metoda /sms/send/ przyjmuje numer (lub do dwudziestu naraz), treść i nadawcę: Twój numer wirtualny albo alfanumeryczny SenderID, czyli wcześniej zarejestrowaną nazwę firmy. Odpowiedź zwraca status wysyłki, koszt i powód ewentualnego niepowodzenia, więc masz co zapisać przy kliencie.
Art. 398 Prawa komunikacji elektronicznej, obowiązującego od 10 listopada 2024 roku, zabrania używania telekomunikacyjnych urządzeń końcowych do marketingu bezpośredniego bez uprzedniej zgody odbiorcy. Usunięto z niego spójnik, który wcześniej pozwalał na spory o to, czy zgoda dotyczy wyłącznie systemów automatycznych, więc dzisiaj marketing SMS-em wymaga zgody także wtedy, gdy wiadomość wysyła człowiek ręcznie. Zgoda musi spełniać wymogi RODO (dobrowolna, konkretna, świadoma, jednoznaczna), dotyczyć wskazanego kanału i być udokumentowana tak, żeby dało się wykazać jej treść. Obejmuje też kontakty B2B, jeśli numer pozwala zidentyfikować osobę fizyczną.
Praktyczny podział, który stosujemy w CRM-ach:
| Typ SMS-a | Przykład | Czego wymaga |
|---|---|---|
| Transakcyjny | potwierdzenie rezerwacji, przypomnienie o wpłacie, kod do odbioru | wykonania umowy; osobna zgoda marketingowa zbędna |
| Serwisowy | zmiana godziny odjazdu, informacja o dokumentach | jak wyżej, o ile treść nie zawiera oferty |
| Marketingowy | promocja, oferta last minute, newsletter | uprzedniej zgody na kanał SMS, udokumentowanej i odwoływalnej |

W CRM-ie zbuduj od razu pole zgody marketingowej razem z datą, źródłem i treścią klauzuli, a nie sam haczyk. Dołóż do tego twardą blokadę w kodzie, która nie pozwoli wysłać wiadomości oznaczonej jako marketingowa do kontaktu bez zgody. Bez niej ktoś prędzej czy później wyśle ofertę do całej bazy przez pomyłkę w filtrze.
Nazwy nadawcy też nie wybieraj przypadkowo. Ustawa o zwalczaniu nadużyć w komunikacji elektronicznej powołała prowadzony przez UKE wykaz nadpisów zastrzeżonych dla podmiotów publicznych, żeby nikt nie podszywał się pod urzędy i banki. Wniosek dla firmy prywatnej: rejestruj SenderID pod własną, rozpoznawalną nazwą.
Routing połączeń i miejsce dla n8n
Routing rozdziel na dwa poziomy, bo mieszanie ich kończy się logiką rozrzuconą po dwóch systemach. Na poziomie centrali ustawiasz raz godziny pracy, kolejkę, IVR, pocztę głosową i przekierowanie na komórkę. Na poziomie CRM-u kierujesz do konkretnej osoby na podstawie tego, co system wie o dzwoniącym (opiekun, otwarta reklamacja, wyjazd w tym tygodniu), a decyzja zapada w odpowiedzi na NOTIFY_START.
n8n wchodzi tam, gdzie połączenie ma pociągnąć za sobą coś poza CRM-em:
- Nieodebrane poza godzinami. Webhook trafia do workflow, ten zakłada zadanie z terminem, wysyła klientowi SMS-a „oddzwonimy rano" i wrzuca podsumowanie na kanał zespołu. Jedna wiadomość, nie trzy.
- Rozmowa kończy proces. Po zamknięciu rozmowy oznaczonej jako ustalenie warunków workflow generuje ofertę, wysyła ją mailem i przesuwa etap w pipelinie. Zbliżony wzorzec opisaliśmy przy integracji Pipedrive z n8n.
- Wzbogacenie danych. Nowy numer spoza bazy uruchamia lookup i wstępne uzupełnienie kontaktu, żeby handlowiec nie zaczynał od pustej karty.
Oficjalnego node'a Zadarmy w n8n nie ma. Do wysyłania używasz węzła HTTP Request (podpis liczysz w węźle Code), do odbierania zwykłego Webhooka. Kilkanaście minut roboty, a w zamian masz historię wykonań, ponawianie po błędzie i miejsce na kolejne systemy bez ruszania kodu CRM-u.
Alternatywy i kiedy Zadarma nie jest dobrym wyborem
| Rozwiązanie | Kiedy pasuje |
|---|---|
| Gotowa integracja Zadarmy z popularnym CRM | Pipedrive, HubSpot, Bitrix24, Zoho, Salesforce, Zendesk, monday.com; włączasz w panelu, część bez dodatkowej opłaty |
| CPaaS (Twilio, Vonage, MessageBird) | budujesz produkt, nie firmową linię; dojrzałe API, ale bez centrali w komplecie |
| Polscy operatorzy VoIP | liczy się umowa po polsku, SLA, wsparcie w tej samej strefie czasowej |
| 3CX i centrale we własnej infrastrukturze | pełna kontrola nad nagraniami, kosztem utrzymania serwera |
Przy popularnym CRM cały ten artykuł sprowadza się do wypełnienia formularza, a Twoja praca to poukładanie procesu wokół rejestru rozmów, opisane szerzej przy automatyzacji CRM na przykładzie Pipedrive.
Kiedy Zadarma jest złym wyborem? Gdy potrzebujesz umowy i wsparcia po polsku z gwarantowanym czasem reakcji. Gdy wymogi wewnętrzne każą trzymać nagrania wyłącznie u siebie. Gdy skala jest na tyle duża, że negocjowany cennik u operatora krajowego wygrywa z prostotą wdrożenia. I gdy nie ma w firmie nikogo, kto zajrzy do logów webhooków, bo pierwsza cicha awaria oznacza tydzień połączeń nigdzie nie zapisanych.
Na co uważać
- Webhooki potrafią umrzeć po cichu. Zmiana certyfikatu, przeniesienie endpointu, chwilowa awaria i połączenia przestają się zapisywać. Nikt tego nie zauważy, bo telefon dalej dzwoni. Ustaw alert na „zero zdarzeń w godzinach pracy" i raz na dobę porównuj liczby ze statystykami centrali.
- Marketing przebrany za powiadomienie. SMS o statusie rezerwacji z dopisanym „a przy okazji mamy promocję" przestaje być transakcyjny. Rozdziel treści i szablony.
- Brak procesu na nieodebrane. Sam rejestr niczego nie załatwia. Nieodebrane musi zamieniać się w zadanie z właścicielem i terminem, inaczej firma zyskuje tylko ładniejszy widok tego, ile traci.
FAQ
Czy Zadarma ma gotową integrację z CRM, czy trzeba ją programować?
Dla popularnych systemów (Pipedrive, HubSpot, Bitrix24, Zoho, Salesforce, Zendesk, monday.com) integracje są gotowe i włącza się je w panelu, a część operator udostępnia bez dodatkowej opłaty. Przy customowym CRM budujesz ją sam na API i webhookach: potrzebujesz endpointu przyjmującego powiadomienia o połączeniach i wywołania metody callback do dzwonienia z karty klienta.
Jak działa dzwonienie jednym kliknięciem z karty klienta?
Dwoma sposobami. Callback: CRM woła metodę /request/callback/, centrala dzwoni najpierw do handlowca, a po odebraniu łączy go z klientem, więc działa z dowolnym telefonem. Widget WebRTC: rozmowa idzie przez przeglądarkę, ale jakość zależy od sieci i sprzętu. Pierwsze wygodniejsze w terenie, drugie przy biurku.
Czy mogę nagrywać rozmowy z klientami zgodnie z RODO?
Możesz, ale nagranie jest daną osobową. Rozmówcę trzeba poinformować o nagrywaniu, jego celu i administratorze (standardem jest zapowiedź na początku rozmowy z odesłaniem do pełnej klauzuli), ustalić podstawę prawną przetwarzania, wyznaczyć i egzekwować czas przechowywania oraz ograniczyć dostęp do nagrań w systemie. Transkrypcja przez zewnętrzny model AI dokłada kolejnego odbiorcę danych i wpis w rejestrze czynności przetwarzania.
Czy na wysyłkę SMS-ów do klientów potrzebna jest zgoda?
Zależy od treści. Wiadomości transakcyjne i serwisowe wynikające z umowy (potwierdzenie rezerwacji, przypomnienie o płatności, zmiana godziny) osobnej zgody marketingowej nie wymagają. Każda wiadomość o charakterze marketingu bezpośredniego wymaga uprzedniej zgody na kanał SMS na podstawie art. 398 Prawa komunikacji elektronicznej, obowiązującego od 10 listopada 2024 roku. Zgoda musi spełniać wymogi RODO i być udokumentowana, a przepis obejmuje też kontakty B2B, gdy numer pozwala zidentyfikować osobę fizyczną.
Ile trwa i kosztuje wpięcie telefonii we własny CRM?
Z naszej praktyki podstawowy zakres (rejestr połączeń przy kliencie, click-to-call, zadania z nieodebranych, SMS-y transakcyjne) mieści się w kilku dniach roboczych i w widełkach pojedynczej automatyzacji, czyli zwykle 3–10 tys. zł. Koszty rosną wraz z nagraniami, transkrypcją, routingiem opartym na danych z CRM-u i migracją historii. Osobno dochodzi abonament operatora: centrala, numery, minuty i SMS-y według aktualnego cennika.
Podsumowanie
Integracja telefonii z CRM-em nie jest projektem o dzwonieniu. Chodzi w niej o to, żeby historia kontaktu z klientem powstawała bez udziału człowieka, bo człowiek jej nie wpisze. Rejestr połączeń przy karcie klienta, nieodebrane zamienione w zadania z terminem i SMS-y wysyłane z tego samego miejsca, w którym stoją dane, zmieniają codzienną pracę sprzedaży bardziej niż kolejne pole w formularzu.
Zadarma daje do tego wszystko: webhooki na start, odebranie i koniec rozmowy, callback i widget WebRTC, metodę do SMS-ów i dostęp do nagrań. Największe ryzyka nie leżą w kodzie, tylko obok niego: nienormalizowane numery, webhook, który umarł po cichu, nagrywanie włączone bez zapowiedzi i marketing przemycony w wiadomości transakcyjnej.
Zastanawiasz się, czy u Was wystarczy gotowa integracja, czy potrzebne jest wdrożenie po stronie własnego systemu? Umów bezpłatną konsultację — powiemy wprost, jeśli wystarczy włączyć integrację w panelu i żaden projekt nie jest potrzebny.
Przeczytaj również
- Kiedy gotowy CRM przestaje wystarczać: customowy CRM w praktyce
- Pipedrive + n8n: lead z formularza w CRM w 30 sekund (z SMS-em do handlowca)
- Automatyzacja CRM na przykładzie Pipedrive: 10 gotowych workflow dla zespołu sprzedaży
- Voicebot dla firmy: co potrafią agenci głosowi w 2026
- Automatyzacja obsługi klienta: chatboty, tickety, SLA, eskalacje
