WhatsApp API для Node.js
waix-node собирает запросы к API v1, передаёт ключ авторизации и возвращает ответы WAIX. Вы работаете с сообщениями и кодами подтверждения из своего приложения.
Подготовьте подключение
Node.js 20 или новее. ESM, CommonJS и типы TypeScript входят в пакет. Дополнительных зависимостей нет.
Для сообщений подключите свой номер и создайте API-ключ. Найдите Connection ID в кабинете, одобрите шаблон order_ready с одной переменной или замените пример на свой шаблон.
Установите SDK
Пакет опубликован в npm. Русская инструкция, примеры и исходный код доступны в его репозитории.
npm install waix-nodeОтправьте уведомление о заказе
Ключ и Connection ID читаются из переменных окружения на сервере. UUID операции сохраните в базе до вызова SDK. Пример использует шаблон с одной переменной — номером заказа.
import { Waix } from 'waix-node';
import { randomUUID } from 'node:crypto';
const waix = new Waix(process.env.WAIX_API_KEY);
// Сохраните UUID в записи заказа до отправки.
const eventId = randomUUID();
const { data } = await waix.messages.send({
connection_id: process.env.WAIX_CONNECTION_ID,
to: '+77071234567',
type: 'template',
template: {
name: 'order_ready',
language: { code: 'ru' },
components: [{ type: 'body', parameters: [
{ type: 'text', text: '42' }
] }]
}
}, eventId);Обработайте результат
Методы возвращают весь ответ API, включая data и курсор следующей страницы. HTTP 202 означает, что сообщение поставлено в очередь. Статус доставки проверяется по вебхуку или в журнале.
При ошибке доступны status, code, requestId, retryAfter. Тайм-аут по умолчанию — 30 секунд. Автоматических повторов нет: при сетевом сбое сохраните исходные параметры и ключ идемпотентности.
OTP и подписи вебхуков
Для OTP создайте отдельный проект и ключ с нужными правами. Доступны отправка, проверка и статус. Начните с sandbox, затем проверьте доступность рабочей отправки в кабинете.
Проверяйте HMAC вебхука на исходных байтах до разбора JSON. SDK учитывает подпись и время запроса. В приложении также сохраняйте ID события, чтобы не обработать повторную доставку дважды.
Исходный код, тесты и релизы ↗Сколько стоит подключение
Для собственного номера оплачивается подписка WAIX в тенге, а сообщения — напрямую Meta с карты в вашем WhatsApp Business Account. Количество номеров и сумму можно рассчитать на странице тарифа. OTP оплачивается отдельным пакетом.
Проверьте интеграцию на своём сценарии
Начните с подключения номера и одного сообщения. Если внедряете WhatsApp клиентам, подайте заявку в партнёрскую программу.
Создать аккаунт →Партнёрская программа