# ๐ง ุนุงุตูุฉ ุฐูููุฉ: ุฎุฏู
ุฉ ุทูุจ ุงูุทุนุงู
ูุชูุตูู ุงูุฃุบุฑุงุถ โ Siro Express
## ุฑุฃูู ุงูุตุฑูุญ ูู ูุฐู ุงูุฎุทูุฉ
> [!TIP]
> **This is a strategically brilliant move.** Siro already owns 80% of the infrastructure needed. You're not starting from zero โ you're extending a proven platform.
### ูู
ุงุฐุง ูุฐู ุงูุฎุทูุฉ ุฐููุฉ ุฌุฏุงูุ
1. **ุงูุจููุฉ ุงูุชุญุชูุฉ ุฌุงูุฒุฉ ุจูุณุจุฉ ~80%**: ุงูุณุงุฆููู ู
ูุฌูุฏููุ ูุธุงู
ุงูุชุชุจุน ุฌุงูุฒ (`locationDB` + `car_locations`), ุงูู
ุญุงูุธ ูุงูุฏูุน ุฌุงูุฒูู (`WalletIntaleqDB` ุจูู ุจูุงุจุงุช ุงูุฏูุน ุงูู
ุญููุฉ), ูุธุงู
ุงูุฅุดุนุงุฑุงุช ุฌุงูุฒ (FCM), ุงูู WebSockets ุฌุงูุฒุฉ
2. **ูุงุนุฏุฉ ุงูู
ุณุชุฎุฏู
ูู ุฌุงูุฒุฉ**: ุงูุฑูุงุจ ุงูุญุงูููู ูู
ููุณูู
ุฒุจุงุฆู ุงูุชูุตูู ุงูู
ุญุชู
ููู โ Zero acquisition cost
3. **ุงูุณุงุฆููู ุจุญุงุฌุฉ ูุฏุฎู ุฅุถุงูู**: ุฃููุงุช ุงูุฑููุฏ ูู ุงูุฑุญูุงุช (ุฎุงุตุฉ ุจุนุฏ ุงูุธูุฑ ูุขุฎุฑ ุงูููู) ูู
ูู ุชุญููููุง ูุทูุจุงุช ุชูุตูู
4. **ูู
ูุฐุฌ ู
ูุซุจุช ุนุงูู
ูุงู**: Uber โ Uber Eats, Careem โ Careem NOW, Bolt โ Bolt Food, ูููู
ูุฌุญูุง ุจููุณ ุงูุงุณุชุฑุงุชูุฌูุฉ
5. **ู
ูุฒุฉ ุชูุงูุณูุฉ ุฅูููู
ูุฉ**: ูู ุณูุฑูุง ูุงูุฃุฑุฏู ูู
ุตุฑุ ูุง ููุฌุฏ ูุงุนุจ ู
ุญูู ููู ูุฌู
ุน ุจูู Ride Hailing ูุงูุชูุตูู ุจููุณ ุงูู
ูุตุฉ
### ุงูู
ุฎุงุทุฑ ุงูุชู ูุฌุจ ุงูุงูุชุจุงู ููุง
1. **ุชุนููุฏ ุงูุนู
ููุงุช**: ุฅุฏุงุฑุฉ ุงูู
ุทุงุนู
ูุงูู
ุชุงุฌุฑ ู
ุฎุชููุฉ ุชู
ุงู
ุงู ุนู ุฅุฏุงุฑุฉ ุงูุฑุญูุงุช
2. **ุฌูุฏุฉ ุงูุฎุฏู
ุฉ**: ุชุฃุฎูุฑ ุงูุชูุตูู ุฃู ูุตูู ุทุนุงู
ุจุงุฑุฏ ูุถุฑ ุจุณู
ุนุฉ ุณูุฑู ููู
3. **ููุงู
ุด ุฑุจุญ ู
ูุฎูุถุฉ**: ุงูุชูุตูู ุนู
ูู
ุงู ููุงู
ุดู ุฃูู ู
ู ride-hailing (10-20% ุนู
ููุฉ ู
ูุงุจู 20-30%)
4. **ุชุนุจุฆุฉ ุจูุงูุงุช ุงูู
ุชุงุฌุฑ**: ุงูุชุญุฏู ุงูุฃูุจุฑ โ ู
ู ูุถูู ููุงุฆู
ุงูุทุนุงู
ูุงูู
ูุชุฌุงุชุ
---
## ๐๏ธ ุงูููุฏุณุฉ ุงูู
ุนู
ุงุฑูุฉ โ ุญุงููุงุช Docker ุงูู
ุทููุจุฉ
### Current Architecture (What You Have)
```
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Docker: siro โ
โ โ
โ nginx โโ php (fpm) โโ mysql โโ redis โ
โ โ โ
โ socket_driver (WS:2020) โโโ โ
โ socket_passenger (WS:3030) โโ โ
โ phpmyadmin โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
```
### Proposed Architecture (What To Add)
```
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Docker: siro (extended) โ
โ โ
โ โโโ Existing โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ nginx โโ php (fpm) โโ mysql โโ redis โ โ
โ โ socket_driver (WS:2020) โ โ
โ โ socket_passenger (WS:3030) โ โ
โ โ phpmyadmin โ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ
โ โโโ NEW: Delivery Layer โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ โ โ
โ โ order_server (PHP-FPM) โ ุฅุฏุงุฑุฉ ุงูุทูุจุงุช โ โ
โ โ โโ Store/Menu CRUD โ โ
โ โ โโ Order lifecycle โ โ
โ โ โโ Driver dispatch for delivery โ โ
โ โ โโ Merchant portal API โ โ
โ โ โ โ
โ โ socket_order (WS:4040) โ ุชุชุจุน ุญู ููุทูุจุงุช โ โ
โ โ โโ Real-time order status โ โ
โ โ โโ Driver โ Kitchen communication โ โ
โ โ โโ Customer live tracking โ โ
โ โ โ โ
โ โ merchant_dashboard (Nginx) โ ููุญุฉ ุชุญูู
ุงูุชุงุฌุฑ โ โ
โ โ โโ Menu management โ โ
โ โ โโ Order accept/reject โ โ
โ โ โโ Sales analytics โ โ
โ โ โ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ
โ โโโ Shared (reuse existing) โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ mysql (add new DB: deliveryDB) โ โ
โ โ redis (add delivery queues & caching) โ โ
โ โ nginx (add delivery routes) โ โ
โ โ payment_server (reuse wallet infrastructure) โ โ
โ โ loction_server (reuse driver tracking) โ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
```
> [!IMPORTANT]
> **Principle**: Follow the same architecture pattern you already use โ separation by role, not microservices fragmentation. The `order_server` is a new PHP-FPM service, `socket_order` is a new Workerman process, and the `merchant_dashboard` is a new frontend. All share the existing MySQL and Redis instances.
### ุงูุญุงููุงุช ุงูุฌุฏูุฏุฉ ุงูู
ุทููุจุฉ (3 ุญุงููุงุช)
| ุงูุญุงููุฉ | ุงูุฏูุฑ | ุงูุชูููุฉ | ุงูุจูุฑุช |
|:---|:---|:---|:---|
| `order_server` | ู
ุนุงูุฌุฉ ุงูุทูุจุงุชุ ุฅุฏุงุฑุฉ ุงูู
ุชุงุฌุฑ ูุงูููุงุฆู
ุ ุฑุจุท ุงูุณุงุฆู ุจุงูุทูุจ | PHP-FPM (ููุณ ุงูุตูุฑุฉ ุงูุญุงููุฉ) | ุฏุงุฎูู ููุท ุนุจุฑ nginx |
| `socket_order` | WebSocket ูุชุชุจุน ุญุงูุฉ ุงูุทูุจ ู
ุจุงุดุฑุฉ (ุชู
ุงููุจูู โ ุฌุงุฑู ุงูุชุญุถูุฑ โ ุงูุณุงุฆู ูู ุงูุทุฑูู โ ุชู
ุงูุชูุตูู) | PHP Workerman (ููุณ socket_driver) | WS:4040 |
| `merchant_dashboard` | ููุญุฉ ุชุญูู
ููุชุงุฌุฑ (ููุจ) ูุฅุฏุงุฑุฉ ุงูู
ููู ูุงูุทูุจุงุช | React/Vue ุฃู HTML ุจุณูุท | ุนุจุฑ nginx |
### ู
ุง ูุง ูุญุชุงุฌ ุฅูุดุงุกู ู
ู ุงูุตูุฑ (ุฅุนุงุฏุฉ ุงุณุชุฎุฏุงู
)
- โ
**ูุธุงู
ุงูุฏูุน**: `payment_server` + `WalletIntaleqDB` โ ููุณ ุงูู
ุญุงูุธ ูุงูุจูุงุจุงุช (Cliq, eCash, MTN, PayMob)
- โ
**ุชุชุจุน ุงูุณุงุฆููู**: `loction_server` + `locationDB` โ ููุณ ุงูู GPS streaming
- โ
**ุงูุฅุดุนุงุฑุงุช**: `FcmService.php` โ ููุณ ุงูุจููุฉ
- โ
**ุงูู
ุตุงุฏูุฉ**: `JwtService.php` + `RateLimiter.php` โ ููุณ ุงูุฃู
ุงู
- โ
**ูุงุนุฏุฉ ุงูุจูุงูุงุช**: ููุณ MySQL instanceุ ูุถูู database ุฌุฏูุฏุฉ `deliveryDB`
---
## ๐ ูุงุนุฏุฉ ุงูุจูุงูุงุช ุงูุฌุฏูุฏุฉ โ `deliveryDB`
### ุงูุฌุฏุงูู ุงูุฃุณุงุณูุฉ ุงูู
ุทููุจุฉ
```mermaid
erDiagram
merchants ||--o{ stores : "owns"
stores ||--o{ menu_categories : "has"
menu_categories ||--o{ menu_items : "contains"
menu_items ||--o{ item_variants : "has options"
menu_items ||--o{ item_addons : "has extras"
stores ||--o{ store_hours : "operating hours"
stores ||--o{ store_zones : "delivery zones"
orders ||--o{ order_items : "contains"
orders }o--|| stores : "placed at"
orders }o--|| passengers : "ordered by"
orders }o--o| drivers : "delivered by"
orders ||--o{ order_status_log : "status history"
stores ||--o{ store_reviews : "rated by customers"
merchants {
string id PK
string phone
string email
string name
string business_license
string status
datetime created_at
}
stores {
string id PK
string merchant_id FK
string name_ar
string name_en
string logo
string cover_image
string category "restaurant|grocery|pharmacy|general"
decimal latitude
decimal longitude
string address
boolean is_active
decimal min_order
decimal delivery_fee
integer avg_prep_time_min
decimal rating
integer total_reviews
}
menu_items {
string id PK
string store_id FK
string category_id FK
string name_ar
string name_en
string description
string image
decimal price
boolean is_available
integer sort_order
}
orders {
string id PK
string store_id FK
string passenger_id FK
string driver_id FK
string status "pending|accepted|preparing|ready|picked_up|delivered|cancelled"
decimal subtotal
decimal delivery_fee
decimal service_fee
decimal total
string payment_method
decimal delivery_lat
decimal delivery_lng
string delivery_address
text special_instructions
datetime estimated_delivery
datetime created_at
}
```
---
## ๐ฑ ููู ูุนุฑุถูุง ุฏุงุฎู ุงูุชุทุจููุ โ ุงุณุชุฑุงุชูุฌูุฉ ุงูุนุฑุถ
### ุงูุฎูุงุฑ ุงูุฃูู: ุชุจููุจ ุฌุฏูุฏ ุฏุงุฎู `siro_rider` (ุงูู
ูุตู ุจู โ
)
> [!TIP]
> **Recommended approach**: Add a new tab/section inside the existing `siro_rider` app rather than creating a separate app. This is what Uber, Careem, and Bolt all do โ it maximizes cross-selling and leverages the existing user base.
**ุงูู
ูุทู**: ุงูู
ุณุชุฎุฏู
ููุชุญ ุงูุชุทุจูู โ ูุดูู ุชุจููุจูู ุฑุฆูุณููู: **"ุฑุญูุงุช"** ู **"ุทูุจุงุช"** (ุฃู "ุณูุฑู ุฅูุชุณ" / "ุณูุฑู ู
ุงุฑูุช")
#### ุชุฌุฑุจุฉ ุงูู
ุณุชุฎุฏู
ุงูู
ูุชุฑุญุฉ
```
ุงูุดุงุดุฉ ุงูุฑุฆูุณูุฉ (siro_rider)
โโโ ๐ ุฑุญูุงุช (Tab ุงูุญุงูู โ ride hailing)
โโโ ๐ ุทูุจุงุช (Tab ุฌุฏูุฏ โ delivery)
โโโ ๐ ุจุญุซ ุนู ู
ุทุนู
/ู
ุชุฌุฑ
โโโ ๐ ุชุตูููุงุช
โ โโโ ๐ ู
ุทุงุนู
โ โโโ ๐ฅฌ ุณูุจุฑู
ุงุฑูุช / ุจูุงูุฉ
โ โโโ ๐ ุตูุฏููุงุช
โ โโโ ๐ ูุฏุงูุง ูุฒููุฑ
โ โโโ ๐ฆ ุฃู ุดูุก (ุชูุตูู ุนุงู
)
โโโ ๐ฅ ุงูุฃูุซุฑ ุทูุจุงู (trending)
โโโ โญ ุงูุฃุนูู ุชูููู
ุงู
โโโ ๐ฐ ุนุฑูุถ ูุฎุตูู
ุงุช
โโโ ๐ ุงููุฑูุจ ู
ูู
```
#### ุชุฏูู ุงูุทูุจ
```
ุงุฎุชูุงุฑ ู
ุชุฌุฑ โ ุชุตูุญ ุงูู
ููู โ ุฅุถุงูุฉ ููุณูุฉ โ ู
ุฑุงุฌุนุฉ ุงูุทูุจ
โ ุงุฎุชูุงุฑ ุงูุนููุงู (ููุณ ุฎุฑูุทุฉ ุงูุฑุญูุงุช!) โ ุงุฎุชูุงุฑ ุทุฑููุฉ ุงูุฏูุน (ููุณ ุงูู
ุญุงูุธ!)
โ ุชุฃููุฏ ุงูุทูุจ โ ุชุชุจุน ู
ุจุงุดุฑ (WebSocket)
โ [ุงูู
ุชุฌุฑ ููุจู] โ [ุฌุงุฑู ุงูุชุญุถูุฑ] โ [ุงูุณุงุฆู ูู ุงูุทุฑูู ููู
ุชุฌุฑ]
โ [ุงูุณุงุฆู ุงุณุชูู
ุงูุทูุจ] โ [ุงูุณุงุฆู ูู ุงูุทุฑูู ูู] โ [ุชู
ุงูุชูุตูู]
โ ุชูููู
ุงูู
ุชุฌุฑ + ุชูููู
ุงูุณุงุฆู
```
### ุงูุฎูุงุฑ ุงูุซุงูู: ูุณู
"ุชูุตูู" ุฏุงุฎู ุงูุฎุฑูุทุฉ (ุจุฏูู)
ููุณ ุฎุฑูุทุฉ ุงูุฑุญูุงุชุ ููู ุจุฏู ู
ุง ูุฎุชุงุฑ ูุฌูุฉุ ูุฎุชุงุฑ "ุฃุฑุณู ุณุงุฆู ูุฌูุจูู ุดู" โ ุชูุตูู ุนุงู
ุจุฏูู ู
ุชุฌุฑ ู
ุญุฏุฏ (ู
ุซู inDrive Courier)
### ุชูุตูุชู: ุงุฏู
ุฌ ุงูุฎูุงุฑูู!
- **Tab "ุทูุจุงุช"** = ู
ุทุงุนู
ูู
ุชุงุฌุฑ ู
ุณุฌูุฉ (ู
ุซู Uber Eats)
- **ุฎูุงุฑ "ุชูุตูู ุฃู ุดูุก"** ุฏุงุฎู ููุณ ุงูุชุจููุจ = ุชูุตูู ุนุงู
ุจุฏูู ู
ุชุฌุฑ (ู
ุซู inDrive Courier)
---
## ๐ช ู
ู ูุนุจูู ุงูุจูุงูุงุชุ โ ูู
ูุฐุฌ ุชุนุจุฆุฉ ุงูู
ุชุงุฌุฑ
### โ ูุง ูู
ููู ุชุนุจุฆุฉ ูู ุดูุก ุจููุณู (ูู ูุชุณุน ุงูููุช)
### โ
ุงููู
ูุฐุฌ ุงูู
ููุฌููู (Hybrid) โ ุงูุฃูุณุจ ูุณูุฑู
| Phase | Strategy | Details |
|:---|:---|:---|
| **Phase 1: Seed** | Siro team adds 20-30 top stores manually | Pick the most popular restaurants/stores in each city. Siro team photographs menus, enters items. This creates "critical mass" to attract users |
| **Phase 2: Merchant Portal** | Launch self-service merchant dashboard | Merchants register, upload their own menus, manage availability, accept orders. This is the `merchant_dashboard` Docker container |
| **Phase 3: Scale** | Sales team onboards merchants + merchants discover Siro organically | Merchant referral program, dedicated sales agents, "Join Siro" landing page |
### ุงูุชูุตูู:
#### ุงูู
ุฑุญูุฉ 1 โ ุงูุจุฐุฑุฉ (ุฃูู ุดูุฑ-ุดูุฑูู)
- **ุฃูุช ููุฑููู** ุชุฎุชุงุฑูู 20-30 ู
ุทุนู
/ู
ุชุฌุฑ ู
ุดููุฑ ูู ูู ู
ุฏููุฉ
- ุชุฑูุญูู ุชุตููุฑูู ุงูู
ูููุ ุชุฏุฎููู ุงูุฃุตูุงูุ ุงูุฃุณุนุงุฑุ ุงูุตูุฑ
- **ูุฐุง ุถุฑูุฑู** ูุฃู ูุง ุฃุญุฏ (ูุง ู
ุณุชุฎุฏู
ููุง ุชุงุฌุฑ) ุณูุณุชุฎุฏู
ู
ูุตุฉ ูุงุฑุบุฉ
- ุงููุฏู: ุฃู ููุชุญ ุงูู
ุณุชุฎุฏู
ุงูุชุทุจูู ูููุงูู ุฎูุงุฑุงุช ุญููููุฉ ู
ู ุฃูู ููู
#### ุงูู
ุฑุญูุฉ 2 โ ุจูุงุจุฉ ุงูุชุงุฌุฑ (ุงูุดูุฑ ุงูุซุงูุซ)
- **ููุญุฉ ุชุญูู
ููุจ** ููุชุงุฌุฑ (ุงูู `merchant_dashboard`):
- ุงูุชุงุฌุฑ ูุณุฌูู ุญุณุงุจู ุจููุณู
- ูุถูู ู
ุชุฌุฑู (ุงุณู
ุ ุนููุงูุ ุดุนุงุฑุ ุณุงุนุงุช ุงูุนู
ู)
- ูุถูู ุฃุตูุงู ุงูู
ููู ุจููุณู (ุงุณู
ุ ูุตูุ ุณุนุฑุ ุตูุฑุฉ)
- ูุณุชูุจู ุงูุทูุจุงุช ูููุจููุง/ูุฑูุถูุง
- ูุดูู ุชูุงุฑูุฑ ู
ุจูุนุงุชู
- **ุชุทุจูู ุชุงุฌุฑ ุจุณูุท** (ุงุฎุชูุงุฑู ูุงุญูุงู): ุชุทุจูู ู
ูุจุงูู ููุชุงุฌุฑ ูุณู
ุน ุฅุดุนุงุฑุงุช ุงูุทูุจุงุช ุงูุฌุฏูุฏุฉ
#### ุงูู
ุฑุญูุฉ 3 โ ุงูุชูุณุน (ุจุนุฏ 6 ุฃุดูุฑ)
- ูุฑูู ู
ุจูุนุงุช ูุฒูุฑ ุงูู
ุชุงุฌุฑ ููุนุฑุถ ุนูููู
ุงูุงูุถู
ุงู
- ุงูุชุฌุงุฑ ูุณุฌููู ุจุฃููุณูู
ุจุนุฏ ู
ุง ูุดูููู ุงูู
ูุตุฉ ูุงุฌุญุฉ
- ุจุฑูุงู
ุฌ ุฅุญุงูุฉ ููุชุฌุงุฑ ("ุงุฏุนู ุชุงุฌุฑ ูุงุญุตู ุนูู ุนู
ููุฉ ู
ุฎููุถุฉ")
---
## ๐ ู
ุง ุงูุฐู ูุญุชุงุฌู ุจุงูุชูุตููุ
### ุจูุงูุงุช ุงูู
ุชุงุฌุฑ (ูุนุจูููุง ุงูุชุงุฌุฑ ุฃู ูุฑูู ุณูุฑู)
| ุงูุจูุงู | ู
ุทููุจุ | ู
ุซุงู |
|:---|:---|:---|
| ุงุณู
ุงูู
ุชุฌุฑ (ุนุฑุจู + ุฅูุฌููุฒู) | โ
ุฅุฌุจุงุฑู | ู
ุทุนู
ุงูุดุงู
/ Al Sham Restaurant |
| ุงูุดุนุงุฑ (Logo) | โ
ุฅุฌุจุงุฑู | ุตูุฑุฉ 512x512 |
| ุตูุฑุฉ ุงูุบูุงู | ๐ก ุงุฎุชูุงุฑู | ุตูุฑุฉ ุนุฑูุถุฉ ููู
ุชุฌุฑ |
| ุงูุชุตููู | โ
ุฅุฌุจุงุฑู | ู
ุทุนู
/ ุณูุจุฑู
ุงุฑูุช / ุตูุฏููุฉ / ุนุงู
|
| ุงูุชุตููู ุงููุฑุนู | ๐ก ุงุฎุชูุงุฑู | ุดุงูุฑู
ุง / ุจูุชุฒุง / ุจุฑุบุฑ / ุญูููุงุช |
| ุงูุนููุงู + ุงูุฅุญุฏุงุซูุงุช | โ
ุฅุฌุจุงุฑู | ุฎุฑูุทุฉ + pin |
| ุณุงุนุงุช ุงูุนู
ู | โ
ุฅุฌุจุงุฑู | 9:00 - 23:00 (ููู ููู
) |
| ุงูุญุฏ ุงูุฃุฏูู ููุทูุจ | โ
ุฅุฌุจุงุฑู | 2 ุฏููุงุฑ / 50,000 ู.ุณ |
| ุฑุณูู
ุงูุชูุตูู | โ
ุฅุฌุจุงุฑู | ุซุงุจุชุฉ ุฃู ุญุณุจ ุงูู
ุณุงูุฉ |
| ููุช ุงูุชุญุถูุฑ ุงูู
ุชูุณุท | โ
ุฅุฌุจุงุฑู | 25 ุฏูููุฉ |
| ุฑูู
ูุงุชู ุงูุชูุงุตู | โ
ุฅุฌุจุงุฑู | ููุชูุณูู ู
ุน ุงูุณุงุฆู |
| ูุทุงู ุงูุชูุตูู (ูู
) | โ
ุฅุฌุจุงุฑู | 5 ูู
ู
ู ุงูู
ุชุฌุฑ |
### ุจูุงูุงุช ุงูู
ููู/ุงูู
ูุชุฌุงุช (ูุนุจูููุง ุงูุชุงุฌุฑ)
| ุงูุจูุงู | ู
ุทููุจุ | ู
ุซุงู |
|:---|:---|:---|
| ุงุณู
ุงูุตูู | โ
ุฅุฌุจุงุฑู | ุดุงูุฑู
ุง ูุญู
ุฉ ุนุฑุจู |
| ุงููุตู | ๐ก ุงุฎุชูุงุฑู | ูุญู
ุฉ ู
ุดููุฉ ู
ุน ุฎุถุงุฑ ูุทุญููุฉ |
| ุงูุณุนุฑ | โ
ุฅุฌุจุงุฑู | 1.50 ุฏููุงุฑ |
| ุงูุตูุฑุฉ | โ
ู
ููุตู ุจุดุฏุฉ | ุตูุฑุฉ ุดููุฉ! |
| ุงูุชุตููู | โ
ุฅุฌุจุงุฑู | ุณุงูุฏููุดุงุช / ู
ุดุงูู / ู
ุดุฑูุจุงุช |
| ู
ุชุงุญ / ุบูุฑ ู
ุชุงุญ | โ
ุฅุฌุจุงุฑู | toggle ุจุณูุท |
| ุฎูุงุฑุงุช (Variants) | ๐ก ุญุณุจ ุงูุตูู | ุญุฌู
: ุตุบูุฑ / ูุณุท / ูุจูุฑ |
| ุฅุถุงูุงุช (Add-ons) | ๐ก ุญุณุจ ุงูุตูู | ุฅุถุงูุฉ ุฌุจูุฉ +0.25 / ุจุฏูู ุจุตู |
---
## ๐ฐ ูู
ูุฐุฌ ุงูุฅูุฑุงุฏุงุช โ ููู ูุฑุจุญุ
### ู
ุตุงุฏุฑ ุงูุฏุฎู ู
ู ุฎุฏู
ุฉ ุงูุชูุตูู
| ู
ุตุฏุฑ ุงูุฏุฎู | ุงููุณุจุฉ ุงูู
ูุชุฑุญุฉ | ุงูุชูุถูุญ |
|:---|:---|:---|
| **ุนู
ููุฉ ู
ู ุงูู
ุชุฌุฑ** | 15-25% ู
ู ููู
ุฉ ุงูุทูุจ | ุงูู
ุตุฏุฑ ุงูุฑุฆูุณู โ ู
ุซู Uber Eats |
| **ุฑุณูู
ุชูุตูู ู
ู ุงูุฒุจูู** | 0.50 - 2.00 ุฏููุงุฑ | ุญุณุจ ุงูู
ุณุงูุฉ โ ุฌุฒุก ูุฑูุญ ููุณุงุฆู ูุฌุฒุก ูุณูุฑู |
| **ุฑุณูู
ุฎุฏู
ุฉ** | 5-10% ู
ู ุงูุฒุจูู | Service fee ุตุบูุฑุฉ ุนูู ูู ุทูุจ |
| **ุฅุนูุงูุงุช ุงูู
ุชุงุฌุฑ** | ู
ุชุบูุฑ | "ุธููุฑ ู
ู
ูุฒ" ูู ุฃุนูู ุงููุงุฆู
ุฉ = ู
ุฏููุน |
| **Siro Prime** | ุงุดุชุฑุงู ุดูุฑู | ุชูุตูู ู
ุฌุงูู ูุฃุนุถุงุก Prime (ููุณ ุงููุธุงู
ุงูุญุงูู!) |
---
## ๐ ุชุฃุซูุฑ ุนูู ุงูุณุงุฆููู โ ููู ูุดุชุบู ุงูุณุงุฆูุ
### ุงูุณููุงุฑูู ุงูู
ูุชุฑุญ
```mermaid
flowchart TD
A["Driver goes online"] --> B{"Receive request"}
B -->|Ride request| C["Normal ride flow
(existing system)"]
B -->|Delivery request| D["New delivery flow"]
D --> E["Navigate to store"]
E --> F["Confirm pickup
(scan QR / enter code)"]
F --> G["Navigate to customer"]
G --> H["Confirm delivery
(customer signature/code)"]
H --> I["Earn delivery fee"]
style D fill:#ff9800,color:#fff
style E fill:#ff9800,color:#fff
style F fill:#ff9800,color:#fff
style G fill:#ff9800,color:#fff
style H fill:#ff9800,color:#fff
style I fill:#4caf50,color:#fff
```
### ููุงุท ู
ูู
ุฉ ููุณุงุฆููู:
1. **ููุณ ุงูุชุทุจูู (`siro_driver`)** โ ูุถูู ุดุงุดุงุช ุฌุฏูุฏุฉ ููุชูุตูู
2. **ุงูุณุงุฆู ูุฎุชุงุฑ**: ุฑุญูุงุช ููุท / ุชูุตูู ููุท / ุงูุงุซููู ู
ุนุงู
3. **ุฃููุงุช ุงูุฐุฑูุฉ ู
ุฎุชููุฉ**: ุงูุฑุญูุงุช ุฐุฑูุชูุง ุตุจุงุญุงู ูู
ุณุงุกูุ ุงูุชูุตูู ุฐุฑูุชู ููุช ุงูุบุฏุงุก ูุงูุนุดุงุก = **ุชูุงุฒู ู
ุซุงูู**
4. **ููุน ุงูุณูุงุฑุฉ**: ุญุชู ุณุงุฆูู ุงูุฏุฑุงุฌุงุช ุงููุงุฑูุฉ ูู
ูููู
ุงูุชูุตูู (ูุฆุฉ ุฌุฏูุฏุฉ: Bike Delivery)
---
## ๐ฏ ููู ูุณููููุงุ โ ุงุณุชุฑุงุชูุฌูุฉ ุงูุฅุทูุงู
### ููู
ุณุชุฎุฏู
ูู (ุงูุฒุจุงุฆู)
| ุงูููุงุฉ | ุงูุฃุณููุจ |
|:---|:---|
| **ุฏุงุฎู ุงูุชุทุจูู** | Banner ูู ุงูุดุงุดุฉ ุงูุฑุฆูุณูุฉ: "ุฌุฏูุฏ! ุงุทูุจ ุฃููู ู
ู ุณูุฑู ๐" + ุฅุดุนุงุฑ push ููู ุงูู
ุณุชุฎุฏู
ูู |
| **ุฃูู ุทูุจ ู
ุฌุงูู** | "ุฃูู ุชูุตูู ุนูู ุญุณุงุจูุง" โ ุฃููู ุญุงูุฒ ููุชุฌุฑุจุฉ |
| **ููุจููุงุช ู
ุดุชุฑูุฉ** | "ุงุทูุจ ุฑุญูุฉ ูุงุญุตู ุนูู ุฎุตู
30% ุนูู ุฃูู ุทูุจ ุทุนุงู
" โ cross-selling |
| **ู
ุญุฑู ุงูุชุณููู ุงูุญุงูู** | ุงุณุชุฎุฏู
`marketing_engine` (Gemini AI comments + Telegram scraper) ููุณู ููุชุฑููุฌ ููุชูุตูู |
| **Siro Prime** | "ุงุดุชุฑู ุจู Prime ูุงุญุตู ุนูู ุชูุตูู ู
ุฌุงูู ุบูุฑ ู
ุญุฏูุฏ" |
### ููุชุฌุงุฑ (ุงูู
ุทุงุนู
ูุงูู
ุชุงุฌุฑ)
| ุงูููุงุฉ | ุงูุฃุณููุจ |
|:---|:---|
| **ุนู
ููุฉ 0% ุฃูู 3 ุฃุดูุฑ** | ุฃููู ุญุงูุฒ โ "ุฌุฑูุจ ุจุฏูู ู
ุฎุงุทุฑุฉ" |
| **ูุฑูู ู
ุจูุนุงุช ู
ูุฏุงูู** | ููุณ ููุฑุฉ ูุฑูู ุชุณุฌูู ุงูุณุงุฆููู โ ูุฒูุฑูู ุงูู
ุทุงุนู
|
| **ุตูุญุฉ "ุงูุถู
ูุณูุฑู"** | Landing page ุนูู `siromove.com` ููุชุณุฌูู ุงูุฐุงุชู |
| **ุชุงุจูุช ู
ุฌุงูู** | ุจุนุถ ุงูู
ูุตุงุช ุชูุฏู
ุชุงุจูุช ููู
ุทุนู
ูุงุณุชูุจุงู ุงูุทูุจุงุช โ ู
ูุฒุฉ ุชูุงูุณูุฉ ูููุฉ |
---
## ๐ ู
ูุงุฑูุฉ ุงููู
ุงุฐุฌ โ ุฃู ูู
ูุฐุฌ ูุฎุชุงุฑุ
### ุงููู
ูุฐุฌ A: Marketplace ูุงู
ู (ู
ุซู Uber Eats / Talabat)
| Pros โ
| Cons โ |
|:---|:---|
| Revenue from commission per order | Need to onboard many merchants |
| Scalable โ merchants manage their own data | Complex merchant portal needed |
| Full control over customer experience | Higher operational cost |
| Rich data for analytics | Need customer support for merchant issues too |
### ุงููู
ูุฐุฌ B: ุชูุตูู ุนุงู
ููุท (ู
ุซู inDrive Courier)
| Pros โ
| Cons โ |
|:---|:---|
| Simple โ no merchant onboarding needed | Lower order value |
| Fast to launch (weeks not months) | No menu browsing experience |
| Works for anything (documents, packages, food) | Can't guarantee food quality/hygiene |
| Low infrastructure cost | Limited monetization (delivery fee only) |
### ุงููู
ูุฐุฌ C: ุงููุฌูู (ุงูู
ูุตู ุจู โ
โ
โ
)
> [!TIP]
> **Start with Model B (courier) first** โ it requires almost zero new infrastructure and can launch within 2-3 weeks. Then build Model A (marketplace) in parallel and launch it when ready.
**ุงูู
ุฑุญูุฉ 1 (ุฃุณุจูุนูู)**: ุฃุทูู "ุชูุตูู ุฃู ุดูุก" โ ุงูุฒุจูู ูุญุฏุฏ ู
ูุงู ุงูุงุณุชูุงู
ูู
ูุงู ุงูุชูุตูู ูููุชุจ ูุตู. ุงูุณุงุฆู ูุฑูุญ ูุฌูุจ ุงูุดู ูููุตูู. ุจุณูุท!
**ุงูู
ุฑุญูุฉ 2 (2-3 ุฃุดูุฑ)**: ุฃุทูู ุงูู Marketplace ุงููุงู
ู ู
ุน ู
ุชุงุฌุฑ ู
ุณุฌูุฉุ ู
ููููุงุชุ ุชุชุจุน ุญูุ ููุญุฉ ุชุญูู
ุงูุชุงุฌุฑ.
---
## ๐ ู
ูุฎุต ู
ุง ูุญุชุงุฌู
### ู
ู ูุงุญูุฉ ุชูููุฉ
| ุงูู
ูููู | ุงูุฌูุฏ | ุงูุฃููููุฉ |
|:---|:---|:---|
| `deliveryDB` โ ูุงุนุฏุฉ ุจูุงูุงุช ุฌุฏูุฏุฉ | ู
ุชูุณุท | P0 |
| `order_server` โ ุญุงููุฉ PHP ุฌุฏูุฏุฉ ูุฅุฏุงุฑุฉ ุงูุทูุจุงุช | ุนุงูู | P0 |
| `socket_order` โ WebSocket ูุชุชุจุน ุงูุทูุจุงุช | ู
ุชูุณุท | P0 |
| ุดุงุดุงุช ุฌุฏูุฏุฉ ูู `siro_rider` (Tab ุงูุทูุจุงุช) | ุนุงูู | P0 |
| ุดุงุดุงุช ุฌุฏูุฏุฉ ูู `siro_driver` (ุงุณุชูุจุงู ุทูุจุงุช ุงูุชูุตูู) | ู
ุชูุณุท | P0 |
| `merchant_dashboard` โ ููุญุฉ ุชุญูู
ุงูุชุงุฌุฑ (ููุจ) | ุนุงูู | P1 |
| ุดุงุดุงุช ุฌุฏูุฏุฉ ูู `siro_service` (ุฏุนู
ุทูุจุงุช ุงูุชูุตูู) | ู
ูุฎูุถ | P2 |
| ุชุทุจูู ู
ูุจุงูู ููุชุงุฌุฑ (ุงุฎุชูุงุฑู) | ุนุงูู | P3 |
### ู
ู ูุงุญูุฉ ุชุฌุงุฑูุฉ
| ุงูู
ุชุทูุจ | ุงูุชูุตูู |
|:---|:---|
| **ุงุชูุงููุงุช ู
ุน ู
ุชุงุฌุฑ** | 20-30 ู
ุชุฌุฑ ูุญุฏ ุฃุฏูู ููุฅุทูุงู |
| **ุชุตููุฑ ุงูู
ููููุงุช** | ูุฑูู ูุตููุฑ ููุฏุฎู ุงูุจูุงูุงุช ูุฃูู 20-30 ู
ุชุฌุฑ |
| **ุชุณุนูุฑ ุงูุชูุตูู** | ูุฑุงุฑ: ุซุงุจุชุ ุญุณุจ ุงูู
ุณุงูุฉุ ู
ุฌุงูู ููู ุญุฏ ู
ุนููุ |
| **ุชุฏุฑูุจ ุงูุณุงุฆููู** | ููู ูุชุนุงู
ู ู
ุน ุงูุทูุจ (ูุง ููุชุญ ุงูุฃููุงุณุ ูุชุนุงู
ู ุจูุทู ู
ุน ุงูุชุงุฌุฑ) |
| **ุฏุนู
ููู** | ูุฑูู `siro_service` ูุญุชุงุฌ ุชุฏุฑูุจ ุนูู ุญู ู
ุดุงูู ุงูุชูุตูู |
### ู
ู ูุงุญูุฉ ุจูุงูุงุช
| ุงูููุน | ุงูู
ุตุฏุฑ | ุงูุฃููููุฉ |
|:---|:---|:---|
| ุจูุงูุงุช ุงูู
ุทุงุนู
ูุงูู
ุชุงุฌุฑ | ูุฑูู ุณูุฑู (ุฃูู 30) โ ุซู
ุงูุชุงุฌุฑ ุจููุณู | P0 |
| ููุงุฆู
ุงูุทุนุงู
(ุงูู
ููู) | ูุฑูู ุณูุฑู (ุฃูู 30) โ ุซู
ุงูุชุงุฌุฑ ุจููุณู | P0 |
| ุตูุฑ ุงูุฃุตูุงู | ูุฑูู ุณูุฑู (ุชุตููุฑ ุงุญุชุฑุงูู) โ ุซู
ุงูุชุงุฌุฑ ุจููุณู | P1 |
| ู
ูุงุทู ุงูุชูุตูู | ุชุนุฑูู ุชููุงุฆู ุญุณุจ ุงูู
ุณุงูุฉ ู
ู ุงูู
ุชุฌุฑ | P0 |
| ุณุงุนุงุช ุงูุนู
ู | ุงูุชุงุฌุฑ ูุฏุฎููุง | P0 |
---
## ๐ก ุฃููุงุฑ ุฅุถุงููุฉ ููุชู
ููุฒ
1. **"ุงุทูุจ ูุตุฏููู"**: ุงุทูุจ ุทุนุงู
ููุตููู ูุดุฎุต ุซุงูู (ูุฏูุฉ) โ ู
ูุฒุฉ ุนุงุทููุฉ ูููุฉ
2. **ุทูุจ ุฌู
ุงุนู**: ู
ุฌู
ูุนุฉ ุฃุตุฏูุงุก ูุทูุจูู ู
ู ููุณ ุงูู
ุทุนู
ููู ูุงุญุฏ ูุฏูุน ุญุตุชู
3. **ุฌุฏููุฉ ุงูุทูุจ**: "ุฃุฑูุฏ ุงูุทูุจ ููุตู ุงูุณุงุนุฉ 8 ู
ุณุงุกู" โ ู
ุซู Talabat Schedule
4. **ุชูููู
ุงุช ุฐููุฉ**: ุงุณุชุฎุฏุงู
Gemini ูุชุญููู ุงูุชูููู
ุงุช ูุงุณุชุฎุฑุงุฌ ููุงุท ุงูููุฉ ูุงูุถุนู ููู ู
ุทุนู
5. **ุนุฑูุถ ุฐููุฉ**: Gemini ููุชุฑุญ ุนุฑูุถ ุญุณุจ ุณููู ุงูู
ุณุชุฎุฏู
("ุนุงุฏุฉ ุชุทูุจ ุดุงูุฑู
ุง ููู
ุงูุฌู
ุนุฉ โ ุฎุตู
20% ุงูููู
!")
6. **Re-order**: "ุฃุนุฏ ููุณ ุทูุจู ุงูุฃุฎูุฑ" ุจุถุบุทุฉ ูุงุญุฏุฉ
---
## ๐ ุงูุฎุทุท ุงููุงุฏู
ุฉ ูุฎุงุฑุทุฉ ุงูุชูููุฐ โ ุชุณู
ูุฉ ุงูุฎุฏู
ุฉ ูุงููููููุฉ ุงูุฅุณุชุฑุงุชูุฌูุฉ
### ๐ท๏ธ ุงูุชุณู
ูุฉ ุงูุชุฌุงุฑูุฉ ุงูุฑุณู
ูุฉ ููุฎุฏู
ุฉ: **Siro Express | ุณูุฑู ุฅูุณุจุฑุณ**
ุชู
ุงุฎุชูุงุฑ ุงุณู
**Siro Express (ุณูุฑู ุฅูุณุจุฑุณ)** ููููู ุงูู
ุธูุฉ ุงูุดุงู
ูุฉ ูุฎุฏู
ุงุช ุงูุชูุตููุ ูููุฏุฑุฌ ุชุญุชูุง 3 ุฃุฐุฑุน ู
ุชุฎุตุตุฉ:
1. **Siro Courier (ุณูุฑู ููุฑููุฑ / ุชูุตูู ุณุฑูุน)**: ุฎุฏู
ุฉ ุชูุตูู ุงูุทุฑูุฏ ูุงููุซุงุฆู ูุงูุฃุบุฑุงุถ ุงูุดุฎุตูุฉ ุจูู ููุทุชูู (Point-to-Point Delivery).
2. **Siro Eats (ุณูุฑู ุฅูุชุณ / ุทูุจ ุงูุทุนุงู
)**: ุฎุฏู
ุฉ ุชุตูุญ ุงูู
ุทุงุนู
ูุทูุจ ุงููุฌุจุงุช.
3. **Siro Market (ุณูุฑู ู
ุงุฑูุช / ุงูุจูุงูุฉ ูุงูุตูุฏููุฉ)**: ุฎุฏู
ุฉ ุชูุตูู ุงูู
ุณุชูุฒู
ุงุช ุงูููู
ูุฉ ูุงูุฃุฏููุฉ.
---
### ๐บ๏ธ ุฎุงุฑุทุฉ ุงูุทุฑูู ุงูุชูููุฐูุฉ (Phased Implementation Roadmap)
```mermaid
timeline
title ุฎุงุฑุทุฉ ุทุฑูู ุฅุทูุงู Siro Express
Phase 1 : Siro Courier (ุชูุตูู ุงูุฃุบุฑุงุถ) : ุฅุทูุงู ุฎุฏู
ุฉ point-to-point ุฎูุงู ุฃุณุจูุนูู : ุงุนุชู
ุงุฏ ุจููุฉ GPS ู Ride-Hailing ุงูุญุงููุฉ
Phase 2 : Siro Eats (ู
ุทุงุนู
ุงูุจุฐุฑุฉ) : ุฅุฏุฎุงู ุฃูู 30 ู
ุทุนู
ุดููุฑ : ุชูุนูู order_server ู deliveryDB
Phase 3 : Merchant Portal & Siro Market : ุฅุทูุงู ููุญุฉ ุชุญูู
ุงูุชุฌุงุฑ : ุงูุชูุณุน ููุจูุงูุฉ ูุงูุตูุฏููุงุช
Phase 4 : AI & Prime Integration : ุฑุจุท ู
ุญุฑู ุงูุชูุตูุงุช ุงูุฐูู : ุฏู
ุฌู ู
ุน ุงุดุชุฑุงูุงุช Siro Prime
```
### ๐ ุงูุชูุซูู ุงูููู ูุงูุจุฑู
ุฌู ููุฎุทุท ุงููุงุฏู
ุฉ (Developer & Architectural Documentation)
#### 1. ุชูุซูู Phase 1: Siro Courier (ุชูุตูู ุฃู ุดูุก)
- **ุดุงุดุฉ ุงูุชุทุจูู**: ุชุจููุจ "ุชูุตูู ุฃุบุฑุงุถ" ูู `siro_rider`.
- **ุงูู
ุฏุฎูุงุช**: ููุทุฉ ุงูุงุณุชูุงู
(Pickup Lat/Lng), ููุทุฉ ุงูุชุณููู
(Dropoff Lat/Lng), ูุตู ุงูุดุญูุฉ (Package Description), ุงูููู
ุฉ ุงูู
ุฌูุฒุฉ ุฅู ูุฌุฏุช (COD amount).
- **ุงูู
ูุทู Backend**: ุงุณุชุฎุฏุงู
ููุณ ุฌุฏูู ุงูุฑุญูุงุช ู
ุน `ride_type = 'delivery_courier'`.
#### 2. ุชูุซูู Phase 2: Siro Eats & Order Lifecycle API
- **ู
ุณุงุฑุงุช API ุงูู
ุฌูุฒุฉ ูู `order_server`**:
- `GET /v1/delivery/stores` - ุฌูุจ ุงูู
ุชุงุฌุฑ ุญุณุจ ุงููุทุงู ุงูุฌุบุฑุงูู.
- `GET /v1/delivery/stores/{id}/menu` - ุฌูุจ ุงูู
ููู ูุงูุชุตูููุงุช.
- `POST /v1/delivery/orders/create` - ุฅูุดุงุก ุทูุจ ุฌุฏูุฏ ูุญุฌุฒ ุงูู
ุจูุบ ู
ู Wallet.
- `POST /v1/delivery/merchant/orders/{id}/status` - ุชุญุฏูุซ ุญุงูุฉ ุงูุทูุจ ู
ู ุงูุชุงุฌุฑ.
- `WS /v1/delivery/ws/track/{order_id}` - ููุงุฉ ุงูุชุชุจุน ุงูู
ุจุงุดุฑ ููุทูุจ.
#### 3. ุชูุซูู Phase 3: Merchant Portal & Dashboards
- **ุจููุฉ Dashboard**: ุชุทุจูู web ุฎููู ูุจูู ุนูู Vue/React ุฃู HTML5 vanilla ู
ุน WebSockets ู
ุชุตูุฉ ุจู `socket_order` ูุฅุตุฏุงุฑ ุตูุช ุชูุจูู ููุฑ ูุฑูุฏ ุทูุจ ุฌุฏูุฏ ููู
ุทุนู
.
#### 4. ุชูุซูู Phase 4: Integration with Siro Prime & Gemini AI
- **Siro Prime**: ุฅูุบุงุก ุฑุณูู
ุงูุชูุตูู ูุฌู
ูุน ุงูุทูุจุงุช ุงูุชู ุชุชุฌุงูุฒ ุญุฏุงู ุฃุฏูู ู
ุนููุงู.
- **Gemini AI Engine**: ุชุญููู ุชูุถููุงุช ุงูุฒุจูู ูุงูุชุฑุงุญ ูุฌุจุงุช ู
ุฎุตุตุฉ ุจูุงุกู ุนูู ุงูุชูููุช ูุงูู
ููุน ูุงูุทูุณ ูุฑุตูุฏ ุงูู
ุญูุธุฉ.
> [!NOTE]
> **Bottom Line**: You don't need to build everything from scratch. ~80% of your infrastructure (drivers, tracking, payments, auth, notifications) is reusable. The new work is primarily: order management logic, merchant-facing tools, and new UI screens in the existing apps. Start with "deliver anything" courier mode for a quick win, then layer the full marketplace on top.