Chuyển tới nội dung chính

Nâng cấp lên API phiên bản 202309

Hướng dẫn này dành cho các nhà phát triển hiện tại để tìm hiểu về những thay đổi trong và nâng cấp lên phiên bản 202309 (v202309). Trước khi đọc hướng dẫn, chúng tôi giả định rằng bạn đã tìm hiểu và phát triển app với TikTok Shop Open APIs.

Lợi ích của v202309

Bản phát hành TikTok Shop Open API 202309 (v202309) bao gồm toàn bộ chức năng đã có trước đó từ các phiên bản API trước tháng 9 năm 2023, cùng với những cải tiến sau:

  • API mới - đáp ứng nhu cầu kinh doanh của nhà phát triển và người bán
  • Thông số kỹ thuật đã được cập nhật để tuân thủ chặt chẽ hơn các nguyên tắc thiết kế RESTful
  • Tài liệu mới - Tất cả API sẽ có tài liệu rõ ràng và được duy trì liên tục

Tài liệu mới

Chúng tôi đã phát hành tài liệu mới cho API v202309:

  • API reference cung cấp thông tin đầy đủ, cập nhật về tất cả tài nguyên và endpoint của v202309.
  • Developer GuidePartner Guide đã được thiết kế lại và chỉnh sửa để dễ sử dụng, toàn diện và dễ hiểu hơn. Chúng bao gồm các hướng dẫn sử dụng API thiết yếu, giải pháp tích hợp và quy trình tạo/xuất bản app.

Ngừng hỗ trợ các phiên bản API cũ

Các phiên bản API cũ (trước tháng 9 năm 2023) sẽ không còn được hỗ trợ hoặc duy trì kể từ ngày 30 tháng 6 năm 2024 và sẽ ngừng hoạt động vào ngày 31 tháng 12 năm 2024.

App mới nên sử dụng độc quyền v202309 và không dùng các phiên bản cũ.

Sau ngày 31 tháng 12 năm 2024, tất cả yêu cầu đến các phiên bản API cũ sẽ thất bại.

Tóm tắt các thay đổi

Tính năng mới và cải tiến

Products

API nameChanges
Create Product* Các thẻ HTML mới khả dụng trong mô tả sản phẩm: <strong>, <b>, <em>, <i>, <br>, <u>
  • Các thẻ mới này khả dụng trong mô tả sản phẩm ở tất cả các phiên bản của endpoint Create Product. | | Partial Edit Product | * Endpoint API mới để chỉnh sửa một phần tài nguyên sản phẩm thay vì yêu cầu toàn bộ đối tượng sản phẩm. | | Get Brand | * Thuộc tính mới brand_status được thêm vào component brand_list, dùng để cho biết người bán có thể sử dụng thương hiệu này để đăng sản phẩm trong danh mục đã chọn hay không. | | Get Categories, Get Attributes, Get Global Categories | * locale mới được thêm vào tham số yêu cầu. Thông tin danh mục hoặc thuộc tính sản phẩm sẽ được trả về bằng ngôn ngữ tương ứng dựa trên locale được chỉ định. | | Get Product List | * Tham số yêu cầu seller_skus hỗ trợ nhập nhiều seller SKU, làm điều kiện lọc dùng để tìm kiếm sản phẩm. Tham số này cho phép bạn tìm kiếm tất cả sản phẩm chứa các Seller SKU này. | | Get Product Detail | * Thuộc tính mới suggestions được thêm vào component qc_reasons. Khi trạng thái sản phẩm là failed, thuộc tính suggestions sẽ chứa lý do cụ thể khiến việc kiểm duyệt thất bại. | | Product Audit Update | * Nhiều loại tin nhắn hơn được gửi từ webhook này. Ví dụ: xóa sản phẩm và vô hiệu hóa sản phẩm.
  • Tên của webhook được đổi thành "Product Status Update" |

Orders

API nameChanges
Get Order List* Các thuộc tính chi tiết đơn hàng được trả về từ API.
* Dữ liệu của đơn hàng mẫu được trả về từ API. Thuộc tính mới is_sample_order được thêm vào phản hồi, cho biết đơn hàng có phải là đơn hàng mẫu hay không.
Get Order Detail* Thuộc tính district_info_list được lồng trong component recipient_address.
* Dữ liệu của đơn hàng mẫu được trả về từ API. Thuộc tính mới is_sample_order được thêm vào phản hồi, cho biết đơn hàng có phải là đơn hàng mẫu hay không. Đơn hàng mẫu có thể được truy xuất và xác định từ tất cả các phiên bản của API Get Order Detail.
* Đối với người bán nội địa tại thị trường US và UK, thuộc tính package_idpackage_status sẽ không được trả về trước khi kiện hàng được giao đi

