# Stripe

* [Cómo conectar ](#how-to-connect)
* [Cómo obtener un enlace de pago ](#how-to-get-a-link-to-payment)
* [Cómo procesar el resultado ](#how-to-process-the-result)
* [Cómo probar los pagos](#how-to-test-payments)

## Cómo conectar&#x20;

Para conectar el sistema de pago Stripe, necesitas una API secreta y una clave de webhook.&#x20;

Puedes copiar la clave secreta de la API en la sección Developers -> API key y copiar la clave secreta.

![](/files/7c2a6102e0301cb11b9b10b400f8c5c6dfa69518)

A continuación, debes establecer la URL para los callbacks. Esto es necesario para que el bot reciba notificaciones de pago.&#x20;

Ve a la sección Webhooks y añade una dirección para los webhooks.

![](/files/a7f79c772a902556a85ca18d390f903ab75f164b)

establece la URL: <https://chatter.salebot.pro/stripe_callback/result>

y selecciona el evento:

`checkout.session.completed`

![](/files/cfeb010a962e8ac5ca91f1153a39d88024244143)

Guarda y ve a la página con el webhook instalado, copia la clave (Signing secret) del webhook (en el campo de salebot - Webhook key):

\
después de pulsar Reveal key se abrirá el Webhook, que comenzará con whsec\_...&#x20;

![](/files/c299709d2a24448f58abf94450d51b87e26df1f9)

Después de recibir las claves, pasaremos a la configuración en Salebot.&#x20;

En Salebot, abre la sección de sistemas de pago y selecciona Stripe. En la página de conexión, debes introducir los datos recibidos.

&#x20;                                        ![](/files/9e120cf937a665fa080398460ce30fc726d1b70c)

![](/files/a81d137bd2c541c6249124b9dae88f58afae9585)

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

Para generar un enlace de pago, debes establecer el valor de la variable payment\_sum (como 150 o 100.55 (¡con punto!)), entonces aparecerá la variable stripe\_pay\_url. Esta variable se puede mostrar con un enlace o colocar en el botón con el texto "Pagar".&#x20;

El enlace tiene la forma:

`https://checkout.stripe.com/pay/cs_test_a17mskKFFRwEuo3WgBSAUjfk7xaZZIrct9B3Ds2AdODVq1I8aRiqYEBdrU#fidkdWxOYHwnPyd1blpxYHZxWjA0TGFsVzFPVmpmMzJAbVYzUkp1Y0lLYDVgfzR2Q0NxcWZBNUNnTnRSVVRJSGFobEB1UExSczRMMTc8PWRLMGBddl8xalxyPDRoUGhnZm9xXXZANDZyaF0wNTVBVExsPHZyfycpJ2N3amhWYHdzYHcnP3F3cGApJ2lkfGpwcVF8dWAnPyd2bGtiaWBabHFgaCcpJ2BrZGdpYFVpZGZgbWppYWB3dic%2FcXdwYHgl`

{% hint style="warning" %}
El valor predeterminado es USD (dólar); si necesitas otra moneda, debes establecer el valor de la variable currency
{% endhint %}

Además, antes de establecer el valor payment\_sum, puedes especificar las siguientes variables opcionales para configurar el pago.&#x20;

currency - moneda del pedido. Valores válidos - [https://stripe.com/docs/currencies ](<https://stripe.com/docs/currencies >)

payment\_description - descripción del pedido

### Ejemplo de un enlace de pago&#x20;

Crear un enlace para un pago de 2 EUR (dólar predeterminado)

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

{% hint style="info" %}
Tenga en cuenta:

* Primero especifica los parámetros opcionales first\_name, payment\_description, etc.
* Y por último, asigna el valor de la variable payment\_sum
  {% endhint %}

Nota: primero establecemos variables adicionales para la configuración y luego payment\_sum. Puedes definir variables antes en una cadena, no en un solo bloque; este es un ejemplo.

A continuación, en el lugar adecuado, mostraremos la variable stripe\_pay\_url, que contiene el enlace, en el bloque o en el botón

&#x20;                                     &#x20;

![](/files/c99ce15d555ab28e1b1371a57b45d073782067f1)

Página de ejemplo de pago

&#x20;     &#x20;

![](/files/4eb7c0d2088f95b5431f7a5920b9f20d8265cf27)

## Cómo procesar el resultado&#x20;

Después de un pago exitoso en el bot llegarán callbacks, con los que puedes 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 20 caracteres de la clave secreta y el éxito de la cuenta, por ejemplo: sk\_live\_d35gky6d8ers\_success&#x20;

Estos callbacks NO LOS VE el usuario, se muestran solo al operador.&#x20;

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

Además, después de un pago exitoso, la variable stripe\_payment\_completed se establece en True.&#x20;

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

![](/files/29d9e372dbd2b82a5dab7564c57a12cb06444d04)

Después de completar el pago, se añadirá al cliente una variable stripe\_callback\_data, que contiene los datos de respuesta del sistema de pago para la transacción completada. Puedes extraer los datos necesarios del diccionario usando el método get.

{% 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 %}

## Cómo probar los pagos&#x20;

Puedes usar la clave secreta del entorno de prueba para probar la integración. Para ello, en el menú stripe de la cuenta personal, a la derecha, debes cambiar al entorno de prueba.

![](/files/ed2b9d6a7db9f3fc2c4efa2fefd1afc1da50044d)

A continuación, configura la configuración descrita al comienzo de esta instrucción. Introduce la clave secreta de prueba y añade la dirección para los webhooks al entorno de prueba.

Número de tarjeta de prueba&#x20;

4242 4242 4242 4242&#x20;

cualquier fecha futura&#x20;

CVC - cualquier tres dígitos&#x20;

Si algo no funciona, compara los datos con los datos del sitio oficial: https\:/stripe.com/docs/testing#regulatory-cards


---

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