Stripe — fizetés webshop nélkül
Ha az oldaladon nincs webshop-motor, és a vendég egyenesen a Stripe Checkoutra megy. Ez a bekötés hozza be a fizetéseket a CRM rendelés-pipeline-jába.
Ez az útmutató végigvisz a teljes bekötésen. A lépések sorrendje kötött, mert a két rendszer oda-vissza hivatkozik egymásra: a PolyOS adja az URL-t, a Stripe pedig csak azután adja ki az aláíró kulcsot, hogy az URL-lel létrehoztad a célpontot.
Számolj kb. 10 perccel. Bármikor félbehagyhatod — a félkész állapot nem okoz kárt, csak addig nem érkezik adat.
Akkor, ha az oldaladon nincs webshop-motor (WooCommerce, Shoprenter), hanem a vendég egyenesen a Stripe Checkoutra megy. Ilyenkor a „rendelés" egyetlen helyen keletkezik: a Stripe-ban.
Ha van webshop-motorod, és a Stripe csak a fizetési kapu benne, akkor nem ez kell — a rendelés a boltban jön létre, azt a webshop bekötése hozza be. Lásd az áttekintést.
Mi lesz a végeredmény #
Minden fizetett tranzakció megjelenik a CRM-ben egy „Stripe rendelések" pipeline-ban: a vevő kontaktként, a vásárlási összesítőjével együtt, az ismétlődő (pl. éves) díj minden megújulásával. Erre indíthatsz workflow-t az „Új rendelés (webshop)" triggerrel.
Mire lesz szükséged #
- Hozzáférés a Stripe-fiókhoz, a Developers menühöz
- A PolyOS-ban tulajdonosi vagy admin jog
- Két böngészőfül: az egyikben a PolyOS, a másikban a Stripe
1. lépés — Webhook-URL kérése (PolyOS) #
Bal menü → Webshop → az egység sorában a legördülőből Stripe (webshop nélküli fizetés) → Bekötés.
Írd be, melyik oldal fizetéseiről van szó (pl. minta.hu), majd nyomd meg a Webhook-URL generálása gombot. Másold ki a kapott URL-t.
Az URL-ben benne van a párosító kód, ami eldönti, melyik fiókhoz tartozik a beérkező adat. Csak a Stripe-ba illeszd be — ne küldd chaten, ne tedd képernyőképre, ne oszd meg.
Teljes egészében csak most látszik; később a felületen már csak maszkolva.
2. lépés — Esemény-célpont létrehozása (Stripe) #
A Stripe-ban: Developers → Webhooks → Add destination. Háromlépcsős varázsló indul.
2.1 — Select events #
- Event destination scope: maradjon Your account. (A „Connected accounts" a Stripe Connect platformokhoz való — hozzád csatlakoztatott idegen fiókok eseményeit küldené.)
- API version: hagyd az alapértelmezettet. A PolyOS a régebbi és az újabb adat-alakot is kezeli.
- Az Events keresőjébe egyesével írd be az alábbiakat, és pipáld ki őket. A végén a Selected events fülön 10 kell álljon.
Pénz — ezekből lesz rendelés:
checkout.session.completed
checkout.session.async_payment_succeeded
invoice.paid
charge.refunded
Előfizetés-állapot — ebből látszik, ki aktív előfizető:
customer.subscription.created
customer.subscription.updated
customer.subscription.deleted
customer.subscription.paused
customer.subscription.resumed
customer.subscription.trial_will_end
Majd Continue.
Az első négy a pénzmozgás: ezekből lesz rendelés a CRM-ben. Az utolsó hat az előfizetés állapota — ki aktív, ki van próbaidőben, kinek akadt el a fizetése, ki mondta le. Ez nem bevétel, hanem a kapcsolat élettörténete.
Ne pipáld ki a Select all-t: a többi eseményt úgyis eldobjuk, viszont feleslegesen terhelné a végpontot.
2.2 — Choose destination type #
Webhook endpoint — alapból ez a kiválasztott, hagyd így. (Az Amazon EventBridge és az Azure Event Grid másik infrastruktúrába küldene.) Continue.
2.3 — Configure destination #
- Payload style: Snapshot. Ez az alapértelmezett — ne állítsd „Thin"-re.
- Destination name: a Stripe véletlen nevet ajánl (pl. memorable-triumph). Írd át valami beszédesre, pl. PolyOS. Ez csak neked szól, de fél év múlva hálás leszel érte.
- Endpoint URL: ide illeszd be az 1. lépésben kimásolt URL-t.
- Description: nem kötelező.
Végül hozd létre a célpontot.
A „Thin" mód csak az esemény azonosítóját küldi el, a tartalmát nem. A PolyOS a teljes adatból dolgozik, ezért thin módban némán nem történne semmi: a kérés megérkezne, aláírás-hibát sem kapnál, egyszerűen nem keletkezne rendelés.
3. lépés — Aláíró kulcs a PolyOS-ba #
A célpont létrehozása után a Stripe kiírja a Signing secret-et — whsec_ kezdetű. Másold be a PolyOS bekötő űrlapjának 2. lépés mezőjébe.
Ez hitelesíti, hogy tényleg a Stripe küldte az eseményt.
Aláíró kulcs nélkül minden beérkező fizetést elutasítunk — szándékosan. Enélkül ugyanis bárki, aki megszerzi az URL-t, kitalált „fizetést" tudna betolni a CRM-edbe. A felületen ilyenkor FÉLKÉSZ jelzés áll, nem BEKÖTVE.
4. lépés — Olvasó API-kulcs (nem kötelező, de ajánlott) #
A fizetések beérkezése enélkül is működik. Három dologhoz kell: a tételek neveihez, a korábbi fizetések behúzásához és az előfizetés-szinkronhoz.
Stripe → Developers → API keys → Restricted keys → Create restricted key.
- „How will you be using this key?" → Powering an integration you built.
- Ne a kész csomagokból válassz — azok írási jogot is adnak. Keresd az egyedi utat, és add meg ezt a hatot, mindet csak olvasásra (Read):
| Erőforrás | Jog | Mire kell |
|---|---|---|
| Checkout Sessions | Read | egyszeri fizetések és a tételsorok |
| Invoices | Read | az éves díj és minden megújulása |
| Subscriptions | Read | előfizetés-állapotok |
| Customers | Read | a vevő neve és e-mailje a kontakthoz |
| Products | Read | a tétel neve |
| Prices | Read | a tétel egységára |
- A Connect permissions oszlop maradjon végig None.
A kulcs (rk_ kezdetű) egyszer látszik — másold a PolyOS harmadik mezőjébe.
A PolyOS semmit nem módosít a Stripe-fiókodban, csak olvas. Ha írási jogot adnál, egy hiba vagy egy kiszivárgott kulcs valódi előfizetéseket tudna megváltoztatni vagy lemondani.
Az „Authorizing an AI agent" opciót se válaszd: az egy AI-ügynöknek adna önálló hozzáférést a fiókodhoz. A PolyOS nem ezt csinálja — fix, olvasó hívásokat küld a szerveréről.
Ha kevés lenne a kiosztott jog, nem kell új kulcsot csinálni: a Stripe-ban ugyanannál a kulcsnál bepipálod a hiányzót. A PolyOS a Bekötés gombnál le is teszteli a kulcsot, és ha nem használható, ki is írja a Stripe saját hibaüzenetét.
5. lépés — Bekötés #
Nyomd meg a Bekötés gombot a PolyOS-ban. Innentől a beérkező fizetések landolnak.
6. lépés — Korábbi fizetések behúzása #
Nyomd meg a Korábbi fizetések behúzása gombot.
A webhook csak a bekötés utáni fizetéseket látja. Egy éves díjnál a következő tranzakció hónapok múlva jönne — addig nem lenne mit nézni, és nem lenne mire workflow-t építeni. Ez a gomb hozza be a múltat.
Idempotens: bármennyiszer megnyomhatod, ugyanaz a fizetés nem kerül be kétszer. Ha azt írja, hogy még van hátra, nyomd meg újra — onnan folytatja, ahol abbahagyta.
Ellenőrzés — mit ír az állapotsor #
Az egység kártyája alatti sor mindig megmondja, hol tart a dolog. Ez a leggyorsabb hibakeresés.
| Amit látsz | Mit jelent | Mit tegyél |
|---|---|---|
FÉLKÉSZ jelzés | Van URL, de aláíró kulcs nincs. Egyetlen fizetés sem jön be. | Fejezd be a 3. lépést |
| „A Stripe még nem küldött fizetést" | A bekötés kész, esemény még nem érkezett | Nézd meg a Stripe-ban, hogy a célpont létezik-e és a 10 eseményre figyel-e |
| „A kapcsolat ÉL — teszt módú esemény érkezett" | A webhook eljut hozzánk, de a Stripe teszt módjából | Ha éles fizetéseket vársz, éles módban is vedd fel a célpontot |
| Piros üzenet az aláírásról | Rossz whsec_ van elmentve | Másold ki újra annak a célpontnak a Signing secretjét, amelyikbe az URL-t illesztetted |
| „Stripe-ból érkezett · utolsó adat: …" | Minden rendben | — |
A Stripe teszt módjában is felveheted ugyanezt az URL-t, és küldhetsz rá egy teszt eseményt. A PolyOS visszaigazolja, hogy megérkezett, de teszt fizetést szándékosan nem visz be a CRM-be. Így megbizonyosodhatsz róla, hogy a csővezeték él, anélkül hogy egyetlen kitalált forint is bekerülne a bevételbe.
Mi landol, és mi nem #
- Egy befizetés = egy rendelés. A Stripe ugyanarra a pénzre több eseményt is küld; csak egyet veszünk figyelembe, hogy az összeg ne jelenjen meg kétszer a bevételben.
- Az ismétlődő díj minden megújulása bejön, nem csak az első fizetés.
- Félbehagyott vagy lejárt pénztár és meghiúsult fizetés nem jön be — az nem vásárlás.
- Teszt módú tranzakció soha nem jön be.
- Visszatérítésnél a rendelés átáll „visszatérítve" állapotba, és kiesik a bevételből.
- Halasztott fizetés (átutalás) akkor jön be, amikor a pénz ténylegesen megérkezett — nem akkor, amikor a vevő elindította.
Biztonság #
A kulcsok a szerveren maradnak, titkosított tárolóban. A böngészőbe soha nem kerülnek vissza — a felületen csak maszkolva látod őket.
Képernyőkép, chat, e-mail, megosztott képernyő — bármi. A kettő együtt elég ahhoz, hogy valaki kitalált „fizetést" toljon be.
- Stripe → Webhooks → a célpont → Roll secret, és az új
whsec_-et írd be a PolyOS-ba. Ez önmagában megszünteti a kockázatot: az aláírást az új kulcs nélkül nem lehet előállítani. - Új URL-hez: Leválasztás, majd újra Bekötés. A már behozott rendelések megmaradnak, de az URL-t a Stripe-ban is át kell írni.
Ha elakadsz #
Az állapotsor majdnem mindig megmondja, mi a baj. Ha mégsem, írj a support@polyos.hu címre, és küldd el, pontosan mit ír ott — abból meg tudjuk mondani, hol akad.