Fulfillment

API nameChanges
Mark Package as Shipped* Endpoint mới dành cho người bán thực hiện đơn hàng thông qua đơn vị vận chuyển do họ tự chọn/ưa thích. API này cho phép người bán tải thông tin kiện hàng hợp lệ, đơn hàng/mục dòng đơn hàng, lên TikTok Shop.
  • Endpoint mới này hỗ trợ chia tách giao hàng ở cấp độ mục hàng | | Get Eligible Shipping Service | * Đối với tùy chọn vận chuyển "shipped via platform", sử dụng order_idorder_line_item_id để truy vấn danh sách dịch vụ vận chuyển khả dụng. | | Create Packages | * Đối với tùy chọn vận chuyển "shipped via platform", sử dụng order_idorder_line_item_id để mua nhãn và giao đơn hàng.
  • Mới hỗ trợ chia tách giao hàng ở cấp độ mục hàng với endpoint này. |

Return, refund, cancellation

Vì các giải pháp và chính sách hậu mãi liên quan đến trả hàng, hoàn tiền và hủy đơn khác nhau giữa các thị trường, nên tính khả dụng của một số tính năng API cũng khác nhau theo thị trường. Nhà phát triển nên hiểu rõ các giải pháp và chính sách cụ thể tại thị trường mục tiêu của mình trước khi sử dụng các API tương ứng.

Tìm hiểu thêm về cách sử dụng các API trên tại Cancel/Return/Refund API Overview

API nameChanges
Search CancellationEndpoint API mới để truy xuất một hoặc nhiều lệnh hủy đơn hàng.
Cancel OrderEndpoint API mới để hủy một đơn hàng thay mặt cho người bán.
Hiện tại, endpoint mới này hỗ trợ hủy ở cấp độ mục hàng cho người bán nội địa và xuyên biên giới tại thị trường US.
Approve CancellationEndpoint API mới để chấp thuận yêu cầu hủy đơn hàng của người mua.
Reject CancellationEndpoint API mới để từ chối yêu cầu hủy đơn hàng của người mua.
Search ReturnsEndpoint API mới để truy xuất một hoặc nhiều lượt trả hàng.
Create ReturnEndpoint API mới để khởi tạo yêu cầu trả hàng thay mặt cho người mua.
Approve ReturnEndpoint API mới để chấp thuận yêu cầu trả hàng của người mua.
Reject ReturnEndpoint API mới để từ chối yêu cầu trả hàng hoặc hoàn tiền của người mua.
Get Return RecordsEndpoint API mới để truy vấn danh sách các bước xử lý của bản ghi trả hàng hoặc hủy đơn hàng.
Calculate RefundEndpoint API mới để kiểm tra số tiền có thể hoàn của đơn hàng.
Get Aftersale EligibilityEndpoint API mới để kiểm tra giải pháp hậu mãi đủ điều kiện cho một đơn hàng. Chẳng hạn như liệu người bán có thể khởi tạo hoàn tiền, trả hàng hoặc hủy một đơn hàng cụ thể hay không.
Get Reject ReasonsEndpoint API mới để lấy lý do từ chối đủ điều kiện cho việc hủy hoặc trả hàng. Người bán bắt buộc phải đưa ra lý do khi từ chối yêu cầu hủy, hoàn tiền và trả hàng.
Cancellation Status Change WebhookLoại webhook mới để lấy trạng thái hủy đơn hàng.
Return Status Change WebhookLoại webhook mới để lấy trạng thái trả hàng/hoàn tiền của đơn hàng.

Finance

API nameChanges
Get Order Statement TransactionsEndpoint API mới để truy xuất danh sách giao dịch liên kết với một đơn hàng được chỉ định bằng order ID. Nó cũng trả về chi tiết giao dịch ở cấp độ SKU.
Get StatementsEndpoint API mới để lấy danh sách bản ghi sao kê trong khoảng thời gian được chỉ định, được quyết toán theo ngày. Bạn có thể lọc các bản sao kê dựa trên trạng thái thanh toán.
Get Statement TransactionsEndpoint API mới để lấy danh sách giao dịch dựa trên statement_id. Chúng tôi sẽ trả về danh sách đơn hàng. Nếu bạn cần chi tiết giao dịch ở cấp độ SKU, hãy truyền order_id vào Get Order Statement Transactions.
Get PaymentsEndpoint API mới để lấy danh sách thanh toán dựa trên khoảng thời gian, bao gồm trạng thái thanh toán hiện tại. Sử dụng danh sách này để đối soát các khoản thanh toán với tài khoản ngân hàng của Người bán.
Get WithdrawalsEndpoint API mới để lấy danh sách bản ghi rút tiền (khi Người bán rút tiền từ TikTok Shop) dựa trên khoảng thời gian được chỉ định.

