---
title: "Powiadomienia o zamówieniach Shopify docierające na telefon w kilka sekund"
description: "Wyślij webhooki Shopify prosto na telefon: ciche powiadomienie o każdym zamówieniu, głośniejsze o dużym koszyku i połączenie, gdy zwrot albo anulowanie potrzebuje ciebie."
date: 2026-09-09
author: Nooc
authorAvatarLink: /images/avatars/nooc.webp
authorLink: https://nooc.me
tags:
  - Shopify
  - powiadomienia o zamówieniach
  - alerty e-commerce
  - powiadomienia webhook
  - mały biznes
---

# Powiadomienia o zamówieniach Shopify docierające na telefon w kilka sekund

Maile o zamówieniach od Shopify przychodzą wtedy, gdy twojej aplikacji pocztowej zachce się zsynchronizować, lądują w folderze, który odfiltrowałeś, i wyglądają identycznie, czy zamówienie było na 12 €, czy na 1200 €. Jeśli prowadzisz sklep sam, to zły kształt sygnału.

Webhook to naprawia. Shopify wyśle każde zamówienie POST-em na wybrany przez ciebie adres, a Echobell zamieni ten POST w powiadomienie, którego głośność ustalasz ty.

## Wybierz topiki, które zasługują, by ci przerwać

Shopify nazywa typy zdarzeń webhooków **topikami**. Te cztery wystarczą większości jednoosobowych sklepów:

| Topik | Co oznacza | Pilność |
| --- | --- | --- |
| `orders/create` | Złożono zamówienie. | Zwykła |
| `orders/paid` | Płatność przeszła. Użyj tego, jeśli liczy się tylko pieniądz, który naprawdę dotarł. | Zwykła |
| `orders/cancelled` | Klient anulował. Warto wiedzieć, zanim spakujesz. | Czasowo krytyczna |
| `refunds/create` | Wystawiono zwrot. | Czasowo krytyczna |

Subskrybuj `orders/create` **albo** `orders/paid`, nie oba — chyba że naprawdę chcesz dwa powiadomienia na sprzedaż. Dla większości sklepów uczciwszy jest `orders/paid`.

## Krok 1 — Utwórz kanał

Utwórz w Echobell kanał o nazwie w rodzaju „Zamówienia Shopify", skopiuj jego adres webhooka i włącz **Tylko POST**. Shopify zawsze wysyła POST-em.

Jeśli chcesz osobny, głośniejszy kanał na anulowania i zwroty, utwórz go teraz i ustaw jako czasowo krytyczny.

## Krok 2 — Dodaj webhooka w Shopify

W panelu Shopify przejdź do **Ustawienia → Powiadomienia → Webhooki → Utwórz webhooka**. Wybierz topik, ustaw format na **JSON** i wklej adres swojego kanału.

Przy zapisie Shopify wysyła testowy payload. Jeśli telefon zawibruje, droga działa.

## Krok 3 — Do szablonu tylko te pola, które naprawdę czytasz

Payloady zamówień Shopify są długie — ponad sto pól na zamówienie. Potrzebujesz tylko kilku:

**Tytuł**

```
Nowe zamówienie #{{order_number}} · {{total_price}} {{currency}}
```

**Treść**

```
{{customer.first_name}} {{customer.last_name}}
{{line_items[0].title}}
```

`line_items` to tablica, więc `line_items[0]` to pierwsza pozycja. Szablony Echobell obsługują dostęp przez indeks, ale nie ma pętli: zamówienie na trzy pozycje pokaże pierwszą i nic więcej. Jeśli to istotne, dopisz obok liczbę:

```
{{line_items[0].title}} · łącznie {{line_items.length}} pozycji
```

W przeciwieństwie do Stripe Shopify wysyła `total_price` jako łańcuch dziesiętny — `"49.00"`, nie `4900` — więc czyta się poprawnie bez żadnej matematyki.

## Krok 4 — Routing po topiku za pomocą warunku

Jeśli skierujesz kilka topików na jeden kanał, Shopify powie w nagłówku, który to:

