# Paypal

* [Cómo configurar PayPal ](#how-to-set-up-paypal)
* [Cómo crear un enlace de pago ](#how-to-create-a-payment-link)
* [Cómo procesar el resultado](#how-to-process-the-result)

## Cómo configurar PayPal&#x20;

Para trabajar con PayPal, necesitas obtener dos claves: client\_id y secret&#x20;

Ve a la página[ https://developer.paypal.com/developer/applications/ ](< https://developer.paypal.com/developer/applications/ >)

Y elige de la lista o crea una nueva aplicación:

![](/files/0a6578b86f409f9be219f77bb35a7c92befd43e5)

En la parte superior, cambia el interruptor a modo Live y selecciona la aplicación que quieras. Se abrirá una página con la configuración donde puedes encontrar los datos que necesitas:

![](/files/fa58f7c2503f1d76df2667993204df8bef3b6392)

Copia los datos y pégalos en los campos correspondientes en la configuración de Salebot - Sistemas de pago - PayPal:

&#x20;                                             ![](/files/cacbb0b8e85e6a55cc6481e17c4030f4d9948352)

![](/files/fb0c8634dd3d29b61279bc9b35926402b42727ce)

Eso es todo para la conexión.

## Cómo crear un enlace de pago&#x20;

Para generar un enlace de pago, debes establecer el valor de la variable payment\_sum y la variable paypal\_pay\_url aparece inmediatamente.&#x20;

payment\_title no es una variable obligatoria, es el nombre del producto. Si no la especificas, se rellena con el texto: "Pago cuenta order\_id" (order\_id - identificador del pedido en el servidor)&#x20;

payment\_description - descripción del producto, opcional&#x20;

Además, antes de especificar payment\_sum, puedes indicar en qué idioma estará la página de pago. Para ello, debes establecer la variable locale; por defecto es ruso (ru-RU). Todas las opciones posibles: **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;

Y el tercer parámetro adicional es company\_name - el nombre de tu empresa, que se muestra en la parte superior de la página (ejemplo abajo, empresa).

&#x20;                                       &#x20;

También puedes especificar la moneda en la que se acepta el pago; para ello, indicamos la variable currency. Por defecto está establecida la rublo (RUB); para el dólar, establece su valor en USD (currency = USD). Las posibles variantes de moneda se pueden encontrar en el enlace [https://developer.paypal.com/docs/api/reference/currency-codes/ ](<https://developer.paypal.com/docs/api/reference/currency-codes/ >)

Y el tercer parámetro adicional es company\_name - el nombre de tu empresa, que se muestra en la parte superior de la página (ejemplo abajo, empresa )&#x20;

La variable paypal\_pay\_url puede mostrarse con un enlace o colocarse en el botón "Pagar".&#x20;

El enlace tiene la forma: [https://ww.paypal.com/checkoutnow?token=07N53571YM296381N ](<https://ww.paypal.com/checkoutnow?token=07N53571YM296381N >)

Ejemplo de implementación.&#x20;

Establecer importe del pago 444 y nombre de la empresa

&#x20;                                       ![](/files/b14512b9a8fb273b3c071cd5dce660ff1dcba19c)

{% hint style="info" %}
**Nota:** la variable payment\_sum se establece como la última variable, después de la opcional **payment\_title**, **company\_name**, etc.
{% endhint %}

## Cómo procesar el resultado

{% hint style="info" %}
Después de un pago exitoso, en el bot llegarán callbacks, por los cuales podrás entender que hubo un pago exitoso. Estos callbacks en el sistema los ves como mensajes del usuario, por lo que no pueden ser enviados por el usuario; consisten en los primeros 10 símbolos secretos y una página principal con estado, por ejemplo: EHsWHYOoWV\_success.
{% endhint %}

Además, después de un pago exitoso, la variable paypal\_payment\_completed se establece en True.

{% hint style="success" %}
Estos callbacks NO SON VISIBLES para el usuario, se muestran solo al operador.
{% endhint %}

{% hint style="danger" %}
El tipo de comparación debe ser "Coincidencia exacta"
{% endhint %}

{% hint style="warning" %}
Para realizar un pago repetido, debes restablecer payment\_sum, el enlace generado previamente, y después de restablecer la variable payment\_sum obtener un nuevo enlace. Puedes especificar un valor anterior.
{% endhint %}

{% hint style="warning" %}
Los callbacks llegan con retraso, así que después del enlace al pago del usuario, recomendamos enviar un mensaje como: "Después del pago, espera el mensaje sobre la finalización exitosa del pago"
{% endhint %}

Por ejemplo, puedes hacer un bloque de procesamiento de pago exitoso con una condición e imprimir el mensaje correspondiente al usuario:

![](/files/09cb82edd98e799bb16e3c0cb45eab8dcf912512)

El tipo de comparación debe ser "Coincidencia exacta"&#x20;

Al completar el pago, el **paypal\_callback\_data** variable se añadirá al cliente, conteniendo los datos de respuesta del sistema de pago para la transacción completada. Puedes extraer los datos necesarios del diccionario usando la **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/es/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.
