AA. Active choice (recommended)
- Required, with nothing pre-selected. Next without an answer says “Please choose an answer”.
- Her answer is logged as her own event with the IP; a No is logged too. A Yes sends her the confirmation email.
The model agreed on the call on 9 Oct 2026, for the front-end ticket (web and mobile). Every screen is the real page, changed in place, and opens in the interactive prototype at that state.
Dealer booking is an account setting, on or off. It never belongs to an admin. It shows as its own block near Authorised users, never as a row or a pill on an admin’s row. E2 had one dealer authorisation per relationship manager.
Three ways on, four ways off, every change logged. On: by her at registration or in Settings, or by an admin with evidence (a new security procedure, approved on submit). Off: by her in Settings, on the review or from the email link, or by an admin with a reason.
Any admin who can see her adds themselves. One click, fixed permissions, no approval and no email to her. The admin who turns it on with evidence gets theirs in the same step.
Off stops every dealer booking user. Live sessions included; turning it back on restores them. Users she approved through the old flow are untouched.
No relationship-manager or leaver logic. An admin leaving only stops that admin. E2’s RM-change tour and its Suspended state are gone.
No step per booking. E2’s instruction form and “one instruction covers one booking” are dropped. Log in as authorised user starts from her admin page only; no account picker lists it.
A new evidence form. How she asked; a link and/or an upload; asked from a contact on file; an optional description; one block for what she’ll read; the summary left-aligned.
Her side is one place. The email and the notification both open Settings › Authorised Users. The promise drops “can’t change your details” for “New recipients need your approval”.
The real Transfer Requirements step, web and phone. One question, three variants.
“Can our dealers book transfers for you?” with “Yes, when I ask” (By phone, WhatsApp or email. New recipients still need your approval.) or “No, I’ll book online myself”, as agreed.
An alternative, not a replacement: “Can our dealers book transfers for you when you ask?”, so the answers can be a plain “Yes” and “No, I’ll book online myself”.
Her one place for dealer booking: the block sits above the list. The email and the notification both lead here.
“Off while dealer booking is off”: they work again when she turns it back on.
Sent when an admin turns it on with evidence, and as a confirmation when she turns it on herself.
The same item sits under Recent activity on the dashboard, with View details. It stays until she answers.
Her Authorised Users page, rebuilt on the real page with the client record’s own tabs: Authorised users | Consent history.
| Screen | Platform | States | API it needs (JIRA-BACKEND section 10) |
|---|---|---|---|
| Registration: Transfer Requirements question | Web, mobile | Unanswered; Yes; No. Variants: active choice (recommended), default on, opt in | Accept the choice on the transfer requirements step (Api::V1::Onboarding::AccountsController#update), logged as registration with the IP |
| Settings › Authorised Users: dealer booking block | Web, mobile | Off; turning on (promise); On; Please check; after Keep it on; after she turned it off; off by an admin | Read: GET /api/v1/dealer_booking (or the account or settings response): on or off, since when, how or by whom. Update: PUT /api/v1/dealer_booking { enabled }, account owner only, logs settings and the IP. Keep it on logs a confirmation and clears the notification |
| Settings › Authorised Users: the list | Web, mobile | Staff row (dealer booking or approved by her); paused while dealer booking is off; suspended by her; admin left | Api::V1::AuthorizedTradersController flags staff authorised users and their source, so the apps can label them |
| One authorised user (edit page) | Web, mobile | Staff via dealer booking; staff approved by her; pending request (Activate User / Approve); suspended | Existing authorised trader endpoints, plus the staff flag and source |
| In-app notification: tray, Recent activity, phone drawer | Web, mobile | “Dealer booking is on”, until she answers; today’s “Pending authorised user” for the old flow | A new recent-activity type (or AuthorizedTraderRequest extended), cleared by Keep it on or Turn it off |
| Email: dealer booking is on | Email (web and phone) | First line by channel: call, WhatsApp message, email | Mailer in the backend ticket; Review link into the app; Turn it off link with a signed token |
| Email: you’ve turned on dealer booking (confirmation) | Email (web and phone) | First line by source: “when you signed up” (registration) or “in Settings” (Turn it on, Turn it back on) | Mailer in the backend ticket, sent on her own turn-on (registration or settings); Review link into the app; Turn it off link with a signed token |
| Email: dealer booking is off (an admin turned it off) | One state | Mailer in the backend ticket | |
| Turn-off page, no login | Web (any browser) | Confirm; done; already off (an earlier link) | Token endpoints for the one-click turn-off: the page on GET, the change on POST |
| Session bar (nice to have) | Web, client app | Acting for her as an admin; End session | End-session endpoint that restores the admin’s session (backend, if cheap) |
| Admin: Authorised Users, two tabs, dealer booking block | Admin | Off; on (with or without your row); turn off with a reason; rows: active, off while dealer booking is off, left, pending | Server-rendered (backend ticket, section 9) |
| Admin: evidence form | Admin | Empty; call with link; WhatsApp with a screenshot, or email with the email file (.eml); link warning. Uploads: JPG, PNG, PDF or .eml, up to 50 MB each, kept indefinitely | Server-rendered: the enable_dealer_booking security procedure (backend ticket, section 4) |
| Admin: Request authorised user access | Admin | Unchanged | Existing |
| Admin: Consent history tab | Admin | Newest first, append-only | Server-rendered (backend ticket, section 7) |
| Admin: client record strip | Admin | Included (decided 9 Oct). On (since when); Off | Server-rendered |