Thực hiện yêu cầu

Để thực hiện yêu cầu đến các endpoint API 202309, hãy sử dụng URI với cấu trúc mới. Chỉ định tên phiên bản (ví dụ 202309) trong đường dẫn thay vì làm tham số truy vấn. Phiên bản mới cũng giới thiệu định danh tài nguyên làm tham số đường dẫn.

Ví dụ, https://open-api.tiktokglobalshop.com/fulfillment/202309/orders/576619223164029995/packages

URI cho mỗi endpoint phiên bản 202309 được chỉ định trong API reference. Hãy kiểm tra API reference để biết chính xác URI của các endpoint.

Kiểu dữ liệu liệt kê (Enumerate)

Chúng tôi đã cải thiện khái niệm chung về trạng thái để mang tính mô tả hơn. Trước đây, trạng thái đơn hàng được ánh xạ sang các mã, đòi hỏi nhà phát triển phải diễn giải. Chúng tôi đã loại bỏ các mã dựa trên int này, và phát triển các trạng thái ENUM dựa trên string, chẳng hạn như "UNPAID" và "AWAITING_SHIPMENT" để đơn giản hóa quy trình phát triển.

Ví dụ:

  • v202305 của API Get Order Detail, giá trị thuộc tính order_status có kiểu int: 100 nghĩa là UNPAID, 111 nghĩa là AWAITING_SHIPMENT
  • v202309 của API Get Order Detail, giá trị thuộc tính order_status có kiểu string. UNPAIDAWAITING_SHIPMENT được trả về từ API.

Phân trang

Để chuẩn hóa biểu diễn và đảm bảo hiệu năng, chúng tôi đã giới thiệu phân trang dựa trên token vào thiết kế API. API v202309 chỉ hỗ trợ phân trang bằng các tham số page_sizepage_token. Tham số offset không còn được hỗ trợ.

Ủy quyền

Chúng tôi đã ngừng sử dụng access_token trong query và hiện yêu cầu truyền nó trong HTTP header x-tts-access-token để tăng cường bảo mật.

Chữ ký (Signature)

v202309 của API mở rộng bảo vệ chữ ký vượt ra ngoài chỉ tham số đường dẫn và tham số truy vấn. Chữ ký giờ đây cũng sẽ bao gồm thân yêu cầu (request body) cho các API POST. Để tạo chữ ký cho các API v202309, nhà phát triển cần sử dụng phương pháp mới.

Content type

Các API v202309 hiện chỉ hỗ trợ application/json cho các yêu cầu không phải nhị phân. Yêu cầu nhị phân nên sử dụng multipart/form-data để đảm bảo hiệu quả và tuân thủ tiêu chuẩn.

Tài liệu được cải thiện

Các trang API reference giờ đây bao gồm các phần Errorcode được điền đầy đủ ở cuối trang với các mã lỗi mới nhất và mô tả lỗi tương ứng cho từng endpoint.

Ánh xạ API từ phiên bản cũ sang v202309

Với cấu trúc URI yêu cầu mới và các thay đổi về cách đặt tên API trong v202309, nhiều endpoint API cũ đã được thay thế hoặc ngừng hoạt động trong v202309.

Sử dụng các bảng dưới đây để hiểu cách các API cũ ánh xạ sang các endpoint v202309 mới:

Seller (API cũ gọi là Seller hoặc Shop)

Legacy APIsAPI v202309
Get Authorized ShopGet Authorized Shops
Get Active Shop ListGet Active Shops
Check Global Product ModeGet Seller Permissions

Event (API cũ gọi là Shop)

Legacy APIsAPI v202309
Create WebhookUpdate Shop Webhook
Get WebhooksGet Shop Webhooks
Cancel WebhookDelete Shop Webhook

Product

