# Fizetés

> A Stripe fizetési mód beállítása: fiókkapcsolat, webhook az ismétlődő fizetésekhez és az űrlap Stripe-beállításai.

A fizetési űrlapokkal online fizetést fogadhatsz az űrlap beküldésekor.

A fizetési modul bekapcsolását, a fizetési űrlap felépítését és a mezőket a [Fizetések: áttekintés](https://hub.hellowp.io/hu/plugins/fluentformpro/fizetes-attekintes/) és a [Fizetési űrlap készítése](https://hub.hellowp.io/hu/plugins/fluentformpro/fizetes-urlap-keszitese/) fejezet írja le. Itt a Stripe beállítása található.

## Stripe

A Stripe bankkártyás, beágyazott fizetést tesz lehetővé.

1. A **Globális beállítások → Fizetési beállítások → Payment Methods** oldalon válaszd a **Stripe** lapot, és jelöld be a **Stripe-fizetési mód bekapcsolása** négyzetet. A beállítás minden űrlapra érvényes.
2. A **Fizetési mód** mellett válaszd a **Tesztmód** (próbafizetések) vagy az **Éles mód** lehetőséget. A kettő beállítása ugyanúgy megy.
3. Kattints a **Connect with Stripe** gombra. A Stripe oldalán új fiókot hozhatsz létre (e-mail-cím és legalább 10 karakteres jelszó, vagy Google-fiókkal való belépés), vagy a meglévő fiókodba lépsz be ugyanazzal az e-mail-címmel. A „Get emails from Stripe” jelölőnégyzet nem kötelező, ha nem kérsz termékhíreket a Stripe-tól, hagyd üresen.
4. Hagyd jóvá a kapcsolatot. A csatlakozással a Fluent Forms látja a Stripe-fiókod adatait (például a fizetési és kifizetési előzményeket), és fizetéseket hozhat létre a nevedben.
5. Kattints a **Stripe beállítások mentése** gombra.

![A Stripe lap a Payment Methods oldalon](./kepek/fizetes-2-stripe-beallitasok.webp)

*A Stripe lap a Payment Methods oldalon* (https://minta-bolt.hu/wp-admin/admin.php?page=fluent_forms_settings)

A képen a Tesztmód van kiválasztva, a **Connect with Stripe** gomb a fiók csatlakoztatására szolgál, alatta pedig a webhook blokk áll.

A „Connect with Stripe” módszer alapból be van kapcsolva, és ez az ajánlott, biztonságos beállítás.

Ha inkább a hagyományos API-kulcsos módszert használnád, a „Connect with Stripe” opciót kikapcsolhatod ezzel a kóddal (a sablon `functions.php` fájljában vagy egy kódrészlet-bővítményben):

```php
add_filter('fluentform/disable_stripe_connect', '__return_true');
```

### Webhook az ismétlődő fizetésekhez

Előfizetéshez és ismétlődő fizetéshez a Stripe-ban webhookot is be kell állítanod.

A webhook (a Stripe értesítése a webhelyednek, IPN) küldi vissza az ismétlődő fizetések és az előfizetések változásait. Az előfizetést az [Előfizetés mező](https://hub.hellowp.io/hu/plugins/fluentformpro/fizetes-elofizetes/) gyűjti be. Webhook nélkül ezek a fizetések nem működnek teljesen.

1. A **Stripe-webhook (ismétlődő fizetésekhez ajánlott)** blokkban másold ki a **Webhook URL**-t és az ajánlott eseményeket, majd mentsd a beállításokat a **Stripe beállítások mentése** gombbal.
2. A Stripe fiókod vezérlőpultján, bal lent nyisd meg a **Developers** pontot, majd a **Webhooks** oldalt.
3. Kattints a **+ Add destination** gombra.
4. Keresd meg és jelöld be az ajánlott eseményeket (az eseményeket nevük vagy leírásuk alapján is kereshetod), majd kattints a **Continue** gombra.
5. Válaszd a webhook végpontot (**Webhook endpoint**), és kattints újra a **Continue** gombra.
6. Az **Endpoint URL** mezőbe illeszd be a Fluent Formsból másolt webhook URL-t, és kattints a **Create destination** gombra.

Az események jelentése:

| Esemény | Mikor érkezik |
| --- | --- |
| `charge.succeeded` | A terhelés sikeres, vagyis a fizetés teljesült a Stripe-on. |
| `charge.captured` | Egy korábban csak engedélyezett (lefoglalt) összeg terhelése megtörtént. Lefoglalt fizetésnél kötelező. |
| `invoice.payment_succeeded` | Egy számla kifizetése sikerült, jellemzően előfizetéses fizetésnél. |
| `charge.refunded` | Egy terhelést visszatérítettek, így a Stripe-on történt visszatérítések követhetők. |
| `customer.subscription.deleted` | Az ügyfél előfizetése megszűnt: lemondta, lejárt, vagy az ismétlések után a fizetés sikertelen maradt. |
| `customer.subscription.updated` | Az ügyfél előfizetését módosították. |
| `checkout.session.completed` | A fizetési munkamenet lezárult, az ügyfél kifizette. |

A felület a fentieken kívül még két eseményt sorol fel: `checkout.session.async_payment_succeeded` és `checkout.session.async_payment_failed` (az aszinkron fizetés sikeréről és sikertelenségéről). Ezeket is jelöld be.

### Stripe az űrlapon

A Stripe csak olyan fizetési űrlapon használható, amelyben ott van a [Fizetési tétel](https://hub.hellowp.io/hu/plugins/fluentformpro/fizetes-fizetesi-tetel/) és a [Payment Method](https://hub.hellowp.io/hu/plugins/fluentformpro/fizetes-fizetesi-mod-osszegzes/) mező. Ha még nincs ilyen űrlapod, kezdd a [Fizetési űrlap készítésével](https://hub.hellowp.io/hu/plugins/fluentformpro/fizetes-urlap-keszitese/).

1. Az űrlap szerkesztőjében vidd az egeret a **Payment Method** mező fölé, és kattints a ceruza ikonra.
2. A **Fizetési módok** listában jelöld be a **Hitel- vagy betéti kártya (Stripe)** sort, és nyisd le a nyíllal.
3. Állítsd be a lenti opciókat, majd kattints a **Save Form** gombra.
4. A jobb felső sarokban másold ki a rövidkódot, és illeszd be az oldalra vagy bejegyzésbe. Az **Előnézet és tervezés** gombbal megnézheted az űrlapot.

![A Payment Method mező Stripe beállításai](./kepek/fizetes-2-stripe-mezo-panel.webp)

*A Payment Method mező Stripe beállításai* (https://minta-bolt.hu/wp-admin/admin.php?page=fluent_forms&route=editor&form_id=7)

A képen a Stripe sor le van nyitva: látszik a felirat mezője és a három jelölőnégyzet.

| Beállítás | Mit csinál |
| --- | --- |
| Fizetési mód címkéje | A fizetési mód felirata az űrlapon. |
| Beágyazott pénztár | A kártyás fizetés az űrlapba beágyazva (inline) jelenik meg. |
| Enable Payment Element | A kártyamezőt a Stripe Payment Elementre cseréli. Csak akkor jelenik meg, ha a **Beágyazott pénztár** be van kapcsolva. |
| Irányítószám ellenőrzése | Kötelezővé teszi az irányítószám megadását a beküldéshez. |

### Stripe Payment Element

A Payment Element a beágyazott fizetés szokásos kártyamezője helyett jelenik meg. A látogató az űrlap elhagyása nélkül fizethet kártyával, Apple Payjel vagy Google Payjel. A tárcás lehetőségek csak a támogató eszközökön és böngészőkben látszanak: az Apple Pay Safariban (iPhone, iPad, Mac), a Google Pay Chrome-ban és más támogatott böngészőkben.

1. Nyisd meg az űrlapot a szerkesztőben, és a **Payment Method** mező beállításainál jelöld be a Stripe-ot.
2. Nyisd le a Stripe sort, és kapcsold be a **Beágyazott pénztár** opciót.
3. Jelöld be az **Enable Payment Element** négyzetet.
4. Kattints a **Save Form** gombra.

A Payment Element a hagyományos és a [beszélgetős űrlapokon](https://hub.hellowp.io/hu/plugins/fluentformpro/urlapok-letrehozasa-beszelgetos/) is működik, a Stripe 3D Secure megerősítése is megy a beszélgetős űrlapon.

Az űrlapon a **Kártya** és a tárca lehetősége egymás mellett látszik. Ha a látogató tárcát választ, az űrlap ezt írja ki: „Another step will appear to securely submit your payment information.” A fizetést az **Űrlap beküldése** gomb után a tárca ablakában fejezi be. Tesztmódban az űrlap a fizetési lehetőségek alatt jelzi, hogy a Stripe tesztmódja aktív.

#### A domain regisztrálása Apple Payhez és Google Payhez

Az Apple Pay megjelenítéséhez előbb regisztrálnod kell a webhely domainjét a Stripe-fiókodban.

1. A Stripe vezérlőpultján kattints a jobb felső sarokban a fogaskerék (**Settings**) ikonra, és a **Product settings** alatt válaszd a **Payments** pontot.
2. Nyisd meg a **Payment method domains** fület, és kattints az **Add a new domain** gombra.
3. Írd be a webhely fő domainjét (például `pelda.hu`) vagy egy aldomainjét (például `bolt.pelda.hu`), majd kattints a **Save** gombra.
4. A domain ezután **Enabled** állapotban megjelenik a listában. Az azonosítóját a sor végén lévő három pontos menü **Copy domain ID** pontjával másolhatod ki. Ha egy domainen nem akarod megjeleníteni a tárcákat, válaszd a **Disable domain** pontot.

Az űrlap saját Stripe-beállításai (**Beállítások & Integrációk → Payment Settings → Stripe Settings**):

| Beállítás | Mit csinál |
| --- | --- |
| Stripe Meta Data | A beküldött adatokat átküldi a Stripe-nak (**Push Form Data to Stripe**). |
| Stripe Account | A globális vagy egy egyedi Stripe-fiók használata az űrlaphoz. |
| Stripe Payment Receipt | A fizetési visszaigazoló emailek kikapcsolása (nem ajánlott). |
| Stripe Descriptor | A kártyakivonaton megjelenő szöveg, 5 és 22 karakter között. Üresen az űrlap neve szerepel. |
