Hur man använder Headless OTP APIs på Shopify Store
Översikt
Säkerheten för kundkonton och transaktioner är avgörande i den snabba e-handelsvärlden. Att implementera engångslösenordsverifiering (OTP) är ett effektivt sätt att förbättra säkerheten och skydda känslig information. I den här API-guiden guidar vi dig genom processen att aktivera OTP-verifiering i din Shopify-butik.
Shopify är en populär e-handelsplattform känd för sin skalbarhet och flexibilitet, vilket gör den till ett utmärkt val för företag av alla storlekar. Du kan lägga till ett extra säkerhetslager till användarkonton, utcheckningsprocesser och mer genom att integrera OTP-verifiering i din Shopify-butik.
Den här steg-för-steg-guiden ger instruktioner om hur du använder headless OTP API:er i din Shopify-butik med hjälp av miniOrange OTP Login-applikationen.
Förutsättning: Shopify OTP-inloggningsapplikation
För att använda huvudlösa OTP API:er måste du installera miniOrange OTP-inloggningsapplikation i din butik.
Kolla in vår video-, för att veta mer om hur Single-Sign-On fungerar i Shopify.
Konfigurationssteg
Steg-för-steg-guide för att integrera OTP-verifiering i din Shopify-butik
Steg 1: Skapa autentiseringsrubrik
- För att använda våra utmanings- och validerings-API:er måste du först ange de auktoriseringsrubriker som krävs för att säkerställa att begäran görs av en giltig användare.
- Följande värden måste anges i HTTP-förfrågningshuvudet. Detta kommer att vara detsamma för OTP-förfrågningar och OTP-valideringsanrop.
| Attribut | BESKRIVNING |
| Kundnyckel | Din kundnyckel. |
| Tidsstämpel | Tiden i millisekunder när begäran görs. |
| Tillstånd | Sha 512 hashvärde bestående av kundnyckel, aktuell tidsstämpel och API-nyckel. |
EXEMPELKOD:
JAVA
/* JSON Object format for challenge API request */
{
/* You can get customer Key and customer Api
Key from
shopifysupport@xecurify.com
*/
String customerKey = "<YOUR_CUSTOMER_KEY>"; String apiKey =
"<YOUR_API_KEY>";
/* Current time in milliseconds since midnight, January 1, 1970 UTC.
*/
String currentTimeInMillis = String.valueOf(System.currentTimeMillis());
/* Creating the Hash using SHA-512 algorithm (Apache Shiro library)
*/
String stringToHash = customerKey + currentTimeInMillis + apiKey; String
hashValue = new Sha512Hash(stringToHash).toHex().toLowerCase(); HttpPost
postRequest = new HttpPost("");
/* Setting the Authorization Header values */
postRequest.setHeader("Customer-Key", customerKey);
postRequest.setHeader("Timestamp", currentTimeInMillis);
postRequest.setHeader("Authorization", hashValue) }
PHP
/* JSON Object format for challenge API request */
{
/* You can get customer Key and customer Api
Key from
shopifysupport@xecurify.com
*/
$customerKey = "<YOUR_CUSTOMER_KEY>"; $apiKey = "<YOUR_API_KEY>";
/* Current time in milliseconds since midnight, January 1, 1970 UTC.
*/
$currentTimeInMillis = round(microtime(true) * 1000);
/* Creating the Hash using SHA-512 algorithm */
$stringToHash = $customerKey . number_format ( $currentTimeInMillis, 0, '', ''
) . $apiKey; $hashValue = hash("sha512", $stringToHash);
/* Add $customerKeyHeader,$timestampHeader and $authorizationHeader in the
HTTP header */
$customerKeyHeader = "Customer-Key: " . $customerKey; $timestampHeader =
"Timestamp: " . number_format ( $currentTimeInMillis, 0, '', '' );
$authorizationHeader = "Authorization: " . $hashValue; }
Steg 2: Generering av engångskod / Utmaning av REST API
- Du måste göra en HTTP GET-förfrågan till vårt OTP-genererings-/Challenge Rest API för att kunna generera OTP för telefonnumret/e-postadressen. Vårt Challenge Rest API accepterar följande förfrågningsparametrar:
- OTP Generation Endpoint: https://store.xecurify.com/moas/rest/shopify/api/auth/headless/otprequest
Begäran parametrar:
| Attribut | BESKRIVNING |
| butik | Din Shopify-butiksdomän (myshopify) där miniOrange OTP-appen för inloggning/registrering är installerad. |
| till |
E-postadressen eller telefonnumret dit du vill att vi ska skicka en engångskod. Obs! Värdet som anges här måste finnas i din Shopify-kundlista |
| handling | Skriv åtgärdstyp som "logga in" or "register" enligt ditt krav |
Du kan hänvisa till bilden för att bättre förstå handlingarna.
Aktivera reglaget som visas nedan för att tillåt OTP-inloggning för nya användare.
JSON-svar
- Följande är JSON-svaret som genereras av Generate Rest API.
/* JSON Response Object for Generation Request */
{ "responseType": "CHALLENGE", "phoneDelivery":{ "contact": null,
"sendStatus": null, "sendTime": null }, "customerID": "5745403199697",
"txId":"<UNIQUE_TRANSACTION_ID>", "emailDelivery": { "contact":
"<EMAIL_ADDRESS_OTP_WAS_SENT_TO>", "sendStatus": "SUCCESS", "sendTime":
"09-05-2023 05:22:37" }, "authType": "EMAIL",
"message": "The OTP has been sent to ixxxxxxxxxxxa@xxxxxxxx.com.
Please enter the OTP you received to Validate.",
"status": "SUCCESS" }
| Attribut | BESKRIVNING |
| txid | Detta är transaktions-ID:t för din genereringsförfrågan. Du måste spara detta värde i sessionen. Detta måste skickas i validerings-API:et. |
| authType | Autentiseringsmetoden. I det här fallet är det e-post |
| responsTyp | Detta visar typen av svar, dvs. svar för utmaningsförfrågan eller valideringsförfrågan. Giltiga värden: UTMANING |
| telefonleverans | Leveransstatus för telefon. Denna information anges om autentisering sker via mobil. |
| kontakta | Telefonnumret OTP skickades till dvs mobil. |
| skickaStatus | Status för att skicka ovanstående kontakt. Giltiga värden: LYCKADES, MISSLYCKADES, FEL |
| sendTime | Tidsstämpel som visar tidpunkten för sändning. |
| meddelande | Ett ytterligare meddelande som visar den övergripande statusen för begäran. |
| status | Övergripande status för utmanings-/valideringsbegäran. Giltiga värden: LYCKADES, MISSLYCKADES, FEL |
Steg 3: OTP-validering / Verifiera Challenge REST API
- För att validera en engångslösenordskod (OTP) måste du göra en HTTP GET-förfrågan till vårt Validate Rest API. Vårt Validate Rest API accepterar följande förfrågningsparametrar:
- Vårt validerings-API är: https://store.xecurify.com/moas/rest/shopify/api/auth/headless/otpverify
Begäran parametrar:
| Attribut | BESKRIVNING |
| txid | Transaktions-ID:t som begäran genererades för. Detta skickas som en svarsparameter i Generate API. |
| butik | Din Shopify-butiksdomän (myshopify) där miniOrange OTP-appen för inloggning/registrering är installerad. |
| till | E-postadressen eller telefonnumret dit du vill att vi ska skicka OTP. |
| otp | OTP mottaget på din mobil/e-post. |
JSON-svar
- Följande är JSON-svaret som genereras av Validate Rest API.
/* JSON Response Object for Validation Request */
{ txId: "<UNIQUE_TRANSACTION_ID>" responseType: "VALIDATE" status:
"SUCCESS" message: "Successfully Validated" }
| Attribut | BESKRIVNING |
| txid | Detta är transaktions-ID för din genereringsförfrågan. |
| responsTyp | Detta visar typen av svar, dvs. svar för Generera begäran eller Validera begäran. Giltiga värden: VALIDATE |
| status | Övergripande status för genererings-/valideringsbegäran. Giltiga värden: LYCKADES, FEL, MISSLYCKADES. |
| meddelande | Ett ytterligare meddelande som visar den övergripande statusen för begäran. |
I den här omfattande guiden har vi utforskat den viktiga världen av OTP-verifiering (engångslösenord) och hur den kan integreras sömlöst i din Shopify-butik för att förbättra säkerheten och skydda känsliga kunddata. Vi har gått igenom de viktigaste koncepten, fördelarna och steg-för-steg-instruktionerna för implementering. OTP-verifiering i din Shopify-butik med hjälp av applikationen "miniOrange OTP Login".
Ytterligare resurser
Hör av dig
Hör av dig till oss på shopifysupport@xecurify.com, och vårt team hjälper dig att konfigurera Shopify OTP-inloggningsapplikationen. Vårt team hjälper dig att välja den bästa lösningen/planen utifrån dina behov.
