Cross-Docking על Bitrix: אוטומציה של לוגיסטיקת מעבר
כאשר חנות מסחר אלקטרוני פועלת במודל drop-shipping, כל הזמנה דורשת העברה מיידית לספק?
ללא אוטומציה, מפעילים יוצרים הזמנות ידנית, מאמתים סטטוסים ושולטים במשלוחים. על Bitrix רגיל, תהליך כזה הופך לצוואר בקבוק: המערכת לא יודעת דבר על ספקים, לא יוצרת הזמנות נגדיות, ולא עוקבת אחר מחסן המעבר. התוצאה: עיכובים, שגיאות ואובדן לקוחות. אנו פותרים בעיה זו עם סטטוסים מותאמים אישית, אירועים ואינטגרציות. המומחים שלנו עובדים עם Bitrix מזה 5+ שנים ויישמו למעלה מ-50 פרויקטים של cross-docking.
אילו בעיות אנו פותרים
הבעיה הראשונה היא היעדר מודל סטטוסים אחיד. סטטוסים סטנדרטיים (NEW, PAID, ALLOW_DELIVERY) אינם משקפים את שלבי העבודה עם הספק. הבעיה השנייה היא יצירה ידנית של הזמנות ספק. עם 200 הזמנות ביום, מפעיל מבלה עד 4 שעות בהזנת נתונים. הבעיה השלישית היא אובדן שליטה על מחסן המעבר: סחורה מגיעה אך המערכת לא יוזמת משלוח ללקוח. אנו מבטלים בעיות אלה עם סטטוסים מותאמים אישית, אוטומציה ואינטגרציות.
כיצד cross-docking עובד בחנות מקוונת על Bitrix
התכנית פשוטה: לקוח מבצע הזמנה, המערכת יוצרת אוטומטית הזמנת ספק, הספק שולח את הסחורה למחסן מעבר, משם הם נשלחים מיד ללקוח. ב-Bitrix, זה משתמש בשרשרת סטטוסים מותאמת אישית:
-
CROSS_WAITING— ממתין לספק (ID: CW) -
CROSS_IN_TRANSIT— סחורה במעבר (ID: CI) -
CROSS_ARRIVED— הגיע למחסן מעבר (ID: CA) -
CROSS_SHIPPED— נשלח ללקוח (ID: CS)
ההבדל מהזמנה רגילה טמון בסטטוסי הביניים של המתנה ומעבר. זה מספק שקיפות ושליטה.
מדוע סטטוסי Bitrix הסטנדרטיים אינם מתאימים
Bitrix מספקת סטטוסים מוגדרים מראש (N, P, F, D), שאינם כוללים "ממתין לספק" או "במעבר". באמצעות סטטוסים סטנדרטיים, לא ניתן להבחין בין הזמנה הממתינה לספק לבין הזמנה ששולמה. אנו יוצרים סטטוסים מותאמים אישית דרך \Bitrix\Sale\OrderStatus::add() ומקשרים אותם לאירועים.
טבלת סטטוסים מותאמים אישית
| סטטוס | ID | תיאור | בשימוש ב-cross-docking |
|---|---|---|---|
| NEW | N | הזמנה חדשה | לא |
| CROSS_WAITING | CW | ממתין לספק | כן |
| CROSS_IN_TRANSIT | CI | סחורה במעבר מהספק | כן |
| CROSS_ARRIVED | CA | הגיע למחסן מעבר | כן |
| CROSS_SHIPPED | CS | נשלח ללקוח | כן |
| ALLOW_DELIVERY | D | משלוח מאושר | לא (הוחלף ב-CS) |
כיצד ליצור אוטומטית הזמנת ספק?
כאשר ההזמנה עוברת לסטטוס CW, האירוע OnSaleStatusOrder מופעל. אנו מוסיפים handler שטוען את ההזמנה, ולכל פריט קובע את הספק דרך מחלקה מותאמת אישית SupplierCatalog. לאחר מכן SupplierOrderService יוצר הזמנת ספק דרך API או EDI. דוגמת קוד:
AddEventHandler('sale', 'OnSaleStatusOrder', function($orderId, $newStatus) { if ($newStatus === 'CW') { $order = \Bitrix\Sale\Order::load($orderId); $basket = $order->getBasket(); foreach ($basket as $item) { $productId = $item->getProductId(); $supplier = SupplierCatalog::getSupplierByProduct($productId); if ($supplier) { SupplierOrderService::create($supplier, [ 'PRODUCT_ID' => $productId, 'QUANTITY' => $item->getQuantity(), 'ORDER_REF' => $orderId, ]); } } } }); תיעוד Bitrix על אירוע OnSaleStatusOrder
נוסף: ניטור מחסן המעבר
לאחסון מעבר, צור מחסן נפרד ב-AddEventHandler('sale', 'OnSaleStatusOrder', function($orderId, $newStatus) { if ($newStatus === 'CW') { $order = \Bitrix\Sale\Order::load($orderId); $basket = $order->getBasket(); foreach ($basket as $item) { $productId = $item->getProductId(); $supplier = SupplierCatalog::getSupplierByProduct($productId); if ($supplier) { SupplierOrderService::create($supplier, [ 'PRODUCT_ID' => $productId, 'QUANTITY' => $item->getQuantity(), 'ORDER_REF' => $orderId, ]); } } } }); עם סוג "מעבר". קבלה מהספק נרשמת דרך b_catalog_store עם סוג A (הגעה). לאחר הגדלת המלאי במחסן המעבר, סוכן יוצר מיד משלוח ללקוח.
מה כלול בהתקנה
המהנדסים שלנו מבצעים את העבודה בשלבים:
| שלב | פרטים |
|---|---|
| ניתוח | הגדרת תכנית cross-docking, רשימת ספקים, סוגי אינטגרציה |
| עיצוב | עיצוב מודל סטטוסים, טבלאות מיפוי מוצר-ספק |
| פיתוח | סטטוסים מותאמים אישית, handlers לאירועים, אינטגרציית ספקים (API/EDI) |
| בדיקות | אימות שרשראות הזמנות, טיפול בשגיאות, בדיקות עומס |
| השקה | הגדרת מחסן מעבר, הדרכת מפעילים, תיעוד |
לוח זמנים: בין 5 ל-15 ימי עסקים, תלוי במספר הספקים ובמורכבות האינטגרציה. העלות מחושבת באופן אישי.
כיצד לבחור את שיטת אינטגרציית הספק?
עבור cross-docking, מהירות חילופי הנתונים היא קריטית. האפשרויות הטובות ביותר:
- API — העברת הזמנות ישירה ב-JSON/XML. דורש שהספק יספק API.
- EDI — חילופי מסמכים אלקטרוניים (הזמנה, אישור, חשבונית). מתאים לספקים גדולים.
- דוא"ל — שליחת הזמנת PDF בדוא"ל. פשוט אך לא אמין: עיכובים אפשריים.
לחנויות עם 2-3 ספקים, API מספיק. עבור 10 ספקים או יותר, עדיף ליישם שער EDI.
טעויות אופייניות במהלך ההתקנה
- סוכן לעיבוד הגעות לא מוגדר — הזמנה נתקעת בסטטוס "הגיע".
- אין מנגנון לביטול הזמנת ספק — אם הלקוח משנה את דעתו, ההזמנה כבר נוצרה.
- מלאי ספק לא נחשב — הזמנה עשויה להתקבל כאשר הסחורה אינה זמינה.
- טיפול שגוי במשלוחים חלקיים — אם הספק שולח בחלקים.
בעיות אלה נפתרות בשלב העיצוב. לצוות שלנו יש ניסיון באינטגרציה עם עשרות ספקים דרך פרוטוקולים שונים. קבלו ייעוץ לפרויקט שלכם — נעריך את המורכבות ונציע פתרון אופטימלי. החיסכון בעלויות מחסן מגיע עד 40%, וזמן עיבוד ההזמנות מופחת ב-60%.







