הצוות שלנו מתמחה במערכות משלוחים שליחים מותאמות אישית. היקף המשלוחים גדל — 50, 100, 300 הזמנות ביום. עמלות האגרגטורים אוכלות את השוליים. שירות שליחים פנימי פותר את שתי הבעיות: אתם שולטים באיכות וחוסכים עד 40%. על סמך הניסיון שלנו, עלויות התפעול יורדות ב-25–40% לאחר היישום, וזמן המשלוח הממוצע קטן ב-20%. לדוגמה, עסק עם 100 הזמנות ביום יכול לחסוך מעל $5,000 בחודש (בהתבסס על עמלות אגרגטור ממוצעות). עלות הפיתוח למערכת סוהר נעה בדרך כלל בין $15,000 ל-$30,000 בהתאם לתכונות. המהנדסים שלנו השלימו 30+ פרויקטים של משלוחי שליחים למסחר אלקטרוני ומשלוחי מזון. תוך 8–12 שבועות אתם מקבלים מערכת סוהר עם פאנל מוקדן, אפליקציית מובייל לשליחים ומעקב ללקוח. מערכת ניהול השליחים מורכבת משלושה רכיבים: backend, פאנל web ואפליקציית מובייל. מאמר זה מכסה ארכיטקטורה, מודלי נתונים, אלגוריתמי חלוקה ושאלות יישום מרכזיות. צרו קשר לקבלת הערכה מפורטת למערכת שלכם.
ארכיטקטורת המערכת
רכיבים
- Backend: REST API + שרת WebSocket לקואורדינטות בזמן אמת. מטפל בעד 1000 הזמנות ביום.
- פאנל מוקדן: ממשק web לניהול שליחים ומסלולים.
- אפליקציית מובייל לשליח: React Native או PWA לקבלת משימות ושליחת קואורדינטות GPS כל 30 שניות.
מודל נתונים
couriers (
id,
user_id,
name,
phone,
vehicle_type,
status: offline | available | busy | on_break,
current_lat,
current_lng,
last_seen_at,
zone_ids (jsonb) -- зоны доставки, за которые отвечает курьер
)
delivery_tasks (
id,
order_id,
courier_id (nullable),
status: pending | assigned | picked_up | in_transit | delivered | failed,
pickup_address,
delivery_address,
scheduled_at,
picked_up_at,
delivered_at,
proof_photo_url, -- фото при вручении
recipient_signature_url, -- подпись получателя
failure_reason
)
courier_routes (
id,
courier_id,
date,
task_ids (jsonb, ordered), -- очерёдность доставок
total_distance_km,
estimated_duration_min
) פאנל מוקדן
מפה עם שליחים בזמן אמת (Yandex Maps או Leaflet). רשימת הזמנות לא משויכות, שיוך בגרירה ושחרור, תור משימות עם סידור מחדש. ניטור: אם שליח לא זז במשך 20 דקות — התראה למוקדן. היסטוריית מסלולים ויעילות יומית.
אפליקציית מובייל לשליח
מסכים עיקריים:
- רשימת משימות — מסלול נוכחי, נקודה הבאה.
- ניווט — אינטגרציה עם Yandex Navigator באמצעות deep link.
- אישור מסירה — תמונה, חתימה או קוד אישור SMS.
- טיפול בשגיאות — סיבה: דלת לא נפתחה, קביעת מועד חדש, סירוב.
מעקב ללקוח
לקוחות מקבלים SMS/push עם קישור לדף מעקב למעקב אחר המשלוח בזמן אמת. הדף מציג מפה בזמן אמת עם השליח וזמן הגעה משוער (ETA), המחושב מחדש כל 2 דקות.
אזורי משלוח
אזורים גיאוגרפיים — מצולעים על המפה, המאוחסנים ב-PostgreSQL עם הרחבת PostGIS. אזורי משלוח של PostGIS מאפשרים שאילתות גיאו-מרחביות יעילות. השאילתה מתבצעת תוך 5–10 אלפיות השנייה:
SELECT * FROM delivery_zones WHERE ST_Contains(polygon, ST_SetSRID(ST_MakePoint(lng, lat), 4326)); טיפול במשלוחים שנכשלו
אם השליח לא מצא את הנמען, הסטטוס הופך ל-couriers ( id, user_id, name, phone, vehicle_type, status: offline | available | busy | on_break, current_lat, current_lng, last_seen_at, zone_ids (jsonb) -- зоны доставки, за которые отвечает курьер ) delivery_tasks ( id, order_id, courier_id (nullable), status: pending | assigned | picked_up | in_transit | delivered | failed, pickup_address, delivery_address, scheduled_at, picked_up_at, delivered_at, proof_photo_url, -- фото при вручении recipient_signature_url, -- подпись получателя failure_reason ) courier_routes ( id, courier_id, date, task_ids (jsonb, ordered), -- очерёдность доставок total_distance_km, estimated_duration_min ) עם סיבה. נקבע אוטומטית משלוח חוזר ליום הבא או שהלקוח בוחר זמן חדש. המוקדן מקבל הודעה.
דרישות תשתית
שני שרתים מספיקים: אחד ל-backend ולמסד הנתונים, ואחר לשרת WebSocket ולתורים. עבור עד 1000 הזמנות ביום, השתמשו ב-PostgreSQL עם PostGIS וב-Redis לקאש. תצורה אופטימלית: 4 vCPU, 8 GB RAM לכל שרת.איך פועל שיוך הזמנות אוטומטי?
שיוך ידני: המוקדן גורר הזמנה על שליח במפה — מתאים עד 50 הזמנות ביום. ניתוב אוטומטי משתמש באלגוריתם בעיית ניתוב כלי רכב (ויקיפדיה). אופטימיזציית מסלולים מושגת באמצעות אלגוריתמי VRP. להיקפים קטנים, אלגוריתם חמדן (השליח הזמין הקרוב ביותר). לאופטימיזציה רצינית, Google OR-Tools או שירותים כמו OptimoRoute, Route4Me. שיוך אוטומטי מהיר פי 100–600 משיגור ידני.
| קריטריון | שיוך ידני | אוטומטי (VRP) |
|---|---|---|
| זמן שיגור להזמנה | 5–10 דקות | 1–2 שניות לכל המסלול |
| אופטימליות המסלול | תלוי בניסיון | אופטימלי מתמטית |
| מדרגיות | עד 50 הזמנות ביום | כל כמות |
| עלות יישום | חינם (מובנה) | דורש אינטגרציית OR-Tools או API |
מעבר לחלוקה אוטומטית מקצר את זמן השיגור פי 100–600. צרו קשר כדי לדון באוטומציה של השיגור שלכם.
# Простая эвристика: назначить ближайшего свободного курьера
def assign_courier(task):
available_couriers = Courier.objects.filter(status='available')
nearest = min(available_couriers, key=lambda c: haversine(c.location, task.pickup_address))
task.assign(nearest) השוואת כלי ניתוב
| כלי | סוג | חינם? | דיוק | מדרגיות |
|---|---|---|---|---|
| Google OR-Tools | ספרייה | כן (Apache 2.0) | גבוה | עד 200 נקודות |
| OptimoRoute | API | מסחרי | גבוה מאוד | ללא הגבלה |
למה משלוח פנימי משתלם יותר?
משלוח פנימי זול פי 2–3 משימוש באגרגטורים. עמלות האגרגטורים אוכלות את השוליים. משלוח פנימי עולה פי 2–3 פחות מאגרגטורים החל מ-100 הזמנות ביום. המערכת מחזירה את עצמה מ-50+ הזמנות ביום. החיסכון בעמלות אגרגטור מגיע ל-40% ב-100+ הזמנות, עם תקופת החזר של 6–8 חודשים. אתם מקבלים שליטה מלאה במותג, תמחור גמיש, חישוב עלויות משלוח וכל הנתונים לאנליטיקה. דיוק ה-ETA הוא ±3 דקות. אנו מבטיחים פעילות יציבה גם בשעות שיא — מוכח על 30+ פרויקטים.
תהליך היישום
- אנליטיקה: לימוד תהליך העסקי שלכם, היקף הזמנות, גיאוגרפיה.
- עיצוב: ארכיטקטורה, מודל נתונים, אב טיפוס ממשק.
- פיתוח: backend, פאנל מוקדן, אפליקציית מובייל.
- בדיקות: בדיקות עומס, בדיקות שמישות עם שליחים אמיתיים.
- פריסה: על השרת שלכם או בענן, הדרכת צוות.
מה כלול
- REST API ושרת WebSocket למעקב בזמן אמת
- פאנל מוקדן על React עם מפה וגרירה ושחרור
- אפליקציית מובייל לשליח (React Native) עם ניווט וצילום תמונות
- אינטגרציית CRM/ERP דרך API
- תיעוד והדרכה
- 3 חודשי תמיכת אחריות
תהליך הפיתוח הסוהר שלנו כולל את כל השלבים. זמן הפיתוח למערכת סוהר מלאה הוא 8–12 שבועות. העלות מחושבת באופן אישי לפי הדרישות שלכם. לייעוץ והערכה, צרו קשר.







