---
title: Zero-Tap для WhatsApp
description: Технология Zero-Tap в WhatsApp — автоматическая подстановка кода без ввода. Настройка приложения, отключение сервера, отправка OTP через API
---

> **For AI agents:** the complete documentation index is at [llms.txt](https://docs.mydialogi.ru/llms.txt). Append `.md` to any page URL for its markdown version.


> **Коротко:** Zero-Tap — технология WhatsApp, при которой код аутентификации подставляется в приложение автоматически. Пользователю не нужно ничего вводить.

## Кому подходит

- Роль: Клиент, Разработчик
- Уровень: Опытный

## Что это

Обычно пользователь получает код в SMS или WhatsApp и вводит его вручную. **Zero-Tap** убирает этот шаг — код подставляется автоматически, как только приходит сообщение.

<Warning>
Технология работает только на **Android-устройствах** с установленным **WhatsApp обычной версии** (не Business).
</Warning>

## Как это работает

### 1. Приложение получает код

Ваше мобильное приложение получает код от WhatsApp.

### 2. Код подставляется автоматически

Код автоматически подставляется в нужное поле.

### 3. Пользователь не вводит код

Пользователь не вводит код вручную — экономия времени и повышение конверсии.

## Что нужно для подключения

| Элемент | Что это |
|---|---|
| **Package Name** | Имя пакета Android-приложения |
| **Signature Hash** | Хэш подписи приложения |
| **Шаблон WhatsApp «Аутентификация»** | Специальный тип шаблона с поддержкой Zero-Tap |

<Note>
Zero-Tap используется для **авторизационных** сообщений — OTP-кодов и кодов подтверждения входа.

[Категории сообщений →](https://docs.mydialogi.ru/05-channels/00-overview/message-categories)
</Note>

## Как настроить

### 1. Получите Package Name и Signature Hash

Используйте официальное демо-приложение:

- **Android:** репозиторий `WhatsApp-OTP-Sample-App/Android`.
- **iOS:** репозиторий `WhatsApp-OTP-Sample-App/iOS`.

**Package Name** берётся из файла `AndroidManifest.xml` (атрибут `package`). Пример: `com.whatsapp.otp.sample.app`.

**Signature Hash** отображается на стартовом экране приложения под кнопкой **Request OTP**. Пример: `K8a/AINXXXX`.

### 2. Отключите вызовы сервера (опционально)

Для работы приложения **без сервера** нужно убрать сетевые запросы.

**Файл 1.** `app/src/main/java/com/whatsapp/otp/sample/app/otp/WhatsAppOtpIntentHandler.java`

В методе `sendOtp()` замените:

```java
whatsAppOtpHandler.sendOtpIntentToWhatsApp(context);
otpService.sendOtp(phoneNumber, onSuccessHandler, onFailureHandler);
```

на:

```java
whatsAppOtpHandler.sendOtpIntentToWhatsApp(context);
// Skip server call - user will send OTP manually
WA_LOGGER.info("OTP intent sent to WhatsApp. Waiting for user to send OTP manually.");
onSuccessHandler.run();
```

**Файл 2.** `app/src/main/java/com/whatsapp/otp/sample/app/otp/service/SampleServerOtpService.java`

В методе `validateOtp(...)` замените блок с HTTP-запросом на:

```java
executorServiceForNetworkRequest.submit(() -> {
    WA_LOGGER.info("Validating OTP without server - always returning VALID");
    onRequestCompletedHandler.accept(OtpServiceInterface.OtpStatus.VALID);
});
```

**Файл 3.** Найдите строку:

```java
public static final String SERVER_URL = "http://10.0.2.2:3000";
```

Замените на:

```java
public static final String SERVER_URL = "";
```

### 3. Создайте шаблон WhatsApp

1. Откройте раздел **Активы** → **Шаблоны WhatsApp**.
2. Нажмите **Добавить шаблон WhatsApp** → **Общий**.
3. Укажите имя отправителя, название, язык.
4. Выберите категорию **Authentication**.
5. Добавьте кнопку типа **Zero-Tap автозаполнение**.
6. Укажите Package Name и Signature Hash.
7. Проставьте галочку согласия с WhatsApp Business Terms of Service.
8. Сохраните и дождитесь одобрения.

### 4. Отправьте OTP через API

**URL:** `https://<host>/api/v1/messages`

**Метод:** POST

**Заголовки:** `Content-Type: application/json`, `Authorization: Bearer <your_API_token>`

Пример тела запроса:

```json
{
  "contact": "<recipient_number>",
  "channel": 4,
  "payload": {
    "type": "template",
    "template": {
      "namespace": "<namespace>",
      "language": {
        "policy": "deterministic",
        "code": "en"
      },
      "name": "<name>",
      "components": [
        {
          "type": "body",
          "parameters": [
            { "type": "text", "text": "<otp_code>" }
          ]
        },
        {
          "type": "button",
          "sub_type": "url",
          "index": 0,
          "parameters": [
            { "type": "text", "text": "<otp_code>" }
          ]
        }
      ]
    }
  },
  "senderId": "<sender_number>",
  "createRecipient": false
}
```

## Условия для работы

Перед тестированием убедитесь:

- [ ] На устройстве установлен WhatsApp (обычная версия, не Business).
- [ ] В WhatsApp выполнен вход с того номера, на который отправляется код.
- [ ] Номер в запросе совпадает с номером устройства.

## Результат

Код подставляется автоматически. Пользователь экономит время, а вы повышаете конверсию.

## Частые проблемы

### Код не подставляется: установлен WhatsApp Business

**Причина:** Zero-Tap работает только с обычной версией WhatsApp.

**Решение:** удалите WhatsApp Business и установите обычную версию.

### Код не подставляется: Package Name не совпадает

**Причина:** в шаблоне указан Package Name, отличающийся от того, что в приложении.

**Решение:** откройте `AndroidManifest.xml`, скопируйте точный `package` и обновите шаблон.

### Код не подставляется: Signature Hash не совпадает

**Причина:** в шаблоне указан устаревший или неверный Signature Hash.

**Решение:** откройте демо-приложение и скопируйте значение под кнопкой **Request OTP**.

### Шаблон не одобрен

**Причина:** шаблон не прошёл проверку Meta.

**Решение:** проверьте содержимое и отправьте снова. Срок рассмотрения — до 24 часов.

### Ошибка в шаблоне при отправке

**Причина:** переменные шаблона не заполнены.

**Решение:** заполните все переменные в запросе.

## См. также

<Columns cols={2}>
  <Card title="Шаблон WhatsApp «Аутентификация»" icon="shield" href="/05-channels/04-whatsapp/templates/templates-auth">
    Шаблон для кодов с поддержкой Zero-Tap
  </Card>
  <Card title="Как создать шаблон WhatsApp" icon="square-plus" href="/05-channels/04-whatsapp/templates/templates-how-to-create">
    Пошаговая инструкция создания шаблона
  </Card>
  <Card title="Настройка WhatsApp" icon="comment" href="/05-channels/04-whatsapp/whatsapp">
    Базовые настройки канала
  </Card>
  <Card title="Как создать API-ключ" icon="key" href="/06-reference/01-api/api-keys">
    Получение ключа для интеграции
  </Card>
</Columns>

## Нужна помощь?

- **OTP-коды:** support@otpcod.ru
- **Multi API:** support@multiapi.ru
- **Мой диалог:** support@mydialogi.ru
