Appearance
Cấu hình OAuth Haravan
Tổng quan
Haravan Helpdesk sử dụng OAuth 2.0 Authorization Code flow để cho phép merchant Haravan đăng nhập vào portal hỗ trợ bằng tài khoản Haravan của họ.
Bước 1: Đăng ký App trên Haravan Partner Dashboard
- Đăng nhập Haravan Partner Dashboard
- Tạo App mới hoặc chọn app đã có
- Cấu hình callback URL:
https://haravan.help/api/method/login_with_haravan.oauth.login_via_haravan- Lấy:
- Client ID (App API Key)
- Client Secret (App API Secret)
BẢO MẬT
Client Secret TUYỆT ĐỐI KHÔNG được commit vào Git, lưu trong docs, hoặc hiển thị trên browser. Chỉ lưu trong Frappe Cloud Site Config.
Bước 2: Cấu hình Social Login Key
Trên site Frappe Helpdesk:
- Vào Setup > Social Login Key
- Tạo hoặc chỉnh sửa key
haravan_account:
| Field | Giá trị |
|---|---|
| Provider Name | haravan_account |
| Client ID | (từ Partner Dashboard) |
| Client Secret | (từ Partner Dashboard) |
| Base URL | https://accounts.haravan.com |
| Authorize URL | /connect/authorize |
| Access Token URL | /connect/token |
| Redirect URL | /api/method/login_with_haravan.oauth.login_via_haravan |
| API Endpoint | https://accounts.haravan.com/connect/userinfo |
Redirect URL
Để mặc định là relative path (/api/method/...) để Frappe tự dùng domain của request hiện tại. Nếu cần override cứng, set trong Site Config key haravan_account_login.redirect_uri.
Bước 3: Kiểm tra trạng thái
Gọi API diagnostics (chỉ admin):
GET /api/method/login_with_haravan.diagnostics.get_haravan_login_statusResponse sẽ trả về trạng thái OAuth đã cấu hình (mọi secret được mask).
Bước 4: Test đăng nhập
- Mở trình duyệt incognito
- Truy cập
https://haravan.help - Click "Đăng nhập bằng Haravan"
- Đăng nhập bằng tài khoản Haravan merchant
- Xác nhận redirect về portal thành công
Lỗi thường gặp
invalid_request Invalid redirect_uri
Nguyên nhân: URL callback đăng ký trên Haravan Partner Dashboard không khớp.
Fix: Đảm bảo redirect URL trên Haravan Partner Dashboard là chính xác:
https://haravan.help/api/method/login_with_haravan.oauth.login_via_haravanimported module login-with-haravan not found
Nguyên nhân: Package name dùng hyphen thay vì underscore.
Fix: Đảm bảo pyproject.toml và setup.py đều dùng:
name = "login_with_haravan"Không thấy nút "Đăng nhập bằng Haravan"
Kiểm tra:
- Social Login Key đã được tạo và enable
- Site Config key
haravan_account_logincóclient_idhợp lệ - Custom app đã cài đặt thành công trên site