# Paytabs

## Подключение PayTabs к Mavibot

Чтобы подключить PayTabs к Mavibot, вам необходимо настроить несколько параметров в вашей учетной записи PayTabs.

### 1. Создайте API-ключ

В панели управления PayTabs перейдите в:

**Developers → API Keys**

Создайте новый API-ключ.

<div data-with-frame="true"><img src="/files/540a0759fe0ab9aab8955f8a4ad9e5bb746d4b88" alt=""></div>

<div data-with-frame="true"><img src="/files/0fec0142525e5bb500572557901806cbaa047077" alt=""></div>

После создания API-ключа сохраните следующие данные:

* **Server Key** — требуется для настройки интеграции.
* **Profile ID** — также требуется для настройки подключения.

<div data-with-frame="true"><img src="/files/5dd9988be8a3a201259cd6d1166e3237c50623a4" alt="" height="252" width="794"></div>

### 2. Настройте уведомления о платежах

Перейдите в:

**Developers → Configuration**

<div data-with-frame="true"><img src="/files/16857d203b23f467f784a2c70aab0e73f8e3bf9d" alt="" height="414" width="750"></div>

Включите уведомления о платежах (**обратные вызовы**).

Нажмите **"+"** и добавьте следующий URL обратного вызова:

```
https://chatter.mavibot.ai/paytabs_callback/result
```

<div data-with-frame="true"><img src="/files/6f2ca417ef4ec096753d5b40cff12e0cad598d88" alt="" height="322" width="822"></div>

<div data-with-frame="true"><img src="/files/34a0c06f4e511228373c91329662bdd204719a78" alt="" height="368" width="835"></div>

Этот URL используется для отправки обновлений статуса платежа в Mavibot.

### 3. Настройте PayTabs в Mavibot

<div data-with-frame="true"><figure><img src="/files/2709c410de2b6fa4e4fbc60db9850a3f42674fe4" alt=""><figcaption></figcaption></figure></div>

В настройках Mavibot:

1. Перейдите в **Acquiring** раздел
2. Выберите **PayTabs** в качестве платежного провайдера
3. Введите следующие данные:
   * **Profile ID**
   * **Server Key**
4. Выберите ваш **регион учетной записи PayTabs**

{% hint style="info" %}
**Пожалуйста, обратите внимание!**\
Выбранный регион должен совпадать с регионом, в котором зарегистрирована ваша учетная запись PayTabs.
{% endhint %}

<div data-with-frame="true"><figure><img src="/files/080cbe848682657639c3c4784bad58fce6b781f5" alt="" width="563"><figcaption></figcaption></figure></div>

После сохранения настроек настройка интеграции будет завершена.

### Генерация платежной ссылки

Чтобы сгенерировать платежную ссылку, используйте следующую функцию:

`get_paytabs_payment_url(amount, description, currency, customer_email, customer_phone,    full_name, language)`

#### Параметры функции

| Параметр                                         | Описание                                                 |
| ------------------------------------------------ | -------------------------------------------------------- |
| <mark style="color:$danger;">**!**</mark> amount | Сумма платежа. Обязательный параметр                     |
| description                                      | Описание платежа. Необязательный параметр                |
| currency                                         | Валюта платежа. Необязательный параметр                  |
| customer\_email                                  | Адрес электронной почты клиента. Необязательный параметр |
| customer\_phone                                  | Номер телефона клиента. Необязательный параметр          |
| full\_name                                       | Полное имя клиента. Необязательный параметр              |
| language                                         | Язык страницы оплаты. Необязательный параметр            |

#### Доступные валюты

Поддерживаются следующие коды валют:

```
SAR, AED, BHD, EGP, EUR, GBP, HKD, IDR,INR, IQD, JOD, JPY, KWD, MAD, OMR,PKR, QAR, USD
```

#### Доступные языки

```
en — английскийar — арабскийfr — французский
```

Функция возвращает URL оплаты.

Если **currency** параметр не указан, валюта будет автоматически выбрана на основе настроенного региона.

### Использование платежной ссылки в кнопке

Чтобы отправить клиенту кнопку оплаты:

1. Создайте кнопку с **Платеж** типом
2. Выберите **PayTabs** в качестве платежного провайдера
3. Укажите:
   * описание платежа;
   * сумму платежа;
   * валюту.

<div data-with-frame="true"><img src="/files/4650ed7d306b288b2ef1a26dfa668a6a46f349a3" alt="" width="554"></div>

***

## Обработка статуса платежа

После того как клиент откроет платежную ссылку и завершит оплату, в диалог будет отправлено событие обратного вызова.

### Успешный платеж

<div data-with-frame="true"><figure><img src="/files/6a8c12d700b1a2fc49e9dfcf767ed289a1d959c3" alt="" width="357"><figcaption></figcaption></figure></div>

Пример:

```
SDJ91MTKTT_success 100
```

Где:

* **SDJ91MTKTT** — первые 10 символов **Server Key**
* **100** — сумма платежа

Чтобы создать действие для успешного платежа, перейдите в **Builder** и создайте блок с триггером (это может быть **Start** блок или **Trigger** блок).

Затем в **Trigger** поле введите:

* полное значение обратного вызова (если вы хотите запускать действие только для определенной суммы платежа), или
* только значение обратного вызова до суммы платежа (если вы хотите запускать действие для всех успешных платежей).

<div data-with-frame="true"><figure><img src="/files/3c82f9cd2b47a668a5112732004886a533cf1fc6" alt=""><figcaption><p>Блок "Start"</p></figcaption></figure></div>

<div data-with-frame="true"><figure><img src="/files/cd5fbbc4a2a16e6ecdb5f7c74de87293f35c4e06" alt=""><figcaption><p>Блок "Trigger"</p></figcaption></figure></div>

### Неуспешный платеж

Пример:

```
SDJ91MTKTT_fail 100
```

Обработка неуспешного платежа настраивается так же, как и обработка успешного платежа.

Создайте блок с триггером и введите значение обратного вызова в **Trigger** поле. Это позволяет определить действия, которые будут выполняться при неуспешном платеже.

### Переменные, сохраняемые после успешного платежа

После успешного платежа для клиента автоматически сохраняются следующие переменные:

**paytabs\_callback\_data**\
Содержит полную полезную нагрузку webhook, полученную от платежной системы.

**paytabs\_payment\_completed**

Значение:

```
True
```

Указывает, что платеж был успешно завершен.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.mavibot.ai/doc/ru/integrations/payment/paytabs.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
