# Stripe

> A Stripe Connect beállításai a LearnDashben, a régi Stripe-kiegészítő beállítása és kivezetése, webhookok, vásárlói élmény, gyakori kérdések és hibaelhárítás.

A Stripe az egyik legegyszerűbben beállítható fizetési átjáró a kurzusok eladásához. A LearnDash két módot ismer: a magban lévő **Stripe Connect**-et (ezt használd), és a régi **Stripe for LearnDash** kiegészítőt, amelynek támogatása 2023. június 13-án megszűnt.

## Stripe Connect

A Stripe Connect a LearnDash magjában van, külön kiegészítő nélkül. A Stripe-fiókot a **LearnDash LMS → Beállítások → Fizetések** oldalon kapcsolhatod be.

1. Nyisd meg a **LearnDash LMS → Beállítások → Fizetések** oldalt.
2. A **Stripe Connect** sorban kattints a **Kezelés** gombra.
3. Kattints a **Stripe csatlakoztatása** gombra, és kövesd a Stripe lépéseit.

![A Stripe Connect beállításai: csatlakoztatás, aktív és tesztmód kapcsoló, fizetési módok, visszatérési URL, webhook URL](./kepek/fizetes-stripe-connect.webp)

*A Stripe Connect beállításai: csatlakoztatás, aktív és tesztmód kapcsoló, fizetési módok, visszatérési URL, webhook URL* (https://minta-bolt.hu/wp-admin/admin.php?page=learndash_lms_payments&section-payment=settings_stripe_connection)

A képen látható mezők:

| Beállítás | Mit csinál |
|---|---|
| **Stripe csatlakoztatása** | A Stripe-fiók összekötése. |
| **Aktív** | Bekapcsolja a Stripe Connectet. |
| **Tesztmód** | Próbafizetésekhez a Stripe tesztmódját használja. |
| **Fizetési módok** | **Hitelkártya** (alapból bejelölve) és **iDEAL**. |
| **Visszatérési URL** | Ide kerül a vásárló a fizetés után. |
| **Webhook URL** | A webhook címe, amelyet a Stripe-ban is meg kell adni. |

## Áttérés a régi Stripe-kiegészítőről

A **Stripe for LearnDash** kiegészítő 2023. június 13-án megszűnt, új funkciókat nem kap, és a meglévő hibák sem lesznek javítva. A LearnDash a Stripe Connectet támogatja tovább.

- **Érinti a jelenlegi ügyfeleimet?** Nem, őket továbbra is a megszokott módon terheli a rendszer. Az átállás csak a Stripe Connect beállítása után vásárlókat érinti.
- **Mit látnak a vásárlók másképp?** Alapvetően semmit: ha eddig is a Stripe saját fizetési oldalára irányítottad őket, és onnan vissza az oldaladra, ez így marad.
- **A „Legacy Checkout” felugró ablak megmarad?** Nem. A Stripe már nem támogatja ezt a módot, a Stripe Connectnél a vásárlók a Stripe fizetési oldalára kerülnek, majd vissza az oldaladra.
- **Hogyan kezdjem a Stripe Connectet?** Lásd fent.
- **Leáll a kiegészítő?** A megszűnés után sem áll le azonnal, de javítást és újdonságot nem kap, ezért érdemes előre átállni.

## A régi Stripe-kiegészítő beállítása

Ez a rész azoknak szól, akik a régi kiegészítőt még használják.

### Mikor jó ez az integráció

Jó választás, ha gyorsan, egyszerűen szeretnél kurzust árulni, egy vagy néhány kurzusod van, és az árazás egyszerű. Nem ajánlott, ha testre szabott fizetési élményt, teljes tagsági oldalt, a kurzuson kívüli termékeket vagy a fiókok és a bejelentkezés szoros kézben tartását szeretnéd.

### Telepítés

**Kiegészítők menüből (aktív LearnDash-licenc kell):**

1. A **LearnDash LMS → Kiegészítők** oldalon keresd meg a **Stripe for LearnDash** kiegészítőt.
2. Kattints a **Telepítés most**, majd a **Bővítmény aktiválása** gombra.

**Kézi feltöltéssel:**

1. Töltsd le a bővítmény fájlját (bejelentkezés kell hozzá).
2. A WordPressben nyisd meg a **Bővítmények → Új hozzáadása** oldalt.
3. Kattints a **Bővítmény feltöltése** gombra, és válaszd ki a `.zip` fájlt.
4. Kattints a **Telepítés most**, majd az **Aktiválás** gombra.

### Tesztmód és éles mód

- **Tesztmód:** amíg az oldalt belül próbálgatod. Nem mozog pénz, de a Stripe rögzíti, hogy a tranzakció sikerült-e.
- **Éles mód:** a kurzus indulásától. Az ebben a módban lévő tranzakciók valódiak. Az indulás után érdemes végig éles módban maradni.

A két módhoz külön kulcspár tartozik. A Stripe tesztmódú előfizetéseket 90 nappal a létrehozás után automatikusan lemondja, a lemondottakat 30 nappal később törli, és legfeljebb 50 tesztelőfizetést jelölhetsz meg kivételként a vezérlőpulton. Az idő előretekerését a Stripe „test clocks” funkciója teszi lehetővé az előfizetések tesztelésére.

### Integrációs típus

- **Legacy Checkout:** a bankkártyás fizetés egy felugró ablakban (lightbox) történik az oldaladon.
- **Checkout (SCA-támogatás):** a fizetés a Stripe saját oldalán történik, az európai PSD2 előírásnak megfelelően.

### Webhook és Endpoint Secret

Mindkét típusnál kell két mező:

- **Webhook URL:** automatikusan generált cím, ezt a Stripe-fiókod webhookbeállításai közé kell beilleszteni.
- **Endpoint Secret:** a webhook létrehozása után kapott kulcs, mindkét checkouttípushoz kell.

**Webhook felvétele a Stripe-ban:**

1. Jelentkezz be a Stripe-fiókodba, és nyisd meg a webhookok oldalát (dashboard.stripe.com/webhooks).
2. Kattints az **Add Endpoint** gombra.
3. Másold be a WordPressből a **LearnDash LMS → Beállítások → Stripe Settings** oldalon látható Webhook URL-t az **Endpoint URL** mezőbe.
4. A **Version** legyen a legfrissebb API-verzió.
5. Az **Events to Send** alatt csak ezeket kapcsold be: `customer.subscription.deleted`, `invoice.payment_failed`, `invoice.paid`, `checkout.session.completed`.
6. Ha sikertelen vagy megszakított fizetés után kettőzött felhasználók jönnek létre, vedd fel ezeket is: `charge.failed`, `payment_intent.payment_failed`, `payment_intent.canceled`.
7. Kattints az **Add Endpoint** gombra.

**Az Endpoint Secret beillesztése:**

1. A létrehozott webhook **Signing Secret** részénél kattints a **Click to Reveal** gombra.
2. Másold ki a kulcsot.
3. Illeszd be a LearnDash Stripe-beállításainak **Endpoint Secret** mezőjébe.

### A Stripe-kulcsok megkeresése

1. Nyisd meg a Stripe vezérlőpultját, és válaszd a **Developers → API keys** oldalt.
2. A **Standard Keys** részben látod a **Publishable Key** és a **Secret Key** értékét; mindkettő kell.
3. Az éles kulcsok előtagja `pk_live_` és `sk_live_`.
4. A tesztkulcsokhoz kattints jobb felül a **View test data** kapcsolóra. Szükség lehet a **Reveal key token** gombra a titkos kulcshoz. A tesztkulcsok előtagja `pk_test_` és `sk_test_`.

### A kulcsok megadása a LearnDashben

1. Nyisd meg a **LearnDash LMS → Beállítások** oldalt, és kattints a **Stripe Settings** fülre.
2. Tesztmódhoz jelöld be a **Test Mode** négyzetet, és add meg a teszt kulcsokat.
3. Éles módhoz a **Test Mode** legyen kikapcsolva, és add meg az éles kulcsokat.

### További beállítások

- **Pénznem:** a háromjegyű ISO-kód, például `USD`, `CAD` vagy `AUD`.
- **Fizetési módok:** alapból a bankkártya van kiválasztva; kérheted helyette az iDEAL fizetést, vagy kínálhatod mindkettőt.
- **Visszatérési URL (nem kötelező):** ha üres, a felhasználó a kurzusoldalon marad a fizetés után. Megadhatsz köszönőoldalt, akár másik domainen is, `https://`-sel kezdődő teljes címmel.

### A kurzus beállítása

1. Nyisd meg a **LearnDash LMS → Kurzusok** listát, és kattints az eladni kívánt kurzusra.
2. Kattints a **Beállítások** fülre, és görgess a hozzáférési beállításokhoz.
3. A **Hozzáférési mód**: **Azonnali vásárlás** (egyszeri fizetés) vagy **Ismétlődés** (előfizetés).
4. Add meg a **Kurzus ára** mezőt, például `29.99`. A pénznem jele automatikusan kerül hozzá; egész összegnél elhagyható a tizedes.
5. Ismétlődő fizetésnél add meg a **Számlázási ciklus** értékét napokban, hetekben, hónapokban vagy években.

### A vásárló élménye

A kurzusoldalon az **E tanfolyam felvétele** gomb jelenik meg (a felirat az egyéni címkékkel módosítható, lásd a [Haladó beállítások](https://hub.hellowp.io/hu/plugins/sfwd-lms/beallitasok-funkciok-halado-beallitasok/) fejezetet).

- **Legacy Checkout:** a gomb egy Stripe-ablakot nyit, ahol a vásárló megadja a fizetési adatait. Az első sor az oldal címe (a WordPress **Beállítások → Általános** oldaláról), alatta a kurzus címe, a gomb pedig a megadott árat mutatja.
- **Checkout (SCA-támogatás):** a vásárló a Stripe biztonságos, saját szerverein futó fizetési oldalára kerül.

Sikeres fizetés után a rendszer létrehoz egy új felhasználói fiókot, és beiratkoztatja a kurzusra. A kettőzött fiókok és a sikertelen tranzakciók elkerülésére a meglévő felhasználók akkor vásároljanak újabb kurzust, ha be vannak jelentkezve.

## Egy vásárlógomb több kurzushoz

A `learndash_payment_buttons` shortcode-dal a gombot bármelyik oldalra beteheted, lásd a [Fizetési átjárók és pénznem](https://hub.hellowp.io/hu/plugins/sfwd-lms/fizetes-fizetesi-atjarok/) fejezetet.

## Gyakori kérdések

**Használhatom a PayPalt és a Stripe-ot együtt?**
Igen. Állítsd be mindkettőt a LearnDashben, és a vásárló az **E tanfolyam felvétele** gomb után választhat a kettő között (a megjelenés a sablontól függ).

**Mikor kapom meg a pénzt?**
Ezt a Stripe-fiókod kifizetési beállításai határozzák meg.

**Állíthatok be ismétlődő fizetést?**
Igen: a kurzus **Hozzáférési mód** beállítása legyen **Ismétlődés**, és válassz számlázási ciklust.

**Adhatok kupont a Stripe-integrációban?**
A régi Stripe-kiegészítő nem támogat kedvezményt. Használd a LearnDash saját [kuponjait](https://hub.hellowp.io/hu/plugins/sfwd-lms/fizetes-kuponok/) vagy egy webáruházas vagy tagsági kiegészítőt.

**Hogyan térítek vissza, vagy mondok le előfizetést?**
A Stripe-fiókodban, nem a LearnDashben.

**Kikerül a felhasználó a kurzusból, ha visszatérítést kap?**
Nem. A hozzáférést a felhasználó profiljából vedd el.

**Hol olvashatok az SCA-ról (erős ügyfél-hitelesítés)?**
A Stripe dokumentációjában.

**Miért látok két tranzakciót a nyilvántartásban?**
Ez normális, a vásárlót nem terheli kétszer. Lásd a [Fizetési átjárók és pénznem](https://hub.hellowp.io/hu/plugins/sfwd-lms/fizetes-fizetesi-atjarok/) fejezetet.

## Hibaelhárítás

**Hiányzik az „E tanfolyam felvétele” gomb.**
Az adminisztrátorok alapból minden kurzusba be vannak iratkozva, ezért nem látják a gombot. Jelentkezz ki és frissíts, vagy nézd meg az oldalt privát böngészőablakban vagy másik böngészőben.

**A tranzakciók nem mennek át.**
Ellenőrizd a webhookbeállításokat. A működéshez legalább ezeknek az eseményeknek aktívnak kell lenniük a Stripe-fiókban: `checkout.session.completed`, `invoice.paid`, `invoice.payment_failed`, `customer.subscription.deleted`.

**500-as HTTP-hibát és időtúllépést kapok.**
A webhookban csak a fenti négy esemény legyen bekapcsolva. Ha minden eseményt bekapcsolsz, az valószínűleg időtúllépéshez vezet.

**Kettőzött vásárlói fiókok keletkeznek egy sikertelen vagy megszakított tranzakció után.**
A webhookban a fenti négy mellett kapcsold be a `charge.failed`, `payment_intent.payment_failed` és `payment_intent.canceled` eseményt is. A meglévő felhasználókat kérd meg, hogy újabb kurzus megvétele előtt jelentkezzenek be.
