Kinh nghiệm liên kết ứng dụng APP và Zalo OA Doanh Nghiệp để sử dụng API

Đã kiểm duyệt nội dung

4.6 trên 5
Dựa trên 142 đánh giá
Kinh nghiệm liên kết ứng dụng APP và Zalo OA Doanh Nghiệp để sử dụng API

Bài viết dành cho các bạn kĩ thật lập trình muốn kết nối API Zalo OA

Mối quan hệ giữa Zalo Official Account (OA) và Ứng dụng (App) là nền tảng kỹ thuật then chốt cho phép doanh nghiệp tự động hóa tương tác và quản lý. Theo cơ chế ủy quyền chuẩn OAuth 2.0, Zalo OA đóng vai trò là bên cung cấp sự ủy quyền chính thức, gán các quyền (Scope) cần thiết để Ứng dụng (đóng vai trò là Client ID của hệ thống) có thể thay mặt OA thực hiện các chức năng cốt lõi. Các chức năng này bao gồm gửi tin nhắn mẫu (ZNS), truy vấn hồ sơ người dùng, và quản lý các hoạt động tương tác khác thông qua Zalo API, từ đó đảm bảo tính bảo mật và duy trì sự tuân thủ các quy định của nền tảng.

Các tính năng dành cho DEV:

  • Lấy danh sách người dùng: https://openapi.zalo.me/v3.0/oa/user/getlist
  • Lấy thông tin chi tiếc một người dùng: https://openapi.zalo.me/v3.0/oa/user/detail

Và còn nhiều tính năng khác nữa bạn có thể tham khảo tài liệu Zalo API gốc tại: https://developers.zalo.me/docs/official-account/bat-dau/kham-pha

Tuy nhiên trước khi sử dụng được các API đó bạn phải kết nối thành công 2 phần này lại với nhau vì vậy hãy xem chi tiết bài viết này

Vui lòng xem cách liên kết liên kết ứng dụng APP và Zalo OA Doanh Nghiệp bên dưới.

1. Tầm quan trọng của việc Liên kết Ứng dụng (App) và Zalo OA Doanh Nghiệp

Để các lập trình viên (Developers) có thể truy cập và sử dụng trọn vẹn các Zalo API (đặc biệt là các API liên quan đến Messaging, User Profile, và OA Management), việc liên kết giữa Ứng dụng (App) và Zalo Official Account (OA Doanh Nghiệp) là một bước tiên quyết và bắt buộc.

1.1 Vai trò của Ứng dụng (App) và OA:

  • Ứng dụng (App): Được đăng ký trên Zalo Developer Platform, ứng dụng đóng vai trò là Client ID (hoặc Client App) đại diện cho hệ thống kỹ thuật (frontend/backend) của bạn. Nó là thực thể kỹ thuật gửi yêu cầu (Request) đến Zalo.
  • Zalo OA Doanh Nghiệp: Là đại diện chính thức của thương hiệu, chứa đựng dữ liệu người dùng (Follower) và các quyền kinh doanh quan trọng (như quyền gửi tin nhắn mẫu).

Link tạo ứng dụng Zalo APP: https://developers.zalo.me/

Link quản lí tài khoản Zalo OA: https://oa.zalo.me/manage/oa

1.2 Cơ chế Ủy quyền (Authorization) OAuth 2.0:

Quá trình liên kết này thiết lập mối quan hệ ủy quyền (Authorization) theo chuẩn OAuth 2.0. Ứng dụng của bạn cần được gán quyền (Permission/Scope) để truy cập dữ liệu và thực hiện hành động nhân danh OA.

Sau khi liên kết và được cấp quyền thành công, ứng dụng có thể thực hiện quy trình OAuth để xin cấp access_token (Token truy cập). access_token này chính là chìa khóa cho phép hệ thống backend của bạn gửi các yêu cầu API an toàn đến Zalo, ví dụ:

  • Gửi tin nhắn Zalo OA theo mẫu (OA Message/Template Message) tới người dùng.
  • Truy vấn thông tin chi tiết của người theo dõi (Follower Profile).
  • Cập nhật thông tin hồ sơ OA.

