← Zpět na blog
21. března 2026·5 min čtení·Tým TopSMS

SMS notifikace ve WooCommerce, Shopify a Shoptetu: jak na to

Praktický návod, jak nasadit SMS notifikace na 3 nejpoužívanější CZ e-shop platformy. Plugin pro WooCommerce, app pro Shopify, integrace s Shoptetem.

Pokud máte e-shop na WooCommerce, Shopify nebo Shoptetu, SMS notifikace nepotřebujete kódit od nuly. Všechny tři platformy mají buď oficiální plugin, app, nebo přímou integraci přes naše REST API.

V tomto článku ukážu konkrétní postup pro každou ze 3 platforem + jak řešit personalizaci, ceny a problémy.

Přehled možností

PlatformaTopSMS pluginAPI integraceKomplexita
WooCommerce✅ Plugin✅ REST APINízká
Shopify❌ (přes Zapier)✅ REST APIStřední
Shoptet❌ (přes Doplňky)✅ REST APIStřední
PrestaShop✅ REST APIStřední
Magento✅ REST APIVyšší
Custom Next.js / vlastní✅ REST APIZáleží na vás

WooCommerce — nejjednodušší (15 minut setup)

WooCommerce má nejvíc CZ uživatelů. TopSMS plugin posílá SMS automaticky podle stavu objednávky.

Setup

  1. Stáhněte plugin ze stránky pluginů TopSMS.
  2. Nahrajte do WordPressu: Pluginy → Přidat → Nahrát.
  3. Aktivujte plugin.
  4. Zadejte API klíč v Nastavení → TopSMS. Klíč si vytvoříte v TopSMS dashboardu.
  5. Zapněte triggery pro stavy objednávky:
    • Přijato → "Děkujeme za objednávku #..."
    • Zaplaceno → "Platba přijata, zboží odesíláme..."
    • Odesláno → "Zásilka v cestě, tracking: "
    • Doručeno → "Děkujeme, hodnocení: "

Co to dělá za vás

  • Zachytí WooCommerce hook woocommerce_order_status_changed.
  • Zavolá /api/sms/send s vyplněnými proměnnými ze WC objednávky.
  • Loguje výsledek do WP admin (Nastroje → TopSMS Log).

Šablony s WC proměnnými

V pluginu můžete použít WC placeholders:

ProměnnáObsah
{billing_first_name}Křestní jméno z fakturační adresy
{order_id}ID objednávky
{order_total}Celková částka
{shipping_method}Metoda doručení
{tracking_number}Tracking číslo (pokud máte plugin pro doručení)

Příklad šablony pro "Odesláno":

{billing_first_name}, vase objednavka #{order_id}
ve vrátnici. Tracking: {tracking_number}
{tracking_url}

Náklady

E-shop s 200 objednávek/měsíc × 3-4 SMS/objednávka = 600-800 SMS/měsíc. Při Small tarifu 0,98 Kč/SMS = ~588-784 Kč/měsíc.

Shopify — přes Zapier nebo custom integrace

Shopify nemá oficiální TopSMS app, ale můžete použít Zapier (no-code) nebo přímé volání API.

Setup přes Zapier

  1. V Shopify Admin → Apps → vyhledejte Zapier.
  2. Vytvořte Zap:
    • Trigger: Shopify > New Order
    • Action: Webhooks by Zapier > POST
  3. URL: https://www.topsms.cz/api/sms/send
  4. Headers: Authorization: Bearer client_id:secret
  5. Body (JSON):
    {
      "to": "{{customer.phone}}",
      "from": "VasShop",
      "text": "{{customer.first_name}}, dekujeme za objednavku #{{order_number}}. Doruceni za {{est_days}} dni."
    }
    
  6. Test + Publish.

Zapier free tarif má 100 úkolů měsíčně. Pro víc objednávek (200+) přejít na placený plán.

Setup přes custom kód

Pokud máte vlastního vývojáře, je čistější napsat Shopify webhook přímo:

// Shopify webhook handler (Node.js / Express)
app.post('/shopify/order-created', async (req, res) => {
  const order = req.body
  const text = `${order.customer.first_name}, dekujeme za objednavku #${order.order_number}. Doruceni za 2 dni.`
  
  await fetch('https://www.topsms.cz/api/sms/send', {
    method: 'POST',
    headers: {
      'Authorization': `Bearer ${process.env.TOPSMS_KEY}:${process.env.TOPSMS_SECRET}`,
      'Content-Type': 'application/json'
    },
    body: JSON.stringify({
      to: order.customer.phone,
      from: 'VasShop',
      text
    })
  })
  
  res.status(200).send('OK')
})

