# Coinpayments

* [Cómo conectar](#podklyuchenie) enlace How to connect
* [Cómo generar un enlace de pago](#kak-sformirovat-ssylku-na-oplatu) enlace How to generate a payment link
* [Cómo procesar el resultado](#obrabotka-rezultata) enlace How to process the result
* [Cómo comprobar el estado del pago](#proverka-statusa-platezha) enlace How to check the payment status

## Cómo conectar

Para conectar el sistema de pago Coinpayments, necesitarás cuatro valores: el ID del vendedor, el secreto IPN (para webhooks), la clave privada de API y la clave pública de API. También deberás configurar la URL del webhook.

Ve a la cuenta personal de Coinpayments -> Configuración de la cuenta <https://www.coinpayments.net/index.php?cmd=acct_settings>

![](https://lh3.googleusercontent.com/xACTDovKtHxhj7vrWkS0u2TpAy_mK1VU7fR7k2KAD_6lL9OHyKsn4Np54iD4jb7Gjackry858WfaABz37i6tkfn5HZW94n4SKqDq3ooRToxaeXQPRbhvgnKG-KrAssSlHy2lrSSQ)

En la primera pestaña, copia el ID del vendedor. (**ID del vendedor**)

![](/files/613f55ccd82b68d4a289a7ab3d7a5299aeb8b42f)

Luego, ve a la pestaña "Seller Settings" y crea e introduce una clave secreta IPN - **secreto IPN** (Esto se usa para verificar que el webhook proviene de nosotros). Usa una cadena segura y compleja que sea difícil de adivinar

Enlace IPN - es la URL para los webhooks, añade lo siguiente: **<https://chatter.salebot.pro/coinpayments\\_callback/result>**

![](https://lh6.googleusercontent.com/K939LTpXmntuJKU1tTN6NTBgl2ziiQTG7okWMRAdOMMQa0K7LbH0X3l7FWmd74FPqY9NOOGl89tbK99fgCpFLva4NJ8VVZVwwGfaE9YYKQ5EOkkb72Qz3FO5jPisxWxrAX8Ac94p)

A continuación, ve a la sección API Keys y genera un par de claves para acceder a la API.

![](https://lh6.googleusercontent.com/4Y9V4YRgYAvMJNelxlO5bhynVt1er0a5F-QNnOitbBrWFfOLPwJpOM8BHKgMcXxlKzwE9rc32Coxo-iVB_kvGRrgf0XXEjSsop5Uic8CP-8ey8Ll7a_CkvB7D3tcpcEgUo0Dbz7N)

Guarda toda la configuración, copia los datos y ve a la configuración en Mavibot. Abre la sección "Acquiring" y selecciona Coinpayments.

<figure><img src="/files/20df32280423efd24bb6de59e568ea44290333ae" alt=""><figcaption></figcaption></figure>

Debes introducir los datos recibidos.

<figure><img src="/files/e1b5d10d2483ac9894e06b7f088f1635a051f9b5" alt="" width="563"><figcaption></figcaption></figure>

Para generar un enlace de pago, debes establecer el valor de las variables requeridas:

<table><thead><tr><th width="201">Variables</th><th width="228">Valor de la variable</th><th>Nota</th></tr></thead><tbody><tr><td> <strong>original_currency</strong> </td><td>La moneda original de la transacción.</td><td></td></tr><tr><td><strong>sending_currency</strong></td><td>La moneda que enviará el cliente.</td><td>Por ejemplo, si tus productos tienen precio en USD, pero recibes BTC, debes usar original_currency = USD y sending_currency = BTC. original_currency y sending_currency pueden tener un mismo valor si no es necesaria la conversión de moneda.</td></tr><tr><td><strong>buyer_email</strong> </td><td>Correo electrónico del cliente.</td><td>Para enviar notificaciones si el pago es por un importe menor y necesita completarse con un pago adicional, o para reembolsos. Si esta variable no está configurada, el correo se tomará automáticamente de la variable email, si el usuario tiene una en Mavibot.</td></tr></tbody></table>

Después de eso, debes establecer el valor de la **payment\_sum** variable (por ejemplo, 10 o 0.0055 **(separado por un punto!)),** y la **coinpayments\_pay\_url** variable aparecerá inmediatamente después. Esta variable puede mostrarse con un enlace o colocarse en un botón con el texto "Pagar". El enlace se ve así: **<https://www.coinpayments.net/index.php?cmd=checkout\\&id=CPFK5QZ3FKSNWHI75CO8M4BRVD\\&key=e7782d2ce24f7d03815606a5c4a882eb>**

Además, antes de establecer el valor de la variable payment\_sum, puedes configurar las siguientes variables opcionales para ajustar el pago.

**payment\_description** - el nombre del producto aparecerá en la página de información del pago y en el IPN de la transacción.

**buyer\_name** - nombre del cliente

Así es como se ve la página de pago.

![](https://lh3.googleusercontent.com/Yn1a6_JOW4wkj2SqNwkkJYMBZoh4JcR1HEinzP67O6WmYBcCV3IdRw_JCEQI0L7OV-8IuH_JdMEdOaduymc0vs5QAmpfcgrU0tFD9ZrT6V_B8vvQqe-sQcUDMsd9PJRa_uUsJAsX)

## Cómo generar un enlace de pago

Crea un enlace de pago por el importe de 0.0256

<figure><img src="/files/c4070c196bce5fb3bceced29d2356c774ad55c12" alt="" width="563"><figcaption></figcaption></figure>

{% hint style="info" %}
**Presta atención:** \
\- Primero, especifica la dirección de correo electrónico\
-Luego parámetros opcionales  **first\_name, payment\_description** y etc.\
\- Finalmente, asigna un valor a la **payment\_sum** variable.
{% endhint %}

Ten en cuenta que primero configuramos las variables para los ajustes, luego **payment\_sum.** Las variables pueden configurarse antes en la cadena, en lugar de en un solo bloque; este es un ejemplo.

A continuación, mostramos la **coinpayments\_pay\_url** variable en el lugar correcto, que contiene el enlace

<figure><img src="/files/0e3b0e0e6d6b20b3d0dd7115e6481bd4d7fbabe9" alt="" width="563"><figcaption></figcaption></figure>

{% hint style="warning" %}
Para realizar un pago repetido, debes restablecer payment\_sum, el enlace generado previamente y luego reasignar la variable payment\_sum para obtener un enlace nuevo.
{% endhint %}

## Cómo procesar el resultado

Después de un pago exitoso, se enviarán callbacks al bot, lo que te permitirá saber que el pago fue exitoso. Verás estos callbacks en el sistema como mensajes del usuario. Para evitar que el usuario los envíe, consisten en los primeros 10 caracteres de la clave secreta y el postscript \_success, por ejemplo: **16831CF4b5\_success**

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

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

Además, tras un pago exitoso, la variable coinpayments\_payment\_completed se establece en True.

Por ejemplo, puedes procesar un pago exitoso en un bloque condicional y mostrar el mensaje correspondiente al usuario:

<figure><img src="/files/77ab5b8f8684995823bb458afebd9e21fb59bb36" alt=""><figcaption></figcaption></figure>

Después de completar el pago, la **coinpayments\_payment\_callback** se agregará al cliente una variable que contiene los datos de la respuesta del sistema de pago a la transacción completada. Puedes extraer los datos necesarios del diccionario resultante usando la **get** .

## Cómo comprobar el estado del pago

Para comprobar el estado del pago, usa **coinpayments\_get\_payment\_status()** método en el campo Calculadora.

Ejemplo:

<figure><img src="/files/5e043e69adcf68de55107703dd91715f296c0980" alt="" width="563"><figcaption></figcaption></figure>

> **Ejemplo de estado**:
>
> Esperando los fondos del comprador...
>
> Fondos recibidos y confirmación de envío en breve…
>
> Completado


---

# 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/pago/coinpayments.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.
