NetSendo Logo

E-mail marketing w n8n z NetSendo na własnym serwerze

Aktualizacja: · 13 min czytania · NetSendo Team

Okładka: E-mail marketing w n8n z NetSendo. Cztery automatyzacje na własnym serwerze i podpisane webhooki

Do czego służy połączenie n8n i NetSendo?

n8n łączy narzędzia, a NetSendo wysyła e-maile i SMS-y. n8n nasłuchuje sklepu, formularzy i innych aplikacji, a potem wywołuje NetSendo, żeby dodać subskrybenta albo wysłać wiadomość. W drugą stronę NetSendo powiadamia n8n o zdarzeniach (zapis, wypis, odbicie) przez podpisany webhook. Jeśli oba systemy stoją na Twoich serwerach, dane subskrybentów krążą między dwiema aplikacjami, które kontrolujesz, i nie przechodzą przez zewnętrzną usługę automatyzacji.

Łącznikiem jest oficjalny community node n8n-nodes-netsendo. Wersja 1.3.2 ukazała się 5 września 2026 r. na licencji MIT i dodaje dwa node'y:

  • NetSendo: node akcji z sześcioma zasobami (Subscriber, List, Tag, Email, SMS, Pixel).
  • NetSendo Trigger: uruchamia workflow, gdy NetSendo wyśle zdarzenie, np. subscriber.created albo subscriber.unsubscribed.

