<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
    <channel>
        <title>Ha Tang developer changelog</title>
        <link>https://hatang.dev/vi/docs/changelog</link>
        <description>Ha Tang Developers Blog</description>
        <lastBuildDate>Tue, 03 Nov 2026 00:00:00 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <language>vi</language>
        <copyright>© 2026 Ha Tang</copyright>
        <item>
            <title><![CDATA[Hạ Tầng cho AI coding agent]]></title>
            <link>https://hatang.dev/vi/docs/changelog/2026/11/03/ai-coding-agents</link>
            <guid>https://hatang.dev/vi/docs/changelog/2026/11/03/ai-coding-agents</guid>
            <pubDate>Tue, 03 Nov 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[Claude Code, Cursor, Copilot và các coding agent khác giờ đọc được tài liệu này dạng Markdown và làm việc trực tiếp với Hạ Tầng: một MCP server, bộ quy tắc dựng sẵn cho dự án, và năm công thức theo tác vụ.]]></description>
            <content:encoded><![CDATA[<p>Claude Code, Cursor, Copilot và các coding agent khác giờ đọc được tài liệu này dạng Markdown và làm việc trực tiếp với Hạ Tầng: một MCP server, bộ quy tắc dựng sẵn cho dự án, và năm công thức theo tác vụ.</p>
<ul>
<li class=""><strong>MCP server <code>@hatang/mcp</code> 0.1.0.</strong> <code>npx -y @hatang/mcp</code> cho agent <code>search_docs</code> và <code>read_doc</code> (không cần key), và khi có API key thì thêm các tool gửi email, kiểm tra tên miền, tạo và giả lập thanh toán VietQR, đọc hoá đơn điện tử, xử lý hộp thư và thêm kiến thức cho trợ lý AI. <code>--read-only</code> giới hạn ở việc tra cứu. Xem <a class="" href="https://hatang.dev/vi/docs/guides/sdks/mcp">MCP server</a>.</li>
<li class=""><strong>Tài liệu cho máy đọc.</strong> <a href="https://hatang.dev/vi/docs/llms.txt" target="_blank" rel="noopener noreferrer" class=""><code>/vi/docs/llms.txt</code></a> liệt kê mọi trang, <a href="https://hatang.dev/vi/docs/llms-full.txt" target="_blank" rel="noopener noreferrer" class=""><code>/vi/docs/llms-full.txt</code></a> chứa toàn bộ tài liệu, mỗi trang có bản Markdown ở chính địa chỉ của trang thêm <code>.md</code>, và đặc tả OpenAPI ở <a href="https://hatang.dev/docs/openapi.json" target="_blank" rel="noopener noreferrer" class=""><code>/docs/openapi.json</code></a>. Bản tiếng Anh ở <code>/docs</code>.</li>
<li class=""><strong>Quy tắc cho dự án.</strong> Một mục <code>AGENTS.md</code>, một Cursor rule và một Claude Code skill cho agent biết dùng SDK nào, key để ở đâu, cách xác minh thanh toán và webhook. Xem <a class="" href="https://hatang.dev/vi/docs/guides/getting-started/ai-agents">Dùng Hạ Tầng với AI coding agent</a>.</li>
<li class=""><strong>Công thức.</strong> <a class="" href="https://hatang.dev/vi/docs/guides/recipes/send-email-nodejs">Email từ Node.js</a>, <a class="" href="https://hatang.dev/vi/docs/guides/recipes/vietqr-payments">Thanh toán VietQR</a>, <a class="" href="https://hatang.dev/vi/docs/guides/recipes/zalo-zns">Zalo ZNS từ code</a>, <a class="" href="https://hatang.dev/vi/docs/guides/recipes/live-chat-nextjs">Chat trên website</a> và <a class="" href="https://hatang.dev/vi/docs/guides/recipes/einvoice-api">Hoá đơn điện tử qua API</a>.</li>
</ul>]]></content:encoded>
            <category>docs</category>
            <category>sdk</category>
        </item>
        <item>
            <title><![CDATA[Trang SDK trên npm, pub.dev, PyPI, Maven Central và wordpress.org]]></title>
            <link>https://hatang.dev/vi/docs/changelog/2026/11/03/sdk-listings</link>
            <guid>https://hatang.dev/vi/docs/changelog/2026/11/03/sdk-listings</guid>
            <pubDate>Tue, 03 Nov 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[Mọi SDK của Hạ Tầng có một bản vá mới, với trang trên registry giới thiệu SDK làm gì và dẫn về hướng dẫn tương ứng ở đây. Không đổi code.]]></description>
            <content:encoded><![CDATA[<p>Mọi SDK của Hạ Tầng có một bản vá mới, với trang trên registry giới thiệu SDK làm gì và dẫn về hướng dẫn tương ứng ở đây. Không đổi code.</p>
<table><thead><tr><th>SDK</th><th>Phiên bản</th><th>Registry</th></tr></thead><tbody><tr><td>Node.js</td><td><code>@hatang/sdk</code> 0.6.1</td><td><a href="https://www.npmjs.com/package/@hatang/sdk" target="_blank" rel="noopener noreferrer" class="">npm</a></td></tr><tr><td>React và Next.js</td><td><code>@hatang/chat-react</code> 0.1.1</td><td><a href="https://www.npmjs.com/package/@hatang/chat-react" target="_blank" rel="noopener noreferrer" class="">npm</a></td></tr><tr><td>React Native</td><td><code>@hatang/chat-react-native</code> 0.4.1</td><td><a href="https://www.npmjs.com/package/@hatang/chat-react-native" target="_blank" rel="noopener noreferrer" class="">npm</a></td></tr><tr><td>Flutter</td><td><code>hatang_chat</code> 0.6.1</td><td><a href="https://pub.dev/packages/hatang_chat" target="_blank" rel="noopener noreferrer" class="">pub.dev</a></td></tr><tr><td>iOS</td><td><code>HatangChat</code> 0.4.1</td><td><a href="https://github.com/sota-labs/hatang-chat-ios" target="_blank" rel="noopener noreferrer" class="">GitHub</a>, đã gửi lên Swift Package Index</td></tr><tr><td>Android</td><td><code>dev.hatang:chat</code> 0.4.1</td><td><a href="https://central.sonatype.com/artifact/dev.hatang/chat" target="_blank" rel="noopener noreferrer" class="">Maven Central</a></td></tr><tr><td>Python</td><td><code>hatang</code> 0.1.1</td><td><a href="https://pypi.org/project/hatang/" target="_blank" rel="noopener noreferrer" class="">PyPI</a></td></tr><tr><td>WordPress</td><td><code>hatang-chat</code> 0.2.3</td><td><a href="https://wordpress.org/plugins/hatang-chat/" target="_blank" rel="noopener noreferrer" class="">wordpress.org</a></td></tr></tbody></table>
<ul>
<li class="">README của mỗi SDK có phần About Ha Tang cùng link tới hướng dẫn, tài liệu API, changelog này và trang hỗ trợ.</li>
<li class="">SDK iOS và Android có file LICENSE (MIT).</li>
<li class="">Gói Python không còn link tới trang mã nguồn và changelog không công khai.</li>
</ul>
<p>Không bắt buộc nâng cấp. Xem <a class="" href="https://hatang.dev/vi/docs/guides/sdks/overview">tất cả SDK và các phiên bản được hỗ trợ</a>.</p>]]></content:encoded>
            <category>sdk</category>
            <category>flutter</category>
            <category>ios</category>
            <category>android</category>
            <category>react-native</category>
        </item>
        <item>
            <title><![CDATA[Nhóm email]]></title>
            <link>https://hatang.dev/vi/docs/changelog/2026/11/02/email-groups</link>
            <guid>https://hatang.dev/vi/docs/changelog/2026/11/02/email-groups</guid>
            <pubDate>Mon, 02 Nov 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[Nhóm email biến một địa chỉ trên tên miền đang nhận thư, ví dụ team@congty.vn, thành địa chỉ chung: mọi thư gửi tới được chuyển cho từng thành viên, giống nhóm của Google Workspace. Tạo nhóm tại Email → Nhóm email.]]></description>
            <content:encoded><![CDATA[<p>Nhóm email biến một địa chỉ trên tên miền đang nhận thư, ví dụ <code>team@congty.vn</code>, thành địa chỉ chung: mọi thư gửi tới được chuyển cho từng thành viên, giống nhóm của Google Workspace. Tạo nhóm tại <strong>Email → Nhóm email</strong>.</p>
<ul>
<li class="">Mỗi thành viên nhận một bản riêng từ địa chỉ nhóm, người gửi hiện là <strong>"Tên người gửi via Tên nhóm"</strong>, bấm Trả lời là trả lời thẳng cho người gửi gốc.</li>
<li class="">Không chuyển: thư rác, thư tự động, thư đã đi qua một nhóm, và quá 30 thư mỗi giờ từ cùng một người gửi. Thư gốc luôn nằm ở Nhận về.</li>
<li class="">Mỗi bản chuyển tính vào hạn mức gửi trong ngày và hiện trong mục Email với nguồn <code>forward</code>.</li>
</ul>
<p><strong>Với người dùng API:</strong></p>
<ul>
<li class="">Endpoint mới <code>POST/GET /email-groups</code> và <code>GET/PATCH/DELETE /email-groups/{id}</code> (<code>email:write</code> để sửa, <code>email:read</code> để xem). <code>@hatang/sdk</code> có thêm <code>hatang.emailGroups</code>.</li>
<li class="">Trường <code>source</code> của email có thêm giá trị <code>forward</code>. Nếu code của bạn rẽ nhánh theo trường này, hãy thêm nhánh mặc định.</li>
</ul>
<p>Xem <a class="" href="https://hatang.dev/vi/docs/guides/email/groups">hướng dẫn Nhóm email</a>.</p>]]></content:encoded>
            <category>email</category>
            <category>api</category>
        </item>
        <item>
            <title><![CDATA[Email hỗ trợ không cần chuyển tiếp]]></title>
            <link>https://hatang.dev/vi/docs/changelog/2026/11/02/support-email-receiving</link>
            <guid>https://hatang.dev/vi/docs/changelog/2026/11/02/support-email-receiving</guid>
            <pubDate>Mon, 02 Nov 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[Kênh email hỗ trợ có địa chỉ nằm trên tên miền đã nhận email tại Hạ Tầng (Email → Tên miền → Nhận email) giờ không cần cài thêm gì: email tới địa chỉ đó vào thẳng Hộp thư, không cần chuyển tiếp hay tên miền phụ MX riêng.]]></description>
            <content:encoded><![CDATA[<p>Kênh email hỗ trợ có địa chỉ nằm trên tên miền đã nhận email tại Hạ Tầng (<strong>Email → Tên miền → Nhận email</strong>) giờ không cần cài thêm gì: email tới địa chỉ đó vào thẳng Hộp thư, không cần chuyển tiếp hay tên miền phụ MX riêng.</p>
<ul>
<li class="">Trang hộp thư báo điều này và kênh chuyển sang <strong>Hoạt động</strong> ngay. Địa chỉ dạng <code>cskh+billing@</code> cũng nhận được; phần sau <code>+</code> thành thẻ.</li>
<li class="">Chỉ đúng địa chỉ hỗ trợ chuyển sang Hộp thư. Các địa chỉ khác trên tên miền, kể cả nhóm email, vẫn nằm ở <strong>Email → Đã nhận</strong> và vẫn kích hoạt <code>email.received</code>.</li>
<li class="">Kết nối lại một địa chỉ hỗ trợ đã ngắt kết nối giờ sẽ dùng lại kênh cũ, giữ nguyên hội thoại, thay vì báo địa chỉ đã được kết nối.</li>
</ul>
<p>Xem <a href="https://hatang.dev/vi/help/channels/email-channel" target="_blank" rel="noopener noreferrer" class="">Kết nối địa chỉ email hỗ trợ</a>.</p>]]></content:encoded>
            <category>email</category>
        </item>
        <item>
            <title><![CDATA[API Email kiểm tra scope của API key]]></title>
            <link>https://hatang.dev/vi/docs/changelog/2026/10/24/email-scopes</link>
            <guid>https://hatang.dev/vi/docs/changelog/2026/10/24/email-scopes</guid>
            <pubDate>Sat, 24 Oct 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[API Email nay kiểm tra scope của key, đúng như dashboard vẫn mô tả:]]></description>
            <content:encoded><![CDATA[<p>API Email nay kiểm tra scope của key, đúng như dashboard vẫn mô tả:</p>
<ul>
<li class=""><strong>Gửi email</strong> (<code>POST /emails</code>, <code>POST /emails/batch</code>, SMTP relay) và đổi lịch gửi (<code>PATCH /emails/{id}</code>, <code>POST /emails/{id}/cancel</code>) cần <code>email:send</code>.</li>
<li class=""><strong>Đọc email</strong> (<code>GET /emails</code>, <code>GET /emails/{id}</code>, <code>GET /emails/{id}/events</code>) cần <code>email:read</code>; <code>email:send</code> và <code>email:write</code> đã bao gồm quyền này.</li>
</ul>
<p>Trước đây mọi key hợp lệ đều gọi được các endpoint này. Key thiếu scope giờ nhận <code>401 restricted_api_key</code> (qua SMTP là <code>550 5.7.1</code>). Key toàn quyền (<code>*</code>), <code>email:*</code> hoặc <code>email:send</code> không bị ảnh hưởng. Nếu key đang dùng để gửi email chỉ có các scope khác, như <code>email:write</code> hay <code>chat:*</code>, hãy thêm <code>email:send</code> cho key ở mục <strong>API Keys</strong> trong dashboard.</p>]]></content:encoded>
            <category>api</category>
            <category>email</category>
            <category>breaking</category>
        </item>
        <item>
            <title><![CDATA[Trung tâm trợ giúp tại hatang.dev/vi/help]]></title>
            <link>https://hatang.dev/vi/docs/changelog/2026/10/24/help-center</link>
            <guid>https://hatang.dev/vi/docs/changelog/2026/10/24/help-center</guid>
            <pubDate>Sat, 24 Oct 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[Hướng dẫn từng bước cho những người dùng dashboard hằng ngày giờ nằm ở trung tâm trợ giúp mới, bằng tiếng Việt và tiếng Anh, kèm ảnh chụp từng màn hình: hộp thư, từng kênh, widget chat, trợ lý AI, tự động hoá, khách hàng, báo cáo, email và thanh toán.]]></description>
            <content:encoded><![CDATA[<p>Hướng dẫn từng bước cho những người dùng dashboard hằng ngày giờ nằm ở <a href="https://hatang.dev/vi/help" target="_blank" rel="noopener noreferrer" class="">trung tâm trợ giúp</a> mới, bằng tiếng Việt và tiếng Anh, kèm ảnh chụp từng màn hình: hộp thư, từng kênh, widget chat, trợ lý AI, tự động hoá, khách hàng, báo cáo, email và thanh toán.</p>
<p>Tài liệu cho lập trình viên giữ những gì bạn cần để tích hợp Hạ Tầng: hướng dẫn API và SDK, tài liệu tham chiếu, webhook và giao thức realtime. Các bài chỉ gồm thao tác trên dashboard đã chuyển sang trung tâm trợ giúp, và địa chỉ cũ tự chuyển hướng sang đó:</p>
<ul>
<li class="">toàn bộ hướng dẫn kênh (Zalo OA, Zalo cá nhân, TikTok, TikTok Shop, Messenger và Instagram, WhatsApp, Telegram, LINE, X, email), nay ở mục <a href="https://hatang.dev/vi/help/channels" target="_blank" rel="noopener noreferrer" class="">Kênh</a>;</li>
<li class=""><strong>Nhân viên và phân quyền</strong>, nay là <a href="https://hatang.dev/vi/help/account/employees-and-roles" target="_blank" rel="noopener noreferrer" class="">Nhân viên và vai trò</a>;</li>
<li class=""><strong>Doanh nghiệp và module</strong>, nay là <a href="https://hatang.dev/vi/help/getting-started/modules" target="_blank" rel="noopener noreferrer" class="">Bật và tắt module</a>.</li>
</ul>
<p>Trang <a class="" href="https://hatang.dev/vi/docs/guides/support/overview">Tổng quan Hỗ trợ khách hàng</a> vẫn liệt kê mọi kênh kèm giá trị <code>channel</code> dùng trong API.</p>]]></content:encoded>
            <category>docs</category>
        </item>
        <item>
            <title><![CDATA[@hatang/sdk 0.4.0: mặc định gọi production, template, liên hệ dùng chung, automation]]></title>
            <link>https://hatang.dev/vi/docs/changelog/2026/10/24/node-sdk-0-4-0</link>
            <guid>https://hatang.dev/vi/docs/changelog/2026/10/24/node-sdk-0-4-0</guid>
            <pubDate>Sat, 24 Oct 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[@hatang/sdk 0.4.0 mặc định gọi https//localhost:3001; khi phát triển local giờ hãy truyền baseUrl (hoặc đặt HATANGBASEURL).]]></description>
            <content:encoded><![CDATA[<p><code>@hatang/sdk</code> 0.4.0 mặc định gọi <code>https://api.hatang.dev</code>. Trước đây, client tạo mà không có <code>baseUrl</code> hay <code>HATANG_BASE_URL</code> sẽ gọi <code>http://localhost:3001</code>; khi phát triển local giờ hãy truyền <code>baseUrl</code> (hoặc đặt <code>HATANG_BASE_URL</code>).</p>
<p>Lệnh mới:</p>
<ul>
<li class=""><strong>Template:</strong> <code>templates.create/get/list/update/remove/publish/duplicate</code>, và <code>emails.send({ to, template: { id, variables } })</code>.</li>
<li class=""><strong>Liên hệ dùng chung:</strong> <code>contacts.*</code> không cần <code>audience_id</code>, gọi theo id hoặc email, kèm <code>properties</code>, <code>segments</code> và <code>topics</code>; thêm namespace <code>segments</code>, <code>topics</code> và <code>contactProperties</code>. Truyền <code>audience_id</code> vẫn dùng các route audience cũ.</li>
<li class=""><strong>Automation:</strong> <code>events.*</code>, <code>automations.*</code> và <code>automations.runs.*</code>.</li>
<li class=""><strong>Số liệu:</strong> <code>emails.metrics()</code>, <code>logs.list/get</code> và <code>usage.get</code>.</li>
</ul>
<p>Namespace <code>blog</code> đã bị bỏ. Xem <a class="" href="https://hatang.dev/vi/docs/guides/sdks/node">hướng dẫn Node.js</a>.</p>]]></content:encoded>
            <category>node</category>
            <category>email</category>
            <category>breaking</category>
        </item>
        <item>
            <title><![CDATA[Kênh WhatsApp, Telegram, X và LINE]]></title>
            <link>https://hatang.dev/vi/docs/changelog/2026/10/24/whatsapp-telegram-x-line</link>
            <guid>https://hatang.dev/vi/docs/changelog/2026/10/24/whatsapp-telegram-x-line</guid>
            <pubDate>Sat, 24 Oct 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[Hộp thư có thêm bốn kênh mới, bên cạnh widget website, Zalo, Messenger, Instagram, TikTok và email. Trợ lý AI, flow, quy tắc phân chia và báo cáo hoạt động trên các kênh này giống mọi kênh khác. Kết nối tại Hỗ trợ khách hàng → Kênh → Thêm kênh.]]></description>
            <content:encoded><![CDATA[<p>Hộp thư có thêm bốn kênh mới, bên cạnh widget website, Zalo, Messenger, Instagram, TikTok và email. Trợ lý AI, flow, quy tắc phân chia và báo cáo hoạt động trên các kênh này giống mọi kênh khác. Kết nối tại <strong>Hỗ trợ khách hàng → Kênh → Thêm kênh</strong>.</p>
<ul>
<li class=""><strong><a href="https://hatang.dev/vi/help/channels/whatsapp" target="_blank" rel="noopener noreferrer" class="">WhatsApp</a>:</strong> kết nối số WhatsApp Business qua Embedded Signup. Số vẫn dùng được trong ứng dụng WhatsApp Business (coexistence), và tin nhắn gửi từ điện thoại cũng hiện trong hội thoại. Sau cửa sổ 24 giờ, nhân viên trả lời bằng mẫu tin đã được duyệt.</li>
<li class=""><strong><a href="https://hatang.dev/vi/help/channels/telegram" target="_blank" rel="noopener noreferrer" class="">Telegram</a>:</strong> kết nối bot Telegram của bạn. Nếu có Telegram Premium, bạn có thể liên kết bot qua Telegram Business để tin nhắn gửi tới tài khoản riêng của bạn cũng về Hộp thư. Kênh này chỉ dùng Bot API.</li>
<li class=""><strong><a href="https://hatang.dev/vi/help/channels/x" target="_blank" rel="noopener noreferrer" class="">X</a>:</strong> nhận tin nhắn trực tiếp (DM) và tự động trả lời khi có người @nhắc tới tài khoản hoặc trả lời bài đăng. Mỗi doanh nghiệp kết nối qua ứng dụng X developer của riêng mình, vì X tính phí API theo từng lượt gọi.</li>
<li class=""><strong><a href="https://hatang.dev/vi/help/channels/line" target="_blank" rel="noopener noreferrer" class="">LINE</a>:</strong> kết nối LINE Official Account qua Messaging API, chỉ nhận hội thoại một-một.</li>
</ul>
<p><strong>Với người dùng API và webhook:</strong></p>
<ul>
<li class="">Trường <code>channel</code> của hội thoại, khách hàng và payload webhook có thêm bốn giá trị: <code>whatsapp</code>, <code>telegram</code>, <code>x</code> và <code>line</code>. Bộ lọc <code>channel</code> của <code>GET /chat/customers</code> nhận cùng các giá trị này. Nếu code của bạn rẽ nhánh theo <code>channel</code>, hãy thêm nhánh mặc định vì sẽ còn kênh mới.</li>
<li class="">Từ <code>@hatang/sdk</code> 0.4.0 trở đi, kiểu <code>ChatChannel</code> đã có các giá trị mới.</li>
<li class="">Tin trả lời bằng mẫu WhatsApp là một tin của nhân viên, có <code>metadata.whatsapp_template</code> dạng <code>{ name, language, params }</code>.</li>
</ul>]]></content:encoded>
            <category>support</category>
            <category>channels</category>
            <category>api</category>
        </item>
        <item>
            <title><![CDATA[Tài liệu cho lập trình viên chuyển về hatang.dev/docs]]></title>
            <link>https://hatang.dev/vi/docs/changelog/2026/10/23/developer-hub</link>
            <guid>https://hatang.dev/vi/docs/changelog/2026/10/23/developer-hub</guid>
            <pubDate>Fri, 23 Oct 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[Tài liệu nay ở hatang.dev/docs (tiếng Anh) và hatang.dev/vi/docs (tiếng Việt), chia hai phần: Hướng dẫn tích hợp từng bước và Tham chiếu sinh từ mã nguồn. Liên kết cũ docs.hatang.dev tự chuyển tới trang tương ứng.]]></description>
            <content:encoded><![CDATA[<p>Tài liệu nay ở <a href="https://hatang.dev/docs" target="_blank" rel="noopener noreferrer" class="">hatang.dev/docs</a> (tiếng Anh) và <a href="https://hatang.dev/vi/docs" target="_blank" rel="noopener noreferrer" class="">hatang.dev/vi/docs</a> (tiếng Việt), chia hai phần: <strong>Hướng dẫn</strong> tích hợp từng bước và <strong>Tham chiếu</strong> sinh từ mã nguồn. Liên kết cũ <code>docs.hatang.dev</code> tự chuyển tới trang tương ứng.</p>
<ul>
<li class="">Hướng dẫn mới: xác thực, giới hạn tốc độ, xử lý lỗi, phân trang, idempotency, gửi email, tên miền, SMTP relay, broadcast, khả năng vào hộp thư, từng kênh hỗ trợ và nhiều trang khác.</li>
<li class="">Tài liệu REST API nằm ngay trong trang, mỗi endpoint một trang, code mẫu bảy ngôn ngữ và bảng "Try it" để gọi thử.</li>
<li class="">Mỗi sự kiện webhook có trang riêng kèm schema payload.</li>
</ul>]]></content:encoded>
            <category>docs</category>
        </item>
        <item>
            <title><![CDATA[API: payload webhook trong bản đặc tả OpenAPI]]></title>
            <link>https://hatang.dev/vi/docs/changelog/2026/10/23/openapi-webhooks</link>
            <guid>https://hatang.dev/vi/docs/changelog/2026/10/23/openapi-webhooks</guid>
            <pubDate>Fri, 23 Oct 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[https//chat.hatang.dev/openapi.json, với operationId cố định.]]></description>
            <content:encoded><![CDATA[<p><code>https://api.hatang.dev/openapi.json</code> nay mô tả mọi sự kiện webhook công khai trong phần <code>webhooks</code> của OpenAPI 3.1, kèm payload của từng sự kiện, thay cho danh sách tên như trước. Bản đặc tả của chat gateway có ở <code>https://chat.hatang.dev/openapi.json</code>, với <code>operationId</code> cố định.</p>
<ul>
<li class="">Các endpoint được xếp theo từng tài nguyên (Conversations, Customers, Orders, Tickets…), và mỗi tag thuộc một nhóm.</li>
<li class="">Phản hồi <code>429</code> ghi đúng giới hạn của từng API: 10 yêu cầu/giây cho Email, 50 cho Hỗ trợ và 20 cho Thanh toán.</li>
<li class="">API trả lời preflight CORS từ <code>https://hatang.dev</code>, để bảng "Try it" trong tài liệu gọi được API bằng key của bạn.</li>
</ul>]]></content:encoded>
            <category>api</category>
            <category>webhooks</category>
        </item>
        <item>
            <title><![CDATA[Plugin WordPress 0.2.1]]></title>
            <link>https://hatang.dev/vi/docs/changelog/2026/10/23/wordpress-0-2-1</link>
            <guid>https://hatang.dev/vi/docs/changelog/2026/10/23/wordpress-0-2-1</guid>
            <pubDate>Fri, 23 Oct 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[Hạ Tầng Chat 0.2.1 cập nhật trang cài đặt và readme: Site ID nằm ở Hỗ trợ khách hàng → Kênh → website của bạn trong dashboard, và readme liệt kê đủ các kênh dùng chung hộp thư. Không thay đổi cách hoạt động.]]></description>
            <content:encoded><![CDATA[<p><a href="https://wordpress.org/plugins/hatang-chat/" target="_blank" rel="noopener noreferrer" class="">Hạ Tầng Chat 0.2.1</a> cập nhật trang cài đặt và readme: Site ID nằm ở <strong>Hỗ trợ khách hàng → Kênh → website của bạn</strong> trong dashboard, và readme liệt kê đủ các kênh dùng chung hộp thư. Không thay đổi cách hoạt động.</p>]]></content:encoded>
            <category>wordpress</category>
        </item>
        <item>
            <title><![CDATA[SDK di động theo cài đặt widget]]></title>
            <link>https://hatang.dev/vi/docs/changelog/2026/10/14/mobile-sdks-widget-settings</link>
            <guid>https://hatang.dev/vi/docs/changelog/2026/10/14/mobile-sdks-widget-settings</guid>
            <pubDate>Wed, 14 Oct 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[iOS 0.3.0, Android 0.3.0, Flutter 0.5.0 và React Native 0.3.0 hiển thị thêm các cài đặt widget của website mà không cần sửa code:]]></description>
            <content:encoded><![CDATA[<p>iOS 0.3.0, Android 0.3.0, Flutter 0.5.0 và React Native 0.3.0 hiển thị thêm các cài đặt widget của website mà không cần sửa code:</p>
<ul>
<li class=""><strong>Đầu khung chat:</strong> dòng phụ dưới tên site, và logo doanh nghiệp (hoặc chữ cái đầu tên site) thay cho ảnh nhân viên khi hồ sơ đặt là doanh nghiệp.</li>
<li class=""><strong>Lời chào:</strong> ẩn khi tắt hoặc tắt trên điện thoại; ký tên nhân viên đầu tiên đang trực tuyến khi người gửi là "nhân viên trực tuyến".</li>
<li class=""><strong>Nút liên hệ:</strong> Zalo, Messenger, gọi điện và email dưới đầu khung chat.</li>
</ul>
<p>Chuỗi mới cho nút liên hệ (<code>callUs</code>/<code>call</code> và <code>emailUs</code>) cần truyền vào nếu bạn tự tạo đối tượng chuỗi. Gateway cũ không gửi các cài đặt này nên màn hình giữ như trước. React Native 0.3.1 sửa metadata repository của gói.</p>]]></content:encoded>
            <category>ios</category>
            <category>android</category>
            <category>flutter</category>
            <category>react-native</category>
        </item>
        <item>
            <title><![CDATA[@hatang/sdk 0.3.0: nhận email]]></title>
            <link>https://hatang.dev/vi/docs/changelog/2026/10/14/node-sdk-0-3-0</link>
            <guid>https://hatang.dev/vi/docs/changelog/2026/10/14/node-sdk-0-3-0</guid>
            <pubDate>Wed, 14 Oct 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[@hatang/sdk 0.3.0 đọc được email nhận về { receiving: "enabled" } }) bật nhận email. Câu trả lời mẫu có thêm subject và isprivate, link thanh toán có thêm qrpayload cho ứng dụng tự vẽ mã VietQR.]]></description>
            <content:encoded><![CDATA[<p><code>@hatang/sdk</code> 0.3.0 đọc được email nhận về: <code>emails.receiving.list()</code>, <code>.get(id)</code> và tệp đính kèm với link tải có chữ ký (hiệu lực một giờ). Tên miền có thêm <code>capabilities</code>, nên <code>domains.update({ id, capabilities: { receiving: "enabled" } })</code> bật nhận email. Câu trả lời mẫu có thêm <code>subject</code> và <code>is_private</code>, link thanh toán có thêm <code>qr_payload</code> cho ứng dụng tự vẽ mã VietQR.</p>]]></content:encoded>
            <category>node</category>
            <category>email</category>
        </item>
    </channel>
</rss>