本文講述了在Best Buy Drop Ship 業務的EDI業務測試中常見的報錯以及在實際測試中總結的對應解決辦法。
Best Buy Drop Ship業務簡介
百思買集團Best Buy是全球最大家用電器和電子産品零售集團,引入EDI技術成為其進一步優化其供應鍊管理體系,實作降本增效的關鍵一步。
Best Buy将DROP SHIP業務的EDI對接交由EDI服務提供商托管,供應商直接與EDI服務提供商進行EDI對接的注冊、測試。
常見報錯和解決辦法
1、Reason: The Expected Date must be between Thu Sep 08 02:59:42 EDT 2022 and the maximum date supported by the system.
在做訂單延期發貨時,所補充的延期交貨時間,需要在原定發貨日後和Best Buy系統支援最久延期時間之前,如果在測試中所選時間超出該範圍,将會收到該報錯。
2、Reason: The Cancel Code provided “W01″ is invalid.
在測試訂單取消的場景中,供應商需要針對特定的850訂單,回複訂單取消的856。在856中除了要在如下所示的SN1段中說明要取消的具體數量:
1 | SN1**0*EA**1*EA**ID~ |
- SN102的位置為0,該位置在進行訂單取消、延遲發貨時均填寫0
- SN103的位置為EA,為SN102數量的機關,表示Each
- SN105的位置為1,與後面SN108的ID需要合并來解讀,ID表示取消,則該數量表示取消訂購的1個該産品
- SN107的位置為ID,ID表示Item Deleted取消産品,與SN105相配合。除ID外,該位置還可用AC和IB兩種回複狀态,AC表示 Item Accepted and Shipped接受産品訂購并已發貨,IB表示Item Backordered 産品推遲發貨,目前沒有庫存正在采購中。
還要增加REF段說明取消訂單的具體原因,而且Best Buy規定了可選的取消原因,供應商需要在其中來選取填寫,不可使用其他的自定義取消原因,該報錯即表示所用的取消原因“W01”為無效的。如下所示的REF段為有效的取消原因。
1 | REF*TD*out_of_stock*Out of Stock~ |
- out_of_stock 取消代碼
- Out of Stock 取消原因
Best Buy給出的可選取消原因及代碼如下:
取消原因Description | 取消原因代碼code |
Backorder Cancellation | backorder_cancel |
Bad Address | bad_address |
Bad SKU | bad_sku |
Some order items cant be fulfilled – canceled | collateral_impact |
Cancelled at Merchant’s Request | merchant_request |
Cannot fulfill the order in time | fulfill_time_expired |
Cannot Ship as Ordered | cannot_meet_all_reqs |
Cannot ship to Country | cannot_ship_to_country |
Cannot ship to PO Box | cannot_ship_to_POBOX |
Cannot ship USPS | cannot_ship_USPS |
Carrier does not service delivery location | carrier_does_not_service_area |
Customer Changed Mind | customer_request |
Customer Refused Delivery | customer_refused |
Deleted Order | deleted_order |
Duplicate Order | duplicate_order |
Invalid Item Cost | invalid_item_cost |
Invalid method of shipment | invalid_ship_method |
Invalid UOM | invalid_uom |
Item Recall | item_recall |
Merchant detected fraud | merchant_detected_fraud |
Minimum Order Not Met | min_order_not_met |
Missing Artwork | missing_artwork |
Order Entry Error | order_entry_error |
Order Info Missing | info_missing |
Other | other |
Out of Stock | out_of_stock |
PreOrder Cancellation | pre_order_cancel |
Product Has Been Discontinued | discontinued |
Supplier cannot ship | cannot_ship |
Supplier detected fraud | supplier_detected_fraud |
To close order and allow reissue | close_and_reissue |
Unable to contact recipient | unable_to_contact_recipient |
3、Reason: The Tracking Number provided for UPS Ground is invalid.
在EDI業務測試中,也嚴格校驗了快遞單号的有效性,更是精确到了具體的快遞類型,UPS Ground中需要使用一個其類型對應的快遞單号,否則就會收到該報錯。UPS Ground的快遞單号由18位的字母和數字組成,以1ZX835W開頭。
4、Reason: The Tracking Number provided for UPS Next Day Air is invalid.
跟上面的UPS Ground is invalid報錯類似,在測試要求使用UPS Next Day Air快遞的訂單中,發貨通知856中必須使用UPS Next Day Air類型的快遞單号。部分供應商或賣家在實際業務中并沒有此種類型的快遞,不用擔心,可在測試中使用一個查找到的UPS Next Day Air快遞單号即可,測試中隻驗證其格式的有效性。UPS Next Day Air快遞單号也是由18位的字母和數字組成,以1ZV69W開頭。
5、Reason: The Ship Date provided must be on or before today and on or after the order date.
發貨日期必須要在訂單日期之後和今天之前,出現此類報錯是因為國内的賣家或供應商與Best Buy存在時差,在填寫發貨時間時需注意計算好時差,做好日期對應。
6、Failure reason(s): Warehouse data could not be found. File could not be processed.
收到該報錯後有兩種情況:(1)在Warehouse ID中填寫了與Best Buy系統中所維護資訊不一定的ID;(2)Best Buy系統設定導緻。是以在收到該報錯後,先登入到Best Buy系統中檢視Home/Manage Warehouse中的WAREHOUSE ID實際資訊,如果比對,則可郵件聯系Best Buy來進一步确認以解決。
7、The action attempted cannot be applied because a preceding action is required before the v_invoice action can be applied.
在業務測試中,如果所發送的856還未通過Best Buy的測試校驗,856在pending狀态,此時所發送的810發票将會收到該報錯,提示還未到810發送的時間。在發送856後1個小時如未收到郵件報錯,即可嘗試發送810,如果依舊收到該報錯,則可同樣郵件聯系Best Buy來檢查具體原因。
以上為我們在做與Best Buy Drop Ship(Commerce hub) 的EDI業務測試時遇到的常見報錯,實際的業務測試中,使用不同的資料遇到報錯更加多樣、複雜,大家在測試中注意按照測試場景安排來逐個測試,記錄号不同場景對應的訂單号、以及自己所發送856、810的ISA13中的編号,以快速定位問題所在。
如果在測試中遇到了更多的問題,或者對測試有什麼疑慮,歡迎聯系交流。