Registration

Registration flows with loyalty support

Register user with optional loyalty enrollment

post

Creates a user account and optionally enrolls loyalty. Phone must be unique when PHONE_NUMBER_UNIQUE_VALIDATOR_ACTIVE is enabled. Loyalty behavior is driven by CUSTOMER_LOYALTY_CARD_SERVICE.

Throttling scope: register-with-loyalty. Two-factor: SMS verification via code/resend.

Body
Responses
post
/users/register-with-loyalty/

No content

Register user

post

Creates a user account. When GUEST_USER_REGISTRATION_REQUIRES_EMAIL_VERIFICATION is enabled, login is blocked until email is verified.

The registration flow is selected via REST_REGISTER_VIEW (System Configuration):

  • RegisterSMSOtpView: Requires phone + SMS code (2FA).

  • RegisterKvkkView: Requires consent fields; may request SMS code.

  • UserRegisterWithLoyaltyCardViewSet: Supports loyalty enrollment; phone verification via SMS.

  • RegisterRedirectView: Default email-first flow.

2FA coverage:

  • SMS-based second factor is enforced when RegisterSMSOtpView is active.

  • Loyalty registration enforces SMS verification for phone changes and enrollment.

  • When RegisterSMSOtpView is configured, this endpoint requires phone plus SMS code/resend values for completion.

Throttling scope: register.

Body
first_namestring · max: 50Required
last_namestring · max: 50Required
emailstring · emailRequired
passwordstring · passwordRequired
email_allowedbooleanOptionalDefault: false
sms_allowedbooleanOptionalDefault: false
whatsapp_allowedbooleanOptionalDefault: false
call_allowedboolean | nullOptional
confirmbooleanRequired

Confirms acceptance of policies

codestring | nullOptional

SMS verification code (used in SMS OTP/KVKK flows)

resendboolean | nullOptional

Request a new SMS verification code (SMS OTP/KVKK flows)

Default: false
genderstring,null · enumOptionalPossible values:
date_of_birthstring | nullOptional
usernamestring | null · max: 150Optional
user_typestringOptional

User type enumeration value

phonestring | nullOptional
Responses
post
/users/registration/

No content

Confirm email

get
Path parameters
keystringRequired

Email confirmation key

Responses
get
/users/registration/account-confirm-email/{key}/

No content

Last updated

Was this helpful?