# Wayforpay

{% hint style="info" %}

* Inscription rapide et confirmation du commerçant
* Inscription du commerçant pour les particuliers sans site web
* Pourcentage unifié pour les particuliers et les personnes morales – 2,5 %
* Disponibilité de Google Play et Apple Pay
  {% endhint %}

### **Comment connecter**

Pour connecter le système de paiement wayforpay, vous aurez besoin de 3 valeurs :

1. identifiant du commerçant
2. clé secrète du commerçant
3. le nom de domaine du site web du commerçant.

Accédez à votre compte personnel -> paramètres de la boutique **<https://m.wayforpay.com/mportal/merchant/list>**

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

Copiez les données et allez dans les paramètres de Mavibot.

Ouvrez la section « Acquisition », sélectionnez wayforpay.

<figure><img src="/files/8c0ae31cae004a9e57205c0c586ef33569d8a6cf" alt=""><figcaption></figcaption></figure>

Vous devez saisir les données reçues dans le formulaire qui s'ouvre :

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

Pour générer un lien de paiement, vous devez définir la valeur de la **payment\_sum** variable (par exemple, 150 ou 100,55 ; si le montant est fractionnaire, il est alors séparé par un point) :

<figure><img src="/files/890b8934605ba1dbab4b679861ccc367033baa3d" alt=""><figcaption></figcaption></figure>

Juste après cela, la **wayforpay\_pay\_url** variable apparaîtra. Cette variable peut être affichée dans le message avec un lien ou placée sur le bouton avec le texte « Payer » :

Option 1. Le lien de paiement dans le bouton :

<figure><img src="/files/16988b321f931ab1ad8fd9fed782706487e47923" alt=""><figcaption></figcaption></figure>

Option 2. Le lien de paiement se trouve dans le champ url de la pièce jointe :

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

Le lien ressemble à :

<https://secure.wayforpay.com/invoice/id1bbb2ad0375>

{% hint style="warning" %}
Par défaut, <mark style="color:red;">USD (dollars)</mark> est définie ; si vous avez besoin d'une autre devise, vous devez définir la valeur de la variable de devise.
{% endhint %}

Aussi, avant de définir la valeur de la **payment\_sum** variable, vous pouvez définir les variables facultatives suivantes pour configurer le paiement.

**currency** - est la devise par défaut de la commande, UAH (valeurs possibles : USD, EUR, RUB)

**session\_timeout** - durée de vie du lien en secondes, la valeur par défaut est 3600 (1 heure)

**product\_name** - nom du produit

**language** - langue de la page de paiement, la valeur par défaut est UA (valeurs possibles : RU, EN)\
\
**buyer\_name** - nom du client

**buyer\_email** - e-mail du client

**buyer\_first\_name** - nom du client

**buyer\_last\_name** - nom de famille du client

Voici à quoi ressemble un lien vers la page de paiement.

