35
Twilio SMS Notifications (v8.2)
UAT-35.1
Phone Number Setup & OTP Verification
HighSteps
- Navigate to Settings > Notifications
- Enter a mobile phone number
- Click Send Verification Code
- Enter the 6-digit OTP received via SMS
- Click Verify
Verify (7 checks)
- Phone input field accepts international format
- OTP SMS delivered within 30 seconds
- Correct 6-digit code verifies successfully
- Incorrect code shows error message
- Phone number saved and visible in settings after verification
- SmsLog record created for the OTP send event
- Splunk log shows phone verification event
| Score | Tester | Date | Notes |
|---|---|---|---|
| ___ | ___ | ___ | ___ |
UAT-35.2
Per-Event SMS Toggle Switches
HighSteps
- Navigate to Settings > Notifications
- Toggle individual SMS events on/off
- Toggle "Enable All" and "Disable All"
Verify (5 checks)
- Toggle switches visible for: OTP, Document Viewed, NDA Signed, Comments, Data Room Invitations, Contract Signing, File Uploads
- Individual toggles save state correctly
- "Enable All" turns all toggles on
- "Disable All" turns all toggles off
- Disabled events do not trigger SMS
| Score | Tester | Date | Notes |
|---|---|---|---|
| ___ | ___ | ___ | ___ |
UAT-35.3
SMS Delivery on Trigger Events
HighSteps
- Trigger each enabled event type
- Verify SMS receipt for each
Verify (7 checks)
- Document viewed → SMS received with document title and viewer email
- NDA signed → SMS received with signer name
- Comment added → SMS received with comment excerpt
- Data room invitation → SMS received with invitee email
- Contract fully signed → SMS received with contract title (UAT-36.1)
- File uploaded via request → SMS received with filename
- All SMS events logged to SmsLog table with Twilio SID
| Score | Tester | Date | Notes |
|---|---|---|---|
| ___ | ___ | ___ | ___ |
UAT-35.4
SMS History Audit Log
MediumSteps
- Navigate to Settings > SMS History
Verify (5 checks)
- Paginated table shows SMS history
- Each row shows: event type, status (delivered/failed), masked phone, timestamp, Twilio SID
- Event filter dropdown works
- Failed SMS shown with error message
- Phone number is masked (e.g., +1 ***-***-1234)
| Score | Tester | Date | Notes |
|---|---|---|---|
| ___ | ___ | ___ | ___ |
UAT-35.5
SMS — Owner Alert on Contract Signing
CriticalSteps
- Create a new contract as the owner
- Sign as provider
- Send to client via email
- Open the signing portal as client and complete signing
- Check owner's phone within 60 seconds
- Check SmsLog in Supabase or Settings > SMS History
Verify (7 checks)
- SMS delivered to owner's verified phone number within 60 seconds of client signing
- SMS body contains the contract title or reference identifier
- SMS is only triggered on full execution — not when provider signs alone
- SMS is not sent if owner's contract_signed toggle is disabled
- SmsLog record created with event_type="contract_signed", status="delivered", twilio_sid populated
- Splunk log shows SMS dispatch event with contract ID
- SMS History page in Settings shows the event with correct masked phone and timestamp
| Score | Tester | Date | Notes |
|---|---|---|---|
| ___ | ___ | ___ | ___ |