This guide applies to on-demand fulfillment, seller delivery and cross border operation model.
When customer buy your product, TIKI have to make sure this product is still available in your warehouse. That’s why confirm order is necessary. Follow these steps to confirm an order:
- Determine order operation models
- Determine seller warehouse where TIKI drivers can go picking the products
- Confirm your order with Tiki using available items and one of the seller warehouses
Determine order operation models
Below order (simplified payload) has operation model on-demand fulfillment:
{
"code": "613795703",
"fulfillment_type": "tiki_delivery",
"status": "queueing",
"created_at": "2021-06-02 10:39:45",
"updated_at": "2021-06-02 10:39:46",
"invoice": { ... },
"tiki_warehouse": {
"name": "Sài Gòn",
"code": "sgn"
},
"items": [
{
"id": 191564100,
"product": {
"sku": "SKU3754244478",
"name": "Vịt xiêm nguyên con Organicfood - 1,5kg - 1.7-2kg",
"inventory_type": "backorder",
},
"invoice": { ... },
"seller": {
"id": 46262,
"name": "Organicfood"
},
"confirmation": {
"status": "waiting",
"available_confirm_sla": "2021-06-02 14:40:00"
}
}
],
"customer": {
"id": 14492840,
"full_name": "Nguyễn Yin"
}
}
Determine seller warehouses
Use above tiki_warehouse/code
to get seller warehouses where our drivers will go picking seller products:
curl --location --request GET 'https://api.tiki.vn/integration/v2/seller-inventories?tiki_warehouse_codes=sgn' \
--header 'Authorization: Bearer GGMcFD3REicCR4eVmjR7XFHCyagIEuC2V9OMWm46CoI.pig...'
The response looks like:
{
"seller_inventories": [
{
"id": 188954,
"name": "Big C NTT",
"address": {
"street": "Lô A, Khu dân cư ...",
"ward": "Phường Tân Phú",
"district": "Quận 7",
"region": "Hồ Chí Minh",
"country": "Viet Nam"
},
"type": "requisition"
}
],
"mappings": [
{
"tiki_warehouse_code": "sgn",
"seller_inventory_ids": [
188954
]
}
]
}
Now select from that list of your inventories (seller_inventory_ids) to confirm.
Confirm availability
Item 191564100 with “SKU3754244478” (Vịt xiêm nguyên con Organicfood) is available and you’re ready to ship it. Then confirm you have this item:
curl --location --request POST 'https://api.tiki.vn/integration/v2/orders/4975934716/confirm-available' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ...' \
--data-raw '{
"available_item_ids": [
191564100
],
"seller_inventory_id": 188954
}'
DON’T
Don’t put product SKU or product ID into the
available_item_ids
list.Don’t put seller ID into the
seller_inventory_id
The response looks like:
{
"code": 200
}
For more details, see confirm enough stock.
FAQ
What is seller inventory/warehouse id?
To sell products on TIKI, a seller need to register their warehouses with us, telling us exact location of those warehouses. When a customer place an order, we need to know where can we go picking your product to deliver it to the customer. Seller will do this by specifying one of their registered warehouses when confirming the order. That information is the seller inventory/warehouse id.
Why do I need to provide seller inventory id for seller delivery or cross border orders?
This is for backward compatibility without internal system. We will soon work on this.
How to cancel an order?
Whatever the reason, to cancel an order you will confirm it with empty available item list. In this case seller will be charged, and their performance index is negatively affected.
My order has 3 items A, B, C. What should I do if I don’t have enough stock for B and C?
You HAVE TO EXCLUDE item B and C from the available_item_ids list.
My order has 1 item A with quantity = 5, can I confirm A with quantity = 1?
No, you CANNOT. We don’t provide the API to do this. If you force to confirm the order, the driver will reject the seller package because the package does not have enough stock as customer placed.
I keep receiving HTTP CODE 400 when confirming an order. What should I do?
There are many reasons for this:
Reason | To do |
---|---|
The order has not been accepted by Tiki yet | Only confirm the order when the following 2 conditions hold true: > Order /status = queueing > Order /item/*/confirmation/status = waiting |
The order has already been confirmed | Stop confirming |