# Paytabs

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

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

### 1. Створіть API-ключ

У панелі керування PayTabs перейдіть до:

**Розробники → API Keys**

Створіть новий API-ключ.

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

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

Після створення API-ключа збережіть такі дані:

* **Серверний ключ** — потрібен для налаштування інтеграції.
* **ID профілю** — також потрібен для налаштування підключення.

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

### 2. Налаштуйте сповіщення про платежі

Перейдіть до:

**Розробники → Configuration**

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

Увімкніть сповіщення про платежі (**callbacks**).

Натисніть **"+"** і додайте таку URL-адресу callback:

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

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

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

Цю URL-адресу використовують для надсилання оновлень статусу платежу до Mavibot.

### 3. Налаштуйте PayTabs у Mavibot

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

У налаштуваннях Mavibot:

1. Перейдіть до **Acquiring** розділу
2. Виберіть **PayTabs** як платіжного провайдера
3. Введіть такі дані:
   * **ID профілю**
   * **Серверний ключ**
4. Виберіть свій **регіон облікового запису PayTabs**

{% hint style="info" %}
**Зверніть увагу!**\
Обраний регіон має збігатися з регіоном, у якому зареєстровано ваш обліковий запис PayTabs.
{% endhint %}

<div data-with-frame="true"><figure><img src="/files/1e70d71a9085bb9e3f0b09321b5ffe9330a9aee4" 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. Створіть кнопку з **Payment** типом
2. Виберіть **PayTabs** як платіжного провайдера
3. Вкажіть:
   * опис платежу;
   * суму платежу;
   * валюту.

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

***

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

Після того як клієнт відкриє платіжне посилання та завершить оплату, у розмову буде надіслано подію callback.

### Успішний платіж

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

Приклад:

```
SDJ91MTKTT_success 100
```

Де:

* **SDJ91MTKTT** — перші 10 символів **Серверний ключ**
* **100** — сума платежу

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

Потім у полі **Trigger** введіть:

* повне значення callback (якщо ви хочете запускати дію лише для певної суми платежу), або
* лише значення callback до суми платежу (якщо ви хочете запускати дію для всіх успішних платежів).

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

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

### Невдалий платіж

Приклад:

```
SDJ91MTKTT_fail 100
```

Обробка невдалого платежу налаштовується так само, як і обробка успішного платежу.

Створіть блок із тригером і введіть значення callback у полі **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/uk/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.
