# INXY Payments

## Inscription

Après vous être inscrit sur le service <https://auth.inxy.io/>, allez dans API de passerelle de paiement dans le menu de gauche et renseignez les données suivantes : le nom et la description du portefeuille ainsi que l’icône. Le lien vers votre site est facultatif. Sélectionnez toutes les cryptomonnaies que vous souhaitez accepter à l’aide des cases à cocher, puis cliquez sur Enregistrer les modifications

<br>

<figure><img src="/files/2660fc048fc83cc68d769dcba1df3cd820da5805" alt=""><figcaption></figcaption></figure>

Après l’enregistrement, la fenêtre avec les données de connexion s’ouvrira. Ensuite, générez la clé API en cliquant sur le bouton Générer (1) et saisissez le code envoyé à votre adresse e-mail. Enregistrez la variable obtenue en lieu sûr. Copiez la Secret Key générée au même endroit. En cas de perte, les clés peuvent être régénérées (dans ce cas, n’oubliez pas de modifier les données dans le projet). Saisissez l’URL des webhooks <https://chatter.salebot.pro/inxy\\_callback/result> dans le champ Postback URL (2).

<br>

<figure><img src="/files/3432a7ed4ea85db898ca4268a88ca7630033573a" alt=""><figcaption></figcaption></figure>

## Configuration de la connexion

Ensuite, allez dans Salebot — Systèmes de paiement — INXY et cliquez sur le bouton Connecter. Saisissez les clés API et Secret reçues dans les champs.

capture d’écran de la connexion depuis Salebot

## Génération du lien de paiement

Pour générer un lien de paiement, saisissez la valeur de la variable payment\_sum (par ex. : 1), après quoi la variable inxy\_pay\_url apparaîtra. Vous pouvez ajouter cette variable à l’écran sous forme de lien ou la mettre dans le bouton Payer.

{% hint style="warning" %} <mark style="color:red;">**ATTENTION !**</mark> Le système fonctionne avec l’USD ! Le montant dans la variable payment\_sum est considéré comme étant en USD dans le système de paiement INXY.
{% endhint %}

Le lien ressemble à ceci : <https://pay.inxy.io/sessions/umLf9cJWBRiaNwowGCE1><br>

De plus, **avant de saisir le montant pour la variable payment\_sum**, vous pouvez saisir ce qui suit **variables optionnelles** pour la configuration du paiement\
**inxy\_currency** — cryptomonnaie qui sera utilisée pour le paiement. Vous pouvez saisir l’une des cryptomonnaies disponibles que vous avez choisies à l’aide des cases à cocher lors de la génération de la clé API. Si elle est laissée vide, les joueurs choisissent eux-mêmes la cryptomonnaie dans la liste des cryptomonnaies sélectionnées. Valeurs disponibles : ‘BTC’,‘ETH’,‘LTC’,‘DOGE’,‘USDT’,‘USDC’,‘DAI’

<figure><img src="/files/5713b140e6c1e90c2bac4db13ec0bb079ed69f55" alt=""><figcaption></figcaption></figure>

**inxy\_description** – description du paiement.

<figure><img src="/files/4dae8a5b915fe09a2e7343dd79b577b934e4eb02" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %} <mark style="color:red;">**ATTENTION !**</mark> D’abord, vous saisissez les variables facultatives pour la configuration, puis payment\_sum.
{% endhint %}

Les variables peuvent être saisies plus tôt dans la chaîne, et non dans un seul bloc. En revanche, la variable inxy\_pay\_url, qui contient le lien, doit être affichée au bon endroit. Ce lien ouvre le formulaire de paiement.

<figure><img src="/files/5e95ce775e1e352a02fcd3dada37685fc8fbf7df" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %} <mark style="color:red;">**ATTENTION !**</mark> La ligne Montant total affiche la valeur en USD, qui correspond à payment\_sum. La ligne Montant total en crypto ci-dessous affiche la valeur dans la cryptomonnaie choisie. Elle varie en fonction du taux de change actuel. C’est le montant que votre client doit vous payer depuis son portefeuille.
{% endhint %}

<figure><img src="/files/e568e16d57abd613009a4707144f714f42dcd21f" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %} <mark style="color:red;">**ATTENTION !**</mark> L’adresse du portefeuille pour le paiement au cours d’une session unique est réservée au client pendant seulement 2 heures. Il est recommandé au client de vérifier que le temps n’est pas écoulé et que l’adresse du portefeuille est toujours valide au moment du paiement. Si le temps de la session est écoulé, tout le processus de paiement doit être recommencé depuis le début.
{% endhint %}

## Callback de paiement

Après le paiement réussi, le bot recevra un callback indiquant que le paiement a bien été effectué. Vous voyez ce callback dans le système comme un message de l’utilisateur, afin que l’utilisateur ne puisse pas l’envoyer. Les utilisateurs eux-mêmes NE PEUVENT PAS VOIR le callback, seul l’opérateur peut le voir. INXY dispose de plusieurs types de callbacks :

1. Les callbacks de succès se composent des 10 premiers symboles du jeton suivis de « success », par ex. : uc8zsjNN1x\_success

<figure><img src="/files/d090f393632b63a92b4de5275ec0661f18b5cb78" alt=""><figcaption></figcaption></figure>