Việc liên kết đảm bảo rằng mọi tương tác API đều được thực hiện dưới danh nghĩa và quyền hạn chính thức của Doanh Nghiệp, duy trì tính bảo mật và tuân thủ quy định của nền tảng Zalo.

Kết quả sau khi liên lết thành công 2 chiều

2. Các bước thực hiện

Trước khi thực hiện các bước bên dưới bạn cần chắc chắn Doanh Nghiệp bạn có Zalo OA đã xác thực, đang hoạt động rồi nhé.

Link Zalo OA Công Ty

Nếu chưa có, bạn có thể Đăng Kí Tại Đây https://zalo.cloud/oa/pricing

2.1 Tạo ứng dụng Zalo APP cho người mới xem bài viết bên dưới.

Cách tạo ứng dụng Zalo for Developers dành cho nhà phát triển Website

2.2 Cấp quyền từ OA cho ứng dụng

Danh sách các quyền mà OA cho phép ứng dụng truy cập

Bạn có thể chọn toàn bộ hoặc bỏ bớt tùy vào mục đích sử dụng hoặc chia sẻ cho ứng dụng.

Thêm Url Callback nếu cần thiết

Lúc này chúng ta vừa mới liên kết được một phía bên APP

Lưu ý: Ở bước tiếp theo, hầu hết những bạn mới làm theo hướng dẫn từ ChatGPT hay các công cụ AI thường cảm thấy rối và quay vòng vòng. Dựa trên kinh nghiệm thực tế, bạn chỉ cần làm theo tôi bằng một trong hai cách dưới đây là có thể dễ dàng liên kết ngược từ OA về APP Zalo.

Cách 1: Nhanh hơn

Sao chép đường dẫn trên, mở tab trình duyệt mới truy cập chạy nó.

Sau khi cấp quyền xong, sẽ tự động quay lại URL callback khai báo, không cần làm gì thêm

Cách 2: Trực quan hơn bằng cách lấy Access Token

Truy cập vào: https://developers.zalo.me/

Làm theo Video sau:

3. Kiểm tra kết quả

Để kiểm tra kết quả bạn quay về Zalo OA: cụ thể là link https://oa.zalo.me/manage/apphavepermission

Nếu thấy APP xuất hiện là thành công

Vậy là chỉ với vài bước đơn giản theo hướng dẫn trên, bạn đã có thể liên kết ngược từ OA về APP Zalo một cách nhanh chóng và chính xác. Hãy thử ngay và trải nghiệm sự tiện lợi mà phương pháp này mang lại. Nếu bạn gặp khó khăn, đừng ngần ngại quay lại các bước trên – thực hành vài lần, bạn sẽ thấy mọi thứ trở nên dễ dàng hơn rất nhiều. Chúc bạn thành công!

4. Mở rộng cho các bạn nếu cần demo Code WordPress sử dụng API trên

Qui trình các bước gọi API ZALO

Sao chép và dùng đoạn code sau trong functuons.php

<?php
define('WEB366_ZALO_APP_ID', 'your_app_id');
define('WEB366_ZALO_APP_SECRET', 'your_app_secret');
$access_token = '';
$refresh_token = '';

/**
 * Lấy thông tin chi tiết 1 user (Zalo OA API v3)
 * Endpoint: GET https://openapi.zalo.me/v3.0/oa/user/detail?data={"user_id":"..."}
 *
 * Trả về: mảng (decoded JSON) hoặc WP_Error nếu có lỗi
 */
