Comment connecter Prodamus

Pour connecter Prodamus, vous avez besoin de l'URL du formulaire de paiement et d'une clé secrète.

L'URL du formulaire de paiement est fournie après l'inscription. Exemple :

demo.payform.ru

Vous pouvez obtenir la clé secrète dans votre compte Prodamus. Vous devez également spécifier l'URL vers laquelle les notifications de paiement seront envoyées.

Instructions détaillées sur la configuration

URL de notification :
https://chatter.mavibot.ai/prodamus_callback/result

Cette URL doit être spécifiée à deux endroits dans les paramètres.

Sur la page principale des paramètres, vous pouvez sélectionner le mode de fonctionnement du formulaire de paiement :

  • Mode démo sans paiements réels
  • Mode réel pour accepter les paiements

L'URL de notification doit être spécifiée dans deux sections des paramètres du système de paiement :

  • Dans l'onglet Paramètres du formulaire pour les paiements uniques
  • Dans l'onglet Abonnements pour les paiements par abonnement

URL de notification :
https://chatter.mavibot.ai/prodamus_callback/result

Pour configurer les paiements par abonnement, ouvrez l'onglet Abonnements et saisissez l'URL de notification :

https://chatter.mavibot.ai/prodamus_callback/result

Important : Après avoir saisi l'URL, assurez-vous de cliquer sur Enregistrer.

Pour connecter Prodamus dans Mavibot, ouvrez la section Acquiring.

Ensuite, saisissez l'URL du formulaire de paiement et la clé secrète dans les champs correspondants.

Important : N'incluez pas https:// lors de la saisie de l'URL du formulaire de paiement.

La connexion est maintenant terminée. Voyons maintenant comment utiliser cette fonctionnalité.

Création d'un lien de paiement

Bouton de paiement

Un lien de paiement peut être généré à l'aide d'un bouton avec la fonction Paiement.

Voir le guide sur la création d'un bouton de paiement :
/docs/chatbot-builder-buttons-payment-button

Les sections ci-dessous décrivent tous les paramètres disponibles du bouton.

Paramètres obligatoires

