Registro
Después de registrarse en el servicio https://auth.inxy.io/ vaya al menú API de pasarela de pago y complete la siguiente información:
- Nombre de la billetera y descripción, icono.
- El enlace al sitio web se coloca a su solicitud.
Se deben marcar todos los tipos de criptomonedas aceptados y hacer clic en Guardar cambios


Después de guardar, se abrirá un campo de datos de comunicación.
A continuación, genere una clave API haciendo clic en Generar(1) e ingrese el código enviado a su correo electrónico.
La variable recibida debe almacenarse en un lugar seguro. Copie también la Clave secreta allí.
Las claves, en caso de pérdida, se pueden regenerar (si esto sucede, no olvide cambiar los datos en el proyecto).
En el campo Postback Url (2), especifique la url para webhooks https://chatter.salebot.pro/inxy\\_callback/result

Configuración de conexión
Luego vaya a Mavibot → sección "Adquirencia" → INXY y haga clic en conectar. Ingrese las claves API y Secreta recibidas en los campos.


Generación de un enlace de pago
Para generar un enlace de pago, debe establecer el valor de la variable payment_sum (por ejemplo, 1). Después de eso, aparecerá la variable inxy_pay_url. Esta variable se puede mostrar con un enlace o colocarse en el botón "Pagar".
¡¡¡PRESTE ATENCIÓN!!! ¡El sistema trabaja con dólares! El monto especificado en payment_sum será aceptado por el sistema de pago INXY como dólares.
El enlace se ve así: https://pay.inxy.io/sessions/umLf9cJWBRiaNwowGCE1
Además, antes de establecer el valor de la variable payment_sum, puede establecer las siguientes variables opcionales para configurar el pago:
inxy_currency - la criptomoneda en la que se realizará el pago.
Puede especificar una de las criptomonedas posibles que marcó al crear la clave API. Si lo deja en blanco, el pagador elegirá la criptomoneda entre las que se han marcado..
Valores disponibles: 'BTC', 'ETH', 'LTC', 'DOGE', 'USDT', 'USDC', 'DAI'

inxy_description – descripción del pago

Presta atención! Primero, se establecen variables adicionales para la configuración, luego payment_sum.
Las variables se pueden establecer antes en la cadena, no todas en un solo bloque. Y la variable inxy_pay_url, que contiene el enlace, debe mostrarse en el lugar correcto. Al hacer clic en él, se abrirá un formulario de pago.

¡Presta atención! La línea de monto total contiene un valor en dólares igual a payment_sum. Abajo en total crypto amount - está el valor en la criptomoneda seleccionada. Cambia con frecuencia dependiendo del tipo de cambio actual. Este es el valor que el cliente necesita pagarle desde su billetera.

¡¡¡Presta atención!!! La dirección de la billetera para el pago, dentro de una misma sesión, se reserva para el cliente solo por 2 horas. Recomiende al cliente que se asegure de que el tiempo no haya expirado y que la dirección de la billetera sea actual al momento del pago. Si el tiempo de la sesión ha terminado, entonces debe reiniciar el proceso de pago.
Procesamiento del resultado del pago (callback de pago)
Después de un pago exitoso, se enviará un callback al bot, que le informará que el pago fue exitoso. Usted ve este callback en el sistema como un mensaje del usuario, para que el usuario no pueda enviarlos. Este callback NO ES VISTO por el usuario mismo, se muestra solo al operador. INXY tiene varios tipos de callbacks:
- Los callbacks exitosos consisten en los primeros 10 caracteres del token y el postscript de éxito, por ejemplo: uc8zsjNN1x_success

Este callback se recibe si el cliente ha pagado completamente el monto y no hay problemas con el pago. Junto con este callback, se agregará la variable inxy_payment_completed a las variables del proyecto, que se establece en True. Y también la variable inxy_payment_status tomará el valor paid.
La variable inxy_payment_status puede cambiar su valor durante todo el período de procesamiento del pago. Después de que el usuario abra el formulario, tomará el estado waiting_payment, luego durante el procesamiento de su pago tomará el valor waiting_confirmation, y después del procesamiento exitoso tendrá el valor paid o partially_paid.
Al procesar un callback, el tipo de comparación debe ser "Coincidencia exacta".
Por ejemplo, puede procesar un pago exitoso en un bloque condicional y mostrar el mensaje correspondiente al usuario:

2. Hay casos en que el tipo de cambio de la criptomoneda ha cambiado o la billetera ha retirado una comisión de la operación, como resultado de lo cual se acredita un monto incompleto en su cuenta. En este caso, la variable inxy_payment_status tomará el valor partially_paid y se enviará un callback al sistema.

En este caso, deberá enviar una notificación al cliente solicitando un pago adicional.
Por ejemplo, puede establecer una condición para el inicio del callback y, después de obtenerlo, enviar nuevamente la url ya generada con un enlace de pago al cliente, o establecer una condición para que el bloque se active cuando la variable inxy_payment_status sea igual a partially_paid.

Tenga en cuenta que el enlace de pago solo es válido por 2 horas! Si el cliente no tiene tiempo para pagar la parte restante, ya no podrá abrirlo. Dado que INXY ya procesará el primer pago incompleto en esta etapa, el dinero no se reembolsará al cliente. Para devolverlos, deberá ir a su cuenta personal de INXY y realizar una operación de reembolso.
Creación de suscripción
Se pueden crear suscripciones en el sistema INXY. Para hacer esto, asigne cualquier valor a la variable inxy_subscription_payment, y luego se creará una suscripción mensual.
Si desea especificar un período diferente, use las siguientes variables: inxy_subscription_interval igual a 'day' - establece el intervalo igual a días (por defecto, es un mes)
inxy_subscription_period - especifique una variable del 1 al 30 para establecer la frecuencia.
Por ejemplo, para crear un cargo de suscripción una vez cada 15 días, debe establecer inxy_subscription_interval ='day' e inxy_subscription_period=15, y para que el pago se cobre cada seis meses, solo necesita especificar inxy_subscription_period=6 (ya que inxy_subscription_interval es un mes por defecto)

Al seguir el enlace, el usuario verá la misma página de pago, pero con algunas diferencias: primero, habrá una nota al lado indicando que el pago es parte de una suscripción con la frecuencia especificada; y segundo, la página de pago ofrecerá al cliente la opción de pagar dos o tres montos por adelantado.
Características del sistema de pago INXY: Si el cliente paga x2 o x3 del monto, Mavibot recibirá una notificación sobre el pago de solo uno de ellos. El monto restante se enviará al saldo del cliente, de donde se retirará el monto en débitos posteriores. Dado que el tipo de cambio de la criptomoneda cambia constantemente, como resultado, este monto puede no ser suficiente para el débito posterior, lo que llevará a una situación con una suscripción pagada incompletamente. En este caso, recibirá un callback “fail” y puede configurar un recordatorio para el cliente.
No puede haber pago parcial según el cronograma. El saldo se verifica antes del pago, y si el saldo no es suficiente, el dinero no se debitará de la cuenta del cliente.

Después de una suscripción exitosa, la variable inxy_subscription_id aparecerá en las variables del cliente, indicando el número de suscripción y inxy_subscription_status con su estado.

Cancelación de suscripción
Para cancelar su suscripción, use la función inxy_remove_subscription(inxy_subscription_id). Inserte el ID de suscripción inxy_subscription_id en la función, y la suscripción se cancelará.

En caso de éxito, recibirá un callback ‘Estado de suscripción inxy_subscription_id - eliminada’ y la variable inxy_subscription_status cambiará al valor correspondiente.