function zalo_get_user_info($user_id, $access_token) {
    if (empty($user_id)) {
        return new WP_Error('missing_user_id', 'Thiếu user_id để lấy thông tin người dùng.');
    }

    // Endpoint v3 chuẩn
    $api_base = 'https://openapi.zalo.me/v3.0/oa/user/detail';

    // Dữ liệu phải nằm trong query param "data" dưới dạng JSON
    $payload = ['user_id' => (string)$user_id];

    // Tạo URL: data should be JSON-string but URL-encoded
    $url = $api_base . '?data=' . rawurlencode(wp_json_encode($payload));

    // Gửi GET với header access_token
    $response = wp_remote_get($url, [
        'headers' => [
            'access_token' => $access_token,
            'Content-Type' => 'application/json',
        ],
        'timeout' => 15
    ]);

    if (is_wp_error($response)) {
        return $response;
    }

    $body_raw = wp_remote_retrieve_body($response);

    // Try decode JSON
    $body = json_decode($body_raw, true);

    if (null === $body) {
        // Không phải JSON — trả raw cho debug
        return new WP_Error('invalid_response', 'Response is not valid JSON', $body_raw);
    }

    // Một số lỗi phổ biến của Zalo: -216 token header, -240 api v2 shutdown, -200 method not supported...
    if (isset($body['error']) && $body['error'] !== 0) {
        // Nếu lỗi do token header (-216) hoặc token hết hạn, trả WP_Error có detail
        return new WP_Error('zalo_api_error', $body['message'] ?? 'Zalo API error', $body);
    }

    return $body; // mảng đã decode
}

// Gọi hàm => zalo_get_user_info($user_id, $access_token);

Nếu bạn chưa thực hiện đúng các bước trên hoặc gặp phải vấn đề chưa giải quyết được, và đặc biệt nếu bạn là doanh nghiệp muốn tích hợp các tính năng Zalo OA vào website WordPress, hãy liên hệ với chúng tôi – Công ty TBAY – đội ngũ chuyên nghiệp sẽ hỗ trợ bạn hoàn thành nhanh chóng và bảo hành tốt nhất.

Thông tin liên hệ:

  • Zalo: 0852 080 383
  • Email: hotro@tbay.vn
  • Website: website366.com
  • Địa chỉ: VP: 82A-82B Dân Tộc, Phường Tân Sơn Nhì, Quận Tân Phú, TP. HCM

Chúng tôi luôn sẵn sàng đồng hành cùng bạn để tối ưu hóa trải nghiệm Zalo OA trên website.

Quay lạiChatGPT ChatGPT

❓ Hỏi AI về nội dung bài viết

Tóm tắt nội dung chính Gợi ý mục quan trọng Giải thích mục 1 rõ hơn Viết lại đoạn văn cho dễ hiểu Rút gọn văn bản mà vẫn đủ ý Thêm ví dụ minh hoạ cho đoạn 1 Lọc keyword từ khóa bài viết Lọc thuật ngữ Dịch bài viết sang: Tiếng Anh
Nếu bài viết chưa giải đáp hết thắc mắc của bạn, hãy hỏi WEB366 AI – trợ lý thông minh sẵn sàng hỗ trợ ngay trong nội dung bài viết.

Bạn muốn tích hợp chức năng Hỏi AI trực tiếp dưới mỗi bài viết trên website? Hãy liên hệ dịch vụ thiết kế web tại Website366.com để được hỗ trợ triển khai nhanh chóng và chuyên nghiệp.

Đã kiểm duyệt nội dung

Tôi là Lễ Âu – Chuyên gia xử lý Web WordPress với niềm đam mê đặc biệt dành cho công nghệ mới, đặc biệt là trí tuệ nhân tạo (AI). Với nhiều năm kinh nghiệm trong lĩnh vực thiết kế và tối ưu website, tôi luôn không ngừng học hỏi và chia sẻ các giải pháp công nghệ hiệu quả, giúp doanh nghiệp và cá nhân khai thác tối đa tiềm năng từ nền tảng WordPress và các ứng dụng AI tiên tiến.