# Paypal

* [Как настроить PayPal ](#how-to-set-up-paypal)
* [Как создать ссылку на оплату ](#how-to-create-a-payment-link)
* [Как обработать результат](#how-to-process-the-result)

## Как настроить PayPal&#x20;

Чтобы работать с PayPal, нужно получить два ключа: client\_id и secret&#x20;

Перейдите на страницу[ https://developer.paypal.com/developer/applications/ ](< https://developer.paypal.com/developer/applications/ >)

И выберите из списка или создайте новое приложение:

![](/files/dcdfbbb813f2073c4f25697c519b067e23de9bef)

Вверху переключите тумблер в режим Live mode и выберите нужное вам приложение. Откроется страница с настройками, где вы сможете найти нужные данные:

![](/files/4bdf33515289263a08a308932e66b2fa60599ee4)

Скопируйте данные и вставьте их в соответствующие поля в настройках Salebot - Платежные системы - PayPal:

&#x20;                                             ![](/files/2ea9157c1cb8c40fb8b491e8e22a3d2062649689)

![](/files/ad59d617efbbd59b9316a283458a8b535d0fffa1)

На этом подключение завершено.

## Как создать ссылку на оплату&#x20;

Чтобы сгенерировать ссылку на оплату, нужно установить значение переменной payment\_sum, и переменная paypal\_pay\_url появится сразу же.&#x20;

payment\_title — не обязательная переменная, это название товара. Если вы его не укажете, будет подставлен текст: "Payment account order\_id" (order\_id — идентификатор заказа в системе)&#x20;

payment\_description — описание товара, необязательно&#x20;

Кроме того, перед указанием payment\_sum можно задать, на каком языке будет страница оплаты. Для этого нужно установить переменную locale, по умолчанию используется русский (ru-RU). Все возможные варианты: **da-DK, he-IL, id-ID, ja-JP, no-NO, pt-BR, ru-RU, sv-SE, th-TH, zh-CN, zh-HK, zh-TW.**&#x20;

И третий дополнительный параметр — company\_name — название вашей компании, отображаемое в самом верху страницы (пример ниже, company).

&#x20;                                       &#x20;

Также можно указать валюту, в которой принимается платеж, для этого задается переменная currency, по умолчанию установлена рублевая валюта (RUB), для доллара задайте значение USD (currency = USD). Возможные варианты валют можно найти по ссылке [https://developer.paypal.com/docs/api/reference/currency-codes/ ](<https://developer.paypal.com/docs/api/reference/currency-codes/ >)

И третий дополнительный параметр — company\_name — название вашей компании, отображаемое в самом верху страницы (пример ниже, company )&#x20;

Переменную paypal\_pay\_url можно вывести ссылкой или поместить на кнопку "Pay".&#x20;

Ссылка имеет вид: [https://ww.paypal.com/checkoutnow?token=07N53571YM296381N ](<https://ww.paypal.com/checkoutnow?token=07N53571YM296381N >)

Пример реализации.&#x20;

Установим сумму платежа 444 и название компании

&#x20;                                       ![](/files/5d57896dcbdbf7af047031ee0f1765b5f69dbab6)

{% hint style="info" %}
**Примечание:** переменная payment\_sum задаётся последней, после необязательной **payment\_title**, **company\_name**, и т. д.
{% endhint %}

## Как обработать результат

{% hint style="info" %}
После успешной оплаты в бота придут колбеки, по которым можно понять, что платеж прошел успешно. Эти колбеки в системе вы видите как сообщения от пользователя, поэтому они не могут быть отправлены пользователем; они состоят из первых 10 секретных символов и окончания со статусом, например: EHsWHYOoWV\_success.
{% endhint %}

Также после успешной оплаты переменной paypal\_payment\_completed присваивается значение True.

{% hint style="success" %}
Эти колбеки НЕ ВИДНЫ пользователю, они отображаются только оператору.
{% endhint %}

{% hint style="danger" %}
Тип сравнения должен быть "Full match"
{% endhint %}

{% hint style="warning" %}
Чтобы выполнить повторную оплату, нужно сбросить payment\_sum, ранее сгенерированную ссылку, а после сброса переменной payment\_sum получить новую ссылку. Можно указать предыдущее значение.
{% endhint %}

{% hint style="warning" %}
Колбеки приходят с задержкой, поэтому после ссылки на оплату пользователю мы рекомендуем отправить сообщение вида: "После оплаты дождитесь сообщения об успешном завершении оплаты"
{% endhint %}

Например, можно сделать блок обработки успешной оплаты с условием и вывести пользователю соответствующее сообщение:

![](/files/6a71e5c002d2183a8a131c98d589882e1bb9c7fa)

Тип сравнения должен быть "Full match"&#x20;

По завершении оплаты **paypal\_callback\_data** переменная будет добавлена клиенту и будет содержать данные ответа платёжной системы по завершённой транзакции. Необходимые данные можно извлечь из словаря с помощью **get** .


---

# 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/paypal.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.
