Opties voor gebruikersverificatie voor Shopify-winkels - Onze ervaring en wat advies
Paul Grieselhuber
Als Shopify winkeleigenaar is het meer dan waarschijnlijk dat je gebruikers wilt toestaan om zich te authenticeren en te identificeren. Authenticatie dient vele doelen voor jou als winkeleigenaar en is de kern van je vermogen om direct contact te maken met je klanten op een één-op-één basis.
Als je een nieuwe winkeleigenaar bent, ben je misschien verrast dat authenticatie een vrij diepgaand onderwerp is met veel mogelijke benaderingen en stijlen.
Als je nog nooit over authenticatie hebt nagedacht, denk je misschien "Oh je bedoelt dat ik een gebruikersnaam en wachtwoord moet invoeren? Ik ben er klaar voor."
En misschien heb je gelijk. Maar misschien ook niet.
Ons doel met dit bericht is om winkeliers te helpen begrijpen wat de verificatieopties zijn, welk effect deze keuze heeft op hun mogelijkheden en, uiteindelijk, wat de impact ervan is op hun succes.
Wat we in dit artikel behandelen
Als een heel kort overzicht is hier een lijst van de dingen die we wel en niet zullen behandelen in dit artikel met betrekking tot authenticatie:
Gebruikerservaring met betrekking tot authenticatie - Gedekt ✅
Waardepropositie voor de bedrijfseigenaar - Gedekt ✅
Beveiliging - Niet behandeld, tenminste niet echt grondig ❌
Waarom niet dieper ingaan op beveiliging? Hoewel beveiliging een belangrijk onderwerp is dat we zeer serieus nemen, is het een enorm onderwerp dat het verdient om apart te worden behandeld.
Dat uit de weg, laten we meteen ter zake komen - wat is de beste authenticatieoptie voor jouw e-commercewinkel?
Het antwoord is natuurlijk dat dit ervan afhangt.
Overwegingen voor Shopify winkel eigenaren bij het kiezen van een authenticatie strategie
Hoe je winkel is gebouwd heeft een grote invloed op wat je opties zijn als het gaat om authenticatie. De twee belangrijkste opties hier zijn: Shopify thema of Headless store.
Authenticatie voor winkels die Shopify-thema's gebruiken
Als je een Shopify thema gebruikt, of dat nu een kant-en-klaar thema uit een Shopify thema winkel is, of een thema dat een ontwikkelaar voor je heeft aangepast, dan is verificatie heel eenvoudig.
In dit geval hoef je als winkeleigenaar niet veel na te denken over de implementatie. Over het algemeen zal een Shopify thema de authenticatie afhandelen via een eenvoudige gebruikersnaam en wachtwoord - beproefd en waar...een beetje.
Authenticatie op basis van referenties (d.w.z. gebruikersnaam en wachtwoord) wordt met de dag ouderwets omdat het niet meer zo goed is als vroeger om accounts veilig te houden. Dit betekent dat naarmate de tijd verstrijkt, gebruikers gewend raken aan veiligere authenticatiemethoden en uiteindelijk authenticatie op basis van geloofsbrieven als vreemd/onveilig zullen gaan beschouwen. Zodra deze perceptie een kantelpunt bereikt, zal het min of meer tijd zijn voor iedereen om credentials te dumpen in hun e-commerce winkels.
Dat gezegd hebbende, medio 2024 is het waarschijnlijk nog steeds prima voor hele kleine winkels die nog maar net begonnen zijn met dit hele e-commerce gebeuren.
Er is echter een belangrijk voorbehoud, waar we later op terug zullen komen.
Authenticatie voor Shopify winkels zonder kop
Het is zeer waarschijnlijk dat naarmate je webwinkel groeit, je Shopify thema's zult ontgroeien - dat wil zeggen thema's die gebouwd zijn op Shopify's Liquid templating taal en direct door Shopify worden geserveerd als "de voorkant" van je webwinkel (waarbij de Shopify admin zelf "de achterkant" is).
En als dat zo is, dan ga je het pad op van wat bekend staat als een "Headless" winkel. Met een Headless winkel zal de Shopify admin nog steeds dienen als "de achterkant" en als "de motor" van je winkel (d.w.z. het verwerken van betalingen, het opslaan van producten, klanten, bestellingen, etc.), terwijl "de voorkant" (d.w.z. productpagina's, knoppen voor gebruikers om toe te voegen aan de winkelwagen, de winkelwagen zelf) zal worden gebouwd op een andere technologie die meer geavanceerde, moderne en krachtige winkelervaringen mogelijk maakt.
Headless stores zijn een ander enorm onderwerp, maar als het gaat om authenticatie, is de impact hier dat het eenvoudige inlogformulier met gebruikersnaam en wachtwoord dat je altijd hebt gebruikt niet langer beschikbaar is. Tenminste datzelfde formulier - je kunt nog steeds authenticatie op basis van inloggegevens gebruiken, maar je ontwikkelaar zal het voor je moeten implementeren.
Voordat je besluit om gewoon opnieuw te implementeren wat je eerder had, neem dan de gelegenheid om de opties die nu voor je liggen te overdenken. Laten we het eens hebben over de 30.000 voet blik op authenticatie voor Headless Shopify winkels.
Ook hier vallen de opties uiteen in twee categorieën:
Implementeer een referentie authenticatiepakket om de moeilijkste delen voor je op te lossen, of
Shopify's nieuwe Customer Account API gebruiken
We gebruiken de term "referentie authenticatie pakket" hier enigszins losjes, maar dit verwijst naar pakketten zoals Next-Auth (nu Auth.js) en zijn soortgenoten. We kijken uit naar de reacties op deze vraag.
Het hangt af van de definitie van "juist", toch?
Er kunnen vele redenen zijn waarom het ene of het andere het beste is voor jouw project, en zelfs vele definities voor "goed", vreemd genoeg.
Mogelijke definities voor "juist" die we zijn tegengekomen:
De hoofdstakeholder geeft niets om de veiligheidsimplicaties van zijn UX / UI-voorkeur en "wil gewoon dat het zo is" - in dit geval, mensen op een inlogformulier vertellen of een gebruikersnaam bestaat of niet, een HUGE no-no, uiteraard.
Gebruik eenmalige wachtwoorden, natuurlijk
Gebruik geen eenmalige wachtwoorden, uiteraard
Je hebt waarschijnlijk gemerkt dat voor elke belanghebbende hun perspectief op hoe authenticatie zou moeten werken - je snapt het: voor de hand liggend is.
Waarom zou de ene of de andere oplossing geschikt zijn voor jouw project?
Mensen hebben om een aantal redenen een uitgesproken mening over hoe ze willen dat authenticatie werkt op hun site of applicatie.
Voor sommige mensen heeft modern beveiligingsbeleid de hoogste prioriteit. Soms is gevoeligheid voor de geavanceerdheid van de gebruiker van het grootste belang. Andere keren wint een lage wrijving. Voor anderen is het "inlogformulieren omdat inlogformulieren".
Je hebt waarschijnlijk je eigen persoonlijke voorkeur en de basis voor die voorkeur. Het documenteren hiervan kan een goede plek zijn om te beginnen.
In het volgende gedeelte geven we je de hulpmiddelen om die aanname te betwisten.
Belangrijke overwegingen naast persoonlijke voorkeur
Ervan uitgaande dat we het eens zijn geworden over de definitie van "juist", laten we dan bespreken hoe je de juiste authenticatie strategie selecteert voor je Headless Shopify winkel.
Andere overwegingen voor de selectie van de authenticatie strategie zijn onder andere:
Zal Shopify altijd het e-commerce platform van je keuze blijven? Weet je het zeker?
Heb je andere integraties met derde partijen waardoor je het gezaghebbende record van "het gebruikersaccount" onder jouw beheer en op jouw systemen moet hebben?
Vereist de bestuursstructuur van uw organisatie dit?
Hoe geavanceerd is uw ontwikkelingsteam om op een bepaald moment in de toekomst van de ene naar de andere te migreren met minimale gevolgen voor de gebruiker?
Hoe goed bent u (of uw ontwikkelingsteam) in staat om regelgeving zoals GDPR aan te pakken en na te leven in een aangepaste implementatie van de bovengenoemde referentiepakketten?
Er zijn er zeker nog veel meer, maar dit zijn degene die het eerst en het vaakst naar voren komen.
En dat niet alleen, deze overwegingen zijn nog lang niet alles. Hoe zit het bijvoorbeeld met UX?
UX met betrekking tot authenticatie gaat veel verder dan "hoe logt de gebruiker in?". Bijvoorbeeld:
Moet je aan retargeted marketing doen? Wat je kunt bereiken met je gekozen strategie kan invloed hebben op wat je kunt bereiken met deze marketinginspanningen.
Hoe lang zijn sessies? Moet je dit controleren?
Vind je het goed om iemand anders (bijv. Shopify) in de stoel van de bestuurder te zetten? Dat zou je niet moeten doen, tenzij je een site hebt getest die gebruik maakt van Shopify's Customer Accounts API. Meer hierover hieronder.
Hoe zit het met de checkout ervaring? Moeten gebruikers ingelogd zijn tijdens het afrekenen? Of is het voldoende om hun e-mailadres in te vullen als ze op de afrekenpagina komen?
Bent u van plan om abonnementen of lidmaatschappen op uw site te zetten? Dat heeft grote gevolgen.
Het proces van het selecteren van een geschikte authenticatiestrategie voor een groeiend bedrijf is inderdaad genuanceerd. Deze lijst met overwegingen is natuurlijk lang en misschien ontmoedigend.
Maar als je deze overwegingen niet aanpakt tijdens de plannings- en toepassingsfasen van je product, zal dat waarschijnlijk leiden tot meer pijn in de toekomst.
Dit is absoluut een situatie van het type twee marshmallows.
Goed, genoeg gebrabbel. Dit is wat u moet weten.
Optie #1: Implementeer een referentie authenticatie pakket
Kies deze optie als je een van de volgende wilt als authenticatiestroom:
Een aanmeldformulier met een gebruikersnaam en wachtwoord
Single Sign-on service gebruiken zoals Google, Facebook, enz.
Je wilt "magische links" toestaan - d.w.z. de gebruiker voert zijn e-mailadres in, er wordt een link naar zijn inbox gestuurd, hij klikt erop en is ingelogd.
Dit is ook de beste plek om het voorbehoud te bespreken dat we hierboven hebben genoemd in het gedeelte "Authenticatie voor winkels die Shopify thema's gebruiken".
Deze optie lijkt het meest op hoe authenticatie werkt met een Shopify thema. Het grote verschil is echter dat jouw gegevens jouw gegevens blijven. Jouw systemen, jouw database, etc. zijn de gezaghebbende bron van het gebruikersrecord en niet die van Shopify. Dit is belangrijk om je winkel klaar te maken voor toekomstige groei.
Optie #2: Shopify's API voor klantaccounts gebruiken
Kies deze optie als je Shopify's "Cadillac" authenticatie ervaring via OTP (one time passwords) wilt.
Dit is hoe deze authenticatie werkt:
Je gebruiker klikt op inloggen
Ze worden naar een Shopify-pagina gebracht met één veld (e-mail) en een knop
Ze voeren hun e-mailadres in en verzenden
Ze krijgen een eenmalig wachtwoord toegestuurd in de vorm van een 6-cijferig getal.
Ze komen terug naar uw site en voeren dit 6-cijferige nummer in
Als het nummer correct is, zijn ze geverifieerd
Het is een geweldige, wrijvingsarme flow voor uw gebruikers met twee GROTE voordelen:
Je gebruikers hoeven niet nog een set referenties te onthouden (of anderszins bij te houden). Ik wil je niet beledigen, maar hoeveel je site voor jou betekent, betekent het praktisch niets voor je gebruikers. Als je ze vraagt om nog een set referenties op te slaan, kan dat leiden tot UX-frictie en lagere conversieratio's.
Gebruikers worden volledig geverifieerd wanneer ze aankomen op de Shopify-hosted checkout pagina die alle niet-Shopify Plus winkels gebruiken om af te rekenen. Dit betekent nog minder wrijving, omdat ze veel minder velden hoeven in te vullen om hun transactie af te ronden.
Punt #2 maakt deze authenticatie methode de enige manier om dezelfde checkout ervaring te krijgen als wanneer je een Shopify Liquid thema gebruikt. Alle andere authenticatiemethoden voor een Headless Shopify winkel kunnen dit voordeel niet bieden.
TL;DR - Een kader voor hoe te kiezen
Dat is veel informatie over een onderwerp waar veel mensen normaal gesproken niet bij stilstaan. Dus hoe moet je kiezen op basis van al het bovenstaande? Hier is een lijst die de bovenstaande informatie vereenvoudigt:
Ga je akkoord met een Shopify-hosted (en branded! Ja, je kunt de branding op deze pagina vanaf dit schrijven niet meer veranderen) login pagina? Zo niet, kies dan optie #1.
Vind je het goed om volledig afhankelijk te zijn van Shopify voor alle gebruikersgegevens? Zo nee, hetzelfde antwoord als hierboven - geen Shopify Customer Accounts API voor jou.
Wil je een traditionele login pagina? Optie #1
Wil / moet (per org governance misschien) je authenticatie intern worden afgehandeld? Optie #1
Wil je maximale dataportabiliteit als je er voor kiest om op een gegeven moment Shopify te verlaten? Optie #1
Wil je de verantwoordelijkheid voor authenticatie binnen je systemen volledig vermijden? Optie #2
Geeft u de voorkeur aan een authenticatiestroom met de laagst mogelijke wrijving? Optie #2
Moeten gebruikers volledig geauthenticeerd zijn op de Shopify-hosted checkout pagina? Optie #2
Er is een optie #3, maar eh...
Er is een optie #3 (of #1.1?) die bestaat uit het implementeren van een SaaS / hosted auth oplossing, dat wil zeggen dezelfde algemene situatie als optie #1, maar je betaalt maandelijks aan een bedrijf om hetzelfde te bereiken.
De overwegingen zijn min of meer gelijk aan optie #1, maar het wordt gehost op de computer van iemand anders en je betaalt een maandelijks bedrag voor wat elegantie en eenvoud. Een voorbeeld hiervan is een dienst als Clerk.
Nogmaals, twee marshmallows.
Inpakken
Dit was een korte spoedcursus op niet-zo-technisch niveau over hoe je authenticatie opties voor je Shopify site zou moeten overwegen. We hopen dat het nuttig was, en je kunt natuurlijk altijd contact opnemen met het team van Rendr Software Group om je specifieke authenticatiestrategie of je site in het algemeen te bespreken.