CRITICAL: Dolibarr integration is VITAL, Accessibility required
🚨 CRITICAL FIXES: - Dolibarr prospect creation is VITAL and non-negotiable in MVP - Email validation → Dolibarr prospect creation flow is critical - Accessibility compliance (WCAG 2.1 AA) is required for launch - Internationalization can be pushed (English only at launch) ⚡ UPDATED 90-MINUTE MVP: ✅ Email capture and verification ✅ Dolibarr prospect creation (VITAL - non-negotiable) ✅ Domain availability checking ✅ Stripe payment form ✅ Manual backend processes 🔧 DOLIBARR INTEGRATION FLOW: 1. Email verification successful 2. Create Dolibarr prospect via API 3. Store prospect ID locally 4. Update prospect status throughout journey 5. Convert to customer on payment success ♿ ACCESSIBILITY REQUIREMENTS: - WCAG 2.1 AA compliance (required for launch) - Semantic HTML, keyboard navigation - Screen reader support, color contrast - Form accessibility, error handling - English only (internationalization deferred) 🎯 SUCCESS CRITERIA: - MVP: Working payment flow + Dolibarr prospects - Complete: Full automation + accessibility compliance Dolibarr integration is now properly prioritized as VITAL!
This commit is contained in:
@@ -205,6 +205,7 @@ You receive:
|
|||||||
- **Frontend**: Basic HTML + Bootstrap
|
- **Frontend**: Basic HTML + Bootstrap
|
||||||
- **Database**: SQLite (single file)
|
- **Database**: SQLite (single file)
|
||||||
- **Payments**: Stripe Elements
|
- **Payments**: Stripe Elements
|
||||||
|
- **Back-office**: Dolibarr API integration (VITAL)
|
||||||
- **Infrastructure**: Manual OVH dashboard operations
|
- **Infrastructure**: Manual OVH dashboard operations
|
||||||
- **Email**: Basic SMTP or Mailgun
|
- **Email**: Basic SMTP or Mailgun
|
||||||
- **Authentication**: Simple JWT
|
- **Authentication**: Simple JWT
|
||||||
@@ -237,10 +238,11 @@ output/
|
|||||||
### 1.2 MVP Technology Stack
|
### 1.2 MVP Technology Stack
|
||||||
```yaml
|
```yaml
|
||||||
# Minimal components for 90-minute delivery
|
# Minimal components for 90-minute delivery
|
||||||
- Go 1.21 (standard library only)
|
- Go 1.21 (standard library + HTTP client)
|
||||||
- SQLite (embedded database)
|
- SQLite (embedded database)
|
||||||
- Stripe Elements (payment form)
|
- Stripe Elements (payment form)
|
||||||
- Bootstrap 5 (styling)
|
- Bootstrap 5 (styling)
|
||||||
|
- Dolibarr API (prospect creation - VITAL)
|
||||||
- OVH API (domain checking only)
|
- OVH API (domain checking only)
|
||||||
- SMTP/Mailgun (email verification)
|
- SMTP/Mailgun (email verification)
|
||||||
```
|
```
|
||||||
@@ -295,9 +297,9 @@ output/
|
|||||||
- PostgreSQL + Redis (production database)
|
- PostgreSQL + Redis (production database)
|
||||||
- Stripe SDK (full payment processing)
|
- Stripe SDK (full payment processing)
|
||||||
- OVH SDK (complete infrastructure automation)
|
- OVH SDK (complete infrastructure automation)
|
||||||
- Dolibarr API (back-office integration)
|
- Dolibarr API (prospect/customer management - VITAL)
|
||||||
- Cloudron CLI (automated installation)
|
- Cloudron CLI (automated installation)
|
||||||
- HTMX + Bootstrap (dynamic frontend)
|
- HTMX + Bootstrap (dynamic frontend, accessible)
|
||||||
- Redis Queue (worker system)
|
- Redis Queue (worker system)
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -305,15 +307,38 @@ output/
|
|||||||
|
|
||||||
### 2.1 Exact Customer Lifecycle Flow
|
### 2.1 Exact Customer Lifecycle Flow
|
||||||
|
|
||||||
#### Step 1: Email Capture & Verification
|
#### Step 1: Email Capture & Verification (VITAL DOLIBARR INTEGRATION)
|
||||||
```
|
```
|
||||||
User enters email → Validate email format →
|
User enters email → Validate email format →
|
||||||
Send verification email with one-time link →
|
Send verification email with one-time link →
|
||||||
User clicks link → Verify token →
|
User clicks link → Verify token →
|
||||||
Create Dolibarr prospect →
|
**Create Dolibarr prospect (VITAL - non-negotiable)** →
|
||||||
Redirect to domain selection
|
Redirect to domain selection
|
||||||
```
|
```
|
||||||
|
|
||||||
|
#### Critical Dolibarr Integration Flow (90-Minute MVP)
|
||||||
|
```
|
||||||
|
1. Email verification successful →
|
||||||
|
2. Call Dolibarr API /api/index.php/prospects →
|
||||||
|
3. Create prospect with:
|
||||||
|
- Email address (verified)
|
||||||
|
- Source: "YDN Web Form"
|
||||||
|
- Status: "Lead"
|
||||||
|
- Created date: current timestamp
|
||||||
|
4. Store Dolibarr prospect ID in local database
|
||||||
|
5. Update prospect status throughout customer journey
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Critical Dolibarr Integration Flow (12-36 Hour Complete)
|
||||||
|
```
|
||||||
|
1. Prospect creation (MVP phase)
|
||||||
|
2. Payment successful → Convert prospect to customer
|
||||||
|
3. Service provisioning → Create contract/project
|
||||||
|
4. Monthly billing → Generate invoices
|
||||||
|
5. Support requests → Create tickets
|
||||||
|
6. All updates sync bidirectional with Dolibarr
|
||||||
|
```
|
||||||
|
|
||||||
#### Step 2: Domain Availability Loop
|
#### Step 2: Domain Availability Loop
|
||||||
```
|
```
|
||||||
User enters domain → Check availability via OVH →
|
User enters domain → Check availability via OVH →
|
||||||
@@ -1002,7 +1027,7 @@ echo "Deployment successful!"
|
|||||||
- **HTTPS**: Automatic TLS via Caddy, HSTS headers
|
- **HTTPS**: Automatic TLS via Caddy, HSTS headers
|
||||||
- **Security Headers**: CSP, X-Frame-Options, X-Content-Type-Options
|
- **Security Headers**: CSP, X-Frame-Options, X-Content-Type-Options
|
||||||
- **Worker Security**: Payload encryption, signature verification
|
- **Worker Security**: Payload encryption, signature verification
|
||||||
- **API Security**: API key rotation, IP whitelisting for OVH/Stripe
|
- **API Security**: API key rotation, IP whitelisting for OVH/Stripe/Dolibarr
|
||||||
- **Data Encryption**: AES-256 encryption for sensitive data (SSH keys, tokens)
|
- **Data Encryption**: AES-256 encryption for sensitive data (SSH keys, tokens)
|
||||||
- **Audit Logging**: All actions logged with user context
|
- **Audit Logging**: All actions logged with user context
|
||||||
- **PCI Compliance**: Stripe Elements, no card data storage, secure customer data handling
|
- **PCI Compliance**: Stripe Elements, no card data storage, secure customer data handling
|
||||||
@@ -1010,6 +1035,21 @@ echo "Deployment successful!"
|
|||||||
- **VPS Security**: Firewall configuration, fail2ban, automatic updates
|
- **VPS Security**: Firewall configuration, fail2ban, automatic updates
|
||||||
- **Cloudron Security**: Admin invite token security, HTTPS enforcement
|
- **Cloudron Security**: Admin invite token security, HTTPS enforcement
|
||||||
- **DNS Security**: DNSSEC support, zone transfer protection
|
- **DNS Security**: DNSSEC support, zone transfer protection
|
||||||
|
- **Dolibarr Security**: API key management, data synchronization security
|
||||||
|
|
||||||
|
### 10.2 Accessibility Compliance (WCAG 2.1 AA - REQUIRED)
|
||||||
|
- **Semantic HTML**: Proper heading structure, landmark elements
|
||||||
|
- **Keyboard Navigation**: Full keyboard accessibility, focus management
|
||||||
|
- **Screen Reader Support**: ARIA labels, descriptions, roles
|
||||||
|
- **Color Contrast**: WCAG AA contrast ratios (4.5:1 normal text)
|
||||||
|
- **Text Scaling**: 200% zoom compatibility
|
||||||
|
- **Focus Indicators**: Visible focus states for all interactive elements
|
||||||
|
- **Form Accessibility**: Proper labels, error messages, field descriptions
|
||||||
|
- **Alternative Text**: Meaningful alt text for all images
|
||||||
|
- **Responsive Design**: Mobile accessibility, touch targets
|
||||||
|
- **Error Handling**: Accessible error notifications and recovery
|
||||||
|
- **Language Support**: English only at launch (lang="en" specified)
|
||||||
|
- **Testing**: Automated accessibility testing + manual screen reader testing
|
||||||
|
|
||||||
### 10.2 Compliance Requirements
|
### 10.2 Compliance Requirements
|
||||||
- **GDPR**: Basic data protection, user consent, right to deletion
|
- **GDPR**: Basic data protection, user consent, right to deletion
|
||||||
@@ -1112,7 +1152,8 @@ echo "Deployment successful!"
|
|||||||
├── Email capture form (15 min) - Basic validation
|
├── Email capture form (15 min) - Basic validation
|
||||||
├── Domain availability check (15 min) - OVH API call
|
├── Domain availability check (15 min) - OVH API call
|
||||||
├── Basic SQLite database (10 min) - Single file storage
|
├── Basic SQLite database (10 min) - Single file storage
|
||||||
└── Email verification (10 min) - Simple token system
|
├── Email verification (10 min) - Simple token system
|
||||||
|
└── Dolibarr prospect creation (10 min) - API integration
|
||||||
```
|
```
|
||||||
|
|
||||||
#### **Minutes 60-90: MVP Polish**
|
#### **Minutes 60-90: MVP Polish**
|
||||||
@@ -1131,7 +1172,7 @@ echo "Deployment successful!"
|
|||||||
⚡ PARALLEL EXECUTION:
|
⚡ PARALLEL EXECUTION:
|
||||||
├── OVH VPS automation (3 hours) - SSH + provisioning
|
├── OVH VPS automation (3 hours) - SSH + provisioning
|
||||||
├── Cloudron installation automation (3 hours) - CLI integration
|
├── Cloudron installation automation (3 hours) - CLI integration
|
||||||
├── Dolibarr API integration (2 hours) - Customer management
|
├── Dolibarr API integration (1 hour) - Prospect/customer management (VITAL)
|
||||||
├── Worker queue system (2 hours) - Redis + task processing
|
├── Worker queue system (2 hours) - Redis + task processing
|
||||||
├── Error handling (2 hours) - Rollback mechanisms
|
├── Error handling (2 hours) - Rollback mechanisms
|
||||||
└── Database migration (2 hours) - PostgreSQL schema
|
└── Database migration (2 hours) - PostgreSQL schema
|
||||||
@@ -1143,19 +1184,21 @@ echo "Deployment successful!"
|
|||||||
├── Cloudron DNS integration (3 hours) - OVH DNS API
|
├── Cloudron DNS integration (3 hours) - OVH DNS API
|
||||||
├── Admin invite system (2 hours) - Token generation
|
├── Admin invite system (2 hours) - Token generation
|
||||||
├── Advanced frontend (3 hours) - Real-time status
|
├── Advanced frontend (3 hours) - Real-time status
|
||||||
|
├── Accessibility compliance (2 hours) - WCAG 2.1 AA
|
||||||
├── Comprehensive testing (2 hours) - Unit/integration
|
├── Comprehensive testing (2 hours) - Unit/integration
|
||||||
├── Security hardening (2 hours) - Input validation
|
├── Security hardening (2 hours) - Input validation
|
||||||
└── API documentation (2 hours) - Swagger/OpenAPI
|
└── API documentation (2 hours) - Swagger/OpenAPI
|
||||||
```
|
```
|
||||||
|
|
||||||
#### **Hours 13-36: Production Polish (Optional)**
|
#### **Hours 13-36: Production Polish (Required)**
|
||||||
```
|
```
|
||||||
⚡ ENHANCEMENT PHASE:
|
⚡ ENHANCEMENT PHASE:
|
||||||
├── Advanced error handling (4 hours)
|
├── Advanced error handling (4 hours)
|
||||||
├── Load testing optimization (4 hours)
|
├── Load testing optimization (4 hours)
|
||||||
├── Advanced monitoring (4 hours)
|
├── Advanced monitoring (4 hours)
|
||||||
├── Additional features (8 hours)
|
├── Accessibility testing & fixes (8 hours) - WCAG 2.1 AA compliance
|
||||||
└── Comprehensive QA (4 hours)
|
├── Comprehensive QA (4 hours)
|
||||||
|
└── Performance optimization (4 hours)
|
||||||
```
|
```
|
||||||
|
|
||||||
### **🎯 MVP FEATURE SET (90 MINUTES):**
|
### **🎯 MVP FEATURE SET (90 MINUTES):**
|
||||||
@@ -1163,6 +1206,7 @@ echo "Deployment successful!"
|
|||||||
#### **✅ WHAT WORKS:**
|
#### **✅ WHAT WORKS:**
|
||||||
- Landing page with value proposition
|
- Landing page with value proposition
|
||||||
- Email capture and verification
|
- Email capture and verification
|
||||||
|
- **Dolibarr prospect creation (VITAL - non-negotiable)**
|
||||||
- Domain availability checking
|
- Domain availability checking
|
||||||
- Stripe payment form ($250/month)
|
- Stripe payment form ($250/month)
|
||||||
- Basic user registration
|
- Basic user registration
|
||||||
@@ -1174,7 +1218,7 @@ echo "Deployment successful!"
|
|||||||
- Manual Cloudron installation via SSH
|
- Manual Cloudron installation via SSH
|
||||||
- Manual DNS configuration
|
- Manual DNS configuration
|
||||||
- Manual admin invite sending
|
- Manual admin invite sending
|
||||||
- Manual Dolibarr customer creation
|
- **Dolibarr prospect → customer conversion (manual)**
|
||||||
|
|
||||||
### **🚀 FULL AUTOMATION FEATURE SET (12-36 HOURS):**
|
### **🚀 FULL AUTOMATION FEATURE SET (12-36 HOURS):**
|
||||||
|
|
||||||
@@ -1193,6 +1237,7 @@ echo "Deployment successful!"
|
|||||||
✅ User can complete payment flow
|
✅ User can complete payment flow
|
||||||
✅ Domain availability checking works
|
✅ Domain availability checking works
|
||||||
✅ Email verification functional
|
✅ Email verification functional
|
||||||
|
✅ **Dolibarr prospect creation works (VITAL)**
|
||||||
✅ Clear manual process documentation
|
✅ Clear manual process documentation
|
||||||
|
|
||||||
#### **12-36 Hour Success:**
|
#### **12-36 Hour Success:**
|
||||||
@@ -1200,6 +1245,8 @@ echo "Deployment successful!"
|
|||||||
✅ End-to-end provisioning works
|
✅ End-to-end provisioning works
|
||||||
✅ Error handling and recovery
|
✅ Error handling and recovery
|
||||||
✅ Complete PRD compliance
|
✅ Complete PRD compliance
|
||||||
|
✅ **WCAG 2.1 AA accessibility compliance**
|
||||||
|
✅ **Dolibarr full integration (prospect → customer)**
|
||||||
|
|
||||||
**THIS PLAN IS REALISTIC AND ACHIEVABLE!** 🎯
|
**THIS PLAN IS REALISTIC AND ACHIEVABLE!** 🎯
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user