# Átállás az utófizetési műveletekről a feed feltételes logikájára

> Hogyan váltsd le a fizetési feedek utófizetési műveleteit fizetési állapot szerinti feltételes logikára, és mikor melyik állapotot válaszd.

Az **utófizetési műveletek** (Post Payment Actions) a fizetési feedekben található jelölőnégyzetek: addig tartanak vissza egy másik kiegészítő feedjét, amíg a fizetés meg nem érkezik. A **fizetési állapot szerinti feltételes logika** ugyanezt a feedből magából oldja meg, és a sikeres fizetésen túl más állapotokra, például **Sikertelen** vagy **Visszatérített** állapotra is reagálhat.

Érdemes minden, utófizetési műveletre támaszkodó feedet átállítani a fizetési állapot szerinti feltételes logikára. Az utófizetési műveletek jelölőnégyzetei továbbra is megjelennek a fizetési feedek beállításai között, és működnek, de a feedek futásának vezérlésére a feltételes logika az ajánlott.

## Miben különbözik a kettő

Mindkét megoldás megakadályozza, hogy a feed a fizetés befejezése előtt lefusson. A különbség a helyükben és abban van, mire reagálnak.

| | Utófizetési műveletek | Fizetési állapot szerinti feltételes logika |
|---|---|---|
| Hol állítod be | A fizetési feedben, minden olyan kiegészítőhöz egy jelölőnégyzet, amelynek van feedje az űrlapon. | Azon a feeden, amelyet vezérelni akarsz, a többi feltétel mellett. |
| Mire reagál | Csak a sikeres fizetésre. | Bármelyik állapotra, amelyet a fizetési átjáró rögzít, például **Fizetve**, **Sikertelen**, **Visszatérített**. |
| Külön művelet az egyes kimenetelekre | Nem lehetséges. | Minden kezelendő állapothoz külön feedet hozhatsz létre. |

## Mielőtt elkezded

