Stripe Webhook (konfigurovaný automaticky)
Keď zapnete Stripe v Nastavenia → Stripe, váš obchod automaticky nakonfiguruje prepojenie, cez ktoré Stripe informuje o platobných udalostiach — úspešných platbách, refundáciách, sporoch a neúspešných pokusoch. Nemusíte sa prihlasovať do Stripe Dashboardu ani kopírovať žiadny „webhook signing secret" — urobíme to za vás.
TIP
Po nastavení uvidíte na stránke nastavení Stripe zelený box „✓ Webhook nakonfigurovaný automaticky". Ak namiesto neho vidíte modrý text „Webhook sa nakonfiguruje automaticky pri uložení Stripe kľúčov", stačí uložiť kľúče a obnoviť stránku.
Čo je webhook?
Keď zákazník dokončí platbu, Stripe musí vášmu obchodu oznámiť „táto platba prebehla úspešne". Táto správa sa volá webhook. Bez funkčného webhoku sa refundácie, spory a neúspešné pokusy o platbu nebudú synchronizovať do vášho zoznamu objednávok.
Manuálne nastavenie webhoku kedysi vyžadovalo: prihlásenie do Stripe Dashboardu, navigáciu do Developers → Webhooks, pridanie nového endpointu, výber zoznamu udalostí, skopírovanie signing secretu a jeho vloženie späť do administrácie. To všetko sme nahradili jedným kliknutím na Uložiť nastavenia.
Ako to funguje
- Vložíte svoj Stripe Publishable Key a Stripe Secret Key do Nastavenia → Stripe. (Nájdete ich v Stripe Dashboarde v Developers → API keys.)
- Kliknete na Uložiť nastavenia.
- Pomocou vášho secret kľúča programovo zaregistrujeme webhook endpoint v Stripe, smerujúci na doménu vášho obchodu (napr.
https://vasobchod.sk/api/webhooks/stripe). - Stripe vráti signing secret. Uložíme ho a používame na overenie, že prichádzajúce webhook volania skutočne pochádzajú zo Stripe.
Celé to prebehne v priebehu sekúnd. Konfiguračnú obrazovku webhookov v Stripe Dashboarde nikdy neuvidíte.
Bežné situácie
„Práve som zmenil doménu z mojobchod.merzio.tech na mojobchod.sk"
Váš existujúci webhook stále funguje — merzio subdoména zostáva aktívna a naďalej smeruje na váš obchod, takže notifikácie zo Stripe k nám stále dorazia. Webhook URL však ukazuje na starú doménu, čo nie je čisté.
Ako to upratať:
- Uistite sa, že vaša nová doména je plne aktívna (DNS vyriešené, SSL certifikát vydaný).
- Prejdite do Nastavenia → Stripe.
- Kliknite na Prekonfigurovať vedľa indikátora stavu webhoku.
- Potvrďte dialóg. Starý webhook v Stripe vymažeme a vytvoríme nový na vašej novej doméne.
Môžete tiež len znova uložiť nastavenia Stripe — ale Prekonfigurovať je najčistejšia cesta, pretože starý endpoint odstráni namiesto toho, aby ho nechala visieť.
„Vidím upozornenie, že webhook sa nepodarilo nakonfigurovať"
Najčastejšie príčiny:
- „Neplatný Stripe secret key" — secret key, ktorý ste vložili, je nesprávny, expirovaný alebo patrí inému Stripe účtu. Získajte nový secret key v Stripe Dashboard → Developers → API keys a vložte ho znova.
- „Tento obchod ešte nemá nastavenú primárnu doménu" — pre tento obchod ste zatiaľ neaktivovali doménu. Najprv pridajte a overte doménu v sekcii Domény, potom znova uložte nastavenia Stripe.
- „Webhook endpoint už v Stripe existuje" — webhook endpoint ste si v minulosti vytvorili manuálne v Stripe Dashboarde. Buď kliknite na Prekonfigurovať, čím ho nahradíte (odporúčané), alebo kliknite na Rozšírené: vložiť secret manuálne v spodnej časti a vložte existujúci signing secret zo Stripe Dashboardu.
WARNING
Aj keď vidíte upozornenie, vaše ostatné nastavenia Stripe sú uložené. Kartové platby budú stále fungovať — ale funkcie závislé od webhookov (synchronizácia stavu refundácií, notifikácie o neúspešných platbách) sa nebudú aktualizovať, kým webhook nebude nakonfigurovaný.
„Chcem použiť webhook, ktorý som si už manuálne vytvoril v Stripe"
Kliknite na Rozšírené: vložiť secret manuálne v spodnej časti webhook sekcie. Vložte existujúci signing secret zo Stripe Dashboardu. Uložte. Použijeme ten namiesto vytvárania nového.
„Chcem rotovať signing secret"
Kliknite na Prekonfigurovať. Existujúci endpoint v Stripe vymažeme a vytvoríme úplne nový s čerstvým signing secretom. Starý secret okamžite prestane fungovať.
Aké udalosti počúvame
Prihlasujeme sa na odber udalostí, ktoré váš obchod potrebuje:
payment_intent.succeeded— platba úspešne dokončenápayment_intent.payment_failed— karta zamietnutá / 3DS zlyhalopayment_intent.canceled— zákazník zrušil platbu v priebehucharge.refunded,charge.refund.updated,refund.created,refund.updated,refund.failed— životný cyklus refundácií
Udalosti nemusíte pridávať ani odoberať manuálne. Ak budú v budúcnosti relevantné nové udalosti, pridajú sa počas aktualizácie platformy.
Ako overiť, že to funguje
Najspoľahlivejšia kontrola:
- V Stripe Dashboard → Developers → Webhooks kliknite na endpoint smerujúci na doménu vášho obchodu.
- Kliknite na Send test webhook.
- Vyberte
payment_intent.succeededa kliknite na Odoslať. - Odpoveď by mala byť 200 OK. Ak namiesto toho vidíte „Invalid signature", kliknite v administrácii vášho obchodu na Prekonfigurovať, čím sa secret zrotuje.