Chuyển đến nội dung chính

getOauthV1Code

LƯU Ý
Vui lòng liên hệ Đội ngũ ZaloPay để được cấp quyền sử dụng tính năng này.

Mô tả

Hàm này dùng để lấy mã uỷ quyền(authorization code). Sau khi lấy được mã uỷ quyền, dùng mã này để đổi lấy access token, sau đó dùng access token để lấy thông của người dùng như ảnh đại diện, tên,... Chi tiết hơn có thể tham khảo tại Uỷ quyền người dùng

Sample Code

Sample Request:


window.zlpSdk.User.getOauthV1Code({
appId: 1878,
codeChallenge": "NmNlZTBiNDg3MDU3ZGIyNmIxYTQ5YWFlMmI1NmE4MWVlZWZjYTg2OWM2YWMzOTdmNmRmM2M3YjRiMjNlZWMzNg",
}).then((response) => console.log(response))
.catch((error) => console.error(error));

Sample Response:

{
"data": {
"code": "LUUHyD5CtqxwjtDCu8NiqFt169Ql7MBdEOVDdaqB097jk670Yj1JoGBLg5W4KbW7",
"redirectUri": "https://merchant.com/callback?code=LUUHyD5CtqxwjtDCu8NiqFt169Ql7MBdEOVDdaqB097jk670Yj1JoGBLg5W4KbW7&state="
},
"status": "success"
}

Parameters

Tên ParamKiểu dữ liệuBắt buộcMô tả
appIdnumberYesApp ID được tạo khi đăng ký merchant mới, đối tác Zalopay sẽ cung cấp thông tin này cho merchant.
codeChallengestringYesĐây là chuỗi ký tự ngẫu nhiên gồm các ký tự A-Z, a-z, 0-9, -._~
codeChallenge = Base64.UrlEncode(SHA-256.hash(codeVerifier))
Lưu ý
Merchant có thể lấy định danh người dùng(muid) mà không cần thông qua bước hỏi sự chấp thuận từ người bằng cách yêu cầu đối tác Zalopay cấu hình phạm vi cấp quyền người dùng(scope) thành rỗng. Ngược lại đối với tất cả các thông tin khác đều cần sự chấp thuận từ người dùng.

Return Value

Têm ParamKiểu dữ liệuMô tả
codestringAuthorization code
redirectUristringUrl trả về sẽ được thêm authorization code vào phía sau dưới dạng query param.
Ví dụ: https://merchant.com/callback?code=bmBwKZQ9uXivu3UjvCXllpBt5JPRNCF0U2P

Error Code

Mã lỗiMô tả
030501User Canceled
030502Invalid Argument
030503System Error
030504Unauthenticated
030505Get permissions error

Hướng dẫn tạo code challange

Để tạo code challange, đầu tiên cần tạo code verifier trước, sau đó dùng code verifier này để tạo tiếp code challange.

  1. Tạo code verifier: Dùng hàm zlpSdk.User.generateCodeVerifier để tạo codeVerifier
  1. Tạo code challange: Dùng hàm zlpSdk.User.generateCodeChallenge với codeVerifier từ bước trước đó để tạo codeChallenge