Giới thiệu

Giới thiệu Nhanh.vn

Giới thiệu Nhanh.vn API 2.0

  • Nhanh API cung cấp các giải pháp để đồng bộ dữ liệu sản phẩm, đơn hàng, khách hàng, tồn kho... giữa Nhanh.vn và các hệ thống website khác. Các giải pháp này phù hợp cho cả các website bình thường (website của 1 cá nhân, công ty) và cả các sàn thương mại điện tử có nhiều gian hàng.
  • Phiên bản 2.0 sử dụng access token và cơ chế cấp quyền linh hoạt, giúp người sử dụng có thể dễ dàng lựa chọn các loại dữ liệu mà một ứng dụng được phép truy cập, thay vì được truy cập toàn bộ dữ liệu như phiên bản 1.0

Khởi tạo ứng dụng

  • Để bắt đầu sử dụng Nhanh API, bạn cần khởi tạo ứng dụng (app).
  • Ứng dụng của bạn có thể dùng được cho nhiều doanh nghiệp ở trên Nhanh.vn, khi người dùng (VD chủ doanh nghiệp) cấp quyền cho ứng dụng của bạn, Nhanh API sẽ tạo ra 1 access token gắn với doanh nghiệp và appId của bạn, kèm theo các permissions (quyền được thao tác với dữ liệu nào) do người dùng chọn ở bước đăng nhập cấp quyền cho app.
  • Đăng kí tài khoản developer và khởi tạo ứng dụng tại đây
Tạo ứng dụng

Lấy access token

  • Tất cả các request gửi sang Nhanh API sẽ dùng POST request và cần có access token để kiểm tra đăng nhập (authentication) và có được quyền thao tác với dữ liệu này không (authorization).
  • Để lấy được access token, ứng dụng của bạn cần chuyển tới trang đăng nhập của Nhanh.vn https://nhanh.vn/oauth?appId={YOUR_APPID}&returnLink={YOUR_RETURN_LINK}
  • Người dùng sẽ đăng nhập và chọn các quyền được cấp cho ứng dụng.
  • Nhanh API sẽ redirect lại trang của bạn {YOUR_RETURN_LINK} kèm theo GET param accessCode.
    • VD bên trên nếu YOUR_RETURN_LINK = https://example.org/nhanh/auth thì Nhanh API sẽ redirect ngược lại về link https://example.org/nhanh/auth?accessCode=
  • App của bạn dùng accessCode này post sang https://nhanh.vn/oauth/access_token?appId={YOUR_APPID}&accessCode={ACCESS_CODE} để lấy được accessToken và các permissions được cấp cho accessToken này.
Sơ đồ lấy access token

Access code

  • Thực hiện redirecting.
  • https://nhanh.vn/oauth?appId={YOUR_APPID}&returnLink={YOUR_RETURN_LINK}

Request

Param
Data Type
Required
Description
appId
int
Yes
ID app
returnLink
string
Yes
Sau khi người dùng đăng nhập, cấp quyền, Nhanh.vn sẽ redirect về URL này, kèm GET param accessCode

Permissions

  • Khi app của bạn redirect sang hệ thống của Nhanh.vn, người dùng sẽ tiến hành đăng nhập và chọn các quyền muốn cấp cho ứng dụng của bạn.
  • Khi người dùng chọn "Đồng ý", Nhanh.vn sẽ redirect ngược lại về YOUR_RETURN_LINK kèm theo mã accessCode.
Chọn quyền

Access token

  • Bạn dùng accessCode gửi sang Nhanh Open API để lấy accessToken.

Request

Param
Data Type
Required
Description
appId
int
Yes
ID app
accessCode
string
Yes
accessCode sẽ hết hạn sau 15 phút, và sẽ bị xóa khi lấy accessToken thành công
secretKey
string
Yes
Secret key
Dùng accessCode lấy accessToken

Response

  • Decode data string (JSON) to get the data object:
Param
Data Type
Description
code
int
1 = success or 0 = failed
messages
array
is an array of error messages if code = 0
accessToken
string
Access token
permissions
string
Các quyền được phép thao tác: Sản phẩm, đơn hàng,...
expiredDateTime
string
Hạn sử dụng token (Y-m-d H:i:s), VD: 2022-09-25 15:30:00, token sẽ có hạn 1 năm

Postman Sample

  • Lấy danh sách sản phẩm có phân trang
Postman: Lấy danh sách sản phẩm có phân trang
  • Lấy danh sách địa chỉ vận chuyển
Postman: Lấy danh sách địa chỉ vận chuyển

Code Sample

  • Simple request use PHP: send product information
1
<?php
2
3
$appId => "_YOUR_APP_ID";
4
$accessToken => "_YOUR_ACCESS_TOKEN";
5
6
$dataArray = array(
7
8
array(
9
'id' => '1741235',
10
'parentId' => null,
11
'code' => 'SSGS2',
12
'barcode' => null,
13
'name' => 'Samsung galaxy S2',
14
'image' => 'http://example.com/images/samsung-galaxy-s-2.jpg',
15
'images' => array(),
16
'shippingWeight' => 370, // gram
17
'importPrice' => 12000000,
18
'price' => 13500000,
19
'vat' => 10, // 10%
20
'status' => 'Active',
21
)
22
// product 2
23
// ...
24
);
25
26
$dataString = json_encode($dataArray);
27
28
$postArray = array(
29
"version" => "2.0",
30
"appId" => $appId,
31
"accessToken" => $accessToken,
32
"data" => $dataString
33
);
34
35
$curl = curl_init("https://open.nhanh.vn/api/product/add");
36
curl_setopt($curl, CURLOPT_POST, 1);
37
curl_setopt($curl, CURLOPT_POSTFIELDS, $postArray);
38
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
39
40
$curlResult = curl_exec($curl);
41
42
if(! curl_error($curl)) {
43
// success
44
$response = json_decode($curlResult);
45
} else {
46
// failed, cannot connect nhanh.vn
47
$response = new stdClass();
48
$response->code = 0;
49
$response->messages = array(curl_error($curl));
50
}
51
curl_close($curl);
52
53
if ($response->code == 1) {
54
// send product successfully
55
} else {
56
// failed, show error messages
57
if(isset($response->messages) && is_array($response->messages)) {
58
foreach($response->messages as $message) {
59
echo $message;
60
}
61
}
62
}
Copied!

Nhanh API SDK

  • Đang cập nhật
Last modified 2d ago