Legacy APIsAPI v202309
Get BrandsGet Brands
Create BrandCreate CustomBrands
Get AttributesGet Attributes
Get Category RuleGet Category Rules
Get CategoriesGet Categories
Upload FileUpload Product File
Category RecommendedRecommend Category
Upload ImageUpload Product Image
Create ProductCreate Product
Edit ProductEdit Product
Update PriceUpdate Price
Update StockUpdate Inventory
Deactivate ProductDeactivate Products
Activate ProductActivate Product
Delete ProductDelete Products
Recover Deleted ProductRecover Products
Get Product ListSearch Products
Create Draft ProductKhông nâng cấp ở phiên bản này. Có thể tiếp tục sử dụng phiên bản cũ. Nếu có cập nhật, chúng sẽ được cung cấp ở phiên bản tương lai.
Get Product StockInventory Search
Pre-check for Operating ProductCheck Listing Prerequisites
Get Product DetailGet Product
Get Global Product DetailGet Global Product
Không tồn tại trước đâyPartial Edit Product

Order

Legacy APIsAPI v202309
Get Order ListGet Order List
Get Order DetailGet Order Detail

Fulfillment

Legacy APIsAPI v202309
Search PackageSearch Package
Get Package DetailGet Package Detail
Get Package Shipping DocumentGet Package Shipping Document
Get Package Pickup ConfigGet Package Handover Time Slots
Get Package Shipping InfoGet Tracking
Update Package Shipping InfoUpdate Package Shipping Info
Update Package Delivery StatusUpdate Package Delivery Status
Verify Order SplitGet Order Split Attributes
Confirm Order SplitSplit Orders
Search Pre Combine PkgSearch Combinable Packages
Confirm Precombine PackageCombine Package
Remove Package OrderUncombine Packages
Ship PackageSử dụng Mark Package As Shipped hoặc Ship Package tùy thuộc vào vị trí cửa hàng của bạn
Batch Ship PackagesBatch Ship Packages
Fulfillment Upload ImageFulfillment Upload Delivery Image
Fulfillment Upload FileFulfillment Upload Delivery File
Get Shipping ServiceGet Eligible Shipping Service
Create LabelCreate Packages

Logistics

Legacy APIsAPI v202309
Get Subscribed Delivery OptionsGet Warehouse Delivery Options
Get Warehouse ListGet Warehouse List
Get Shipping ProviderGet Shipping Providers
Get Shipping DocumentKhông nâng cấp ở phiên bản này.
Khuyến nghị sử dụng Get Package Shipping Document
Get Shipping InfoGet Tracking
Update Shipping InfoUpdate Shipping Info

Returns, Refunds, Cancellations (API cũ gọi là Reverse)

Legacy APIs (Reverse)Returns, Refunds, and Cancellations API v202309
Cancel OrderCancel Order
Get Reverse Order ListSearch Cancellation
Search Returns
Confirm Reverse RequestApprove Return
Approve Cancellation
Reject Reverse RequestReject Return
Reject Cancellation
Get Reject Reason ListGet Reject Reasons
Không tồn tại trước đâyGet Aftersale Eligibility
Không tồn tại trước đâyCreate Return
Không tồn tại trước đâyGet Return Records
Không tồn tại trước đâyCalculate Refund

Finance

Legacy APIsAPI v202309
Get SettlementsGet Statements
Get Statement Transactions
Get TransactionsGet Withdrawals
Get Order SettlementsGet Order Statement Transactions
Không tồn tại trước đâyGet Payments

Global Product

Legacy APIsAPI v202309
Get Global CategoriesGet Global Categories
Get Global Category RuleGet Global Category Rules
Get Global AttributesGet Global Attributes
Edit Global ProductEdit Global Product
Create Global ProductCreate Global Product
Publish Global ProductPublish Global Product
Delete Global ProductDelete Global Products
Update Global Product PriceKhông nâng cấp ở phiên bản này.
Khuyến nghị sử dụng Update Price để chỉnh sửa giá sản phẩm đã đăng ở các cửa hàng nội địa, và sử dụng Edit Product để chỉnh sửa giá sản phẩm Global.
Get Global Product ListSearch Global Products

Promotion

Legacy APIsAPI v202309
Add PromotionCreate Activity
Update Basic InformationUpdate Activity
Add/Update Discount ItemUpdate Activity Product
Remove Promotion ItemRemove Activity Product
Deactivate PromotionDeactivate Activity
Get Promotion ListSearch Activities
Get Promotion DetailsGet Activity Detail

Supply chain

Legacy APIsAPI v202309
Package fulfillment data syncConfirm Package Shipment

Webhook

Legacy APIsAPI v202309
Type 1: Order Status UpdateOrder Status Update
Type 2: Reverse Status UpdateCancellation Status ChangeReturn Status Change
Type 3: Recipient Address UpdateRecipient Address Update
Type 4: Package UpdatePackage Update
Type 5: Product Audit UpdateProduct Status Update
Type 6: Seller DeauthorizationSeller Deauthorization
Type 7: Auth ExpireUpcoming Authorization Expiration