Gửi tin Zalo ZNS

  • API này dùng để gửi tin nhắn Zalo ZNS.

  • Chú ý: Các hành động cài đặt gửi ZNS trên nhanh.vn sẽ do Nhanh.vn tự động gửi, bạn chỉ nên dùng API này cho các hành động phát sinh riêng từ hệ thống của bên bạn.

Request

  • URI: /api/zalo/sendzns. Xem các common request params.

  • Các key của mảng data array dùng để tạo data json string:

KeyTypeDescription

zaloOaId

int ^{{\color{red}*}}

Zalo OA Id

znsTemplateId

int ^{{\color{red}*}}

Các mẫu tin đã được Zalo duyệt sẽ có ZNS template Id, xem và tạo mới mẫu tin tại danh sách template. Chú ý: bạn cần copy cột ZNS template ID chứ không phải cột ID, nếu bạn copy sai, API sẽ báo lỗi ERR_ZNS_INVALID_TEMPLATE

mobile

string ^{{\color{red}*}}

Số điện thoại cần gửi

keywords

array ^{{\color{red}*}}

Từ khóa, giá trị

  • keywords: mảng các giá trị thay thế các từ khóa trong mẫu tin Zalo ZNS. Chú ý:

    • Khi cài hành động gửi tin theo các sự kiện trên Nhanh (Thêm hóa đơn bán lẻ, Thêm đơn hàng...) thì bạn mới cần dùng các từ khóa có sẵn của Nhanh.vn, còn nếu chỉ muốn gửi qua API, thì khi tạo mẫu tin, bạn có thể tạo từ khóa bất kì, đợi Zalo duyệt xong, thì bạn có thể lấy được znsTemplateId để gửi API.

    • Khi Zalo duyệt mẫu tin, các từ khóa thường có dạng <_TEN_KHACH_HANG_> nhưng gửi qua API cần bỏ qua 2 dấu < > chỉ gửi sang _TEN_KHACH_HANG_, Zalo sẽ tự xử lý nối thêm < >

    [
      '_KEY_1_' : 'value1',
      '_KEY_2_' : 'value2',
      ...
    ]

Sample request

curl --location 'https://open.nhanh.vn/api/zalo/sendzns' \
--form 'accessToken="your_accessToken"' \
--form 'businessId="your_businessId"' \
--form 'appId="your_appId"' \
--form 'version="2.0"' \
--form 'data="{\"znsTemplateId\":\"TEMPLATE_ID\",\"mobile\":\"0988999999\",\"zaloOaId\":\"OA_ID\",\"keywords\":{\"TEN_KHACH_HANG\":\"Nguy\\u1ec5n V\\u0103n \\u0110\\u1ee9c\",\"ID_DON_HANG\":\"19837512\",\"TONG_TIEN\":\"190000\"}}"'

Response

  • JSON decode the response to get the structure:

KeyTypeDescription

code

int

1 = success or 0 = failed

errorCode

string

Xem bảng mã lỗi bên dưới

messages

array

Nội dung cảnh báo hoặc chi tiết lỗi

data

object

Khi code = 1 API response sẽ trả về: oaBalance: Số dư tài khoản sau khi gửi tin remainingQuota: Số tin nhắn còn được gửi trong ngày dailyQuota: Hạn mức tin nhắn được gửi trong ngày { "oaBalance": 10000000, "quota": { "remainingQuota": 4995, "dailyQuota": 5000 } }

errorCode

  • Danh sách mã lỗi khi code = 0

errorCodeDescription

ERR_ZNS_OA_404

Doanh nghiệp chưa kết nối OA

ERR_ZNS_INVALID_OA

Zalo OA Id không hợp lệ

ERR_ZNS_EXCEEDED_LIMIT_IN_DAY

Vượt quá hạn mức gửi tin trong ngày

ERR_ZNS_OA_NOT_ENOUGH_BALANCE

Số dư tài khoản không đủ

ERR_ZNS_INVALID_PHONE_NUMBER

Số điện thoại gửi đi không hợp lệ

ERR_ZNS_ZALO_ACCOUNT_NOT_EXISTED

Số điện thoại không có tài khoản Zalo

ERR_ZNS_INVALID_TEMPLATE

ZNS template Id không hợp lệ

ERR_ZNS_PROHIBITED_TIMEFRAME

Tin nhắn chỉ được gửi trong khoảng thời gian từ 06-22h

ERR_ZNS_REQUIRED_KEYWORDS

Từ khóa và giá trị không đúng định dạng hoặc null

ERR_ZNS_KEYWORDS_NOT_MATCH

Từ khóa sai hoặc thừa với so từ khóa trong mẫu ví dụ: { "invalidKeyword": ["KEYWORD_1 is required", "KEYWORD_2 not existed in template"] }

ERR_ZNS_INVALID_KEYWORD_VALUES

Giá trị từ khóa không hợp lệ

ERR_ZNS_CODE_1121

Dữ liệu keyword vượt quá độ dài tối đa

ERR_ZNS_CODE_1123

Không thể tạo mã QR

ERR_ZNS_CODE_1124

Dữ liệu keyword có định dạng không hợp lệ

Last updated