快工助手跨境电商知识与商机助手

[Important] Shopee will launch the Seller Advance Shipping in Thailand

Shopee 官方资料 · Shopee Open Platform 变更通知(Announcements) · 适合开发者

stable本次发布有变化全部展示

来自 Shopee 官方资料快照 ·

打开官方原文 ↗
  1. 当前资料结构化阅读页
  2. 固定快照已留存,可追溯
  3. 官方原文可核对
查看技术与溯源信息
平台 / profile
Shopee / profile.shopee.announcements
语言
en
发布版本
cn-20260909-2
标签
zhuge/sourceplatform/shopeeaudience/developercategory/announcementtopic/apitopic/api-logisticstopic/api-ordertopic/api-producttopic/changelogtopic/developertopic/openapi-updates

资料正文

§1 [Important] Shopee will launch the Seller Advance Shipping in Thailand

Dear Developers,

Shopee will launch the Seller Advance Shipping (Advance Fulfillment) program in Thailand.

This program supports sellers to ship out parcels in advance to Shopee designated, and the system will prioritize using those advance stock to fulfill directly when buyers place orders to achieve shorter delivery time.

Shopee Article: https://seller.shopee.co.th/edu/article/26486

Rollout Schedule:

  • Jan 12: Initial launch to some selected* sellers who are currently not using OpenAPI
  • Feb 1: Onwards to all selected* sellers

*This is an exclusive opportunity for selected sellers invited by their Shopee KAM or notified through our official email and app channels

The specific updates are:

On seller center, there are 2 new fulfillment types: 1) Advance bookings, which are generated by Shopee system automatically, and require sellers to prepare and ship out those parcels per normal orders to Shopee designated address; 2) Advance orders, which are matched automatically with the ready advance stock, such stock will be delivered to buyer directly, and do not require sellers to ship out again.

#

§2 1. New API Integration

1. New API Integration

Advance bookings have a new set of API, while parameters are similar to existing order APIs.

Use following APIs to retrieve booking list & details, support sellers to arrange shipment, track parcel status and booking match status.

New API/PushMapped from existing API/Push
v2.order.get_booking_listv2.order.get_order_list
v2.order.get_booking_detailv2.order.get_order_detail
v2.logistics.get_booking_shipping_parameterv2.logistics.get_shipping_parameter
v2.logistics.ship_bookingv2.logistics.ship_order
v2.logistics.get_booking_tracking_numberv2.logistics.get_tracking_number
v2.logistics.get_booking_shipping_document_parameterv2.logistics.get_shipping_document_parameter
v2.logistics.create_booking_shipping_documentv2.logistics.create_shipping_document
v2.logistics.get_booking_shipping_document_resultv2.logistics.get_shipping_document_result
v2.logistics.download_booking_shipping_documentv2.logistics.download_shipping_document
v2.logistics.get_booking_shipping_document_data_infov2.logistics.get_shipping_document_data_info
v2.logistics.get_booking_tracking_infov2.logistics.get_tracking_info
booking_status_pushorder_status_push
booking_trackingno_pushorder_trackingno_push
booking_shipping_document_status_pushshipping_document_status_push

Bookings have 2 important status fields, booking_status and match_status, and definition is listed below:

