Beezaro is a conversational AI assistant that guides users through the entire onboarding process via natural language chat instead of traditional forms.
Key Points:
Screen: "Setup up your account"
UI File: Welcome screen.png
3 CTAs:
Beezaro Says: "Hi there! I'm Beezaro. I'll set everything up for you in just a few questions. Ready?"
UI File: BeeBot Intro.png
2 Options:
Questions:
Questions:
Questions:
(Also called "Fall-Back Logic" in UI)
Questions:
Questions:
Questions:
When Available: Command bar appears AFTER Beezaro setup completion, accessible from dashboard settings.
Purpose: Allows users to edit all settings configured during Beezaro onboarding with granular control.
| Beezaro Step | Copilot Question | Manual Screen | Database Field | Fallback Trigger |
|---|---|---|---|---|
| STEP 1 Business Identity |
"Confirm you selected [Business Plan]" (Plan already selected during signup) |
Manual STEP 1 - Plan Selection (Re-selection if changed) |
subscriptions.plan_id | User says "No, Change plan" โ Reopens plan selection |
| "What's your business name?" | Manual STEP 2 - Business Name | organizations.business_name | User says "No" or "Skip" | |
| "What industry is your business based?" | Manual STEP 2 - Industry Dropdown | organizations.industry | User unclear or says "Skip" | |
| "Tell us about your business" | Manual STEP 2 - Description | organizations.business_description | User says "No" | |
| "Upload your business logo" | Manual STEP 2 - Logo Upload | organizations.logo_url + S3 | User says "Skip" or upload fails | |
| "Knowledge base files or website URL?" | Manual STEP 2 - Knowledge+Files | knowledge_base_documents | User says "Skip" | |
| STEP 2 Team Members |
"Would you like to add team members?" | Manual STEP 3 - Team Setup | team_members table | User says "No" (skip entire step) |
| "Enter team member emails" | Manual STEP 3 - Email Input | team_members.email | User says "Do it manually" | |
| "Select role for each member" | Manual STEP 3 - Role Dropdown | team_members.role | User unclear on roles | |
| STEP 3 Channels |
"Let's connect your channels! Select from grid" | Manual STEP 5 - Channel Grid | channels.channelType | User says "Configure manually" |
| "Configure now or use defaults?" | Manual STEP 5 - Per-Channel Settings | channels.configuration JSONB | User says "Configure now" | |
| STEP 4 Fall-Back Logic |
"What if no one replies to a customer?" | Manual STEP 6 - Escalation Rules | escalation_rules table | User says "Set up manually" |
| "Send follow-up after delay?" | Manual STEP 6 - Follow-Up Triggers | follow_up_rules table | User says "Skip" | |
| STEP 5 AI Assistant |
"Single or multiple AI assistants?" | Manual STEP 4 - AI Creation | ai_assistants table | User says "Configure manually" |
| "AI name, tone, personality?" | Manual STEP 4 - AI Settings | ai_assistants.name/tone/personality | User says "Skip" | |
| STEP 6 Automation |
"Create starter automation?" | Manual STEP 8 - Template Library | automation_templates | User says "No, skip" |
| "Select template category" | Manual STEP 8 - Category Filter | user_automations.templateId | User says "Browse manually" |
Beezaro leverages the same Socket.IO + Redis Pub/Sub infrastructure documented in Manual Onboarding STEP 6.
Reference: See ADDENDUM_OPERATIONAL_ARCHITECTURE_DECISIONS.md โ Decision #22: WebSocket Scaling
{
sessionId: "uuid-...",
message: "GreenLeaf Pharmacy",
timestamp: "2025-10-22T10:30:45Z"
}
Server Action:{
sessionId: "uuid-...",
beezaroMessage: "Great! Your business name is GreenLeaf Pharmacy. Next question...",
messageType: "beezaro",
stepContext: "business_identity",
nextAction: "ask_industry",
timestamp: "2025-10-22T10:30:47Z"
}
Client Action: Display Beezaro message in chat
{
sessionId: "uuid-...",
isTyping: true
}
Client Action: Show "Beezaro is typing..." indicator with animated dots
{
sessionId: "uuid-...",
completedStep: "business_identity",
nextStep: "team_members",
progressPercentage: 17 // (1/6 steps done)
}
Client Action: Update progress stepper visual (checkmark on completed step)
{
sessionId: "uuid-...",
reason: "user_said_no",
fromStep: "business_identity",
manualScreenUrl: "/onboarding/manual/step-2/business-name",
returnToken: "token-for-return" // Used to resume copilot later
}
Client Action: Redirect to manual screen URL with return token in query params
Beezaro leverages 100% of the existing AWS infrastructure documented in the Manual Onboarding sections.
Key Point: Copilot is a different UI/UX layer on top of the same backend services and infrastructure. No additional AWS resources needed.
unifiedbeez/openai/api-keyImportant: Beezaro Copilot collects the same data as Manual Onboarding, just through a conversational interface instead of forms. Therefore, ALL GDPR compliance measures documented in Manual Onboarding (Frame 9) apply equally to Beezaro Copilot.
| GDPR Article | Compliance Status | Beezaro-Specific Implementation |
|---|---|---|
| Article 6: Lawful Basis | โ Compliant |
Conversation history collected for service delivery Retention: Chat logs stored for 90 days in copilot_conversation_history |
| Article 7: Consent | โ Compliant |
User chooses "Let Beezaro Set Everything Up For Me" in STEP 0 Explicit consent to conversational data collection |
| Article 13: Right to Information | โ Compliant |
Beezaro intro modal explains: "I'll set everything up for you in just a few questions" User can exit to manual at any time (transparency) Settings banner: "You're in control. All settings can be changed anytime in your dashboard." |
| Article 15: Right of Access | โ Compliant |
API: GET /api/copilot/conversation/:sessionId - Full chat history export Summary screen shows all collected data before confirmation User can download conversation transcript (JSON/CSV) |
| Article 16: Right to Rectification | โ Compliant |
Summary screen has edit icons for ALL collected data User can "Go back" and modify any response Real-time correction during chat or post-setup in dashboard |
| Article 17: Right to Erasure | โ Compliant |
Copilot sessions can be deleted: DELETE /api/copilot/session/:sessionId Conversation history cascade-deleted when session deleted Organization deletion removes all copilot data Fallback triggers auto-deleted after 1 year |
| Article 22: Automated Decision-Making | โ Compliant |
AI provides suggestions only (not decisions) User explicitly confirms all settings in summary screen Can switch to manual setup at any point No automated legal/financial decisions made |
| Article 25: Data Protection by Design | โ Compliant |
Minimal data collection (only what's needed for setup) No full message content in logs (metadata only) OpenAI API calls use ephemeral context (not stored) Privacy-first architecture |
| Article 28: Data Processors | โ Compliant |
OpenAI: DPA signed, GDPR-compliant, data not used for training AWS: GDPR-compliant infrastructure (RDS, S3, ECS) All processors have Data Processing Agreements |
| Article 32: Security Measures | โ Compliant |
TLS 1.3 encryption for all chat communications OpenAI API key in AWS Secrets Manager WebSocket connections secured (wss://) Rate limiting prevents abuse Same security as Manual Onboarding + OpenAI security |
Beezaro Copilot does NOT introduce new GDPR requirements. It collects the same data as Manual Onboarding through a different interface. All existing GDPR compliance measures (Article 6, 7, 13, 15, 16, 17, 22, 25, 28, 32) apply identically to both modes. The only addition is OpenAI as a data processor (Article 28), which has a signed DPA.