![Exemple de création d'un lien de paiement](https://lh6.googleusercontent.com/Qsm1KH-AI7U8pv_6AjddIF3rWTlidd-TCKepv0LtbxbpEHBL72YbrQ-Yzb-UvI64-ih_XVqb9kjVCRcix6B5rWFK-AWgNLEbHgsaLCZvMHXoH7xHmSrnsZz-qKB0wHH67M0u8gyR)

Créons un lien de paiement pour un montant de 1 <mark style="color:red;">USD</mark> et une durée de validité de 2 heures :

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

{% hint style="info" %}
**Attention :** \
\- Tout d'abord, indiquez les paramètres facultatifs  **product\_name** etc. pour les adresses\
\- Et enfin, attribuez la valeur de la **payment\_sum** variable.
{% endhint %}

Veuillez noter que nous définissons d'abord les variables pour les paramètres, puis payment\_sum. Les variables peuvent être définies plus tôt dans la chaîne, plutôt que dans un seul bloc ; ceci est un exemple.

Ensuite, dans le bloc suivant, nous affichons la **wayforpay\_pay\_url** variable, qui contient un lien (par exemple, un lien dans le texte) :

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

Le bot fonctionnera comme suit :

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

### Comment traiter le résultat

Après un paiement réussi, des rappels seront envoyés au bot, ce qui vous permettra de savoir que le paiement a réussi. Vous voyez ces rappels dans le système sous forme de messages de l'utilisateur ; afin que l'utilisateur ne puisse pas les envoyer, ils se composent des 10 premiers caractères de la clé secrète et du suffixe \_success, par exemple :  **flk3409ref\_success**

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

{% hint style="info" %}
Ces rappels NE SONT PAS VISIBLES pour l'utilisateur, ils sont affichés uniquement à l'opérateur.
{% endhint %}

Le type de comparaison doit être « Correspondance exacte »

De plus, après un paiement réussi, la variable wayforpay\_payment\_completed est définie sur True.

Par exemple, vous pouvez traiter un paiement réussi dans un bloc conditionnel et afficher le message correspondant à l'utilisateur :

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

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

{% hint style="info" %}
Si vous ne voulez pas sortir le client du schéma principal du chatbot, utilisez le bloc « Sans état avec condition ». Vous ne pouvez pas accéder à ce bloc, donc le client ne sera pas retiré de l'entonnoir principal après le paiement et recevra une notification de paiement réussi.

Et si vous devez poursuivre l’entonnoir avec une réaction à un paiement réussi, utilisez alors le bloc « Condition de départ », puis le client passera du bloc de paiement au bloc « Condition de départ », à partir duquel vous pourrez poursuivre l’entonnoir.
{% endhint %}

{% hint style="success" %}
Plus d'informations sur les blocs conditionnels sont fournies dans l'article du même nom
{% endhint %}

Une fois le paiement effectué, la variable **wayforpay\_callback\_data** variable sera ajoutée au client et contiendra les données de la réponse du système de paiement pour la transaction effectuée. Vous pouvez extraire les données nécessaires du dictionnaire obtenu à l’aide de la **get** .

## Fonctions pour travailler avec la calculatrice

### Pour les paiements récurrents

wayforpay\_recurrent\_payment(amount, currency, session\_timeout, product\_name, language, buyer\_name, buyer\_email, regular\_date\_next, regular\_date\_end, regular\_count, regular\_mode) - génère un lien pour un paiement récurrent.&#x20;

<table><thead><tr><th width="303.85546875">Paramètre</th><th>Description</th></tr></thead><tbody><tr><td>amount</td><td>montant du paiement</td></tr><tr><td>currency</td><td>devise. Par défaut : UAH (valeurs possibles : USD, EUR, RUB). Paramètre facultatif.</td></tr><tr><td>session_timeout</td><td>durée de vie du lien en secondes. Par défaut : 3600 (1 heure). Paramètre facultatif.</td></tr><tr><td>product_name</td><td>nom du produit. Paramètre facultatif.</td></tr><tr><td>language</td><td>langue de la page de paiement. Par défaut : UA (valeurs possibles : RU, EN). Paramètre facultatif.</td></tr><tr><td>buyer_name</td><td>nom du client. Nom facultatif.</td></tr><tr><td>buyer_email</td><td>E-mail du client. Paramètre facultatif.</td></tr><tr><td>regular_date_next</td><td>date de la prochaine transaction automatisée. Par défaut : un mois après la création du lien. Paramètre facultatif.</td></tr><tr><td>regular_date_end</td><td>date de fin de la transaction automatisée. Par défaut : un an après la création du lien. Peut être omise si le paramètre regular_count est spécifié. Paramètre facultatif.</td></tr><tr><td>regular_count</td><td>nombre de transactions automatisées. Si spécifié, le paramètre regular_date_end sera ignoré. Paramètre facultatif.</td></tr><tr><td>regular_mode</td><td>intervalle de paiement récurrent. Paramètre facultatif. Valeurs possibles : <br>- once - paiement unique<br>- daily - quotidien<br>- weekly - hebdomadaire<br>- quarterly - tous les 3 mois après la date du premier paiement<br>- monthly - mensuel<br>- bimonthly - une fois tous les 2 mois<br>- halfyearly - une fois tous les 6 mois<br>- yearly  - une fois par an</td></tr></tbody></table>

### Annulation du paiement récurrent

wayforpay\_delete\_recurrent() - annule les futurs paiements automatiques du client. Renvoie « Ok » en cas d'exécution réussie.

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

{% hint style="success" %}
Vous pouvez également utiliser les blocs « Déclencheur de démarrage » et « État » (l'exemple utilise les blocs « Sans état avec condition » et « Sans état »).

Si vous ne souhaitez pas retirer le client du flux principal du chatbot, utilisez le bloc « Sans état avec condition » — ce bloc ne peut pas être saisi manuellement, donc le client restera dans l'entonnoir principal après le paiement tout en recevant une notification de paiement réussi.

Si vous devez poursuivre l'entonnoir en fonction du paiement réussi, utilisez le bloc « Déclencheur de démarrage ». Dans ce cas, le client passera du bloc de paiement au bloc « Condition du déclencheur de démarrage », à partir duquel vous pourrez continuer l'entonnoir.
{% endhint %}


---

# 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/paiement/wayforpay.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.