Pak v Shopify Admin → Settings → Notifications → Webhooks přidat:

  • Event: Order creation
  • URL: https://your-server.com/shopify/order-created
  • Format: JSON

Náklady

Stejné jako u WooCommerce — záleží na objemu.

Shoptet — přes API + cron nebo doplněk

Shoptet má vlastní API, ale ne přímou integraci s TopSMS. Možnosti:

Možnost 1: Doplňěk z marketplace

Některé Shoptet doplňky umějí SMS — ale často s vlastním (drahým) SMS providerem. Doporučujeme nepoužívat — přímá integrace přes naše API je levnější a flexibilnější.

Možnost 2: Custom integrace přes Shoptet API + náš API

  1. Zaregistrujte si v Shoptetu API token.
  2. Napište skript, který periodicky čte nové objednávky:
    import requests
    
    shop_resp = requests.get(
        'https://api.myshoptet.com/api/orders',
        headers={'Shoptet-Access-Token': SHOPTET_TOKEN}
    )
    
    for order in shop_resp.json()['orders']:
        if order['status'] == 'new':
            sms_text = f"{order['customer']['firstName']}, dekujeme za objednavku #{order['code']}!"
            requests.post(
                'https://www.topsms.cz/api/sms/send',
                headers={'Authorization': f'Bearer {TOPSMS_KEY}:{TOPSMS_SECRET}'},
                json={
                    'to': order['customer']['phone'],
                    'from': 'VasShop',
                    'text': sms_text
                }
            )
    
  3. Spouštějte skript každých 5 minut přes cron.

Možnost 3: Webhook z Shoptetu

Shoptet podporuje webhooky pro stavy objednávek. V Shoptet admin → Webhooky:

  • Událost: "Změna stavu objednávky"
  • URL: https://your-server.com/shoptet-webhook?secret=...

Vaše endpoint pak volá náš API. Stejný kód jako u Shopify, jen ze Shoptet payload.

Personalizace přes proměnné

Bez ohledu na platformu, šablony s {jmeno}, {cislo}, {castka} zvyšují CTR o 60-70 %. Detaily v Personalizace SMS.

WooCommerce/Shopify/Shoptet všechny mají jméno zákazníka v objednávce, takže personalizace je trivial.

Co dělat, když SMS nechodí

Diagnostické kroky

  1. Zkontrolujte logy v TopSMS dashboardu — vidíte všechny pokusy odeslání + status.
  2. Validujte číslovalidátor řekne, jestli je v E.164 formátu.
  3. API klíč — v dashboardu zkontrolujte, že není revoked + má scope send.
  4. IP whitelist — pokud máte zapnutou, váš server musí být v listu.
  5. Rate limit — defaultně 60 SMS/minuta. Pro vyšší kapacity v dashboardu.

Test bez e-shopu

Pošlete test přímo z TopSMS:

curl -X POST https://www.topsms.cz/api/sms/send \
  -H "Authorization: Bearer client_id:secret" \
  -H "Content-Type: application/json" \
  -d '{"to": "+420608030884", "from": "TopSMS", "text": "Test"}'

Pokud tohle dorazí, problém je v integraci. Pokud ne, problém je v API klíči nebo nastavení účtu.

Náklady (porovnání e-shopů)

VelikostObjednávek/měsícSMS/měsíc (~3 per order)Náklad
Mikro50150~147 Kč (Small 0,98 Kč)
Malý200600~588 Kč (Small)
Střední1 0003 000~2 940 Kč (Small) nebo 2 790 Kč (Business 0,93)
Velký5 00015 000~13 950 Kč (Business) nebo 13 200 Kč (Pro 0,88)
Enterprise20 000+60 000+Individuální

ROI: pokud SMS sníží abandonment o 5 % a zvedne return rate o 8 %, návratnost je u většiny e-shopů během 1-2 měsíců.

Co dál

technicaleshopintegration
Otestujte TopSMS zdarma

10 SMS na start, bez závazku, registrace minuta.

Registrovat zdarma →