A ListaMester fizetés típusú kimenő webhookja egy sima HTTP POST a ListaMester-felhasználó által megadott URL-re. A törzs a feliratkozó adatait viszi. Külön fizetési aláírás vagy HMAC nincs.
Mikor indul
A hívás a csoport egy aktív, kimenő, fizetés (paymentFinished) triggerű webhookjára megy, ha a fizetés sikeresen lezárult, és a csoporthoz tartozik számlázási sablon (számla feliratkozáskor).
Két út indítja:
- Sikeres online fizetés lezárása (OTP Simple, Barion, Stripe, K&H, CIB).
- A ListaMester felületéről indított fizetés-véglegesítés.
Ugyanezen az első, számlázós online fizetésen a rendszer utána egy külön feliratkozás webhookot is elküld, ha az is be van állítva. A két hívás külön POST.
A hívás elmarad, ha a tag kézbesítése le van tiltva, vagy a csoport kettős opt-in és az e-mail még nincs megerősítve. Sikertelen fizetés, ismétlődő (recurring) terhelés és a Számlázz.hu Autókassza IPN nem indítja a fizetés webhookot. Az Autókassza csak a feliratkozás webhookot hívhatja, és csak akkor, ha a csoportnál az „RTM csak IPN után” beállítás él.
HTTP hívás
| Metódus | POST |
| URL | A webhooknál megadott cím. A query string a body-tól függetlenül megmarad. |
| Siker | HTTP 2xx. A válasz törzsét a ListaMester nem értelmezi. |
| Átirányítás | 301–399, legfeljebb 5 lépés, ugyanazzal a metódussal és törzzsel. |
| Hiba | 4xx és 5xx naplózódik, újrapróbálás nincs. |
| Időtúllépés | Nincs beállított connect/read timeout. |
Két törzsformátum választható. A Content-Type fejléc charset paramétert nem tartalmaz. Az űrlapos értékek UTF-8 szerint vannak százalék-kódolva (a szóköz +). A JSON törzs a szerveren UTF-8.
Hitelesítés
Kriptográfiai aláírás, HMAC, időbélyeg vagy nonce nincs. A bejövő webhookok hookKey mezője a kimenő híváson nem megy ki.
A hitelesítés a ListaMester felületén megadott egyedi HTTP-fejlécekkel történik. Ezeket a ListaMester minden híváshoz hozzáteszi, a Content-Type mellé. A fogadó oldal adja meg a titkot, a ListaMester-felhasználó pedig bemásolja a webhook fejlécébe. A végpont legyen HTTPS.
Példa:
Authorization: Bearer <a fogadó rendszer által kiadott titok>vagy
X-Api-Key: <megosztott kulcs>A felületen rögzített statikus törzsmezők ugyanígy minden hívásban szerepelnek. Egy event=payment mezővel akkor is felismerhető az esemény, ha több trigger ugyanarra az URL-re mutat.
Mezők
A mezőnevek nem fix sémák. A kulcsokat a webhook beállítása adja. A törzsben nincs összeg, pénznem, tranzakcióazonosító, számlaszám, rendelésazonosító vagy esemény neve, amíg ezeket adatmező-hozzárendelés vagy statikus mező nem teszi bele.
| Kulcs | Honnan jön | Érték |
|---|---|---|
| Az „email mező azonosítója” | Tag e-mail-címe | Szöveg. Üres kulcs vagy üres érték az űrlapos formátumból kimarad. |
| A „név mező azonosítója” | Tag neve | Szöveg. |
memberId | Mindig, fix kulcs | A ListaMester tag azonosítója, szövegként. Ugyanaz a tag minden későbbi híváson. |
| Hozzárendelt külső mezőnevek | A csoport adatmezői | Az adatmező szöveges értéke. Többválasztós mezőnél az értékek ; karakterrel vannak összefűzve. |
| Statikus mezők | A webhookon megadott név és érték | Változatlan szöveg minden hívásban. |
Ütközéskor a hozzárendelt mező felülírja az azonos nevű statikus vagy beépített kulcsot, az e-mail, a név és a memberId pedig felülírja az azonos nevű statikus mezőt. JSON-ban a hiányzó adatmező null. Űrlapos kódolásnál az üres érték kimarad a törzsből. A mezők sorrendje nem garantált.
memberId a tagot azonosítja, egy fizetési eseményt nem. Ismételt véglegesítés ugyanazzal a memberId-vel újabb POST-ot küld. A fogadó oldal kezelje a hívást újra feldolgozhatóként.Minta, JSON
Content-Type: application/json
A példa azt feltételezi, hogy az e-mail mező neve email, a név mező neve name, van két hozzárendelt mező (szamlazasiNev, adoszam), és van egy statikus event mező.
{
"event": "payment",
"email": "vasarlo@example.com",
"name": "Kovács Anna",
"memberId": "123456",
"szamlazasiNev": "Minta Kft.",
"adoszam": "12345678-1-42"
}Minta, űrlap
Content-Type: application/x-www-form-urlencoded
event=payment&email=vasarlo%40example.com&name=Kov%C3%A1cs+Anna&memberId=123456&szamlazasiNev=Minta+Kft.&adoszam=12345678-1-42Válasz
A fogadó adjon vissza gyorsan 2xx-et. A törzs tartalma közömbös. 4xx vagy 5xx esetén a ListaMester nem küldi újra a hívást.
Beállítás a ListaMesterben
A webhook a csoport integrációinál hozható létre, PRO csomaggal. Irány: kimenő hívás. Trigger: fizetés. Adatformátum: JSON vagy URL-kódolt. Kötelező a meghívandó URL. Ide kerül a titkos fejléc, az e-mail és a név mezőneve, a statikus mezők és az adatmező-hozzárendelések. A webhook legyen aktív, és a csoporthoz legyen számlasablon rendelve, különben a fizetés trigger nem fut le.