Tko su kupci i kako imaju račune?

Autor: 6 min čitanja

WebShopHR ne forsira registraciju prije kupnje. Primarni tok je kupovina bez računa, gdje kupac unese samo podatke potrebne za dostavu i praćenje narudžbe. Registracija je opcionalna i radi preko magic linka, pa kupac ne mora pamtiti novu lozinku samo da bi vidio povijest svojih narudžbi.

Kupovina bez računa je glavni tok

Kupac na stranici naplate unese ime, e-mail, adresu, grad, poštanski broj i telefon. Nakon potvrde narudžbe sustav mu ispisuje trajnu poveznicu oblika /narudzba/{token}. Tu poveznicu može snimiti, dobiti u e-mailu ili otvoriti na drugom uređaju. Bez obzira koristi li isti preglednik ili drugi, vidi status narudžbe, stavke, fiskalni isječak, digitalne datoteke i može pokrenuti povrat, sve bez korisničkog računa i lozinke.

Ako kupac želi račun, na /racun unese svoj e-mail i zatraži magic link. Sustav mu pošalje jednokratnu poveznicu koja vrijedi 15 minuta. Klikom na nju sesija se veže uz postojeći ili novokreirani kupčev zapis. Tek nakon prvog uspješnog logina kupac može, ako želi, postaviti i vlastitu lozinku. Do tada nije primoran pamtiti nikakve vjerodajnice.

Prijava kupca putem magic linka bez lozinke

Ista poruka bez obzira postoji li račun

Kod traženja magic linka sustav uvijek prikaže istu poruku "poslali smo vam poveznicu", bez obzira je li e-mail već u bazi. Ista se politika primjenjuje i na prijavu lozinkom: ako e-mail ne postoji ili lozinka nije točna, kupac dobiva identičnu poruku.

Da bi se spriječilo vremensko razlikovanje postojanja računa, sustav pri nepoznatom računu čak izračuna lažan hash iste cijene kao pravi hash lozinke, pa odgovor stigne u isto vremensko trajanje u oba slučaja.

Zaštita od pretjeranih pokušaja

Magic link je ograničen na 3 pokušaja po 10 minuta s jedne IP adrese po dućanu, što štiti od mail-bombe. Prijava lozinkom je ograničena na 5 pokušaja u minuti s jedne IP adrese. Ovi limiti su namijenjeni sprječavanju zloupotrebe i brute-forcea, a istovremeno dozvoljavaju normalnu kupnju.

Prva narudžba se automatski veže uz račun

Ako je kupac prijavljen u trenutku kad potvrdi narudžbu, sustav automatski upiše njegov identifikator kupca u narudžbu. Kasnije, kad se kupac prijavi na /racun, vidi tu i sve buduće narudžbe vezane uz isti e-mail.

Ako kupac nije bio prijavljen prilikom kupnje, a kasnije otvori račun s istim e-mailom, prijašnje narudžbe napravljene kao gost ipak se pojavljuju na /racun. Popis narudžbi gradi se po e-mailu računa, ne po tome je li narudžba nastala prijavljen ili kao gost.

Jedan e-mail, više dućana

Isti kupac može imati račun u više dućana, ali svaki račun je potpuno odvojen. U bazi postoji ograničenje jedinstvenosti po kombinaciji identifikatora dućana i e-maila, što znači da dućan A ne zna da isti kupac postoji u dućanu B.

Podaci o kupcu izolirani su na tri razine: baza koristi pravila sigurnosti po dućanu, sesijski kolačić je ograničen na domenu konkretnog dućana, a sesije u kešu vezane su uz kombinaciju identifikatora sesije i identifikatora dućana.

Stranica narudžbe umjesto korisničkog portala

Za većinu kupaca nije potreban puni korisnički portal. Poveznica /narudzba/{token} služi kao trajna stranica narudžbe na kojoj vide status, povijest promjena statusa, fiskalne podatke, uplatnicu s barkodom, digitalne datoteke i gumb za povrat. To je dovoljno za praćenje narudžbe bez da kupac mora učiti novu administraciju.

Kupčev put od narudžbe do praćenja statusa bez korisničkog računa

Račun kupca vidi vlastitu povijest

Kad se kupac prijavi putem magic linka i postavi lozinku, stranica /racun prikazuje osobne podatke i popis svih narudžbi vezanih uz taj račun. Narudžbe su filtrirane isključivo na taj dućan, pa kupac ne vidi kupnje iz drugih dućana čak i ako koristi isti e-mail.

Sesija je sigurno ograničena

Sesijski kolačić postavlja se na domenu dućana, što znači da preglednik ne šalje isti kolačić na druge domene. Sesija u kešu traji 30 dana, ali vrijedi samo unutar kombinacije identifikatora sesije i identifikatora dućana. Odjava briše vezu između sesije i kupčevog identiteta, bez da se mora dirati kolačić.

Zaključak

WebShopHR smanjuje barijeru do konverzije time što kupnja ne zahtijeva registraciju. Magic link omogućuje lagano kreiranje računa tek kad kupac to želi, a podaci su strogo izolirani po dućanu. Kupac dobiva trajnu poveznicu za svaku narudžbu, a može dodatno otvoriti račun za pregled povijesti, sve uz zaštitu od enumeracije i pretjeranih pokušaja prijave.

Više o temi: Paketi i početak.

Česta pitanja.

Moram li se registrirati da bih nešto kupio u WebShopHR dućanu?

Ne. Kupovina bez računa je glavni tok. Uneseš podatke za dostavu na naplati i dobiješ trajnu poveznicu na svoju narudžbu, bez lozinke i bez korisničkog računa.


Kako se kupac prijavljuje bez lozinke?

Preko magic linka: na /racun unese e-mail, dobije jednokratnu poveznicu koja vrijedi 15 minuta, a lozinku može (ali ne mora) postaviti tek nakon prve uspješne prijave.


Može li netko pogoditi postoji li određena e-mail adresa u tvojoj bazi kupaca?

Ne bi trebao moći. Sustav uvijek vraća istu poruku bez obzira postoji li e-mail, a čak i za nepostojeći račun izračuna lažni hash iste cijene kao stvarna lozinka, da se ne razlikuje po vremenu odgovora.


Vidim li kao kupac narudžbe iz drugih dućana ako koristim isti e-mail svugdje?

Ne. Svaki dućan ima potpuno odvojen račun za isti e-mail. Baza to sprječava ograničenjem jedinstvenosti po kombinaciji dućana i e-maila, a sesije su vezane uz konkretan dućan.


Što ako sam prvo kupovao kao gost, a kasnije otvorio račun s istim e-mailom, vide li se stare narudžbe?

Da. Popis narudžbi na /racun gradi se po e-mailu, pa se i prijašnje gost-narudžbe s istim e-mailom automatski pojave čim otvoriš račun.

Povezani vodiči.

Otvori vlastiti webshop u par minuta.

Besplatan paket traje bez roka i ne traži karticu.