booking_statusmatch_statusSeller centre statusScenario
READY_TO_SHIPMATCH_PENDINGTo ship (To process)Seller has not arranged shipment for the booking parcel
PROCESSEDMATCH_PENDINGTo ship (Processed)Seller has arranged shipment, pending 3PL to pick up
SHIPPEDMATCH_PENDINGShipping3PL has picked up the parcel, and pending to be matched to a buyer order
CANCELLEDMATCH_PENDINGCancellationBooking is cancelled due to parcel is a) not shipped out successfully or b) lost by 3PL Note: Sellers are unable to cancel booking, and if sellers are unable to fulfill booking for various reasons, there will be no penalty points for the shop.
CANCELLEDMATCH_FAILEDCancellation & Failed DeliveryBooking is not matched to buyer orders and returning/returned back to seller
MATCHEDMATCH_SUCCESSFUL(Parcel is matched to an actual Order, don't display in FE as a booking)Booking is successfully matched to buyer order
#

§3 2. New Field Integration

2. New Field Integration

  1. v2.order.get_order_detail API has 2 new fields, advance_package and booking_sn, to indicate whether this order is an advance order

When buyer places order, system will immediately know if it is an advance order (advance_package = true/false). If it is true, “Arrange Shipment” button on the seller center will be greyed out to disable sellers from arranging shipment/printing AWB.

Once the system matches a particular booking to this order (usually 15 mins later), this order status will be updated to “shipped“ automatically and receives the corresponding booking_sn.

Note: Before shipment is auto arranged and receives a corresponding booking_sn, it is possible that an advance order is changed back to a normal order, and requires sellers to ship out directly (The deducted sellable_advance_stock will be released and the seller_stock will be deducted). In very rare cases, a normal order can be changed to an advance order, it usually happens within 1s after buyer places an order and is caused by system lagging, however in such situation, while advance_package = false, system will return error if ship_booking API is trigger to avoid double shipment issue; the order will be confirmed as Advance order only after the system returns the booking_sn. After that, the advance_package field and booking_sn will not be changed, the order status will be shipped.

  1. v2.order.get_order_list API has a new booking_sn field, to return the corresponding advance booking_sn of an advance order

  2. v2.product.get_item_base_info and v2.product.get_model_list APIs have 2 new fields, sellable_advance_stock and in_transit_advance_stock

- sellable_advance_stock refers to Advance Fulfillment stock that Seller has shipped out and is available to be used to fulfill an order

- in_transit_advance_stock refers to Advance Fulfillment stock that seller has arranged shipment or has shipped out, and is still in transit and unavailable to be used to fulfill an order

Note: Both fields are read-only, auto updated based on parcel status (e.g. shipped); seller should still use actual on-hand stock when updating seller stock, no manual logic adjustment is required

เรียน นักพัฒนา (TH Developers)

Shopee มีความยินดีที่จะประกาศเปิดตัวโปรแกรม Seller Advance Shipping ในประเทศไทย ซึ่งเป็นโปรแกรมที่สนับสนุนให้ผู้ขายสามารถส่งพัสดุออกไปล่วงหน้ายังจุดที่ Shopee กำหนด โดยระบบจะจัดลำดับความสำคัญในการใช้สต็อกล่วงหน้านี้เพื่อจัดส่งให้ผู้ซื้อโดยตรงทันทีที่มีคำสั่งซื้อ เพื่อเป้าหมายในการลดระยะเวลาการจัดส่งสินค้าให้สั้นลงและเพิ่มความพึงพอใจแก่ผู้ซื้อ

รายละเอียดเพิ่มเติม (Shopee Article): https://seller.shopee.co.th/edu/article/26486

กำหนดการเริ่มใช้งาน (Rollout Dates):

  • 12 มกราคม: เริ่มเปิดใช้งานช่วงแรกสำหรับผู้ขายบางกลุ่มที่ได้รับเลือก* ซึ่งปัจจุบันยังไม่ได้ใช้งาน OpenAPI
  • 1 กุมภาพันธ์ เป็นต้นไป: เปิดใช้งานสำหรับผู้ขายที่ได้รับเลือกทั้งหมด

*หมายเหตุ : เงื่อนไขการเข้าร่วม: โปรแกรมนี้เป็นสิทธิพิเศษ เฉพาะผู้ขายที่ได้รับคำเชิญจาก Shopee KAM หรือได้รับแจ้งเตือนผ่านช่องทางอีเมลและแอปพลิเคชันอย่างเป็นทางการเท่านั้น

รายละเอียดการอัปเดตมีดังนี้: บน Seller Center จะมีประเภทการจัดการคำสั่งซื้อ (Fulfillment types) ใหม่ 2 ประเภท:

1.Advance bookings: สร้างโดยระบบ Shopee อัตโนมัติ ผู้ขายต้องเตรียมพัสดุและจัดส่งไปยังที่อยู่ที่ Shopee กำหนด (ดำเนินการเหมือนออเดอร์ปกติ)

2.Advance orders: คำสั่งซื้อที่ระบบจับคู่กับสต็อกล่วงหน้าที่ส่งไปแล้วโดยอัตโนมัติ สินค้าจะถูกจัดส่งถึงผู้ซื้อโดยตรง โดยที่ผู้ขายไม่ต้องดำเนินการจัดส่งซ้ำ (รายละเอียดเพิ่มเติม)

หมายเหตุสำหรับการนำไปใช้:

  • Advance bookings: คือขาที่ผู้ขาย "ส่งของไปเติม" ที่คลัง/จุดพักของ Shopee
  • Advance orders: คือขาที่ "ลูกค้าสั่งซื้อ" แล้วระบบดึงของที่ส่งไปรอไว้แล้วมาส่งให้ลูกค้าทันที
#

§4 1. การเชื่อมต่อ API ใหม่ (New API Integration)

1. การเชื่อมต่อ API ใหม่ (New API Integration)

Advance bookings จะมีชุด API ใหม่ ซึ่งมี Parameter คล้ายคลึงกับ API ของคำสั่งซื้อที่มีอยู่เดิม โดยสามารถใช้ API ต่อไปนี้ในการดึงรายการ/รายละเอียด, จัดเตรียมการส่ง, ติดตามสถานะพัสดุ และสถานะการจับคู่ (Match status):

API / Push ใหม่ (Advance Booking)เชื่อมโยง (Map) จาก API เดิม
v2.order.get_booking_listv2.order.get_order_list
v2.order.get_booking_detailv2.order.get_order_detail
v2.logistics.get_booking_shipping_parameterv2.logistics.get_shipping_parameter
v2.logistics.ship_bookingv2.logistics.ship_order
v2.logistics.get_booking_tracking_numberv2.logistics.get_tracking_number
v2.logistics.get_booking_shipping_document_parameterv2.logistics.get_shipping_document_parameter
v2.logistics.create_booking_shipping_documentv2.logistics.create_shipping_document
v2.logistics.get_booking_shipping_document_resultv2.logistics.get_shipping_document_result
v2.logistics.download_booking_shipping_documentv2.logistics.download_shipping_document
v2.logistics.get_booking_shipping_document_data_infov2.logistics.get_shipping_document_data_info
v2.logistics.get_booking_tracking_infov2.logistics.get_tracking_info
booking_status_pushorder_status_push
booking_trackingno_pushorder_trackingno_push
booking_shipping_document_status_pushshipping_document_status_push

Booking จะมีฟิลด์สถานะที่สำคัญ 2 ฟิลด์ ได้แก่ booking_status และ match_status โดยมีคำจำกัดความดังต่อไปนี้:

booking_statusmatch_statusสถานะบน Seller Centreรายละเอียด
READY_TO_SHIPMATCH_PENDINGที่ต้องจัดส่ง (รอเตรียมพัสดุ)ผู้ขายยังไม่ได้เตรียมพัสดุ
PROCESSEDMATCH_PENDINGกำลังจัดส่งผู้ขายเตรียมพัสดุแล้ว รอขนส่งเข้ารับพัสดุ
SHIPPEDMATCH_PENDINGจัดส่งแล้วจัดส่งแล้วขนส่งเข้ารับพัสดุแล้ว และกำลังรอจับคู่กับคำสั่งซื้อ
CANCELLEDMATCH_PENDINGการยกเลิกการยกเลิกการจองถูกยกเลิกเนื่องจาก: a) ส่งออกไม่สำเร็จ หรือ b) พัสดุสูญหายโดย 3PL หมายเหตุ: ผู้ขายไม่สามารถกดยกเลิกการจอง (Booking) ได้เอง และหากผู้ขายไม่สามารถดำเนินการจัดส่งตามรายการจองได้เนื่องด้วยเหตุผลต่าง ๆ จะไม่มีการหักคะแนนความประพฤติ (Penalty points) ของร้านค้า
CANCELLEDMATCH_FAILEDการยกเลิก & การจัดส่งล้มเหลวการจองไม่ถูกจับคู่กับคำสั่งซื้อของผู้ซื้อ และพัสดุกำลังถูกส่งคืนหรือส่งคืนถึงผู้ขายแล้ว
MATCHEDMATCH_SUCCESSFUL(พัสดุถูกจับคู่กับออเดอร์ของลูกค้าแล้ว รายการนี้จึงเปลี่ยนจาก 'booking' ไปเป็น 'คำสั่งซื้อปกติ' และจะไม่โชว์ในหน้าการจองอีกระบบจับคู่รายการจอง (Booking) เข้ากับคำสั่งซื้อ (Order) สำเร็จ"
#

§5 2. การเชื่อมต่อฟิลด์ใหม่ (New Field Integration)

2. การเชื่อมต่อฟิลด์ใหม่ (New Field Integration)

  1. API v2.order.get_order_detail มีการเพิ่มฟิลด์ใหม่ 2 ฟิลด์ คือ advance_package และ booking_sn เพื่อระบุว่าคำสั่งซื้อนั้นเป็น "คำสั่งซื้อล่วงหน้า" หรือไม่
  • การตรวจสอบสถานะ: เมื่อมีการสั่งซื้อเข้ามา ระบบจะระบุทันทีว่าเป็นคำสั่งซื้อล่วงหน้าหรือไม่ผ่านฟิลด์ advance_package (true = เป็น / false = ไม่เป็น)
  • การควบคุมบนหน้าจอ: หากเป็นคำสั่งซื้อล่วงหน้า (advance_package = true) ปุ่ม "Arrange Shipment" (จัดเตรียมพัสดุ) บน Seller Center จะกลายเป็นสีเทา เพื่อป้องกันไม่ให้ผู้ขายกดจัดส่งเองหรือพิมพ์ใบปะหน้าพัสดุ (AWB) ซ้ำซ้อน
  • การอัปเดตอัตโนมัติ: เมื่อระบบจับคู่รายการจอง (Booking) เข้ากับคำสั่งซื้อนั้นสำเร็จ (โดยปกติจะใช้เวลาประมาณ 15 นาที) สถานะคำสั่งซื้อจะเปลี่ยนเป็น "Shipped" (ส่งแล้ว) โดยอัตโนมัติ และจะได้รับหมายเลข booking_sn เพื่อใช้อ้างอิง

หมายเหตุสำคัญ (Note):

  • กรณีเปลี่ยนจากคำสั่งซื้อล่วงหน้าเป็นปกติ: ก่อนที่ระบบจะจัดส่งอัตโนมัติและออกหมายเลข booking_sn มีโอกาสที่คำสั่งซื้อล่วงหน้าจะ "ถูกเปลี่ยนกลับ" เป็นคำสั่งซื้อปกติ ซึ่งกรณีนี้ ผู้ขายต้องเป็นคนจัดส่งเองโดยตรง (ระบบจะคืนสต็อก sellable_advance_stock และไปหักสต็อกปกติของร้านค้าแทน)

  • กรณีคำสั่งซื้อปกติเปลี่ยนเป็นล่วงหน้า (พบน้อยมาก): อาจเกิดขึ้นภายใน 1 วินาทีหลังสั่งซื้อเนื่องจากความล่าช้าของระบบ (System lagging) ในกรณีนี้แม้ค่า advance_package จะแสดงเป็น false แต่หากผู้ขายเรียกใช้ API ship_order ระบบจะส่งค่า Error กลับมาเพื่อป้องกันการจัดส่งซ้ำซ้อน

  • การยืนยันสถานะสุดท้าย: คำสั่งซื้อจะถือว่าเป็นคำสั่งซื้อล่วงหน้า (Advance Order) โดยสมบูรณ์ก็ต่อเมื่อระบบส่งค่า booking_sn กลับมาให้เท่านั้น หลังจากนั้นฟิลด์ advance_package และ booking_sn จะไม่มีการเปลี่ยนแปลงอีก และสถานะจะคงอยู่ที่ "Shipped"

  1. API v2.order.get_order_list เพิ่มฟิลด์ใหม่ booking_sn
  • เพื่อส่งคืนค่าหมายเลขการจอง (Booking Serial Number) ที่สอดคล้องกับคำสั่งซื้อล่วงหน้า (Advance Order) นั้นๆ
  1. API v2.product.get_item_base_info และ v2.product.get_model_list เพิ่มฟิลด์ใหม่ 2 ฟิลด์ เกี่ยวกับสต็อก:
  • sellable_advance_stock (สต็อกล่วงหน้าที่พร้อมขาย): หมายถึง สต็อกในโครงการ Advance Fulfillment ที่ผู้ขายส่งออกไปแล้ว และพร้อมที่จะถูกนำไปใช้จัดการคำสั่งซื้อของลูกค้าได้ทันที
  • in_transit_advance_stock (สต็อกล่วงหน้าที่อยู่ระหว่างขนส่ง): หมายถึง สต็อกที่ผู้ขายกดจัดการส่งออกไปแล้ว หรือกำลังอยู่ระหว่างการขนส่งไปยังจุดหมาย แต่ยังไม่พร้อมที่จะถูกนำไปใช้จัดการคำสั่งซื้อ

หมายเหตุ: * ทั้งสองฟิลด์นี้เป็นแบบ อ่านอย่างเดียว (Read-only) โดยระบบจะอัปเดตค่าให้อัตโนมัติตามสถานะพัสดุ (เช่น เมื่อมีการกดส่งของ)

ผู้ขายยังคงต้องใช้ สต็อกจริงที่อยู่ที่ร้าน (On-hand stock) ในการอัปเดตสต็อกของผู้ขาย (seller_stock) ตามปกติ โดยไม่จำเป็นต้องปรับเปลี่ยนตรรกะ (logic) การจัดการสต็อกด้วยตนเองแต่อย่างใด

#