Generate OTP
OTP
Generate OTP
Send an OTP to a member’s registered channel using their email address.
POST
Generate OTP
Triggers an OTP to be sent to a member’s registered delivery channel (SMS or email, as configured for your program), identified by their email address. Use this for login, password reset, account activation, or two-factor authentication flows. The
After a successful response, verify the OTP with Verify OTP.
OtpType parameter controls which template and expiry rules apply. If you have the member’s RelationReference (CID) rather than their email, the preferred flow is Generate OTP by Relation Reference.
OtpType Values
| Value | Use Case |
|---|---|
ACTIVATION | Account activation after registration |
LOGIN | Member login via OTP |
FORGOTPWD | Forgot password — initiate reset |
CHANGEPASSWORD | Change password (member is logged in) |
RESETPASSWORD | Reset password (admin-triggered) |
FORGOTUSERNAME | Forgot username recovery |
TwoFA | Two-factor authentication |
UNBLOCKMEMBER | Unblock a locked member account |
NONE | No specific type |
CASHBACKCONFIRM | Cashback transaction confirmation |
POINTTRANSFERCONFIRM | Points transfer confirmation |
FAMILYPOOLINGMERGE | Family pooling account merge confirmation |
FAMILYPOOLINGUNMERGE | Family pooling account unmerge confirmation |
AIRREVIEWNCONFIRM | Air booking review confirmation |
DOMESTICFLIGHTREVIEWNCONFIRM | Domestic flight booking confirmation |
HOTELREVIEWNCONFIRM | Hotel booking review confirmation |
CARREVIEWNCONFIRM | Car booking review confirmation |
GIFTCARDREVIEWNCONFIRM | Gift card review confirmation |
PACKAGEREVIEWNCONFIRM | Package booking review confirmation |
SHOPREVIEWNCONFIRM | Shop purchase review confirmation |
SHOPDIGITALREVIEWNCONFIRM | Digital shop review confirmation |
MERCHANTREVIEWNCONFIRM | Merchant review confirmation |
ISPREVIEWNCONFIRM | ISP review confirmation |
INSURANCEREVIEWNCONFIRM | Insurance review confirmation |
OTP delivery channel (email or SMS), expiry duration, and maximum attempt limits are all configurable at the program level in Loyalife Admin. Confirm these values with your Xoxoday implementation contact so your UI timers and lockout handling match the actual configuration.
Responses
200 — Success
200 — Success
| Path | Type | Description |
|---|---|---|
results.IsSucessful | boolean | true |
results.ErrorCode | string | 000 |
results.ExceptionMessage | string | Success |
results.ReturnObject | boolean | true when OTP is sent |
results.Count | integer | Always 0 |
Authorizations
JWT obtained from Generate Auth Token. Pass as Authorization: bearer {token}.
Body
application/json
The member's email address
Example:
"jane.doe@example.com"
IP address of the requesting system
Example:
"192.168.1.1"
Origin: 1=Web, 2=Mobile, 3=Email, 4=Service
Available options:
1, 2, 3, 4 Example:
1
Purpose of the OTP. Must match between Generate and Verify calls.
Available options:
ACTIVATION, LOGIN, FORGOTPWD, CHANGEPASSWORD, RESETPASSWORD, FORGOTUSERNAME, TwoFA, UNBLOCKMEMBER, NONE, CASHBACKCONFIRM, POINTTRANSFERCONFIRM, FAMILYPOOLINGMERGE, FAMILYPOOLINGUNMERGE, AIRREVIEWNCONFIRM, DOMESTICFLIGHTREVIEWNCONFIRM, HOTELREVIEWNCONFIRM, CARREVIEWNCONFIRM, GIFTCARDREVIEWNCONFIRM, PACKAGEREVIEWNCONFIRM, SHOPREVIEWNCONFIRM, SHOPDIGITALREVIEWNCONFIRM, MERCHANTREVIEWNCONFIRM, ISPREVIEWNCONFIRM, INSURANCEREVIEWNCONFIRM Example:
"LOGIN"
Example:
19
Use 4 for customers
Example:
4
Response
200 - application/json
OTP sent