- Az űrlapon aktív fizetési feednek kell lennie olyan kiegészítőtől, amely támogatja az utófizetési műveleteket: Stripe, PayPal Checkout, Mollie vagy Square. A **Fizetési állapot** csak akkor jelenik meg a többi feed feltételes logikájának mezőlistájában, ha az űrlapon van aktív fizetési feed.
- A fizetési kiegészítőnek teljesen be kell lennie állítva, mert ő frissíti a beküldés fizetési állapotát.
- Az átállást először tesztoldalon (staging) végezd el, vagy olyankor, amikor az űrlap nem kap beküldéseket. A tesztoldalról a [Tesztoldal (staging) fejezetben](https://hub.hellowp.io/hu/plugins/gravityforms/hogyan-teszt-oldal-staging/) olvashatsz.

## Egy feed átállítása

Ezeket a lépéseket minden olyan kiegészítő-feedhez végezd el, amelyet jelenleg utófizetési művelet tart vissza.

### Nézd meg, mely feedeket tartja vissza utófizetési művelet

1. Nyisd meg az űrlapot, lépj a **Beállítások** oldalra, és válaszd ki a fizetési kiegészítőt, például a Stripe-ot.
2. Nyisd meg a fizetési feedet, és görgess az **Utófizetési műveletek** szakaszhoz.
3. Jegyezd fel, mely kiegészítők vannak bejelölve. A jelölőnégyzeteket egyelőre ne bántsd.

### Adj fizetési állapot feltételt a feedhez

1. Az űrlap beállításai között válaszd ki azt a kiegészítőt, amelynek a feedjét módosítani akarod (például Felhasználói regisztráció), és nyisd meg a feedet.
2. A **Feltételes logika** szakaszban kapcsold be a feltételes logikát.
3. Válaszd a **Fizetési állapot** mezőt, majd azt az állapotot, amelynél a feednek le kell futnia. Hogy melyiket, a lenti [Melyik állapotot válaszd](#melyik-állapotot-válaszd) szakaszban találod.
4. Ha a feednek már vannak feltételei, tartsd meg őket. A **Fizetési állapot** legyen egy újabb szabály, a feed pedig akkor fusson, ha **az összes** szabály teljesül.
5. Mentsd a feedet.

A feltételes logika nem kombinálhatja ugyanabban a feedben az „összes” (ÉS) és a „bármelyik” (VAGY) szabályokat. Ha a feed meglévő szabályai a „bármelyik” módban működnek, a **Fizetési állapot** hozzáadása azt eredményezné, hogy a feed már akkor lefut, amikor a többi szabály valamelyike teljesül, a fizetés befejezése előtt. Ilyenkor minden meglévő szabályhoz hozz létre külön feedet, mindegyiket „összes” módban, a **Fizetési állapot** szabállyal kiegészítve. Ha ezek közül több is illeszkedik ugyanarra a beküldésre, a művelet minden illeszkedő feedre egyszer lefut.

### Kapcsold ki az utófizetési műveletet

1. Térj vissza a fizetési kiegészítőhöz az űrlap beállításai között, és nyisd meg a fizetési feedet.
2. Az **Utófizetési műveletek** szakaszban vedd ki a jelölést az imént módosított kiegészítőnél.
3. Mentsd a fizetési feedet.

A feltételt azelőtt add hozzá, hogy kivennéd az utófizetési művelet jelölését. Így a feed soha nem marad olyan állapotban, hogy a fizetés kimenetelétől függetlenül minden beküldésre lefut. Ha egy feed fizetési állapot szerinti feltételes logikát használ, az utófizetési műveletét hagyd jelöletlenül.

### Teszteld az űrlapot

1. Küldd be az űrlapot sikeres próbafizetéssel, és ellenőrizd, hogy a feed lefutott (például létrejött a felhasználó).
2. Küldd be újra olyan próbafizetéssel, amely sikertelen, és ellenőrizd, hogy a feed nem futott le. A próbaadatokat a fizetési átjáró tesztdokumentációja adja (például a Stripe próbakártyái).
3. Nyisd meg a beküldéseket, és nézd meg, hogy a **Fizetési állapot** az, amire számítasz.

## Melyik állapotot válaszd

Az utófizetési művelettel azonos eredményhez a fizetési feed tranzakciótípusának megfelelő állapotot válaszd.

| A fizetési feed tranzakciótípusa | Feltétel a másik feeden |
|---|---|
| Termékek és szolgáltatások | A fizetési állapot **Fizetve** |
| Előfizetés | A fizetési állapot **Aktív előfizetés** |

Más állapotokat is célozhatsz, például **Sikertelen**, **Feldolgozás alatt** vagy **Visszatérített**. Nem minden fizetési átjáró használja az összes állapotot.

Ha az előfizetésnek próbaidőszaka van, az utófizetési művelet addig vár, amíg a próbaidőszak végén az első terhelés végbemegy. Az **Aktív előfizetés** feltételt használó feed más időpontban futhat le. Mielőtt kikapcsolod az utófizetési műveletet, próbálj ki egy próbaidőszakos előfizetést, és ellenőrizd, hogy a feed akkor fut-e, amikor szeretnéd.

## Példák

### Felhasználó létrehozása csak kifizetett beküldésnél

Egy tagsági űrlapon van egy egyszeri fizetési feed és egy Felhasználói regisztráció feed. Korábban a fizetési feed utófizetési műveleteinél a Felhasználói regisztráció jelölőnégyzet tartotta vissza a regisztrációt a fizetésig.

1. Nyisd meg a Felhasználói regisztráció feedet, és kapcsold be a feltételes logikát.
2. Állítsd a szabályt **Fizetési állapot = Fizetve** értékre, és mentsd a feedet.
3. Nyisd meg a fizetési feedet, vedd ki a Felhasználói regisztráció jelölését az **Utófizetési műveletek** alatt, és mentsd.

A felhasználói fiók mostantól csak akkor jön létre, amikor a beküldés fizetési állapota **Fizetve** lesz.

### Slack-üzenet sikertelen fizetésnél

Az utófizetési műveletek csak sikeres fizetés után futtatnak feedet. A feltételes logikával az ellenkező esetre is készíthetsz feedet. Ugyanezen az űrlapon hozz létre egy Slack-feedet, amely az értékesítési csatornába ír, kapcsold be a feltételes logikát, és állítsd a szabályt **Fizetési állapot = Sikertelen** értékre. A csapat értesül a sikertelen fizetésekről, a fenti Felhasználói regisztráció feed pedig továbbra is csak a kifizetett beküldésekre fut.

## Hogyan dolgozza fel a rendszer a feedeket

A fizetési állapot feltételű feed nem fut le az űrlap beküldésekor, ha a beküldés állapota még nem illeszkedik. Amikor a fizetési kiegészítő frissíti a beküldés fizetési állapotát, a Gravity Forms újra átnézi az űrlap feedjeit, és lefuttatja azokat, amelyek feltételei most már teljesülnek. Az a feed, amely egy beküldésre már lefutott, nem fut le újra.

A fizetési állapot feltétel csak olyan beküldésre illeszkedik, amelyhez fizetés tartozik. Ha a fizetési feednek saját feltételes logikája van, és egy beküldésnél nem fut le, az a beküldés soha nem kap fizetési állapotot, ezért az a feed, amely **Fizetési állapot = Fizetve** feltételt kér, nem fut le rá.

A feedek feltételes logikájáról a [Feltételes logika a feedekhez](https://hub.hellowp.io/hu/plugins/gravityforms/feltetelek-feedek/) fejezetben olvashatsz bővebben, a futás hibáinak keresésről pedig a [Feed hibaelhárítása](https://hub.hellowp.io/hu/plugins/gravityforms/kiegeszitok-feed-hibaelharitas/) fejezetben.