Pour générer un lien de paiement, les champs suivants sont obligatoires :

  • Montant
  • Nom du produit
  • Produits pour le reçu (obligatoire uniquement si vous n'avez pas votre propre caisse en ligne et souhaitez que Prodamus génère des reçus fiscaux)

Lorsque le client ouvre la page de paiement, les informations sur le produit et le prix sont déjà remplies. Le client n'a qu'à saisir ses coordonnées.

Si l'e-mail et/ou le numéro de téléphone du client sont spécifiés dans les paramètres du bouton, ils seront également préremplis sur la page de paiement.

Paramètres du bouton

Texte – Le texte affiché sur le bouton de paiement.

Fonction – Sélectionnez Paiement pour générer un lien de paiement.

Système de paiement – Affiche les systèmes de paiement connectés au projet.

Si aucun système de paiement n'est connecté, ce type de bouton n'est pas disponible.

Nom du produit (obligatoire) – Spécifiez le nom exact du produit.

Par exemple, au lieu de :

Téléphone

utilisez :

Smartphone Xiaomi, Modèle ...

Remarque : Les guillemets doubles (") ne sont pas autorisés dans le nom du produit. Supprimez-les ou remplacez-les par des guillemets simples.

Montant (obligatoire) – Le montant du paiement.

Paramètres supplémentaires

Cliquez sur Informations supplémentaires pour configurer les champs facultatifs :

  • Description de la commande
  • Réduction (RUB)
  • Variable e-mail du client
  • Variable téléphone du client
  • Date d'expiration du lien
  • ID du produit d'abonnement
  • Produits pour le reçu

Notifier au clic – Activez cette option si vous souhaitez recevoir une notification dans la conversation du client lorsqu'il clique sur le bouton de paiement.

Cette notification peut être utilisée pour construire une logique de chatbot supplémentaire.

De nombreux fournisseurs de paiement prennent en charge les caisses en ligne nécessaires à la conformité fiscale. Consultez la documentation de votre fournisseur de paiement pour obtenir des informations sur la génération de reçus et la fiscalisation.

La page de paiement ouverte par le bouton ressemble à ceci :

Paramètres supplémentaires du lien de paiement

Description de la commande – Le texte saisi dans ce champ est affiché sur la page de paiement dans la section Informations supplémentaires.

Réduction – Spécifiez le montant de la réduction en RUB. Les valeurs décimales sont prises en charge en utilisant un point comme séparateur (par exemple, 50.99).

Sur la page de paiement, la réduction est appliquée automatiquement. Le prix d'origine est barré et le montant réduit est affiché comme total du paiement.

Variable e-mail du client (facultatif si un numéro de téléphone est fourni) – L'adresse e-mail du client ou une variable la contenant, par exemple :

#{email}

Variable téléphone du client (facultatif si une adresse e-mail est fournie) – Une variable contenant le numéro de téléphone du client au format :

79000000000

Par exemple :

#{phone}

Une adresse e-mail ou un numéro de téléphone doit être fourni.

Date d'expiration du lien – Spécifiez la date d'expiration au format :

dd.MM.yyyy HH:mm

Exemple :

25.01.2021 11:00

Vous pouvez également utiliser une variable, par exemple :

#{link_expired}

ID du produit d'abonnement – Saisissez l'ID du produit d'abonnement pour créer un paiement récurrent.

Pour plus d'informations sur la création de produits d'abonnement, consultez la documentation Prodamus.

Si un ID de produit d'abonnement est spécifié :

  • le montant du paiement est ignoré ;
  • les informations sur le produit sont chargées à partir du produit d'abonnement dans Prodamus ;
  • le numéro de téléphone du client est requis pour la gestion de l'abonnement ;
  • le callback contient l'ID du produit d'abonnement après un paiement réussi.

Produits pour le reçu (conditionnellement obligatoire) – Obligatoire pour la fiscalisation des paiements via Prodamus si vous n'utilisez pas votre propre caisse en ligne.

Spécifiez la description du produit, le prix et un lien vers le contenu acheté.

Exemple :

Cours "Photographie avancée", prix 3000 RUB,
https://example.com/cours

Comportement en cas d'expiration du lien

Si vous spécifiez une date d'expiration du lien, le bouton de paiement se comporte différemment selon que le lien est toujours valide ou non.

Lien expiré

Si le client ouvre le lien de paiement après son expiration, le paiement ne peut pas être effectué et il verra le message suivant :

Remarque : La date d'expiration doit être postérieure à la date actuelle. Sinon, le client ne pourra pas effectuer le paiement.

Bouton de paiement inactif

Si le client demande le bouton de paiement après que le lien a déjà expiré, le bouton n'est pas affiché.

À la place, la variable client suivante est créée :

error_payment_button

Valeur :

Erreur : La date d'expiration du lien doit être postérieure à la date actuelle.

Nous vous recommandons de gérer cette situation dans le flux de votre chatbot.

Créez une condition qui vérifie :

error_payment_button == "Erreur : La date d'expiration du lien doit être postérieure à la date actuelle."

Si la condition est remplie, envoyez un message tel que :

Désolé, vous n'avez pas pu effectuer le paiement à temps. Le lien de paiement a expiré.

Variables client créées par le bouton de paiement

Lorsqu'un client reçoit un message contenant un bouton Paiement, Mavibot crée automatiquement les variables suivantes.

__payments

Une variable système qui stocke le montant du paiement et l'identifiant du lien de paiement généré. Elle est utilisée pour faire correspondre les callbacks reçus du système de paiement.

Important : Ne modifiez pas et ne supprimez pas la variable système __payments.

error_payment_button

Cette variable est créée automatiquement si une erreur se produit lors de la génération du bouton de paiement.

Elle contient soit le message d'erreur généré par Mavibot, soit l'erreur renvoyée par le système de paiement.

Les valeurs des variables deviennent disponibles après que le chatbot passe au bloc suivant.


Traitement des résultats de paiement

Paiement réussi

Après un paiement réussi, Mavibot reçoit automatiquement le callback suivant :

<10_premiers_caractères_de_la_clé_secrète>_success <montant_du_paiement>

Exemple :

ovg58keefc_success 44

Où :

  • ovg58keefc — les 10 premiers caractères de la clé secrète Prodamus.
  • _success — indique un paiement réussi.
  • 44 — le montant du paiement.

Les clients ne voient jamais les callbacks de paiement. Ils sont visibles uniquement dans la section Clients et peuvent être utilisés pour construire la logique du chatbot.

Exemple

Étape 1

Créez un bloc contenant le bouton Paiement.

Étape 2

Créez un bloc Déclencheur ou configurez une flèche menant au bloc suivant.

Collez le callback de paiement dans le déclencheur ou la condition de correspondance.

Le même callback peut également être configuré dans le bloc Condition initiale si votre chatbot nécessite un traitement global des paiements.

Important : Utilisez Correspondance exacte ou Contient des mots-clés comme type de correspondance.

Remarque : Si vous traitez les callbacks sur une flèche spécifique, assurez-vous que le client se trouve toujours dans le bloc contenant cette flèche lorsque le callback arrive. Sinon, la transition ne se produira pas. Pour les flux de chatbot où les clients peuvent se déplacer entre les blocs, il est recommandé de traiter les callbacks dans le bloc Condition initiale à la place.


Paiement d'abonnement réussi

Pour les produits d'abonnement, le format du callback est :

<10_premiers_caractères_de_la_clé_secrète>_success <id_du_produit_d_abonnement>

Exemple :

214009eefc_success 618117

Où :

  • 214009eefc — les 10 premiers caractères de la clé secrète.
  • _success — paiement réussi.
  • 618117 — l'ID du produit d'abonnement.


Paiement échoué

Si le paiement échoue, Mavibot reçoit le callback suivant :

<10_premiers_caractères_de_la_clé_secrète>_fail <montant_du_paiement>

Exemple :

ovg58keefc_fail 44

Où :

  • ovg58keefc — les 10 premiers caractères de la clé secrète.
  • _fail — paiement échoué.
  • 44 — le montant du paiement.

Remarque : Tous les fournisseurs de paiement n'envoient pas de callbacks pour les paiements échoués.


Non-concordance du montant du paiement

Si le montant payé diffère du montant spécifié dans le bouton de paiement, Mavibot reçoit le callback suivant :

<10_premiers_caractères_de_la_clé_secrète>_different_amounts <id_du_paiement>

Exemple :

ovg58keefc_different_amounts 123456

Où :

  • ovg58keefc — les 10 premiers caractères de la clé secrète.
  • _different_amounts — indique que le montant payé diffère du montant attendu.
  • 123456 — l'ID unique du paiement.

Fonction de calcul get_prodamus_payment_url

Vous pouvez générer un lien de paiement à l'aide de la fonction get_prodamus_payment_url dans le bloc Calculatrice.

Attribuez le résultat de la fonction à n'importe quelle variable.

Vous pouvez choisir n'importe quel nom de variable. Les captures d'écran ci-dessous utilisent des noms de variables d'exemple.

Le lien de paiement généré est stocké dans la variable et peut être utilisé dans un message ou attaché à un bouton.

Exemple de lien de paiement :

https://payform.ru/7p3JR8/

Exemple

Syntaxe de la fonction

your_variable = get_prodamus_payment_url(
    amount,
    product_name,
    expired,
    customer_phone,
    customer_email,
    discount,
    description,
    extra_params,
    products_for_receipt
)

Paramètres

Paramètre Description
amount Obligatoire. Montant du paiement. Accepte les entiers ou les valeurs décimales (par exemple, 25 ou 52.5).
product_name Obligatoire. Nom du produit.
expired Date d'expiration du lien de paiement. Formats pris en charge : dd.MM.yyyy ou dd.MM.yyyy HH:mm. Vous pouvez également utiliser des variables ou des expressions telles que current_date + 2. Passez '', "" ou None pour ignorer ce paramètre.
customer_phone Numéro de téléphone du client. Facultatif si customer_email est fourni. Passez '' ou "" pour ignorer.
customer_email Adresse e-mail du client. Facultatif si customer_phone est fourni. Passez '' ou "" pour ignorer.
discount Montant de la remise. Accepte les entiers ou les valeurs décimales (par exemple, 25 ou 63.5). Passez '' ou "" pour ignorer.
description Description du produit. Si omis, Prodamus utilise automatiquement Paiement pour la commande order_id. Passez '' ou "" pour ignorer.
extra_params Paramètres supplémentaires de l'API Prodamus non inclus dans les arguments de la fonction. Passez '', "" ou None pour ignorer.
products_for_receipt Données du reçu au format "description du produit - prix - URL du contenu acheté". Obligatoire si vous utilisez la fiscalisation Prodamus sans votre propre caisse en ligne.

Exemples de date d'expiration

Expire après deux jours :

expired = current_date + 2

Expire dans 30 minutes :

time = current_time + 30
expired = "#{current_date} #{time}"

Exemple de extra_params

extra_params = {
    "payments_limit": "3",
    "payment_method": "vsegdada_installment_0_0_6"
}

Consultez la documentation de l'API REST Prodamus pour la liste complète des paramètres pris en charge.


Exemple

extra_params = {
    "payments_limit": "3"
}

products_for_receipt = "Cours de photographie, prix 4999 RUB, https://example.com/course"

payment_link = get_prodamus_payment_url(4999, "Cours de photographie", "27.03.2023 17:00", "79167777771", "[email protected]", 20, "Le meilleur cours de photographie", extra_params, products_for_receipt)

Dans cet exemple :

  • extra_params contient des paramètres de paiement supplémentaires.
  • products_for_receipt contient les informations du reçu fiscal.
  • payment_link stocke l'URL de paiement générée.

Si plusieurs fonctions de lien de paiement sont utilisées dans le même bloc Calculatrice et que l'une d'elles échoue, l'erreur est écrite dans la variable error_payment_func. Seule l'erreur de la dernière fonction est stockée.

Génération d'un lien de paiement à l'aide de payment_sum

Remarque : La valeur de payment_sum est appliquée après toutes les variables facultatives telles que payment_description, product_name et autres.

Au lieu d'appeler get_prodamus_payment_url(), vous pouvez générer un lien de paiement simplement en attribuant une valeur à la variable payment_sum dans le bloc Calculatrice.

Après avoir attribué payment_sum, Mavibot crée automatiquement la variable prodamus_pay_url contenant le lien de paiement.

Exemple :

https://payform.ru/7p3JR8/

Vous pouvez afficher cette variable dans un message ou l'utiliser comme URL d'un bouton.

Variables facultatives

Les variables suivantes peuvent être définies avant d'attribuer payment_sum.

Variable Description
product_name Nom du produit. Si omis, la valeur par défaut est Paiement pour la commande order_id.
payment_description Description du produit affichée sur la page de paiement.
discount_value Montant de la remise. Exemple : 25 ou 50.25.
customer_phone Numéro de téléphone du client.
customer_email Adresse e-mail du client.
link_expired Date d'expiration du lien de paiement.
currency Devise de paiement. Valeurs prises en charge : rub, usd, eur, kzt. Doit être en minuscules.
payment_title Titre du paiement (jusqu'à 127 caractères). Par défaut : Paiement payment_id.
locale Langue de la page de paiement (par exemple, ru-RU, en-US, fr-FR).
products_for_receipt Informations du reçu. Obligatoire si vous utilisez la fiscalisation Prodamus sans votre propre caisse en ligne.
payment_sum Obligatoire. Montant du paiement.

Expiration du lien

Vous pouvez spécifier la date d'expiration de plusieurs manières.

Date spécifique :

25.01.2021

Date et heure spécifiques :

25.01.2021 12:23

Utilisation de variables :

time = current_time + 30
link_expired = "#{current_date} #{time}"

Ou :

link_expired = current_date + 2

Exemple

Tout d'abord, définissez le montant du paiement.

Ensuite, utilisez la variable prodamus_pay_url générée partout où vous devez envoyer le lien de paiement.

Méthodes de paiement disponibles

La variable prodamus_available_payment_methods doit être définie avant payment_sum.

Les valeurs prises en charge incluent :

Valeur Description
AC Cartes bancaires russes
ACkz Cartes bancaires kazakhes
ACf Cartes bancaires de la CEH (hors Russie)
ACEURNMBX Cartes en EUR (hors Russie et Biélorussie)
SBP Système de paiement plus rapide (Russie)
QW Portefeuille QIWI
PC YooMoney
GP Terminal de paiement
sbol Sberbank Online
invoice Paiement par facture
installment Paiement échelonné Prodamus
credit Crédit T-Bank
monetaworld Cartes internationales (hors Russie)

Plusieurs méthodes de paiement peuvent être spécifiées en les séparant par une barre verticale (|).

Exemple :

prodamus_available_payment_methods = "AC|PC|QW"

Devise

Vous pouvez spécifier la devise de paiement à l'aide de la variable prodamus_currency.

Valeurs prises en charge :

  • kzt
  • usd
  • eur

La page de paiement générée affichera le montant dans la devise sélectionnée.

Lors du traitement du rappel payment_callback, faites attention aux champs suivants :

  • currency
  • currency_sum

Ils contiennent la devise de paiement et le montant payé.

Si aucune méthode de paiement n'est spécifiée, la page de paiement n'affichera aucune méthode de paiement disponible. Activez d'abord les méthodes de paiement requises dans votre compte Prodamus.

Traitement des résultats de paiement

Rappels de paiement

Après un paiement réussi ou échoué, Mavibot reçoit des rappels qui peuvent être utilisés pour déterminer le statut du paiement.

Les rappels apparaissent dans la conversation sous forme de messages système. Les clients ne voient ni n'envoient jamais ces messages.

Exemples :

Paiement réussi :

453e8fba8b7cef9ce58dc6e18e25b39ad5a05748175a3f205f2b084acbfc3b66_success

Paiement échoué :

453e8fba8b7cef9ce58dc6e18e25b39ad5a05748175a3f205f2b084acbfc3b66_fail

Après un paiement réussi, la variable client suivante est automatiquement créée :

prodamus_payment_completed = True

Remarque : Les rappels sont reçus avec un léger délai. Après avoir envoyé le lien de paiement, il est recommandé d'informer le client que la confirmation du paiement peut prendre quelques instants.

Exemple de message :

Après avoir effectué le paiement, veuillez patienter pour la confirmation du paiement.


Format du rappel

Les liens de paiement générés soit par le bouton Paiement, soit par la fonction get_prodamus_payment_url() renvoient le rappel suivant après un paiement réussi :

<secret_key>_success

Exemple :

ovg58keefc_success

Où :

  • <secret_key> est votre clé secrète Prodamus.
  • _success indique un paiement réussi.

Exemple

Créez un déclencheur ou un bloc conditionnel qui attend le rappel, puis continue le flux du chatbot.

Important : Utilisez Correspondance exacte comme type de correspondance.

Si vous souhaitez générer un autre lien de paiement après un paiement réussi, réinitialisez d'abord les informations de paiement existantes.

Définissez :

payment_sum = 0

Attribuez ensuite une nouvelle valeur à payment_sum pour générer un nouveau lien de paiement.


Rappels d'abonnement

Prodamus envoie également des rappels liés au statut de l'abonnement.

Les exemples incluent :

  • Abonnement annulé par le client
  • Abonnement réactivé par le client
  • Abonnement désactivé après plusieurs tentatives de paiement échouées

Abonnement annulé

Envoyé lorsque le client annule manuellement son abonnement.

La période de facturation payée en cours peut rester active.

Vous pouvez utiliser ce rappel pour :

  • ignorer l'événement ;
  • notifier votre équipe ;
  • envoyer un message de rétention au client.

Abonnement réactivé

Envoyé lorsque le client restaure un abonnement précédemment annulé.

En fonction de votre logique métier, vous pouvez ignorer ce rappel ou supprimer le client d'un flux de rétention.

Abonnement désactivé

Envoyé après plusieurs tentatives de paiement récurrent infructueuses.


Sauvegarde des données de rappel

Après un paiement réussi, la charge utile complète du rappel est stockée dans la variable suivante :

payment_callback

Elle contient toutes les informations de paiement renvoyées par Prodamus.

Exemple :

{
  "date": "2021-03-30T11:44:43+03:00",
  "order_id": "757679",
  "sum": "14.50",
  "customer_phone": "+77777777777",
  "customer_extra": "Produit",
  "payment_status": "success"
}

Si vous avez spécifié product_name et payment_description lors de la génération du lien de paiement, vous pouvez les récupérer à partir du rappel.

Exemple :

product = get(payment_callback, "products[0][name]")
description = get(payment_callback, "customer_extra")

Récupérez le montant du paiement :

amount = get(payment_callback, "sum")

Remarque : La valeur de payment_sum est toujours attribuée après les variables facultatives telles que payment_description et product_name.

Rappels disponibles

En plus des rappels de paiement réussi, Prodamus envoie divers rappels système qui peuvent être utilisés pour automatiser votre chatbot.

Événements d'abonnement

  • Abonnement annulé par le client
  • Abonnement réactivé par le client
  • Abonnement expiré

Événements d'échec de paiement

Selon le fournisseur de paiement, vous pouvez recevoir des rappels avec la raison de l'échec, par exemple :

  • Paiement échoué – Fonds insuffisants
  • Paiement échoué – Carte expirée
  • Paiement échoué – Limite de carte dépassée
  • Paiement échoué – Carte signalée comme perdue
  • Paiement échoué – Erreur système
  • Paiement échoué – Transaction refusée par la banque émettrice
  • Paiement échoué – Transaction refusée par la banque

Autres événements

  • Notification de paiement récurrent à venir
  • Demande de paiement échelonné approuvée
  • Demande de paiement échelonné annulée
  • Demande de paiement échelonné rejetée

Vous pouvez créer des flux de chatbot qui réagissent à n'importe lequel de ces rappels.

Par exemple, vous pouvez notifier automatiquement les clients lorsqu'un paiement récurrent échoue.

Pour traiter une raison d'échec spécifique, créez un déclencheur qui correspond au rappel correspondant.

Pour traiter tous les paiements échoués, quelle qu'en soit la raison, utilisez une condition qui vérifie si le rappel contient :

Paiement échoué

Tout rappel contenant le texte Paiement échoué déclenchera l'action configurée du chatbot.


Paiements d'abonnement

Création d'un abonnement

Avant d'accepter des paiements par abonnement, créez un produit d'abonnement dans votre compte Prodamus.

Pour des instructions détaillées, consultez la documentation Prodamus.

Après avoir créé le produit d'abonnement, copiez son ID de produit d'abonnement.

Attribuez l'ID de produit d'abonnement à la variable suivante :

prodamus_subscription

Mavibot génère automatiquement la variable suivante :

prodamus_pay_url

L'URL générée peut être affichée dans un message ou attachée à un bouton.

Exemple :

https://payform.kz/7p3JR8/

Les paiements par abonnement sont traités exactement de la même manière que les paiements uniques.

Après un paiement d'abonnement réussi, le numéro de téléphone du client est automatiquement enregistré dans la variable customer_phone.

Si customer_email n'est pas fourni, customer_phone est requis pour la gestion de l'abonnement.


get_prodamus_subscription_url

Vous pouvez également générer des liens de paiement d'abonnement à l'aide du Calculateur.

Fonction :

get_prodamus_subscription_url(
    subscription_id,
    product_name,
    expired,
    customer_phone,
    customer_email,
    discount,
    description,
    extra_params,
    products_for_receipt
)

Exemple

Paramètres

Paramètre Description
subscription_id Requis. ID du produit d'abonnement depuis votre compte Prodamus.
product_name Requis. Nom du produit.
expired Date d'expiration du lien de paiement. Prend en charge dd.MM.yyyy ou dd.MM.yyyy HH:mm. Les variables sont également prises en charge.
customer_phone Numéro de téléphone du client. Optionnel si customer_email est spécifié.
customer_email Adresse e-mail du client. Optionnel si customer_phone est spécifié.
discount Montant de la réduction.
description Description du produit.
extra_params Paramètres supplémentaires de l'API Prodamus.
products_for_receipt Informations sur le reçu. Requis lors de l'utilisation de la fiscalisation Prodamus sans votre propre caisse en ligne.

Exemple

extra_params = {
    "payments_limit": "3"
}

products_for_receipt = "Abonnement au cours de photographie, 2000 RUB/mois, https://example.com/course"

subscription_link = get_prodamus_subscription_url(618988, "Cours de photographie", "27.03.2023 17:02", "79167777771", "[email protected]", 20, "Abonnement premium", extra_params, products_for_receipt)

Si plusieurs fonctions de lien de paiement sont exécutées dans le même bloc Calculateur et que l'une d'elles échoue, l'erreur est stockée dans la variable error_payment_func.

Gestion du statut de l'abonnement

La gestion de l'abonnement est disponible uniquement pour les abonnements actifs. Elle n'est pas prise en charge en mode démo car aucune carte de paiement n'est liée.

Pour gérer un abonnement, au moins un des paramètres suivants doit être disponible :

  • customer_phone
  • customer_email

Pour annuler ou réactiver un abonnement, utilisez la fonction suivante :

delete_subscription_prodamus

Exemple de paramètres :

{
  "customer_phone": "#{customer_phone}",
  "id_subscription": "#{prodamus_subscription}",
  "url": "https://demo.payform.ru/",
  "secret_key": "453e8fba8b7cef9ce58dc6e18e25b39ad5a05748175a3f205f2b084acbfc3b66",
  "switcher": "0",
  "profile_id": "12345"
}

Paramètres

Paramètre Description
url URL du formulaire de paiement configurée dans Mavibot.
secret_key Votre clé secrète Prodamus.
id_subscription ID du produit d'abonnement.
customer_phone Numéro de téléphone de l'abonné.
switcher Action sur l'abonnement : 0 – désactiver, 1 – réactiver.
profile_id ID du profil client dans Prodamus.

Si un ID de profil est renvoyé par Prodamus, il est automatiquement enregistré dans la variable profile_id. Vous pouvez utiliser cette variable à la place de customer_phone ou customer_email lors de la gestion des abonnements.

Exemple :

La fonction renvoie une valeur de statut.

Si l'opération réussit :

status = ok

prodamus_subscription_switch_status

Vous pouvez également gérer les abonnements à l'aide du Calculateur.

prodamus_subscription_switch_status(
    subscription_id,
    switcher,
    customer_phone,
    customer_email,
    profile_id
)

Paramètres

Paramètre Description
subscription_id ID du produit d'abonnement.
switcher 0 – désactiver l'abonnement, 1 – réactiver l'abonnement.
customer_phone Numéro de téléphone du client. Optionnel si customer_email est fourni.
customer_email Adresse e-mail du client. Optionnel si customer_phone est fourni.
profile_id ID du profil client dans Prodamus.

Exemple 1

Désactiver un abonnement en utilisant le numéro de téléphone du client.

status = prodamus_subscription_switch_status(
    "618117",
    "0",
    "75431312321"
)

Exemple 2

Désactiver un abonnement en utilisant l'adresse e-mail du client.

status = prodamus_subscription_switch_status(
    "618117",
    "0",
    "",
    "[email protected]"
)

La fonction renvoie ok si l'opération réussit. Sinon, elle renvoie un message d'erreur.


Gestion des réductions d'abonnement

Utilisez la fonction suivante pour appliquer une réduction aux futurs paiements récurrents.

La réduction peut être appliquée pour un nombre limité de paiements ou indéfiniment.

prodamus_subscription_discount(
    subscription_id,
    discount,
    customer_phone,
    num,
    profile_id
)

Paramètres

Paramètre Description
subscription_id ID de l'abonnement.
discount Montant de la réduction. Doit être supérieur à zéro et ne pas dépasser le prix de l'abonnement.
customer_phone Numéro de téléphone du client. Optionnel si disponible depuis customer_phone.
num Nombre de futurs paiements auxquels la réduction doit être appliquée. Si omis, la réduction est permanente.
profile_id ID du profil client dans Prodamus.

En cas de succès, la fonction renvoie :

ok

Sinon, elle renvoie une description de l'erreur.

La mise à jour de la réduction ou du nombre de paiements nécessite d'appeler à nouveau la fonction avec les nouvelles valeurs.

Exemples

Réduction permanente

Appliquer une réduction de 1 à tous les futurs paiements d'abonnement.

result = prodamus_subscription_discount(
    "624034",
    "1"
)

Réduction pour les trois prochains paiements

result = prodamus_subscription_discount(
    "624034",
    "2",
    "",
    "3"
)

Réduction décimale

result = prodamus_subscription_discount(
    #{prodamus_subscription},
    10.25,
    #{customer_phone},
    3
)

Modification de la date du prochain paiement d'abonnement

Vous pouvez reporter le prochain paiement récurrent en modifiant sa date prévue.

La nouvelle date de paiement doit toujours être postérieure à la date de paiement actuellement prévue.

Cette fonctionnalité peut être utilisée, par exemple, pour prolonger la période d'abonnement d'un client en guise de bonus.

Utilisez la fonction suivante :

prodamus_subscription_payment_date(
    subscription_id,
    date,
    customer_phone,
    profile_id
)

Paramètres

Paramètre Description
subscription_id ID de l'abonnement.
date Nouvelle date de paiement au format dd.MM.yyyy ou dd.MM.yyyy HH:mm. Si aucune heure n'est spécifiée, 00:00 est utilisé.
customer_phone Numéro de téléphone du client. Optionnel. Si omis, la valeur est prise depuis la variable customer_phone.
profile_id ID du profil client dans Prodamus.

Transmission de paramètres supplémentaires à Prodamus

Vous pouvez envoyer des paramètres supplémentaires pris en charge par Prodamus (tels que les dates de début d'abonnement ou les paramètres de versement) lors de la génération d'un lien de paiement.

Créez simplement une variable dont le nom commence par le préfixe prodamus_.

Exemple :

prodamus_some_parameter

Lorsqu'un lien de paiement est généré, toutes les variables avec le préfixe prodamus_ sont automatiquement incluses dans la requête envoyée à Prodamus.


Test des paiements

Seul le processus de paiement est simulé.

Lors de la configuration de votre intégration et de vos flux de chatbot, vous pouvez utiliser les cartes de test Prodamus pour éviter de débiter des fonds réels.

Commencez par basculer votre page de paiement en Mode démo.

N'oubliez pas de cliquer sur Enregistrer après avoir changé le mode.

Cartes de test

MIR

Champ Valeur
Numéro de carte 2202 2050 0001 2424
Date d'expiration 05/35
CVV 669

Mastercard

Champ Valeur
Numéro de carte 5469 9801 0004 8525
Date d'expiration 05/26
CVV 041
Code 3-D Secure 111111

Visa

Champ Valeur
Numéro de carte 4006 8009 0096 2514
Date d'expiration 05/26
CVV 941
Code 3-D Secure 111111

Important : Les cartes de test déclenchent la même logique de chatbot, les mêmes rappels, automatismes et intégrations que les paiements réels.

Une fois les tests terminés, basculez la page de paiement en Mode live pour commencer à accepter les paiements réels.

Le bouton du mode démo doit être désactivé (interrupteur rouge désactivé).