Skip to main content

OTP Account Validation

OTP (One-Time Password) is a one-time verification code that Loyal Guru sends by email or SMS when a Customer registers or digitizes their account in the WL App.

Its purpose is to confirm that the Customer owns the email or phone number they provided, so the loyalty database only keeps verified identities.

OTP is enabled per Company. When it is off, registration can activate the account without this step (according to the Company setup).

Why it matters​

Without OTP, anyone could register with an email or phone that is not theirs. That creates risks such as:

  • Duplicate or fake accounts
  • Incorrect loyalty history
  • Fraud when linking or merging accounts

With OTP, only the person who receives the code can complete activation.

Customer journey — new registration in WL App​

When OTP is enabled for the Company:

  1. The Customer fills in the registration form in the WL App.
  2. Loyal Guru creates the account in status Unverified.
  3. A one-time code is sent by email or SMS, according to the preferred channel.
  4. The Customer enters the code in the WL App.
  5. If the code is valid → the account becomes Active and the Customer can use loyalty features normally.
Register → Unverified → Enter OTP → Active

If the Customer enters a wrong or expired code, the account stays Unverified. They can request a new code and try again.

What “Unverified” means​

An Unverified Customer exists in the system but has not finished identity validation.

While Unverified, the Customer is treated as incomplete for loyalty operations. In particular, they should not:

  • Be included in audiences / segments as a normal active Customer
  • Receive personalized campaigns or discounts as an active member
  • Earn loyalty points or rewards as an active member
  • Be counted as an active Customer in analytics

Only after a successful OTP does the account become Active and behave as a full loyalty Customer.

Existing physical Customers (already Active)​

If the Customer already exists as Active — for example they registered in store with a physical loyalty card — and later uses the WL App to validate or digitize their account:

  • Their status stays Active
  • They are not moved to Unverified
  • OTP is used to confirm ownership of the contact channel, without invalidating the physical / already active membership

This protects Customers who were correctly onboarded offline: digital validation must not “downgrade” a valid physical account.

Digitization (“I already have a card”)​

When a physical cardholder digitizes their account in the WL App:

  1. They identify their existing membership.
  2. Loyal Guru sends an OTP by email or SMS (according to Company / Customer channel setup).
  3. They enter the code.
  4. The digital experience is activated on that existing Active account.

An already Active physical Customer does not become Unverified during this flow.

During digitization, the OTP is sent to the email or phone number already stored on the Customer record in the loyalty database. The Customer cannot change that email or phone number in this step — they must use the contact details already registered for their membership.

Incomplete registrations — automatic cleanup​

If a Customer starts registration in the WL App, receives an OTP, but never completes verification, the account remains Unverified.

Each Company can configure how long an Unverified registration may stay open (for example 12 or 24 hours). After that window:

SituationWhat Loyal Guru does
Unverified account with no linked loyalty data (no coupons, no related records that must be kept)The incomplete registration is fully removed, so the person can register again from scratch.
Unverified account that already has linked data (for example a coupon or other associated records)Loyal Guru performs a soft delete: personal data is cleared / masked and the account is marked deleted, without hard-removing linked records. This avoids breaking loyalty data integrity.

If the Customer completes OTP before cleanup, the account becomes Active and is never deleted by this process.

Cleanup runs automatically. The exact deletion time depends on the Company window and the next scheduled cleanup run. Completing OTP at any time before deletion cancels cleanup.

Merged Customers​

If an Unverified registration is later merged into another Customer:

  • The old account becomes merged (and points to the surviving account).
  • It is no longer a candidate for OTP cleanup.
  • Loyalty benefits live on the surviving Active account.

OTP automatic deletion only applies to accounts that remain Unverified. It never deletes merged or merging Customers.

Channels​

ChannelDescription
EmailCode sent to the registration email
SMSCode sent to the registration phone number

The available channel depends on Company configuration and on the data the Customer provided. The Customer may select a preferred OTP channel when the WL App allows it.

Delivery depends on the email/SMS provider configured for the Company. If the code does not arrive, the Customer should use Resend code with the same credentials, or contact the retailer’s support channel shown in the app.

Main use cases​

Use caseWhat the Customer doesExpected result
New digital registrationRegisters in WL App and enters OTPAccount goes Unverified → Active
Wrong / expired codeEnters invalid OTPStays Unverified; can resend and retry
Abandons registrationNever enters OTPAfter the Company window → cleanup (full remove or soft delete if linked data exists)
OTP by emailChooses / receives email codeCompletes validation when the email is delivered
OTP by SMSChooses / receives SMS codeCompletes validation when the SMS is delivered
Physical Customer digitizesAlready Active; validates the email/phone already on the Customer record (cannot change them in this step)Stays Active; digital access enabled
Unverified account is mergedAccount consolidated into another CustomerBecomes merged; OTP cleanup no longer applies
Retailer IAM sync via webhook (when applicable)Completes OTPRetailer systems are notified only after the Customer is Active / verified — not while Unverified

Summary​

TopicRule
Goal of OTPProve ownership of email/phone before activating a digital loyalty account
New WL App signupStarts as Unverified, becomes Active after OTP
Already Active (e.g. physical)Stays Active — OTP does not invalidate the membership
Incomplete signupCleaned up after the Company window
Cleanup with coupons / linked dataSoft delete — protects linked loyalty data
Cleanup without linked dataFull removal — Customer can register again
Merged CustomersNot cleaned up by OTP; benefits stay on the surviving Active account

Configuration notes​

  • OTP on/off is a Company setting.
  • Preferred channel: email and/or SMS, according to setup.
  • Unverified cleanup window is configurable per Company (for example 12h or 24h). If no window is configured, automatic cleanup of Unverified registrations from this flow does not run.
  • Changes to these policies are managed with the Loyal Guru team (they are not self-served end-to-end in Owner today).