Registration Flow

Standard Registration (with SMS verification):

  1. User submits registration data (POST without code)

  2. System sends SMS verification code

  3. Code stored in session as confirmation_data

  4. User resubmits with code parameter

  5. System validates phone and code match

  6. Creates loyalty account in external system

  7. Creates local LoyaltyCard record

  8. Sets user attributes: has_loyalty=true, verified_user=true

  9. Optionally syncs user data if is_sync=true

OTP Registration (without SMS verification):

  1. User already verified via other means

  2. Direct submission to /add_loyalty_card_otp/

  3. Skips SMS verification entirely

  4. Creates loyalty account and local record

  5. Sets has_loyalty=true attribute

Search and Link:

  1. User submits phone/email to /search_exists_create/

  2. System queries external loyalty system

  3. If account exists, creates local LoyaltyCard link

  4. If not found, returns message (no account creation)

Last updated

Was this helpful?