Format A: Regular Enquiry
1.. Metadata
General description
A Regular Enquiry is the default, full client lifecycle flow used when a website enquiry is routed into BackOffice as a standard legal/professional matter (not pre-flagged as Paid Consultation only and not a pre-packaged Direct Service). The process runs from website form submission, through autoassignment, Strategy Guide and status management, to payment recording, completion, survey and eventual anonymisation/deletion under GDPR rules.
Regular Enquiries use the full Strategy Guide and quotation mechanism, require manual status progression by the assigned User, and rely on accurate payment declarations in the Payments tab for commission and invoicing. They are the primary way most client matters move through the system, across Property, Family, Administrative, Probate and other law categories.
id:
regular-lead-enquiry
system:
[Website,
BackOffice,
Laravel]
type:
process
applies_to_roles: [Client, User, Admin]
related_ETs: [All standard Enquiry Types configured as Regular Enquiry (not Paid Consultation-only, not Direct Service-only)]
2. BusinessSpecific Overviewgoals (for& Developers)objectives
The Regular
Enquiry (Regular
Lead)
is
the
standard
workflow
for high-value,
commercially
interesting legal
and
professional
services
such
as
Property Purchase, Inheritance, Divorce, Litigation, Business Set-Up, etc. It covers all channels through which a serious client can arrive: Website forms, telephone calls to the Elevenlabs AI Receptionist, and email enquiries (both direct to lawyers and via generic inboxes like info@).
Business-wise, this workflow exists to ensure that commercially attractive leads are contacted fast, on-platform, and progressed through a consistent lifecycle: Intake → Strategy → Offer → Engagement → Payment → Completion → Closure, with clear audit trails and commission tracking. It differs from Paid Consultation and Direct Service in that it assumes a full engagement is the target outcome, with a formal Strategy Guide and an Offer Email generated and sent from within BackOffice, and full application of the 24-Hour Rule and reminder/expiry logic.
Success is defined by:
-
AAEnsure (Admin)that takingevery controlvalid ofwebsite the firstform contact submission is converted into a BackOffice client record with the clientcorrect Enquiry Type (ET), country, and initial status (New Enquiry or NPD – Awaiting Assignment).
-
Route each enquiry to avoidan losingappropriate themprofessional tovia competitorsautoassign, taking into account ET, country, profession and toavailability; preventif off-platformthis communication.fails, mark as NPD and alert Admin.
-
Enforce a status-driven lifecycle (New Enquiry → Created Lead → In Progress / Waiting for Response → Completed → Closed or Eliminated), with popups for elimination reasons and completion/payment confirmation.
-
UsersMaintain workingaccurate, strictlyauditable viapayment BackOffice (emails, strategy, payments)data, so that commissionthat invoices and performance commission statements can be monitoredgenerated automatically and invoicedtied correctly.to recorded Payments entries.
-
LeadsMaintain eithera convertingfull audit trail of activity via the Updates Record, including status changes, ET changes, NPD events, assignment, payments, and Admin interventions.
-
Support GDPR-compliant retention, with anonymisation and deletion applied automatically to ongoinginactive workenquiries (Inaccording Progressto →configured Completed → Closed) or being clearly eliminated/frozen, with appropriate follow-up rules and GDPR anonymisation.timelines.
3. GoalsStep-by-step procedure (Regular Enquiry lifecycle)
3.1 Website submission & Non‑Goalsrecord
Goals
creation
-
CompetitiveClient retention:completes Ensurea high-valueservice leadsform are contacted within 24 hours so they are not lost to competitors.
Centralised contact: AA/BackOffice makes and trackson the initialAdvocate contactAbroad on behalf of the User; clients know their enquiry was received and assigned to a named professional.
On-platform workflow: Force Quote/Offer and subsequent emails to originate from BackOffice to avoid off-platform deals and untracked revenue.
Structured lead qualification: Require Strategy Guide completion and formal offer before marking the case as Ongoing/Completed.
Accurate revenue/commission: Enforce payment recording rules before Completed and before certain eliminations.
Non‑Goals
Does not cover consultation-only one-off callswebsite (Paide.g., ConsultationProperty flow)Purchase, Divorce, Administrative procedures, Probate).
-
Does not automateWebsite detailedvalidates feerequired optimisationfields (Intelliquotename, ideasemail, arephone, futureenquiry enhancements,text, notconsent) currentand behaviour).posts data to a form endpoint configured in Laravel.
-
Does not attemptLaravel maps the submission URL to automaticallyan decide multi-ET compositions;and multi-servicecountry offersaccording areto possibleits butrouting stilltable; relativelymisconfigured manual/complex.URLs can cause wrong ET assignment and must be caught in Staging.
-
Does not manage full internal legal task breakdown; it orchestrates the client-facing lifecycle and data capture.
4. Actors & Scope
Actors
Client
Submits Website forms.
Calls the Elevenlabs AI Receptionist.
Sends email enquiries (to a lawyer directly, or to an AA inbox such as info@).
Admin (Advocate Abroad)
Monitors all incoming channels (Website, Elevenlabs, email).
Reviews and classifies eachA new contact as Regular Enquiry, Paid Consultation, Direct Service Offer, or Reject.
Schedules initial meetings between User and client.
Manages NPD, Expired, auto-unassignment by the 24-Hour Rule.
User (Lawyer/Professional)
Receives Regular Enquiries matching their Profession and Country tags.
Prepares Strategy Guide, sends Offer Email, conducts meeting, performs work, declares payments, changes statuses.
System
Website forms, Elevenlabs integration, email ingestion, Laravel admin for ET and routing, BackOffice for lead lifecycle.
Scope
Included:
Website form enquiries mapped to Regular ETs.
Elevenlabs telephone calls: captured, structured, and passed into Laravel Assignment Interface as potential Regular Enquiries.
Email-originated enquiries:
Client emails a lawyer directly (e.g. after a personal referral).
Client emails a generic address (e.g. info@) expecting a response.
All statuses and automation around New Enquiry, Created Lead, Ongoing/In Progress, Waiting for Response, Frozen, Eliminated, Completed, Closed.
Preconditions
Enquiry Type (ET) configured as Regular in Laravel, with proper Website URL mapping if web-based.
Strategy Guide template exists for ET/Country; otherwise quotation cannot be produced and Admin/User must request template setup.
User calendar and notification settings configured for scheduling meetings.
5. Step-by-Step Workflow
Phase 1 – Intake & Classification
Preconditions
At least one Regular ET configured for the relevant country/profession.
Actors
User Actions (Admin Intent)
Website form intake
Website → Laravel → BackOffice creates a New Enquiry record automatically (as in previous version).
Admin reviews new record in Laravel Assignment Interface / BackOffice.
Elevenlabs call intake
Client calls the AI Receptionist.
Elevenlabs captures caller data and enquiry summary.
Admin reviews the call transcript/summary in the Assignment Interface and converts it into a structured lead, selecting Regular/Paid Consultation/Direct Service/Reject.
Email intake
Existing client or referral emails the lawyer directly.
New client or random browser emails info@ or other AA-managed inbox.
Admin:
Imports/creates a client record in BackOffice.
For direct-to-lawyer emails, first sends an Authorisation / GDPR-consent email so client consents to AA handling their PII on the platform.
Classifies the enquiry as Regular/Paid Consultation/Direct Service/Reject.
System Behaviour
For all sources, once Admin chooses Regular Enquiry:
A BackOffice client record is created orwith: updated with:
Status: New Enquiry.
ET: appropriate Regular ET.
Source: web / phone / email.
Autoassign or Admin assignment sets the User.
UI Elements
Laravel Assignment Interface (Admin).
BackOffice New Enquiry record (Overview + Enquiry Details).
Phase 2 – 24-Hour Rule, Assignment & Scheduling
Preconditions
Record is created as Regular New Enquiry and visible to Admin.
Actors
User Actions
Admin:
Uses the Assignment Interface to schedule an initial appointment between User and client as soon as possible.
Confirms date/time; the meeting is stored in the record/calendar.
User:
Receives New Client Assigned notification and appointment details; may adjust appointment time.
Client:
Receives Enquiry Received / Assigned to [Professional] email with scheduled appointment; may also propose changes.
System Behaviour
When a User is assigned:
Sends New Client Assigned notification.
Schedules the appointment in the configured calendar integration.
24-Hour Rule:
If the assigned User does not Accept or Reject the New Enquiry within 24 hours:
System automatically unassigns and changes status to NPD - Awaiting Assignment.
Admin notified; lead appears in Unassigned/NPD contexts.
UI Elements
Status: New Enquiry.
Scheduling controls (Admin side).
Auto-unassignment under 24-Hour Rule.
Phase 3 – Strategy Formulation (Strategy Guide)
Preconditions
Enquiry confirmed as Regular (not Paid Consultation / Direct Service).
User assigned and appointment scheduled.
Actors
User, System (Strategy Guide).
User Actions
Before the meeting, User:
Opens the Client record, goes to Strategy Guide tab.
Selects an appropriate Strategy template (e.g. “EU Citizen Property Purchase”) and edits questions/proposals and fees.
Inputs or adjusts the quotation.
Downloads the Script automatically generated for use during the appointment, to ensure consistency and professionalism.
System Behaviour
Loads ET/Country-specific Strategy Guide template.
Enforces that Strategy Guide must be completed before:
Full visibility of client contact details (email/phone masking until wizard completion).
Generating the Offer Email.
Saves the Strategy data to the client record and logs event in Updates Record.
UI Elements
Strategy Guide tab: templates, fee fields, script download.
Contact detail masking in Overview until Strategy Wizard completion.
Phase 4 – Meeting & Offer Email
Preconditions
Strategy Guide prepared; appointment scheduled.
Actors
User Actions
Conducts the meeting (video/phone/in person) using the Strategy script and guidance.
After the meeting:
Decides whether to send an Offer Email, or
Mark status as Eliminated (client not interested, already hired, not commercially relevant), or
Ask Admin to Freeze if client is interested but needs time.
If proceeding:
Generates the Offer Email from Strategy Guide: fee, scope, next steps.
Sends the Offer Email from within BackOffice.
System Behaviour
Generating Offer Email:
Pulls strategy content (proposals, fees, terms).
Sets sub-status to “Offer Email Sent – Pending Reply”.
Sending Offer Email:
Email stored in Emails tab.
No separate “sent” conversation appears yet until client replies; this can confuse Users (known issue).
If User sets status to Eliminated:
System checks payments; if Total Payments > 0, block or special rule (cannot set Eliminated if payment exists, per rules).
UI Elements
Offer Email generation controls (within Strategy Guide tab).
Status dropdown with Eliminated, Freeze, etc.
Phase 5 – Client Response, Reminders, Freeze & Expiry
Preconditions
Offer Email sent, sub-status “Offer Email Sent – Pending Reply”.
Actors
Client, User, Admin, System.
User Actions
Monitors client’s response:
If client accepts: updates to Ongoing/In Progress and begins service.
If client delays: informs Admin; Admin may set Freeze with a future date.
System Behaviour
Reminder Automation:
If no response to Offer Email within configured timeframe:
System sends Reminder email to client.
If still no response after Reminder:
Status automatically set to Eliminated.
A Rejected Survey is sent to client asking why they did not proceed.
Client responds to Reminder/Survey:
If client indicates interest but needing time:
Admin uses Freeze option:
Sets status to Frozen / similar.
Configures Next Progress Date.
When Next Progress Date is reached:
System “unfreezes” the record.
User is notified to contact the client.
Client may receive a fresh reminder email.
Expiry logic (Ongoing leads)
Once the lead is Ongoing/In Progress and has a Next Progress Date:
If Next Progress Date is exceeded:
Record flagged as Expired.
Notification sent to User.
If too many of a User’s leads are in Expired:
That User may be prevented from receiving new enquiries, with a warning.
UI Elements
Sub-status “Offer Email Sent – Pending Reply”.
Freeze controls + Next Progress Date.
Expired flag in lists.
Phase 6 – Engagement, Payment & Completion
Preconditions
Client accepts the offer; lead is Ongoing/In Progress.
Actors
User, Client, System, Admin.
User Actions
Begins providing service; uses Messages, Documents, Additional Services as needed.
Records payments in Payments tab (amount, method, date, invoice).
Once service complete and payments recorded:
Changes status to Completed.
Completes Completed Wizard to confirm work and fees.
System Behaviour
Payment rules:
Cannot mark Completed if Total Payments = €0.00 (hard block).
Cannot set Eliminated if Total Payments > 0.00 (prevents eliminating paying clients).
Completion:
Shows completion confirmation (Completed Wizard).
Validates payment totals; mismatch blocks closure until fixed.
Admin then uses Daily Updates queue to review Completed cases and may set them to Closed.
UI Elements
Payments tab, Completed Wizard.
Status: Completed → Closed.
Phase 7 – Closure, Anonymisation & Backend Accounting
Preconditions
Status Completed, payments consistent.
Actors
User Actions (Admin)
Reviews Completed cases via Daily Updates.
Confirms, then moves them to Closed.
System Behaviour
Closed cases:
Eligible for GDPR anonymisation after 6 months, particularly Rejected/Eliminated.
Commission/invoicing:
Small commissions (< €50) may be put into “Accumulation” rather than immediate invoicing to avoid micro-invoices.
UI Elements
Daily Updates queue (removes items as they are opened to keep list manageable).
Accumulation flags for invoicing.
6. Edge Cases, Confusions & Common Errors
Issue |
Cause / Explanation |
Resolution / Best Practice |
|---|
Offer Email sent but User “sees nothing” in Emails tab |
No active conversation thread until client replies or payment added; UI doesn’t highlight the outbound offer. |
Educate Users to check Emails tab sent items; consider UI enhancement later (but behaviour is currently as designed). |
Misclassification (Regular vs Paid Consultation vs Direct) |
Admin misjudges commercial relevance / client intent at intake. |
Admin can reclassify ET/flags early; ensure classification guidance is clear in Assignment Interface. |
Multi-ET (multi-service) cases are complex |
Current process for multiple ETs in a single Offer Email is complicated. |
Use Additional Services and carefully constructed Strategy/Offer; future AI-based Intelliquote may simplify. |
Intelliquote confusion |
Users unsure what fee to propose; Intelliquote concept not yet implemented. |
Current state: User uses default fee ranges & personal judgement; Intelliquote is a future AI enhancement only. |
Contact details masked |
Client contact info is hidden until Strategy Guide is completed. |
Complete Strategy Wizard to unmask; this enforces on-platform strategy preparation before direct contact. |
24-Hour Rule unassigns lead unexpectedly |
User did not Accept/Reject within 24 hours. |
Ensure Users know to act quickly; Admin reassigns from NPD; consider adjusting comms and training. |
Cannot mark Completed / cannot Eliminated with payments |
Hard rules: Completed requires payments; Eliminated disallowed if payments exist. |
Correct payments or status; follow financial audit requirements. |
7. Permissions & Access Control
Visibility
Users see Regular Enquiries only if Profession + Country tags match; e.g. lawyers cannot see accounting enquiries.
Admin sees all.
Status and ET
Users:
Follow Status Management rules; cannot bypass completion/payment locks.
Cannot change ET outside allowed states or ET rules.
Admin:
Can override ET (Force Update), reassign, freeze, and fix misclassifications.
Contact Data
Email/phone masked until Strategy Guide process is completed (for Regular Enquiries), to discourage off-platform early contact.
Completion/Elimination Locks
Cannot set Completed if Total Payments = 0.00.
Cannot set Eliminated if Total Payments > 0.00.
8. Timing, Automation & Background Jobs
24-Hour Rule
If User does not Accept/Reject a New Enquiry within 24 hours:
System unassigns; status → NPD; Admin alerted.
Offer follow-up
Reminder Email after no response to Offer.
If still no response → status Eliminated + Rejected Survey.
Freeze / Next Progress Date
Used when client interested but needs time.
Unfreeze on date; notify User; optionally send new reminder to client.
Expired (Ongoing)
When Next Progress Date exceeded, mark as Expired and notify User.
Too many Expired leads may block new assignments to that User.
GDPR anonymisation
Rejected/Closed files scheduled for anonymisation 6 months after closure.
Underlying jobs use:
Status, Next Progress Date, Last Activity, and NPD flags.
9. Related Processes & Dependencies
Prerequisites
ET configuration and Website form mapping in Laravel.
Strategy Guide templates per ET/Country.
Elevenlabs and email ingestion linked to Assignment Interface.
Dependencies
Strategy Guide: mandatory for Regular Enquiries before Offer Email.
NPD Recovery Process, OOO handling, Expired logic, Payment/Commission rules.
Downstream triggers
Offer Email → Sub-status “Offer Email Sent – Pending Reply”.
Reminder/Survey flows.
Payment declarations → invoicing/commission processes and Accumulation.
10. Error Recovery & Retry Logic
Scenario |
System Behaviour |
Recovery |
|---|
Auto-assign or 24h rule leaves NPD |
Status NPD; Admin alert; NPD banner. |
Admin uses Unassigned Leads / NPD tools to assign or mark Not Proceeding. |
Elevenlabs/email enquiry not converted |
Contact remains outside BackOffice; risk of unmanaged PII. |
Admin must create/import a Client record, send Authorization email for GDPR consent, classify. |
Offer Email send failure |
Email not sent; error surfaced. |
Retry sending; if persistent, escalate to technical support. |
Payment mismatch on Completed |
Completion wizard blocks and warns. |
Correct Payments tab entries; re-attempt completion. |
Freeze mis-configuration (wrong Next Date) |
Lead may not unfreeze when expected, or unfreezes too early/late. |
Admin/User adjusts Next Progress Date; system re-evaluates Expired/Freeze logic. |
Most user-level retries (resend Offer, re-save Strategy, re-change status within rules) are safe but may generate duplicate client emails; automated retries should be implemented cautiously to avoid spam.
11. Configuration & Customisation
Fee defaults / Intelliquote inputs (current, not future AI)
Laravel > Enquiry Types > Pricing: default fee ranges per ET used to guide Users.
Strategy templates
Admins can add/remove questions and proposals in Strategy Guide templates per ET/Country without code changes.
Enquiry Type mapping
Laravel > Website > Forms: map URLs (e.g. /portugal/nif) to ET.
24-Hour Rule parameters, reminder delays, survey triggers
Business-configured; actual locations may be in Laravel settings or configuration tables (as per existing implementation).
Accumulation threshold
Commission threshold (~€50) above which invoices are generated immediately; below which amounts are accumulated.
12. Notifications & Communication
User Alerts
“New Client Assigned” on assignment/scheduling.
“Expired” when Ongoing lead passes Next Progress Date.
Client Messages
“Enquiry Received” immediately after Website submission.
“Enquiry Assigned to [Professional]” with appointment details.
Offer Email + subsequent Reminder and Rejected Survey.
Admin Alerts
“URGENT: Unassigned Lead” when autoassign fails or 24h rule unassigns.
3rd Party Logic
If a lawyer CCs the client from outside, system captures email and ensures only a single notification to the User to avoid spam loops.
13. Compliance & Legal Considerations
GDPR / PII consent
Website forms require T&C consent; Elevenlabs and email-origin leads must result in an Authorisation email to clients whose PII is handled on-platform, especially when first contact was direct-to-lawyer.
Right to be forgotten, data export/anonymisation tools are supported.
Payment / audit
Every payment creates an immutable log; deletions are restricted; corrections go via Credit Notes or structured adjustments.
Completion and Eliminated rules tied to payment presence guard against mis-reporting.
Contractual network standard
24-Hour Rule is part of the network’s performance expectations and is enforced programmatically (auto-unassignment).
14. Backend Processes & Code Mapping (for Developers)
(High-level; map to actual class/method names in your codebase.)
You’re right to prefer the original version of section 14. It’s clearer for developers because it’s organized by data model → endpoints → services → jobs → UI components, which matches how they think about the system.
Here is the final Section 14 you can use for the Regular Enquiry page, with small tweaks to include the extra intake channels (Elevenlabs + email) but otherwise keeping your original structure and wording:
14. Backend Processes & Code Mapping (for Developers)
(Class and path names below are illustrative; fill with actual C#/Laravel names when wiring the wiki to the codebase.)
Data Model
BackOffice Client record (C# / DB)
Fields (see Business Logic doc):
status – lifecycle state (New Enquiry, Created Lead, In Progress/Ongoing, Waiting for Response, Frozen, Expired, Eliminated, Completed, Closed).
enquirytypeid – ET identifier (Regular, Direct Service, Paid Consultation, etc.).
country – jurisdiction for routing and reporting.
assigneduserid – current responsible professional; NULL for NPD.
enquirydate – created date from intake (web/phone/email).
lastactivitydate – updated on significant actions (emails, payments, status changes).
formsubmissionurl – original Website path for web-based leads.
Flags:
isdirectservice – Direct Service flow active.
isconsultationonly – Paid Consultation flow active.
isrecurringprincipal, isrecurringdelegatee – recurring services.
Any additional channel/source flags (e.g. source = website/elevenlabs/email).
Payments
payments table/collection:
clientid, amount, method, date, invoicenumber, createdby, commission-related fields.
Updates Record
Audit log table for all important changes:
clientid, timestamp, user, action, details (e.g. “Status changed New Enquiry → Created Lead”, “Offer Email sent”, “Payment added €X”).
Controllers & Endpoints (Conceptual)
Website → Laravel
POST /api/submit-enquiry/{form-id}
Validates form input (required fields, T&C tick).
Maps URL/form ID to ET and country.
Creates BackOffice Client record (New Enquiry) via internal API.
Triggers autoassign and sends initial client confirmation email.
Elevenlabs Intake
POST /api/intake/elevenlabs-call (webhook or polling endpoint)
Receives call metadata and transcript/summary.
Normalises into structured fields (caller name, phone, summary).
Creates or updates a BackOffice Client record, then puts it into the Laravel Assignment Interface for Admin classification (Regular / Paid Consultation / Direct Service / Reject).
Email Intake
POST /api/intake/email (or mail-processor integration)
For incoming emails to generic inboxes (e.g. info@) or direct-to-lawyer addresses.
If matching existing client → attach to Emails tab.
If new:
Create provisional Client record.
Trigger Authorisation / GDPR Consent email flow so AA can manage PII on-platform.
Once authorised, classify as Regular/Paid Consultation/Direct/Reject and proceed like other Regular Enquiries.
BackOffice API (C#/Web API, conceptual)
POST /api/clients/{id}/status
Applies Status Management rules (locks around payments, 24-Hour Rule side-effects, Expired/Freeze transitions, etc.).
Triggers completion popup and survey/automation where relevant.
POST /api/clients/{id}/payments
Validates and saves new payment record.
Recalculates commission and updates any accumulation logic.
Inserts Updates Record entry and notifies Admin if required.
POST /api/clients/{id}/assign-user
Manual assignment endpoint.
Shows OOO warnings, may adjust NPD state, and logs Updates Record entries.
POST /api/clients/{id}/change-et
Validates allowed ET changes for Users (status-dependent) and Admin Force Update overrides.
May re-trigger autoassign and reset Strategy Guides where necessary.
Services / Handlers
Autoassign Service
Inputs:
enquirytypeid, country, client attributes (language, city).
Candidate Users with profession, ET permissions, countries, OOO state, capacity.
Outputs:
Selected assigneduserid or NPD outcome (with reason code, e.g. “no eligible users”).
Responsibilities:
Implement matching algorithm (filters + scoring).
Emit events/notifications (New Client Assigned, Autoassign Failed).
Status Management Service
Encapsulates allowed transitions and their effects:
New Enquiry ↔ Created Lead ↔ In Progress/Ongoing ↔ Waiting for Response ↔ Frozen ↔ Expired ↔ Eliminated ↔ Completed ↔ Closed.
Handles:
24-Hour Rule unassignment and NPD state.
Payment locks (Completed requires payments; Eliminated blocked when payments exist).
Triggering completion wizard, surveys, and anonymisation scheduling.
Notifications Service
Centralises sending of:
New Client Assigned (User).
Enquiry Received / Assigned (Client).
Autoassign Failed / Unassigned lead (Admin).
Reminder and Rejected Survey emails.
OOO summaries and Expired alerts.
Ensures deduplication for third-party emails, avoiding notification spam.
Strategy & Offer Services
Strategy Guide service:
Loads templates per ET/Country.
Stores per-client Strategy data and generates meeting script.
Offer Email generator:
Combines Strategy data + fee configuration into an Offer.
Marks sub-status “Offer Email Sent – Pending Reply”.
Contact masking logic:
Hides client contact details until Strategy Wizard completion for Regular Enquiries.
Jobs / Cron
NPD Expiry Job
Periodically scans for NPD leads older than 72 hours.
Flags them as Expired, adds them to Admin Expired Clients view, and sends weekly summary.
24-Hour Rule Job / Timer
Monitors New Enquiry records with assigned User.
If User has not Accepted/Rejected within 24 hours:
Unassigns and sets NPD; triggers Admin alert.
Reminder & Survey Job
Checks leads with sub-status “Offer Email Sent – Pending Reply”.
Sends reminder emails after configured delay.
If still no response after reminder:
Sets status to Eliminated.
Sends Rejected Survey email.
Freeze / Expired Job
Uses NextProgressDate:
Unfreezes Frozen leads on that date and notifies User (and optionally client).
Flags Ongoing leads as Expired when Next Progress Date is passed; increments Expired counters for User.
Anonymisation Job
Periodically scans for Eliminated/Closed clients beyond retention period (e.g. 6 months).
Pseudonymises or deletes PII while preserving statistical data.
Accumulation / Invoicing Job
Aggregates small commissions (< €50) into Accumulation buckets rather than issuing micro-invoices.
Generates invoices once thresholds are reached.
Frontend Components (Conceptual)
Website
Service-specific enquiry forms (per ET), including:
Required fields, T&C checkbox, additional services tick-boxes.
Confirmation pages and texts (“Thank you, a lawyer will contact you within 24 hours.”).
BackOffice
Client list views:
New Enquiries, Current Clients, All Clients, Unread Emails, NPD, Expired Clients, Daily Updates.
Client record UI:
Tabs:
Overview, Enquiry Details, Strategy Guide, Emails, Messages, Documents, Payments, Additional Services, Tasks, GDPR,GDPR and Updates Record tabs.
-
Status is set to New Enquiry; Enquiry Type, Country, Assigned User (if autoassigned) and Enquiry Date are populated, and the original enquiry text is visible in Enquiry Details.
3.2 Autoassignment & NPD
-
BackOffice attempts autoassign based on the ET’s routing configuration in Laravel (profession, country, availability, capacity, performance and other business rules).
-
If a suitable User is found, Assigned User is set, status remains New Enquiry, a New Client Assigned notification email is sent, and the assignment is logged in Updates Record.
-
If autoassign fails because no eligible user is available or a technical error occurs, the record is set to NPD – Awaiting Assignment, an NPD warning banner is shown, an Admin alert email (“Autoassign Failed”) is sent, and the lead appears on Admin NPD/Unassigned dashboards.
-
Admin can then manually assign the lead from the Overview tab, overriding ET/country checks if necessary, with an explicit confirmation popup (including warnings if assigning to an Out-of-Office User).
3.3 User contact & Strategy Guide (Created Lead)
-
The assigned User contacts the client, usually by phone first, then by email; if calls are unsuccessful, “Didn’t answer” options in the Strategy Guide and/or call result buttons send auto-emails explaining contact attempts.
-
The User completes a Strategy Guide in the Strategy Guide tab, selecting an appropriate strategy and quotation profile for the ET, adding text tailored to the client’s situation.
-
Converting from New Enquiry to Created Lead requires the User to confirm or create a Strategy Guide; this status indicates a proper lead with a proposal ready.
-
From Created Lead, the User can send an Offer Email (proposal) to the client using the Strategy Guide, specifying services, fees, and next steps; this is a precondition for Paid Consultation or Direct Service decisions, but still within the Regular Enquiry flow.
3.4 Work phase (In Progress / Waiting for Response)
-
Once the client agrees to proceed (verbally or in writing), the User sets status to In Progress and begins substantive work; Updates Record entries should briefly summarise conversations and progress.
-
If the User has contacted the client and is now waiting for documents/instructions or a decision, status is set to Waiting for Response, and Next Progress Date is used to track when to follow up again.
-
Automated reminders and Admin prompts may be tied to Waiting for Response and NPD/non-contact timeframes (e.g., 48+ hours without contact leads to reminder or elimination decisions).
3.5 Payments & completion
-
When the client pays fees (consultation, fixed fee, or ongoing work), the User records the payment(s) in the Payments tab, including amount, date, method, and any notes (e.g., “Renta service for 2019”, “Monthly fiscal client – July & August”, “Eviction action fees”).
-
The system aggregates payments and calculates Advocate Abroad’s commission based on ET and role; monthly invoices or commission statements are generated automatically using this data.
-
When work is complete (or all agreed services are delivered), the User changes the status to Completed, triggering a completion popup that requests confirmation of total fees and cross-checks them against recorded payments; discrepancies trigger warnings.
-
After Admin review in Daily Updates and any final checks, Admin or the User can set the status to Closed, at which point survey and review emails can be sent or have already been triggered.
3.6 Elimination & NPD expiry
-
If the client does not proceed, does not respond, chooses another lawyer, or the service is not suitable, the User sets status to Eliminated / Rejected / Unsuitable, choosing a reason in the elimination popup.
-
Direct Service follow-ups (if any flag was applied earlier) and automated reminders stop immediately when the record is set to Eliminated.
-
NPD leads that remain unassigned for configured time (e.g., 72 hours) move into Expired or Expired Clients views for Admin, and are included in weekly Admin summaries; Admin must either assign, eliminate, or extend deadlines manually.
4. Common confusion, mistakes & misunderstandings
-
Not updating status after contact: Users sometimes forget to change from New Enquiry to Created Lead or In Progress after talking to the client; this can trigger duplicate automatic emails or give the impression that the client has not been contacted.
-
Skipping Offer Email: Some Users provide substantial advice on the first call without sending an Offer Email or consultation confirmation, leading to later disputes about what was promised; the business rule is that services and fees should be confirmed by email.
-
Recording payments late or not at all: Payments are sometimes taken but not added to the Payments tab, which blocks Completed status (or misaligns totals) and breaks invoicing; Admin then has to chase for manual corrections or add payments retroactively.
-
Using the wrong ET or country: Misconfigured form endpoints or ET changes without understanding restrictions (e.g., NIF Application Portugal) cause routing and reporting problems, requiring Admin overrides.
-
Leaving clients “in limbo”: Cases remain In Progress or Waiting for Response with no updated Next Progress Date and no Updates comments, making it difficult for Admin to assess whether clients are being neglected; several internal messages explicitly request short Updates Record summaries and proper Next Progress Date management.
5. Permissions & access control rules
-
Only Admin and system autoassign can set the Assigned User for new enquiries by default; Users do not self-assign regular leads unless Admin workflows explicitly allow this.
-
Only Admin can override ET country/profession restrictions and force ET changes at any status; Users can change ET only while the client is New Enquiry or Created Lead, and only to compatible ETs.
-
Certain flags – Direct Service and Consultation Only – can be set only by Admin; these flags alter available statuses, templates and follow-ups, but Regular Enquiries operate without requiring these flags.
-
Tasks created by Admin (e.g., “Add Payment”, “Upload Document”, “Complete Billable Actions”) can be marked as blocking, preventing Users from accessing other client records until completed; this is particularly used when a payment is clearly received but not registered.
-
Out-of-Office settings are configured by Users (period and behaviour), but Admin can see an OOO dashboard and can reassign leads or override OOO if necessary.
6. Timing, deadlines & automation rules
-
Website-to-BackOffice creation: record must appear immediately after form submission (within a few seconds), including ET, country and status.
-
Client contact SLA: system texts and internal messages emphasise contacting clients within around 24 hours; if calls fail, standard “We tried to reach you” emails are sent automatically.
-
NPD expiry: NPD leads older than a configured duration (e.g., 72 hours) are flagged as Expired and appear in Admin lists and summary emails; they do not automatically eliminate, but require Admin action.
-
Waiting for Response / Next Progress Date: Users are expected to set Next Progress Date whenever they extend the follow-up horizon beyond about two weeks, and Admin explicitly requests single-line updates if the next action is weeks away.
-
GDPR retention: inactive enquiries (Eliminated, Closed) are anonymised after about six months and deleted after about twelve months, with configuration per jurisdiction; these jobs run automatically and are tracked for audit.
-
Email notifications: system sends New Client Assigned, We tried to reach you, Payment Declared, Client Response, and survey invitations based on specific triggers (assignment, call result buttons, payment additions, status changes to Completed/Closed).
7. Related processes & dependencies
Prerequisites:
Downstream / dependent processes:
-
NPD recovery (Process 2): handles reactivation and manual assignment when Regular Enquiries fall into NPD (e.g., OOO issues, no eligible Users).
-
Out-of-Office lead reassignment (Process 3): ensures new Regular Enquiries are not stuck with OOO Users and that Admin can redistribute them.
-
Recurring services (Process 4): some Regular Enquiries (e.g., Income Tax, Monthly Fiscal) evolve into principal/delegatee recurring records after initial work; that flow is handled by the recurring service process.
-
Additional Services / ASP referrals: Regular Enquiries can spawn ancillary client records (translation, accounting, mortgage, insurance) via Add Service; these are linked but follow their own flows.
Parallel or conflicting workflows:
-
Paid Consultation and Direct Service flows reuse parts of the Regular Enquiry pipeline (Strategy Guide, Offer Emails), but enforce different constraints on templates, follow-ups and elimination; this page assumes the non-flagged Regular Enquiry case.
-
Recurring principal / delegatee records use Hibernated, In Progress and special completion flows; those should not be confused with one-off Regular Enquiries.
8. Error recovery & retry logic
9. Performance & scalability considerations
-
Autoassign and record creation must complete fast enough that Users can see new Regular Enquiries in New Enquiries and Current Clients lists almost immediately; delays confuse Users about whether a lead exists.
-
Email notifications (New Client Assigned, Client Response, etc.) are generated and sent within seconds to avoid Users missing time-sensitive contact windows (e.g., within 24 hours).
-
Background jobs for anonymisation, deletion, OOO summaries and NPD expiry run on schedules that balance performance with timely updates (e.g., daily or weekly summaries), but exact scheduling is implementation-level and outside the business logic page.
-
Lists (Current Clients, New Enquiries, Unread Emails, Daily Updates) use filters and pagination (e.g., 50 per page) to remain responsive even with large numbers of Regular Enquiries; redirect rules ensure Users are returned to the correct list after editing.
10. Configuration & customisation options
11. Notification & communication rules
-
Who gets notified:
-
Assigned User: on new assignment, client email received, payment recorded, and sometimes on key status changes.
-
Admin: on autoassign failure (NPD), system errors (assignment, email, payment), and for NPD/Expired leads and other special events.
-
Client: on Terms & Conditions, We tried to reach you, Offer Emails, Direct Service or consultation offers where applicable, and survey invitations after completion.
-
When notifications are sent:
-
Immediately on assignment, inbound emails, and recorded payments.
-
On status changes to Completed/Closed (survey / feedback emails).
-
On daily/weekly basis for OOO summaries and Expired/NPD summaries.
-
Content & deduplication:
-
Inbound third-party emails (e.g., other lawyers) linked to a client record generate at most one notification per new email; duplicates or persistent unread notifications are considered defects.
-
Some automated notifications include partial previews (e.g., first 100 characters of a client email) but require the User to click through to the client record for full content.
-
KeyChannels controls:& usage:
-
Status dropdownEmail is the primary external communication channel; telephone and WhatsApp are used by Users for direct contact, with associatedthe popups.main record of activity stored in Updates Record and Emails/Messages tabs.
-
AssignedInternal User dropdownmessaging withbetween OOOAA warnings.
Admin and - Users
Strategyoccurs Guidein selectorMessages popup,tab scriptand downloadoccasionally button,via external email; these internal messages often drive business logic changes (e.g., “Don’t forget to add payment”, “Please send Offer EmailEmail”, generator.
“Change status - to
Completed Wizard popup.
Admin interfaces:
Laravel Assignment Interface (for web, Elevenlabs, email leads)Eliminated”).
Unassigned Leads, NPD and Expired dashboards; OOO dashboard.
Any
code
that
12. Historical changes the& meaning,deprecations
allowed
values,
or
side
effects
of status,
-
Trello-derived rules were added to strengthen:
-
Out-of-Office autoassign behaviour (no leads blocked on OOO users).
-
NPD handling and assignment failure logging (NPD / Awaiting Assignment, with logged reasons).
-
ET country-specific configuration (e.g., orNIF flagsApplication suchPortugal as isconsultationonly and isdirectservice must be carefullyPT-only).
reconciled
-
Email notification deduplication and third-party email read/unread consistency.
-
Form submission URL mapping and staging validation.
-
Earlier versions of the business logic were higher-level and did not specify detailed UI behaviour (popups, badges, list redirect rules, blocking tasks); v2.0 introduces a field-level, step-by-step spec for all main flows, including Regular Enquiry.
-
Some historic behaviours (e.g., recurring popup skipping after two payments, auto-creation of templates from one-off Offer Emails) are treated as legacy quirks and are explicitly corrected in the updated rules.
13. Compliance & legal considerations
-
Regular Enquiries must respect GDPR by:
-
Storing client data securely and only as long as necessary for service and legal/accounting retention.
-
Providing mechanisms to exercise rights of access, rectification, erasure, restriction, portability and objection through a defined BackOffice GDPR workflow (receive request, verify identity, export, deliver, anonymise/delete, confirm).
-
Keeping an audit trail of who accessed or modified client data via Updates Record.
-
For financial and tax compliance:
-
Payments recorded in the system are used as the basis for invoicing and commission calculations and therefore must reflect actual receipts; retroactive corrections are possible but administratively complex.
-
Documents such as invoices, tax forms (e.g., M210, IRNR, Renta) and proof of payments are often stored in Documents tab for evidence and future audits.
-
Terms & Conditions and legal information emails explicitly explain the relationship between Advocate Abroad (as a platform/marketing entity) and independent professionals, clarifying responsibility for professional advice and data handling.
14. Known backend processes / code services
(This section names behaviourally relevant backend processes without becoming a technical spec.)
15. Control & behavioural guardrails
This section captures the “soft” behavioural rules that sit above the technical flows, derived from Administrator–User conversations.
-
Guardrail: don’t give free substantive advice without written confirmation.
Users are repeatedly advised to send an Offer Email or consultation confirmation before providing detailed advice, to avoid disputes about promises and to evidence the client’s agreement to services and fees.
-
Guardrail: always record payments before closing.
Admin messages emphasise that Users should not mark a client as Completed or Closed without first entering all received payments in Payments; invoices are generated automatically, and corrections after the fact are cumbersome.
-
Guardrail: keep Updates Record and Next Progress Date current.
Admin often requests brief 1–2 line summaries and proper Next Progress Dates to ensure that clients are not forgotten and that long-running cases are monitored; leaving these blank is considered poor practice.
-
Guardrail: use the platform email and messaging system, not private channels.
Users are encouraged to send client emails from within the client record so that AA can monitor service quality and ensure auditability; adding their own email addresses as client emails is explicitly discouraged because it sitsconfuses atsystem logic.
-
Guardrail: avoid “zombie” clients.
When there is no realistic prospect of work (no response for a long period, or client clearly not proceeding), Admin pushes Users to eliminate the heartenquiry ofrather leadthan tracking,leave performanceit measurement,indefinitely in Ongoing, both to keep statistics accurate and commission/invoicingto logic.trigger surveys where appropriate.
-
Guardrail: respect Out-of-Office and workload limits.
Users are blocked from receiving unlimited new Regular Enquiries if OOO, overloaded, or unresponsive; Admin may reassign or pause leads for such Users to protect client experience and network reliability.