- Cómo conectar
- Cómo generar un enlace de pago
- Cómo procesar el resultado
- Cómo verificar el estado del pago
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 la API y la clave pública de la API. También necesitará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

En la primera pestaña, copia el ID del vendedor. (seller ID)
A continuación, ve a la pestaña "Seller Settings" y crea e ingresa una clave secreta IPN - IPN secret (Esto se utiliza para verificar que el webhook proviene de nosotros). Usa una cadena segura y compleja que sea difícil de adivinar.
El enlace IPN es la URL para los webhooks, agrega lo siguiente: https://chatter.salebot.pro/coinpayments\\_callback/result

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

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

Debes ingresar los datos recibidos.

Para generar un enlace de pago, debes establecer el valor de las variables requeridas:
Después de eso, debes establecer el valor de la variable payment_sum (por ejemplo, 10 o 0.0055 (¡separado por un punto!)), y la variable coinpayments_pay_url aparecerá inmediatamente después. Esta variable se puede mostrar 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 personalizar 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.

Cómo generar un enlace de pago
Crea un enlace de pago por el monto de 0.0256

Presta atención:
- Primero, especifica la dirección de correo electrónico
-Luego los parámetros opcionales first_name, payment_description, etc.
- Finalmente, asigna un valor a la variable payment_sum.
Ten en cuenta que primero configuramos las variables para los ajustes, luego payment_sum. Las variables se pueden configurar antes en la cadena, no necesariamente en un solo bloque; esto es solo un ejemplo.
A continuación, mostramos la variable coinpayments_pay_url en el lugar adecuado, que contiene el enlace.

Para realizar un pago repetido, debes restablecer payment_sum, el enlace generado anteriormente, y luego reasignar la variable payment_sum para obtener un nuevo enlace.
Cómo procesar el resultado
Después de un pago exitoso, se enviarán callbacks al bot, que te informarán que el pago fue exitoso. Ves 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 posfijo _success, por ejemplo: 16831CF4b5_success
Estos callbacks NO SON VISIBLES para el usuario, se muestran solo al operador.
El tipo de comparación debe ser "Coincidencia exacta"
Además, después de 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:

Después de que se complete el pago, se agregará al cliente la variable coinpayments_payment_callback, que contiene los datos de la respuesta del sistema de pago a la transacción completada. Puedes extraer los datos requeridos del diccionario resultante usando el método get.
Cómo verificar el estado del pago
Para verificar el estado del pago, usa el método coinpayments_get_payment_status() en el campo Calculadora.
Ejemplo:

Ejemplo de estado:
Esperando fondos del comprador...
Fondos recibidos y confirmados, enviándote en breve...
Completado