# Tax & Notifications Implementation Plan ## Philosophy: 80/20 Rule - Real Value, Not Menu-ing WooNooW provides elegant UX for 80% of daily use cases. The 20% advanced/rare features stay in WooCommerce. --- ## Tax Settings - What to Build ### Core Features (80% use cases): 1. **Enable/Disable Tax Calculation** - Simple toggle - Clear explanation 2. **Tax Rates by Country/State** - Add/Edit/Delete tax rates - Country selector - State selector (for countries with states) - Rate percentage input - Tax class selector (Standard, Reduced, Zero) 3. **Prices Include Tax Toggle** - "Prices entered with tax" vs "without tax" - Clear explanation 4. **Display Settings** - Show prices in shop: including/excluding tax - Show prices in cart: including/excluding tax - Display suffix (e.g., "incl. VAT") ### Advanced Features (Link to WooCommerce): - Complex tax classes (rare) - Compound taxes (rare) - Tax based on shipping vs billing (advanced) - Custom tax tables (very rare) --- ## Notifications Settings - What to Build ### Core Features (80% use cases): 1. **Email Enable/Disable** - Toggle for each email type - Already implemented ✅ 2. **Edit Email Subjects** - Inline editing of subject lines - Variables support ({order_number}, {site_title}) 3. **Sender Configuration** - "From" name - "From" email address 4. **Email Preview** - Preview button for each email - Opens WooCommerce preview ### Advanced Features (Link to WooCommerce): - Full HTML template editing (advanced) - Custom email templates (developer) - Header/footer customization (advanced) - Additional recipients (rare) --- ## Implementation Priority ### Phase 1: Tax Rates (High Impact) 1. Backend: Tax rates CRUD API 2. Frontend: Tax rates list + Add/Edit dialog 3. Frontend: Enable/disable toggle 4. Frontend: Prices include tax toggle ### Phase 2: Email Subjects (High Impact) 1. Backend: Get/update email settings API 2. Frontend: Sender name/email inputs 3. Frontend: Inline subject editing 4. Frontend: Preview links ### Phase 3: Tax Display Settings (Medium Impact) 1. Frontend: Display settings card 2. Backend: Save display preferences --- ## API Endpoints Needed ### Tax: - GET /settings/tax/rates - POST /settings/tax/rates - PUT /settings/tax/rates/{id} - DELETE /settings/tax/rates/{id} - GET /settings/tax/config - POST /settings/tax/config ### Notifications: - GET /settings/notifications/emails - POST /settings/notifications/emails/{id} - GET /settings/notifications/sender - POST /settings/notifications/sender