Un tel callback est envoyé si le client a payé le montant total et qu’aucun problème n’est survenu pendant le paiement. Avec ce callback, deux variables seront ajoutées au projet : inxy\_payment\_completed prendra la valeur True ; et **inxy\_payment\_status** avec la valeur payée.

{% hint style="warning" %}
Pendant le processus, la **inxy\_payment\_status** variable change de valeur. Après l’ouverture du formulaire par l’utilisateur, elle passera à waiting\_payment ; pendant le traitement du paiement, elle passera à waiting\_confirmation ; et après le traitement réussi, elle prendra la valeur paid ou partially\_paid.
{% endhint %}

Pendant le traitement du callback, le type de comparaison doit être Correspondance exacte. Par ex. : vous pouvez faire du traitement de paiement réussi un bloc avec condition et afficher un message pertinent à l’utilisateur :

<figure><img src="/files/ad0685bbf4b24ffb9b290c76cbf6f9348e898968" alt=""><figcaption></figcaption></figure>

2\. Parfois, les taux de change des cryptomonnaies changent ou les portefeuilles prélèvent des frais supplémentaires sur les opérations, de sorte que le montant final reçu n’est pas complet. Dans de tels cas, la variable inxy\_payment\_status prendra la valeur partially\_paid et le système recevra un callback qui ressemble à ceci :

\
Dans ce cas, vous devrez envoyer au client un message lui demandant de couvrir le montant manquant. Par ex. : vous pouvez définir une condition au début de votre callback et, lors de sa réception, envoyer au client une URL pré-générée avec un lien de paiement, ou vous pouvez définir une condition pour que le bloc s’active lorsque la valeur de la variable inxy\_payment\_status est **partially\_paid**.

<figure><img src="/files/31086d5c0cb3839433a6c05aa21d4e20d515a75d" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
N’oubliez pas que le lien de paiement n’est valable que pendant 2 heures ! Si le client ne règle pas à temps le montant manquant, il ne pourra plus être ouvert. Comme INXY traitera à ce stade le premier paiement partiel, l’argent ne sera pas retourné au client. Pour le restituer, vous devrez aller dans votre compte INXY et effectuer l’opération de remboursement.
{% endhint %}

## Création d’un abonnement

Le système INXY permet aux utilisateurs de créer des abonnements. Pour cela, ajoutez n’importe quelle valeur à **inxy\_subscription\_payment** la variable, et un abonnement mensuel sera créé. Si vous souhaitez définir une autre période, utilisez les variables suivantes : \
**inxy\_subscription\_interval** égal à ‘day’ — créera un intervalle d’abonnement égal à des jours (la valeur par défaut est month)\
**inxy\_subscription\_period** — ajoutez une variable égale de 1 à 30 pour définir la période. Par ex. pour créer un paiement d’abonnement tous les 15 jours, définissez inxy\_subscription\_interval =‘day’ et inxy\_subscription\_period=15, et pour que le paiement soit effectué deux fois par an, définissez inxy\_subscription\_period=6 (car inxy\_subscription\_interval est égal à month par défaut)

<figure><img src="/files/6b6788951deb195610de092130f512040d584e49" alt=""><figcaption></figcaption></figure>

Le lien ouvrira également le formulaire de paiement, mais il sera différent : d’abord, sur le côté, il sera indiqué que le paiement est basé sur un abonnement avec la période affichée ; ensuite, le formulaire suggérera au client d’ajouter un acompte pour plusieurs paiements à l’avance.

{% hint style="warning" %}
**Spécificités INXY**: Si le client paie х2 ou х3 du montant, Salebot recevra un message concernant un montant unique. Le reste sera crédité sur le solde du client et sera utilisé pour les paiements à venir. Comme le taux de change des cryptomonnaies varie, à terme ce montant peut être insuffisant pour l’un des paiements suivants, ce qui entraînera un abonnement impayé. Dans un tel cas, vous recevrez un callback indiquant « fail » et vous pourrez mettre en place un rappel pour votre client.
{% endhint %}

{% hint style="warning" %}
Un abonnement ne peut pas être payé partiellement. Le solde du client est vérifié avant le paiement. S’il n’y a pas assez de fonds, le paiement n’est pas effectué du tout.
{% endhint %}

<figure><img src="/files/454b1456c4407076343c1701b8ba64d9a6d16254" alt=""><figcaption></figcaption></figure>

Après un abonnement réussi, les variables du client incluront inxy\_subscribtion\_id (numéro de référence) et inxy\_subscription\_status.

<figure><img src="/files/62e360d880f9693e2664130dea06e20655b05e62" alt=""><figcaption></figcaption></figure>

## Annulation de l’abonnement

Pour annuler un abonnement, utilisez la fonction suivante **inxy\_remove\_subscription(inxy\_subscription\_id)**. Saisissez le numéro d’identification de l’abonnement comme inxy\_subscribtion\_id dans la fonction et l’abonnement sera annulé.

<figure><img src="/files/2017266eb47a088a12e4768ab4606074058bb054" alt=""><figcaption></figcaption></figure>

En cas de succès, vous recevrez un callback « Subscription status inxy\_subscription\_id - deleted » et la variable inxy\_subscription\_status changera pour la valeur correspondante.

<figure><img src="/files/9cb1997c53cdb6a53686cd42f5cb5ccd679c7a2b" alt=""><figcaption></figcaption></figure>


---

# 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/fr/integrations/payment/inxy.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.
