· 4 min read

Automating Shopify Order Routing to Slack and Telegram


A webhook that classifies each Shopify order by value and tag, then routes the high-value and time-sensitive ones that need a fast human response to Slack (or Telegram for niche cases).

The Problem

A $4,000 B2B order lands at 9:47 PM. Nobody sees it until morning. By 8 AM the customer has emailed twice asking for confirmation and started browsing competitors. Or: a Saturday food preorder comes in Friday night — the kitchen needs 12 hours’ notice, but the order sat in the Shopify admin until someone checked it at noon.

Shopify’s native order notifications are generic. Every order looks the same in the admin and in your inbox. There is no “this one matters more” signal — no way to say “ping me instantly when an order is over $500, or tagged B2B, or a preorder, and let the routine ones batch up.”

So store owners either check the admin obsessively (a tax on attention) or miss the orders that actually need a fast human response (a tax on revenue).

The Fix: Classify, Then Route

A thin webhook that sits between Shopify and the channel you already live in — Slack for US/EU teams (where most Shopify SMB operate), or Telegram for specific niches (food/preorder, solo owners). Every order is acknowledged instantly (Shopify retries if you don’t respond in 5 seconds). Then the order is classified and only the ones that meet a rule are pushed to you in real time.

Shopify order/paid webhook

Express endpoint — verify HMAC, acknowledge in <1s

Classify: value · tags · B2B flag · inventory risk · preorder

  ┌─────────────┬──────────────────┐
  │ high-value  │ → Slack push (instant, reply inline)
  │ B2B         │
  │ preorder    │
  ├─────────────┼──────────────────┤
  │ routine     │ → log to Postgres, batch summary later
  └─────────────┴──────────────────┘

The point is not “get a notification for every order” — it’s get a notification for the 5% of orders where a fast human response changes the outcome, and let the other 95% flow through quietly.

How It Works

Two engineering rules make this safe to run unattended: verify the webhook is really from Shopify (a cryptographic signature — anything unsigned is dropped), and acknowledge before doing any work (Shopify retries slow endpoints, so the handler answers instantly and processes in the background).

order/paid webhook arrives
  ├─ verify signature — not from Shopify? drop silently
  ├─ acknowledge 200 immediately, process in the background
  ├─ deduplicate by order id (webhook retries are harmless)
  └─ classify:
       high-value / B2B / preorder / freight → Slack push, owner replies inline
       everything else                       → logged silently, no interruption

A new rule — a SKU that always needs manual fulfillment, a wholesale customer, a fragile item — is a one-line change, not a new app install, and there is no per-order SaaS fee.

Why Slack First (and Telegram for Niches)

Email is where notifications go to be ignored. Slack is where US/EU store teams already live — every ops tool (Shopify, Gorgias, Klaviyo, Stripe) pushes to Slack by default, with push notifications and inline replies. For most Shopify SMB, that is the right channel. Telegram fits specific niches: solo owners who live in it, or food/preorder businesses where the kitchen is on Telegram. The routing pattern is identical either way — swap one send() call. The point is not the channel; it is getting the alert to the place you actually check, in seconds rather than “when I next open my inbox.”

The Numbers

This is not theoretical — it’s what the live automation dashboard measures. The two routing rules above map to concrete outcomes:

RuleWhat it preventsTypical $ impact per event
High-value order flagSlow response loses the customer$600 (avg. high-value order saved by priority handling)
Shipping reminder + confirmation”Where is my order?” support ticket1 ticket deflected per reminder
Low-stock alert (related)Stockout → lost sale + bad review$45 per stockout avoided

A store doing 200 orders/day with even 5% high-value orders sees ~10 of these flags daily. Each one where a faster response retains the customer is real money.

TL;DR

The problemHigh-value and time-sensitive Shopify orders sit unseen; generic notifications don’t separate the urgent from the routine
The patternWebhook → HMAC verify → acknowledge fast → classify by rule → push the 5% that matter to Slack/Telegram
Why it worksRules are code (add one in minutes, no app install); pushes go where you already are
The code~30 lines: verify, acknowledge, classify, send. Idempotent by jobId so retries are safe
See it livepolaris.kamensky.dev — trigger demo orders and watch the impact dashboard tally revenue protected
RelatedShopify Automation: Three Integrations Every Store Needs · When Zapier Costs More Than Writing the Integration

Selling on Shopify and missing the orders that need a fast response? I build the webhook, the classification rules, and the Slack/Telegram routing — book a free 20-minute fit call.