Kas yra mokėjimo vartai? Kaip veikia internetiniai mokėjimai paaiškinta
Mokėjimo vartai – tai paslauga, kuri saugiai paima pirkėjo mokėjimo duomenis apmokėjimo metu, perduoda juos bankams ir kortelių tinklams patvirtinti ir grąžina „patvirtinta“ arba „atmesta“ – paprastai per kelias sekundes. Tai tiltas tarp jūsų programos ir finansinės sistemos. Pavyzdžiai – Stripe, PayPal, Adyen, Square ir Braintree.
Šiandien dauguma šių įmonių sujungia vartus su visu kitu, ko reikia, kad gautumėte pinigus, todėl „mokėjimo vartai“, „mokėjimo apdorotojas“ ir „mokėjimo teikėjas“ dažnai vartojami ta pačia prasme.
Kodėl mokėjimo vartai svarbūs kuriant su DI
„Pridėk mokėjimus“ yra viena dažniausių užklausų DI kūrimo įrankiams ir viena lengviausiai subtiliai suklystamų. Pats kodas paprastai trumpas. Svarbiausios yra aplinkybės:
- Kuris teikėjas tinka jūsų verslui, šaliai ir tam, ką parduodate.
- Kur veikia kodas. Slapti mokėjimo raktai turi likti serveryje, niekada naršyklėje.
- Kaip jūsų programa sužino, kad mokėjimas pavyko. Patikimas būdas – teikėjo webhook, o ne klientas, pasiekęs „ačiū“ puslapį.
- Jūsų teisinės ir mokestinės atsakomybės, kurios priklauso nuo to, kas yra prekybos įrašų tvarkytojas.
Supratimas, ką daro vartai, padeda aiškiai nurodyti, ko norite, ir patikrinti, ar rezultatas saugus.
Kasdienis palyginimas
Pagalvokite apie mokėjimą kortele parduotuvėje.
Kortelių terminalas prie kasos yra vartai: jis saugiai nuskaito jūsų kortelę ir išsiunčia užklausą. Jis nieko nenusprendžia – perduoda klausimą „ar šis asmuo gali sumokėti 40 €?“ grandine į jūsų banką ir gauna atsakymą atgal. Sprendžia parduotuvės bankas (įsigijėjas) ir jūsų bankas (išdavėjas), o juos jungia kortelių tinklas (Visa, Mastercard).
Internetinis mokėjimo vartai – tai tas pats terminalas, perkeltas į žiniatinklį, papildytas saugumu, kad būtų galima tvarkyti per internetą gaunamus kortelių duomenis.
Kaip vyksta internetinis kortelės mokėjimas
Štai kas nutinka per kelias sekundes po to, kai klientas paspaudžia „Mokėti“:
| Žingsnis | Kas vyksta | Kas tai daro |
|---|---|---|
| 1. Apmokėjimas | Klientas įveda kortelės duomenis saugioje mokėjimo formoje | Teikėjo forma ar puslapis |
| 2. Šifravimas | Duomenys užšifruojami ir išsiunčiami į vartus | Vartai |
| 3. Autorizacijos užklausa | Užklausa keliauja į kortelių tinklą ir kliento banką | Apdorotojas, kortelių tinklas |
| 4. Patikrinimai | Bankas tikrina lėšas ir sukčiavimo požymius ir gali paprašyti papildomo patvirtinimo, pavyzdžiui 3D Secure | Išdavėjo bankas |
| 5. Atsakymas | Patvirtinimas ar atmetimas grįžta į jūsų programą | Vartai |
| 6. Fiksavimas ir atsiskaitymas | Pinigai surenkami ir, pagal teikėjo išmokėjimo grafiką, pervedami į jūsų banko sąskaitą atskaičius mokesčius | Apdorotojas, įsigijėjas |
Verta žinoti du dalykus:
- Autorizacija nereiškia, kad jau sumokėta. Pirmiausia pinigai rezervuojami, po to fiksuojami, o vėliau pervedami į jūsų sąskaitą – dažnai po kelių dienų.
- Jūsų programa visai neturėtų matyti kortelės numerio. Šiuolaikiniai teikėjai suteikia talpinamą apmokėjimo puslapį ar įterptus laukus, kuriuos kontroliuoja jie, o jūsų programa gauna tik mokėjimo nuorodą.
Pagrindinės dalys ir kas jas valdo
| Dalis | Kas tai yra |
|---|---|
| Mokėjimo vartai | Saugiai užfiksuoja mokėjimo duomenis ir perduoda juos toliau. |
| Mokėjimo apdorotojas | Perkelia operacijos duomenis tarp bankų. |
| Prekybininko sąskaita | Sąskaita, kuri priima kortelių mokėjimus jūsų vardu. Teikėjai, pavyzdžiui Stripe, ją įtraukia į paslaugą. |
| Įsigijėjas | Banką prekybininko pusėje. |
| Išdavėjas | Kliento bankas, kuris patvirtina ar atmeta. |
| Kortelių tinklas | Visa, Mastercard ir kiti, jungiantys įsigijėjus ir išdavėjus. |
| Prekybos įrašų tvarkytojas | Verslas, teisiškai parduodantis klientui ir atsakingas už mokesčius, grąžinimus ir ginčus. |
Kai kurie teikėjai (Paddle, Lemon Squeezy) patys veikia kaip prekybos įrašų tvarkytojas, tvarkydami pardavimo mokestį ir PVM už jus, mainais į didesnius mokesčius. Kiti (Stripe, PayPal) palieka jus kaip prekybos įrašų tvarkytoją, su pasirenkamais mokesčių įrankiais. Sąžiningam variantų palyginimui žr. Stripe, Paddle ir Lemon Squeezy ir Stripe ir PayPal.
Darbo pavyzdys: kurso pardavimas
Parduodate internetinį kursą už 99 € ir prašote DI kūrimo įrankio pridėti mygtuką „Pirkti“.
- Klientas paspaudžia Pirkti. Jūsų serveris naudodamas slaptą raktą paprašo teikėjo sukurti apmokėjimo sesiją 99 € sumai ir gauna nuorodą.
- Klientas nukreipiamas į teikėjo talpinamą apmokėjimo puslapį, įveda kortelę ir atlieka visus 3D Secure patikrinimus su savo banku.
- Mokėjimas patvirtinamas, o klientas nukreipiamas į jūsų „sėkmės“ puslapį.
- Atskirai teikėjas siunčia webhook į jūsų serverį: „mokėjimas sesijai X pavyko.“ Jūsų serveris patikrina webhook parašą, suranda užsakymą, pažymi jį apmokėtu ir atrakina kursą.
- Po kelių dienų pinigai, atskaičius mokesčius, pasiekia jūsų banko sąskaitą.
Žingsnis 4 yra svarbiausias. Jei kursą atrakintumėte sėkmės puslapyje, bet kas, radęs tą URL, galėtų jį gauti nemokamai, o klientai, kurių naršyklė užsidarė anksčiau, sumokėtų ir negautų nieko.
Pagrindinės sąvokos
| Sąvoka | Reikšmė |
|---|---|
| Apmokėjimo sesija | Vienkartinis mokėjimo puslapis ar eiga, kurią jūsų serveris sukuria konkrečiam pirkimui. |
| Testavimo režimas | Smėliadėžė su bandymų raktais ir bandymų kortelių numeriais – tikri pinigai nejuda. |
| Publikuojamas / slaptas raktas | Publikuojamas raktas gali būti naršyklės kode; slaptas raktas turi likti serveryje. |
| 3D Secure | Papildomas žingsnis, kai klientas patvirtina mokėjimą su savo banku; Europoje įprastas pagal Strong Customer Authentication (SCA) taisykles. |
| PCI DSS | Kortelių pramonės saugumo standartas visiems, kurie tvarko kortelių duomenis. |
| Chargeback (grąžinimas ginčo tvarka) | Kai klientas ginčija mokėjimą su savo banku ir pinigai išimami atgal. |
| Grąžinimas (refund) | Pinigai, kuriuos grąžinate savanoriškai. |
| Išmoka (payout) | Teikėjo pervedimas surinktų pinigų į jūsų banko sąskaitą. |
Dažniausi klaidingi įsitikinimai
- „Man reikia saugoti kortelių numerius, kad galėčiau vėl imti mokėjimus.“ Ne. Teikėjai išsaugo kortelę ir jums suteikia nuorodos žetoną pakartotiniams mokėjimams ir prenumeratoms. Kortelių numerių niekada nereikėtų saugoti patiems.
- „Sėkmės puslapis reiškia, kad mokėjimas pavyko.“ Mokėjimus patvirtinkite per webhook'us serveryje. Peradresavimus galima praleisti, suklastoti ar jie niekada neįvyksta.
- „Mokėjimo teikėjai visi kainuoja maždaug vienodai.“ Mokesčiai skiriasi pagal teikėją, šalį, kortelės tipą ir ar įtrauktas mokesčių tvarkymas. Patikrinkite kiekvieno teikėjo dabartinių kainų puslapį savo šaliai.
- „Naudojant Stripe esu PCI atitinkantis.“ Tai labai supaprastina atitiktį, nes kortelių duomenys lieka pas teikėją, bet vis tiek turite (paprastai trumpą) savikontrolės formą užpildyti.
- „Testavimo ir tikrasis režimai veikia identiškai.“ Jie panašūs, bet tikrasis režimas reikalauja pilnai patvirtintos paskyros, tikrų webhook galinių taškų tikrajai aplinkai ir tikrų banko duomenų.
- „Mokėjimo vartai tvarko mano mokesčius.“ Tik jei jie yra prekybos įrašų tvarkytojas arba įjungiate ir sukonfigūruojate jų mokesčių funkcijas. Patikrinkite vietines taisykles arba pasitarkite su specialistu.
Ko prašyti savo DI kūrimo įrankio
- „Pridėk [Stripe] Checkout prie [produkto]. Sukurk sesiją serveryje naudodamas slaptą raktą iš aplinkos kintamojo.“
- „Pažymėk užsakymus kaip apmokėtus tik iš patvirtinto webhook'o ir patikrink webhook parašą.“
- „Tvarkyk, kad webhook galėtų būti išsiųstas du kartus, neįkuriant dubliuotų užsakymų.“
- „Naudok testavimo režimo raktus ir parodyk, kaip testuoti su teikėjo bandymų kortelėmis, įskaitant atmestą kortelę.“
- „Kas nutinka, jei klientas uždaro skirtuką jau sumokėjęs?“
- „Parodyk kiekvieną vietą, kur naudojamas mokėjimo raktas, ir patvirtink, kad slaptas raktas niekada nepasiekia naršyklės.“
Mokėjimo vartai Mythex platformoje
Mythex sukurtoms programoms integruotų mokėjimų nėra, ir nėra vieno paspaudimo „Prijungti Stripe“. Susikuriate paskyrą pas pasirinktą teikėją, jo bandymų raktus pridedate kaip projekto slaptuosius raktus ir prašote agento sukurti apmokėjimą serverio pusėje. Išbandykite peržiūroje su teikėjo bandymų kortelėmis, tada publikuokite. Dokumentacijoje tai aprašoma mokėjimų priėmimas su Stripe skyriuje, o Webhooks aptaria patvirtinimo žingsnį.
Pasikartojantiems mokėjimams žr. kaip pridėti mokėjimus prie programos ir, pasikartojantiems mokesčiams, kaip pridėti prenumeratas su Stripe.
Klausimai
Kas yra mokėjimo vartai paprastais žodžiais?
Mokėjimo vartai – tai paslauga, kuri saugiai paima pirkėjo mokėjimo duomenis iš jūsų apmokėjimo puslapio, perduoda juos bankams ir kortelių tinklams patvirtinti ir grąžina programai patvirtinimą arba atmetimą – paprastai per kelias sekundes.
Kuo skiriasi mokėjimo vartai nuo mokėjimo apdorotojo?
Griežtai kalbant, vartai yra saugios priekinės durys, kurios užfiksuoja ir perduoda mokėjimo duomenis, o apdorotojas perkelia operaciją tarp bankų. Praktikoje šiuolaikiniai teikėjai, tokie kaip Stripe, PayPal ir Adyen, sujungia abu, o prie jų – prekybininko sąskaitą, į vieną paslaugą, todėl terminai dažnai vartojami pakaitomis.
Ar man reikia PCI atitikties, kad priimčiau kortelių mokėjimus?
Bet kuris verslas, priimantis korteles, turi kažkiek atitikti PCI DSS saugumo standartą. Naudojant talpinamą apmokėjimo puslapį ar teikėjo įterpiamus mokėjimo laukus kortelių numeriai niekada nepasiekia jūsų serverių, o tai labai sumažina jūsų atsakomybę. Jūsų teikėjas pasakys, kuri savikontrolės forma jums taikoma.
Kas yra prekybos įrašų tvarkytojas (merchant of record)?
Prekybos įrašų tvarkytojas – tai verslas, teisiškai parduodantis pirkėjui ir atsakingas už tokius dalykus kaip pardavimo mokesčio ar PVM skaičiavimas bei mokėjimas, grąžinimai ir ginčijami mokėjimai. Tokios paslaugos kaip Paddle ir Lemon Squeezy veikia kaip prekybos įrašų tvarkytojas vietoj jūsų; su Stripe ar PayPal paprastai esate jūs.
Ar galiu pridėti mokėjimus prie DI sukurtos programos?
Taip. DI kūrimo įrankis gali parašyti kodą, kuris jungia jūsų programą prie tokio teikėjo kaip Stripe: serveryje kuria apmokėjimo sesijas, apdoroja webhook'us ir atnaujina užsakymus. Vis tiek reikia savo paskyros pas teikėją, o viską prieš paleidžiant verta išbandyti jo testavimo režimu.