הסבר על החיוב

כחלק מהתנאים של פתרון 'המייל האחרון של המייל' בפלטפורמה של מפות Google (LMFS), עסקה חייבת להתבצע אחרי שמשלימים את המשימות שמשויכות למשלוח.

אובייקט המשימה הוא סוג אובייקט בסיסי שיש לו תפקיד מרכזי במעקב אחרי טרנזקציות שניתנות לחיוב ב-LMFS Deliveries API, ובדיווח עליהן. התנאים שלנו דורשים לתכנן את המשימות של הנהג בצורה נכונה ולתעד את TaskOutcome כראוי. כך ניתן להבטיח שכל הטרנזקציות לחיוב מתועדות כראוי. ללקוחות בחוזה, תוכלו לעיין בדרישות הדיווח הרלוונטיות למוצר:

מהי משימה שניתנת לחיוב?

משימה שניתנת לחיוב היא כל משימה שמשלימה את המשלוח: העברה של פריט אחד או יותר משולח ייחודי אל מקבל ייחודי. אי אפשר לחייב משימות משלוח שנכשלו.

בטבלה הבאה מפורטים תרחישים מהעולם האמיתי למשימות שניתנות לחיוב ולמשימות שלא ניתנות לחיוב.

תרחיש ניתן לחיוב?
נהג ניסה לשלוח חבילה וניסיון הניסיון נכשל. לדוגמה, הנמען קיבל אותה ישירות, או שהנהג עזב את החבילה עם השכן. כן
נהג מסר חבילה מחוץ לחלון הזמן שצוין עבור החבילה הזו. כן
נהג או נהגת דיווחו שהמשלוח בוצע בהצלחה, אבל הנמען ערער על קבלת המשלוח מאוחר יותר. כן
נהג ניסה לשלוח חבילה אבל הניסיון נכשל. לדוגמה, הנמען לא היה בבית לחתימה נדרשת או שהכתובת הייתה שגויה. לא
נהג/ת יוצא/ת להפסקה או לעצירה. לא

איך מתבצע החיוב ב-Deliveries API?

החיוב מתבצע בהתאם לתנאים הבאים:

  • סוג המשימה מוגדר כ-delivery. משימות של איסוף עצמי לא מפעילות חיוב, והפסקות או עצירות מתוזמנות לא עומדות בדרישות. לכל עסקה לחיוב צריכה להיות משויכת משימת העברה. באיסוף של המיילים הראשונים במחסן אפשר לעצב את מודל האיסוף בנקודת האיסוף ואת משימת האיסוף, לפי מודל בתחנת האיסוף.

  • השדה TaskOutcome מכיל את הערך SUCCEEDED.

ה-Last Mile Fleet Solution Deliveries API יוצר אירוע לחיוב בפעם הראשונה ש-TaskOutcome מתעדכן עם הערך SUCCEEDED. כשזה קורה, מדד החיוב של המק"ט גדל. כל עדכון נוסף במשימה לא ישפיע על מדד החיוב הזה, ואי אפשר להגדיל או להקטין אותו אחרי הגדרת התוצאה הראשונה.

איך מומלץ לבנות את המודל של המשימות?

בקטע הזה מפורטות המלצות בסיסיות שיעזרו לכם לוודא שהגדרתם נכון את המשימות בהתאם לתנאים ולהגבלות שלנו.

  • מגדירים את השדות המתאימים למשימות של משלוחים. צריך להגדיר את סוג המשימה בתור delivery, להקצות מזהה משימה ייחודי ולציין את המיקום הנכון להשלמת כל משימה. מוודאים לכל משלוח יש משימת מסירה.
  • צרו משימות נפרדות לכל שילוב של שולח-נמען. לדוגמה, תוכלו להשתמש בשתי משימות לנמען אחד מכמה שולחים. לחלופין, אם יש לכם מקום למשלוח יחיד שבו כמה חבילות יימסרו למספר נמענים, תוכלו ליצור כמה משימות.
  • הגדירו נכון משימות שלא יישלחו למשלוח. לעצירות מתוזמנות, מגדירים את המשימה Type לערך SCHEDULED_STOP. להפסקות לנהגים, מגדירים את Type לערך UNAVAILABLE.
  • צריך להגדיר את השדה TaskOutcome בצורה נכונה. בסיום המשימה, צריך לוודא שההטמעה מגדירה את TaskOutcome לערך SUCCEEDED או FAILED. עדכון של משימה שהושלמה למצב CLOSED בלבד לא עומד בתנאים שלנו. אפשר להגדיר את תוצאת המשימה באמצעות ה-SDK של Driver, gRPC או REST.

מידע נוסף זמין בנושאים הבאים במדריך למשתמש של Fleet Engine: