API
SDK · Node.js

WhatsApp API для Node.js

waix-node собирает запросы к API v1, передаёт ключ авторизации и возвращает ответы WAIX. Вы работаете с сообщениями и кодами подтверждения из своего приложения.

Подготовьте подключение

Node.js 20 или новее. ESM, CommonJS и типы TypeScript входят в пакет. Дополнительных зависимостей нет.

Для сообщений подключите свой номер и создайте API-ключ. Найдите Connection ID в кабинете, одобрите шаблон order_ready с одной переменной или замените пример на свой шаблон.

Установите SDK

Пакет опубликован в npm. Русская инструкция, примеры и исходный код доступны в его репозитории.

shell
npm install waix-node

Отправьте уведомление о заказе

Ключ и Connection ID читаются из переменных окружения на сервере. UUID операции сохраните в базе до вызова SDK. Пример использует шаблон с одной переменной — номером заказа.

JavaScript
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 клиентам, подайте заявку в партнёрскую программу.

Создать аккаунт →Партнёрская программа