```
header["x-shopify-topic"] == "orders/paid"
```

To najczystszy sposób rozdzielenia zachowań bez tworzenia webhooka na kanał w panelu.

## Budź mnie tylko przy dużych zamówieniach

Schemat, którego naprawdę chce większość właścicieli sklepów: wszystkie zamówienia idą na cichy kanał, a tylko te powyżej progu na głośny.

Utwórz drugi kanał, ustaw go jako czasowo krytyczny, skieruj na niego kolejnego webhooka `orders/paid` i nadaj mu warunek:

```
total_price > 500
```

Teraz zwykły dzień to szum w tle, a zamówienie za 900 € to coś, co czujesz.

## Czego to nie robi

**Brak weryfikacji HMAC.** Shopify podpisuje każdego webhooka nagłówkiem `X-Shopify-Hmac-Sha256`. Echobell go nie weryfikuje, więc adres twojego kanału to jedyna rzecz trzymająca obcych z dala. Trzymaj go w tajemnicy, zostaw włączone **Tylko POST**, a jeśli sfałszowane powiadomienie o zamówieniu wyrządziłoby realną szkodę, postaw z przodu własny endpoint, który zweryfikuje HMAC i dopiero wywoła Echobell.

**Shopify może dostarczyć tego samego webhooka dwa razy.** Ponawia przy niepowodzeniu, a ponowienia nie są deduplikowane. Traktuj powiadomienie jako zachętę do zajrzenia w zamówienie, nie jako licznik zamówień. Źródłem prawdy jest twój panel Shopify.

**Topiki magazynowe szybko robią się hałaśliwe.** `inventory_levels/update` odpala przy każdym ruchu stanu, łącznie z twoimi własnymi edycjami. Jeśli chcesz alertów o niskim stanie, filtruj ostro, bo inaczej pożałujesz przed obiadem.

## Najczęstsze pytania

### Czy potrzebuję do tego aplikacji Shopify?

Nie. Webhooki w **Ustawienia → Powiadomienia** są wbudowane w panel i nie wymagają aplikacji, konta partnerskiego ani kodu.

### Czy magazyn może widzieć zamówienia, nie widząc mojego panelu Shopify?

Tak. Udostępnij im kanał. Dostają powiadomienia i nic więcej — bez dostępu do panelu i bez danych klientów poza tym, co zawiera twój szablon.

### Czy powinienem umieszczać nazwiska klientów w powiadomieniu?

To twoja decyzja i warto podjąć ją świadomie. Wszystko, co jest w szablonie, pojawia się na zablokowanym ekranie. Numer zamówienia i kwota zwykle wystarczą, żeby zadziałać.

### Czy dostanę telefon przy chargebacku?

Spory w Shopify Payments przychodzą topikiem `disputes/create` w sklepach korzystających z Shopify Payments. Skieruj go na kanał połączeniowy — to jedyne zdarzenie zamówieniowe z terminem.

## Podsumowanie

Jeden webhook, jeden szablon i warunek, jeśli chcesz wersję głośną. Zajmuje jakieś pięć minut i zastępuje odświeżanie strony zamówień.

[Pobierz Echobell na iPhone'a](https://apps.apple.com/app/apple-store/id6743597198?pt=128151925&ct=blog-shopify-order-notifications-pl&mt=8) albo [weź go z Google Play](https://play.google.com/store/apps/details?id=one.echobell.echobellandroid), a potem złóż testowe zamówienie i zobacz, jak dociera przed mailem potwierdzającym.

---

## Powiązane treści

- [Alerty płatności Stripe](/pl/blog/stripe-payment-alerts)
- [Dokumentacja wyzwalacza webhook](/pl/docs/webhook)
- [Dokumentacja systemu szablonów](/pl/docs/template)
- [Dokumentacja warunków kanału](/pl/docs/conditions)
- [Przewodnik dla programistów po walce ze zmęczeniem alertami](/pl/blog/fix-alert-fatigue-developer-guide)
