API Tính phí dịch vụ
Sử dụng API này để tính phí dịch vụ trước khi Tạo đơn qua GHN.
Lưu ý : API này cần truyền token và shopid ở header.
https://online-gateway.ghn.vn/shiip/public-api/v2/shipping-order/fee
https://dev-online-gateway.ghn.vn/shiip/public-api/v2/shipping-order/fee
curl --location 'https://dev-online-gateway.ghn.vn/shiip/public-api/v2/shipping-order/fee' \
--header 'Content-Type: application/json' \
--header 'Token: c518-c4bb-11ea-be3a-f636b1deefb9' \
--header 'ShopId: 885' \
--data '{
"service_type_id":5,
"from_district_id":1442,
"from_ward_code": "21211",
"to_district_id":1820,
"to_ward_code":"030712",
"length":30,
"width":40,
"height":20,
"weight":3000,
"insurance_value":0,
"coupon": null,
"items": [
{
"name": "TEST1",
"quantity": 1,
"length": 200,
"width": 200,
"height": 200,
"weight": 1000
}]
}'
Cấu trúc Request
Trường dữ liệu | Bắt buộc | Kiểu dữ liệu | Mô tả |
---|---|---|---|
token | X | String |
Dùng để xác định định danh của tài khoản và dùng cho các trường hợp gọi tới các API. |
shop_id | X | Int |
Mã định danh của cửa hàng. |
service_type_id | Int |
Mã loại dịch vụ: Gọi API lấy gói dịch vụ để lấy mã loại dịch vụ. Mã loại dịch vụ cố định. Trong đó: Hàng nhẹ sử dụng length, width, height và weight Hàng nặng sử dụng items[].length, items[].width, items[].height và items[].weight
|
|
insurance_value | Int |
Giá trị của đơn hàng (Trường hợp mất hàng, bể hàng sẽ đền theo giá trị của đơn hàng). Tối đa: Giá trị mặc định: |
|
coupon | String |
Mã giảm giá. |
|
cod_failed_amount | Int |
Giá trị giao thất bại thu tiền. |
|
from_district_id | Int |
Nếu không truyền sẽ lấy thông tin từ ShopId |
|
from_ward_code | String |
Nếu không truyền sẽ lấy thông tin từ ShopId |
|
to_ward_code | X | String | |
to_district_id | X | Int | |
weight | X | Int |
Khối lượng của đơn hàng (gram). Tối đa: 1.600.000 gram |
length | Int |
Chiều dài của đơn hàng (cm). Tối đa: 200 cm |
|
width | Int |
Chiều rộng của đơn hàng (cm). Tối đa: 200 cm |
|
height | Int |
Chiều cao của đơn hàng (cm). Tối đa: 200 cm |
|
cod_value | Int |
Tiền thu hộ cho người gửi. Maximum: Giá trị mặc định: |
|
items | X | Array |
Thông tin sản phẩm. Bắt buộc truyền Item khi sử dụng gói dịch vụ Hàng nặng |
items[].name | X | String |
Tên của sản phẩm. |
items[].code | String |
Mã của sản phẩm. |
|
items[].quantity | X | Int |
Số lượng của sản phẩm. |
items[].height | X | Int |
Chiều cao của sản phẩm |
items[].weight | X | Int |
Đối với trường hợp chọn gói dịch Hàng nặng |
items[].width | X | Int |
Chiều rộng của sản phẩm |
items[].length | X | Int |
Chiều dài của sản phẩm |
GHN có 2 dịch vụ hàng nhẹ và hàng nặng
- Hàng nhẹ có service_type_id = 2, kích thước/khối lượng tính cước length, width, height và weight
- Hàng nặng có service_type_id = 5, kích thước/khối lượng tính cước lấy trong items (items[].length, items[].width, items[].height và items[].weight)
- Mỗi item là 1 kiện hàng
- GHN tính toán kích thước/khối lượng của Items rồi cập nhật lại kích thước/khối lượng của đơn hàng theo công thức: Max(length), Max(width), Sum(height)
- Với mỗi item, kích thước dài nhất được tính là Dài, kích thước nhỏ nhất được tính là Cao
- Khối lượng quy đổi được tính theo công thức:
- (Length x Width x Height) / 5 ; So sánh khối lượng quy đổi và trọng lượng thực tế, giá trị nào lớn hơn sẽ là khối lượng tính cước.
{
"code": 200,
"message": "Success",
"data":
{
"total": 36300,
"service_fee": 36300,
"insurance_fee": 0,
"pick_station_fee": 0,
"coupon_value": 0,
"r2s_fee": 0,
"document_return": 0,
"double_check": 0,
"cod_fee": 0,
"pick_remote_areas_fee": 0,
"deliver_remote_areas_fee": 0,
"cod_failed_fee": 0
}
}
Cấu trúc Response
Trường dữ liệu | Mô tả |
---|---|
total |
Tổng tiền dịch vụ. |
service_fee |
Phí dịch vụ. |
insurance_fee |
Phí khai giá hàng hóa. |
pick_station_fee |
Phí gửi hàng tại bưu cục. |
coupon_value |
Giá trị khuyến mãi. |
r2s_fee |
Phí giao lại hàng. |
document_return |
Phí giao tài liệu |
double_check |
Phí đồng kiểm. |
cod_fee |
Phí thu tiền COD |
pick_remote_areas_fee |
Phí lấy hàng vùng xa. |
deliver_remote_areas_fee |
Phí giao hàng vùng xa. |
cod_failed_fee |
Phí thu tiền khi giao thất bại. |
{
"code": 400,
"message": "code=400, message=Syntax error: offset=30, error=invalid character '}' after array element",
"data": null
"code_message": "USER_ERR_COMMON"
}