Oba korzystają z REST API v1 NetSendo (https://twoja-domena/api/v1) z kluczem API w nagłówku Bearer (dokumentacja API).

Schemat czterech workflow n8n z NetSendo: zamówienie z WooCommerce do subskrybenta z tagiem, formularz ze strony do listy, zdarzenia wypisu i odbicia z NetSendo do Slacka i CRM oraz cotygodniowy harmonogram pobierający dane higieny listy do raportu Cztery workflow z tego poradnika. Fioletowe node'y pochodzą z n8n-nodes-netsendo, szare są wbudowane w n8n.

Kiedy użyć n8n zamiast automatyzacji w NetSendo?

n8n służy do przenoszenia danych między systemami, a logika wysyłek zostaje w NetSendo. Sekwencje powitalne, lejki i reguły automatyzacji oparte na tagach są częścią NetSendo, więc działają tam, gdzie leżą dane subskrybenta. n8n przydaje się, gdy proces przechodzi przez kilka systemów: zamówienie w sklepie ma stać się subskrybentem, wypis ma trafić do CRM, a raport do Slacka.

Najpierw sprawdź integracje natywne. README NetSendo wymienia WordPress, WooCommerce, Stripe, Polar i Shopify. Jeśli któraś robi to, czego potrzebujesz, masz o jeden element mniej do utrzymania.

Czego potrzebujesz na start?

Czterech rzeczy:

  1. n8n na własnym serwerze. Dokumentacja n8n mówi, że „Unverified community nodes aren't available on n8n cloud and require self-hosting n8n”, a instalacja z npm działa tylko w instancjach self-hosted (n8n docs). Wystarczy Community Edition w Dockerze.
  2. Działającej instalacji NetSendo z HTTPS. Jeśli jej jeszcze nie masz, szybki start to git clone, cp .env.example .env i docker compose up -d. Licencja SILVER jest bezpłatna do użytku we własnej firmie; płacisz za serwer i dostawcę wysyłki.
  3. Publicznego adresu HTTPS dla n8n, żeby NetSendo mogło dostarczać webhooki. Za reverse proxy ustaw N8N_WEBHOOK_URL (zastępuje WEBHOOK_URL, wycofywany od n8n 2.35.0) na publiczny adres (n8n docs).
  4. Konta Owner lub Admin w n8n. Tylko te role mogą instalować community nodes (n8n docs).

Jak zainstalować community node NetSendo w n8n?

W edytorze n8n wejdź w Settings → Community Nodes → Install, wpisz n8n-nodes-netsendo, zaznacz pole potwierdzające, że rozumiesz ryzyko niezweryfikowanego kodu, i kliknij Install. Tak wygląda cała instalacja z interfejsu według dokumentacji n8n. Możesz przypiąć wersję, np. n8n-nodes-netsendo@1.3.2.

Są jeszcze dwie metody:

  • Instalacja ręczna (tryb queue albo paczki prywatne). Otwórz powłokę w kontenerze (docker exec -it n8n sh), utwórz katalog ~/.n8n/nodes i wejdź do niego, uruchom npm i n8n-nodes-netsendo i zrestartuj n8n (instalacja ręczna).
  • Zmienne środowiskowe (stały zestaw paczek przy starcie). Według dokumentacji n8n potrzebne są dwie zmienne i tablica JSON:
N8N_COMMUNITY_PACKAGES_MANAGED_BY_ENV=true
N8N_COMMUNITY_PACKAGES='[{"name":"n8n-nodes-netsendo","version":"1.3.2"}]'

Zanim wybierzesz tę metodę, przeczytaj zastrzeżenia. Przy pierwszym starcie n8n odinstalowuje community nodes spoza listy, strona Community Nodes przechodzi w tryb tylko do odczytu, a niezweryfikowana paczka może zablokować start n8n, chyba że pozwala na nią N8N_UNVERIFIED_PACKAGES_ENABLED albo przypniesz checksum.

O ryzyku. n8n ostrzega, że community nodes mają „full access to the machine that n8n runs on” i do danych w Twoich workflow (ryzyka). Node NetSendo jest na licencji MIT, a jego kod leży na GitHubie, więc możesz go przejrzeć przed instalacją. Przypnij wersję i przed aktualizacją czytaj listę zmian.

Jak połączyć n8n z NetSendo?

Utwórz klucz API w NetSendo, a potem w n8n dane logowania NetSendo API z dwoma polami: adresem instalacji i kluczem.

  1. W NetSendo wejdź w Ustawienia → Klucze API i utwórz klucz. Ma format ns_live_… i wyświetla się tylko raz (dokumentacja API).
  2. W n8n wejdź w Credentials → Create New, wyszukaj NetSendo API i uzupełnij:
    • Base URL: główny adres instalacji NetSendo, np. https://mail.twojafirma.pl, bez /api/v1. Node sam dopisuje tę ścieżkę.
    • API Key: klucz ns_live_….
  3. Zapisz. n8n testuje połączenie żądaniem GET /api/v1/lists, więc klucz potrzebuje lists:read.

Nadaj kluczowi tylko te uprawnienia, których używają Twoje workflow. README node'a podaje je tak:

Workflow, które używają… Uprawnienia
Subskrybentów i list subscribers:read, subscribers:write, lists:read
E-maili email:read, email:write
SMS sms:read, sms:write
NetSendo Trigger webhooks:read, webhooks:write

Źródło: README n8n-nodes-netsendo, v1.3.2. subscribers:write obejmuje subscribers:read (dokumentacja API).

Do różnych zadań używaj różnych kluczy, np. jednego tylko do odczytu dla raportów i drugiego z prawem zapisu dla synchronizacji sklepu. Wyciek klucza raportowego nie pozwoli wtedy nikomu wysłać maila.

Co potrafi node NetSendo?

Node akcji obsługuje subskrybentów, listy, wysyłkę i śledzenie zdarzeń. Nie zarządza kampaniami, automatyzacjami, tagami ani higieną listy; do tego użyj REST API przez node HTTP Request albo serwera MCP, jeśli pracę prowadzi człowiek.

Zasób Operacje w v1.3.2 Przydatne szczegóły
Subscriber Get Many, Get, Get by Email, Create, Update, Delete Create wymaga Email i Contact List; opcjonalnie First/Last Name, Phone, Source, Status, Client IP Address, User-Agent, Device Type i pola własne. Delete to usunięcie miękkie (soft delete).
List Get Many, Get, Get Subscribers Get Subscribers filtruje po statusie: active, inactive, unsubscribed, bounced.
Tag Get Many, Get Tylko odczyt.
Email Send, Send Batch, Get Status, List Mailboxes Wysyłka zbiorcza do listy, tagów albo ID subskrybentów, z wykluczeniem list i planowaniem.
SMS Send, Send Batch, Get Status, List Providers Odbiorców wybierasz spośród subskrybentów listy, którzy mają numer telefonu.
Pixel Track Event, Batch Track Events Wysyła zdarzenia, np. page_view albo purchase.

Źródło: README i definicje node'a n8n-nodes-netsendo, v1.3.2, sprawdzone 17.10.2026.

README NetSendo Trigger wymienia zdarzenia: subscriber.created, subscriber.updated, subscriber.deleted, subscriber.subscribed, subscriber.unsubscribed, subscriber.bounced, subscriber.tag_added, subscriber.tag_removed, email.queued, sms.queued, sms.sent i sms.failed. Gdy aktywujesz workflow, trigger rejestruje w NetSendo webhook o nazwie „n8n Workflow: nazwa workflow” i zapisuje zwrócony przez NetSendo sekret do podpisów. Gdy go dezaktywujesz, trigger usuwa ten webhook.

Każde zdarzenie przychodzi jako JSON z polami event, timestamp i data. Przy zdarzeniach subskrybenta data zawiera obiekt subscriber (z id, email, first_name i innymi polami), a zwykle także list_id i list_name (opis payloadu).

Workflow 1: jak dodać klientów WooCommerce do NetSendo z tagiem?

Reagujesz na opłacone zamówienia w WooCommerce, tworzysz albo aktualizujesz subskrybenta na liście „Klienci” i jednym żądaniem HTTP ustawiasz tag. Cztery node'y.

1. WooCommerce Trigger. Event: order.updated (node oferuje też m.in. order.created i customer.created, według dokumentacji n8n). Dzięki order.updated reagujesz, gdy zamówienie zostanie opłacone, a nie w chwili jego złożenia.

2. IF. Przepuść tylko zamówienia, w których {{ $json.status }} to processing albo completed. Jeśli w koszyku zbierasz zgodę marketingową, np. checkbox zapisywany w metadanych zamówienia, dodaj ten warunek tutaj. Bez zgody nie dopisuj kupujących do list marketingowych; w Polsce poza RODO obowiązują też przepisy o zgodzie na komunikację elektroniczną.

3. NetSendo → Subscriber → Create.

  • Email: {{ $json.billing.email }}
  • Contact List: Klienci (wybierasz z listy rozwijanej, którą node pobiera z NetSendo)
  • Additional Fields → First Name / Last Name / Phone: {{ $json.billing.first_name }}, {{ $json.billing.last_name }}, {{ $json.billing.phone }}
  • Additional Fields → Source: woocommerce
  • Custom Fields: np. ostatnie_zamowienie = {{ $json.total }}. Pole musi już istnieć w NetSendo; lista rozwijana pokazuje Twoje pola własne.

Osobny krok „znajdź albo utwórz” nie jest potrzebny. Jeśli adres już istnieje, NetSendo dopisuje go do listy albo reaktywuje i odpowiada kodem 200 zamiast 201, bez tworzenia duplikatu (dokumentacja API). Nowe członkostwo na liście uruchamia też jej sekwencję autorespondera.

4. HTTP Request (tagi). Node w wersji 1.3.2 tylko odczytuje tagi, więc ustawiasz je udokumentowanym endpointem REST:

  • Method: POST
  • URL: https://mail.twojafirma.pl/api/v1/subscribers/{{ $json.id }}/tags
  • Authentication: Generic Credential Type → Header Auth, Name Authorization, Value Bearer ns_live_… (n8n docs)
  • Body (JSON): {{ JSON.stringify({ tags: [...new Set([...$json.tags.map(t => t.id), 12])] }) }}

Ten endpoint zastępuje wszystkie tagi subskrybenta (dokumentacja API), dlatego wyrażenie bierze dotychczasowe ID tagów z wyniku kroku 3 i dokłada nowe (tu 12, czyli ID tagu „klient”; sprawdzisz je raz przez Tag → Get Many). Dodanie tagu wywołuje zdarzenie subscriber.tag_added, którym możesz uruchomić automatyzację w NetSendo.

Workflow 2: jak wysłać formularz ze strony na listę w NetSendo i co z double opt-in?

Jeśli zgoda jest już obsłużona, formularz trafia do node'a Webhook w n8n, a subskrybent powstaje z prawdziwym adresem IP i przeglądarką odwiedzającego. Jeśli potrzebujesz double opt-in, adres powinien zebrać formularz NetSendo, bo kontakty dodane przez API omijają krok potwierdzenia.

Ścieżka A: formularz → n8n → NetSendo (single opt-in)

1. Webhook. HTTP Method: POST, ścieżka np. zapis-newsletter, Respond: Using 'Respond to Webhook' Node. Jeśli formularz przekazuje backend Twojej strony (a nie przeglądarka odwiedzającego prosto do n8n), zabezpiecz webhook przez Header auth albo opcję IP(s) Allowlist i każ backendowi przesyłać IP odwiedzającego w treści (n8n docs).

2. IF. Przepuść tylko zgłoszenia z zaznaczoną zgodą, np. {{ $json.body.zgoda }} równe true. Odrzuć też te, w których wypełniono pole-pułapkę (honeypot).

3. NetSendo → Subscriber → Create.

  • Email: {{ $json.body.email }}, Contact List: Newsletter
  • First Name: {{ $json.body.imie }}, Source: formularz-www
  • Client IP Address: {{ $json.headers["x-forwarded-for"] }}, gdy przeglądarka wysyła formularz do n8n przez Twoje reverse proxy, albo pole z IP od backendu
  • User-Agent: {{ $json.headers["user-agent"] }}

IP i User-Agent przekazuj celowo. Bez nich NetSendo zapisze adres i przeglądarkę n8n, bo to n8n wywołuje API. README node'a dodało te pola w wersji 1.3.0 właśnie z tego powodu, a przydają się, gdy trzeba wykazać, skąd i jak ktoś się zapisał.

Imię z polskiego formularza przyda się podwójnie: NetSendo ma wstawkę [[!fname]] z imieniem w wołaczu („Cześć Janie”) i formę zależną od płci {{męska|żeńska}} (wstawki w NetSendo).

4. Respond to Webhook. Zwróć krótki JSON albo przekieruj na stronę z podziękowaniem.

Ścieżka B: double opt-in

Kontakty dodane przez API dostają domyślnie status Active (dokumentacja API). NetSendo nie wysyła im maila z potwierdzeniem, a sekwencja listy startuje od razu. To pasuje do źródeł, w których zgoda jest już potwierdzona, np. checkbox w koszyku. Double opt-in to nie jest.

Jeśli potrzebujesz double opt-in, co w Polsce i w Niemczech jest powszechną praktyką, umieść na stronie formularz NetSendo dla listy z włączonym potwierdzaniem zapisu. Wtedy NetSendo wysyła mail z linkiem aktywacyjnym i uruchamia sekwencję po kliknięciu. n8n wpinasz dopiero później, np. jak w workflow 3, zamiast stawiać go między formularzem a listą.

Workflow 3: jak przesłać wypisy i odbicia z NetSendo do Slacka albo CRM?

Workflow startuje od NetSendo Trigger, rozdziela zdarzenia według nazwy i wysyła wiadomość na Slacka albo aktualizuje CRM. Trzy, cztery node'y, bez odpytywania API.

1. NetSendo Trigger. Events: Subscriber Unsubscribed i Subscriber Bounced. Aktywuj workflow; NetSendo ma teraz webhook skierowany na n8n.

2. Switch. Rozdziel po {{ $json.event }}: subscriber.unsubscribed i subscriber.bounced.

3a. Slack → Message → Send a message (n8n docs). Kanał: #marketing-alerty. Treść, np.: Wypis: {{ $json.data.subscriber.email }} z listy {{ $json.data.list_name }}. Zdarzenia odbicia mają w data pola bounce_type i bounce_reason.

3b. Twój CRM. Użyj node'a n8n dla swojego CRM albo HTTP Request do jego API i ustaw status e-mail kontaktu. Dzięki temu handlowcy nie wyślą ręcznego follow-upu komuś, kto się wypisał.

Dwa nawyki sprawiają, że ten workflow działa stabilnie:

  • Idempotentność. Traktuj dwukrotne nadejście tego samego zdarzenia jako normalne. Najpierw wyszukaj kontakt w CRM i zmieniaj go tylko wtedy, gdy status jest inny.
  • Licznik błędów. NetSendo wyłącza webhook po 10 kolejnych nieudanych dostarczeniach (dokumentacja webhooków). Jeśli n8n długo nie działał, aktywuj workflow ponownie, a zaległości wyłap zadaniem według harmonogramu, takim jak workflow 4.

Pamiętaj o danych osobowych. Adres e-mail na kanale Slacka to dane osobowe w systemie kolejnego podmiotu przetwarzającego. Tam, gdzie adres nie jest potrzebny, wysyłaj liczby albo ID subskrybenta.

Workflow 4: jak zbudować cotygodniowy raport higieny listy?

Według harmonogramu odczytujesz wszystkie listy, pytasz endpoint higieny NetSendo o ocenę zdrowia i wysyłasz krótkie podsumowanie. Workflow tylko czyta dane i niczego nie zmienia.

1. Schedule Trigger. Trigger Interval: Weeks, poniedziałek, 8:00, albo wyrażenie cron 0 8 * * 1. Harmonogram używa strefy czasowej workflow, a jeśli jej nie ustawisz, strefy instancji. Działa dopiero po opublikowaniu workflow (n8n docs).

2. NetSendo → List → Get Many. Ta operacja zwraca jedną stronę list. W Options ustaw Per Page tak, żeby objąć wszystkie listy (domyślnie 25).

3. HTTP Request (higiena). Method GET, URL https://mail.twojafirma.pl/api/v1/lists/{{ $json.id }}/hygiene, te same dane Header Auth co w workflow 1. Klucz potrzebuje lists:read. Według dokumentacji API odpowiedź zawiera ocenę zdrowia od 0 do 100, liczności w kategoriach problemów (np. hard_bounced, disposable_domain, never_engaged, dormant) wraz z próbkami, podział zaangażowania i uszeregowane rekomendacje.

4. Set albo Code. Zostaw nazwę listy, ocenę i liczności kategorii. Usuń próbki, bo zawierają prawdziwe adresy.

5. Aggregate, a potem Slack → Send a message albo NetSendo → Email → Send do siebie. W mailu ustaw Email Address, Subject (np. Zdrowie list, tydzień {{ $now.toFormat('W') }}) i Content (HTML) zbudowany z zagregowanych wierszy.

Działa też wersja z samym node'em NetSendo: List → Get Subscribers z włączonym Return All i Status = Bounced, potem Status = Unsubscribed, i policzenie elementów. Tracisz wtedy ocenę i kategorie.

Samego czyszczenia nie automatyzuj. Endpointy clean i dedupe działają domyślnie z dry_run=true, a akcje nieodwracalne wymagają confirm=true, i to nie bez powodu. Niech raport trafi do człowieka, a decyzję podejmie człowiek.

Jak zabezpieczyć webhooki między NetSendo a n8n?

Używaj zarejestrowanych (podpisanych) webhooków, sprawdzaj podpis na surowej treści i ograniczaj uprawnienia kluczy. W skrócie:

  1. Wybieraj webhooki zarejestrowane przez API zamiast webhooka listy. Webhooki utworzone przez API (tak robi NetSendo Trigger) są podpisywane HMAC-SHA256 i mają nagłówki X-NetSendo-Signature, X-NetSendo-Event oraz User-Agent: NetSendo-Webhook/1.0 (dokumentacja NetSendo). Adres webhooka w ustawieniach listy nie ma sekretu, więc jego żądania nie są podpisane.

  2. Wiedz, co sprawdza trigger. W wersji 1.3.2 NetSendo Trigger porównuje podpis, gdy żądanie ma nagłówek. Żądanie bez nagłówka nie jest odrzucane. Traktuj adres webhooka n8n jak sekret i nie wklejaj go do zgłoszeń ani na zrzuty ekranu.

  3. Do ścisłej weryfikacji sprawdzaj surową treść sam. Zarejestruj webhook przez POST /api/v1/webhooks (pola name, url, events), zapisz secret z odpowiedzi (nie zostanie pokazany ponownie) i skieruj webhook na zwykły node Webhook w n8n:

    • Webhook z włączoną opcją Raw Body.
    • Crypto → Hmac: Type SHA256, Binary File włączone (surowa treść), Encoding HEX, a sekret webhooka zapisany jako Hmac Secret w danych logowania Crypto (n8n docs).
    • IF: wyliczona wartość równa się {{ $('Webhook').item.json.headers['x-netsendo-signature'] }}. Przy fałszu zatrzymaj workflow.

    Licz skrót z bajtów w takiej postaci, w jakiej przyszły. Jeśli sparsujesz JSON i zserializujesz go ponownie, zmienić się mogą znaki ucieczki (np. przy polskich znakach) i kolejność kluczy, a skrót przestanie się zgadzać.

  4. Ogranicz, kto może wywołać n8n. Opcja IP(s) Allowlist w node'zie Webhook zwraca 403 wszystkim spoza listy (n8n docs). Jeśli NetSendo i n8n są w tej samej sieci Dockera albo w sieci prywatnej, trzymaj ruch tam.

  5. Zawężaj i wymieniaj klucze. Jeden klucz na grupę workflow, minimum uprawnień i nowy klucz, gdy ktoś odchodzi z zespołu. Klucz z email:write może wysłać maila do całej bazy.

Strona o webhookach w dokumentacji NetSendo ma przykład weryfikacji podpisu w Node.js.

Jakie są ograniczenia zestawu n8n + NetSendo?

Większość ograniczeń wynika z n8n, a nie z NetSendo. Poznaj je, zanim zaczniesz:

  • Limit API: 3000 żądań na minutę na klucz; powyżej NetSendo zwraca 429 (dokumentacja API). Grupuj operacje, gdzie się da: Send Batch dla wiadomości i POST /api/v1/subscribers/batch przy masowym dodawaniu.
  • Zakres node'a: v1.3.2 nie ma operacji dla kampanii, automatyzacji, lejków, zapisu tagów ani higieny listy. Do tego służy HTTP Request z tym samym API.
  • Stronicowanie: Subscriber → Get Many i List → Get Subscribers zwracają do 5000 elementów, chyba że włączysz Return All. List → Get Many zwraca jedną stronę o rozmiarze z opcji Per Page.
  • Wolumen wysyłki nie jest ograniczony przez NetSendo; zależy od dostawcy (Amazon SES, Mailgun, SendGrid, SMTP albo NMI). Za dostarczalność na własnym serwerze odpowiadasz Ty: zobacz poradnik o dostarczalności.
  • Aktualizacje community nodes mogą psuć workflow (ryzyka w n8n). Przypnij wersję i testuj aktualizacje na kopii.

n8n czy serwer MCP: czego potrzebujesz?

Oba korzystają z tego samego API NetSendo, ale do innych zadań. n8n uruchamia stałe workflow na zdarzenia i według harmonogramu, bez udziału człowieka. Serwer MCP pozwala asystentowi AI, np. Claude albo Cursorowi, pracować z NetSendo na Twoje polecenie, np. „podsumuj wypisy z zeszłego tygodnia”. Wersja 1.5.1 paczki @netsendo/mcp-client ma 77 narzędzi. Zobacz poradnik o serwerze MCP na własnym serwerze i stronę dla agentów.

Dopiero wybierasz platformę? Porównaj programy do email marketingu na własnym serwerze, sprawdź ile kosztuje wysyłka do 10, 50 i 100 tys. kontaktów albo przeczytaj o alternatywie dla Mailchimp na własnym serwerze. NetSendo nie jest open source, tylko source-available; co to oznacza.

Podsumowanie

Zainstaluj n8n-nodes-netsendo w n8n na własnym serwerze, dodaj dane logowania NetSendo API z wąsko zawężonym kluczem i zacznij od jednego workflow, zwykle zamówień ze sklepu na listę klientów. NetSendo Trigger obsłuży zdarzenia wychodzące z NetSendo, HTTP Request funkcje API, których node jeszcze nie ma (tagi, higiena listy), a formularz NetSendo każdy zapis z double opt-in. Komendę instalacji znajdziesz na stronie integracji z n8n.

Najczęściej zadawane pytania

Czy node NetSendo działa w n8n Cloud?
Zaplanuj n8n na własnym serwerze. Dokumentacja n8n mówi, że instalacja community nodes z npm jest dostępna tylko w instancjach self-hosted, a niezweryfikowane community nodes nie są dostępne w n8n Cloud. Node NetSendo instalujesz z npm (n8n-nodes-netsendo).
Czy node NetSendo w n8n potrafi dodać tag subskrybentowi?
W wersji 1.3.2 nie. Zasób Tag tylko odczytuje tagi (Get Many, Get). Tagi ustawisz udokumentowanym endpointem REST POST /api/v1/subscribers/{id}/tags przez node HTTP Request. Endpoint zastępuje wszystkie tagi subskrybenta, więc wyślij dotychczasowe ID tagów razem z nowym.
Czy subskrybent dodany z n8n dostaje mail z potwierdzeniem zapisu (double opt-in)?
Nie. Node korzysta z REST API, które domyślnie dodaje kontakt ze statusem Active i od razu uruchamia sekwencję listy. Jeśli potrzebujesz double opt-in, niech adres zbiera formularz NetSendo na liście z włączonym potwierdzaniem zapisu, a n8n zajmie się tym, co dzieje się później.
Jak sprawdzić podpis webhooka NetSendo w n8n?
NetSendo podpisuje każdy zarejestrowany webhook algorytmem HMAC-SHA256 i wysyła skrót hex w nagłówku X-NetSendo-Signature. W n8n odbierz żądanie node'em Webhook z opcją Raw Body, policz Hmac (SHA256, HEX) surowej treści node'em Crypto z sekretem webhooka i porównaj obie wartości w node'zie IF.
Jakich uprawnień klucza API potrzebuje n8n?
Tylko tych, których używają Twoje workflow. README node'a wymienia subscribers:read, subscribers:write i lists:read dla subskrybentów i list, email:read i email:write dla e-maili, sms:read i sms:write dla SMS oraz webhooks:read i webhooks:write dla triggera. Raport higieny listy wymaga lists:read.
Czy API NetSendo jest w darmowej licencji?
Cennik NetSendo wymienia „Public API & MCP Server” w planie SILVER, czyli w bezpłatnej licencji do użytku we własnej firmie. Za serwer i dostawcę wysyłki płacisz osobno.
Automatyzacje budować w n8n czy w NetSendo?
Sekwencje, lejki i reguły oparte na tagach trzymaj w NetSendo, bo tam jest kontekst subskrybenta. n8n używaj do przenoszenia danych między systemami: zamówienia ze sklepu, zdarzenia do Slacka lub CRM, raporty według harmonogramu. Jeśli NetSendo ma natywną integrację, np. z WooCommerce lub Stripe, zacznij od niej.

Wypróbuj NetSendo na własnym serwerze

E-mail i SMS marketing na własnym serwerze z darmową licencją Silver. Instalacja przez Docker Compose w kilka minut.

Źródła

  1. npm: n8n-nodes-netsendo (README v1.3.2, publikacja 2026-09-05) · sprawdzono 2026-10-17
  2. GitHub: NetSendo/n8n-nodes-netsendo (kod node'a, MIT) · sprawdzono 2026-10-17
  3. NetSendo: dokumentacja API v1 (subskrybenci, tagi, higiena listy, limity) · sprawdzono 2026-10-17
  4. NetSendo: implementacja triggera n8n (endpointy webhooków, payload, nagłówki) · sprawdzono 2026-10-17
  5. NetSendo: wstawki w wiadomościach (wołacz, forma zależna od płci) · sprawdzono 2026-10-17
  6. NetSendo README (funkcje, integracje, licencja) · sprawdzono 2026-10-17
  7. n8n docs: Install community nodes · sprawdzono 2026-10-17
  8. n8n docs: Install community nodes from the GUI · sprawdzono 2026-10-17
  9. n8n docs: Manual install · sprawdzono 2026-10-17
  10. n8n docs: Environment variable installation · sprawdzono 2026-10-17
  11. n8n docs: Risks of community nodes · sprawdzono 2026-10-17
  12. n8n docs: Webhook node · sprawdzono 2026-10-17
  13. n8n docs: Crypto node · sprawdzono 2026-10-17
  14. n8n docs: Schedule Trigger node · sprawdzono 2026-10-17
  15. n8n docs: WooCommerce Trigger node · sprawdzono 2026-10-17
  16. n8n docs: Slack node · sprawdzono 2026-10-17
  17. n8n docs: HTTP Request credentials (Header Auth) · sprawdzono 2026-10-17
  18. n8n docs: Configure the webhook URL · sprawdzono 2026-10-17