Comment connecter
Pour connecter le système de paiement bePaid, vous aurez besoin de l'ID de la boutique, de la clé secrète et de la clé publique. Une fois obtenus, passez aux paramètres dans MaviBot.
Dans MaviBot, ouvrez la section "Acquiring", sélectionnez bePaid. Vous devez saisir les données obtenues.

Notez que le dernier champ est un commutateur pour l'hébergement de l'API en fonction du pays d'utilisation : Biélorussie ou Russie.

Comment générer un lien de paiement
Pour générer un lien de paiement, vous devez définir la valeur de la variable payment_sum (par exemple 150 ou 100.55 (avec un point !)), immédiatement après, la variable bepaid_pay_url apparaîtra. Cette variable peut être affichée à l'écran sous forme de lien ou placée sur un bouton avec le texte "Payer".
Le lien a la forme :
https://checkout.bepaid.by/widget/hpp.html?token=a05eabd3f9368725efbc175614c7d469da08f198cc51916b07fb75e53f9a3e1a
Avant de définir la valeur de la variable payment_sum, vous pouvez également définir les variables facultatives suivantes pour configurer le paiement.
Par défaut, le rouble biélorusse est défini. Si une autre devise est nécessaire, vous devez définir la valeur de la variable currency
Une fois le paiement terminé, la variable bepaid_callback_data sera ajoutée au client, contenant les données de réponse du système de paiement pour la transaction effectuée. À partir du dictionnaire obtenu, vous pouvez extraire les données nécessaires à l'aide de la méthode get.
Comment tester les paiements
Pour effectuer un paiement de test, avant de définir la variable payment_sum, vous devez définir la variable test_payments avec n'importe quelle valeur.
N'oubliez pas de la supprimer lors du lancement du bot en mode production !
Cartes pour les tests :
4200000000000000 success
4005550000000019 failed
Si quelque chose ne fonctionne pas, comparez les données avec celles du site officiel : https://docs.bepaid.by/ru/test-integration#test-card-number
Exemple de génération d'un lien de paiement
Créons un lien de paiement d'un montant de 100 roubles biélorusses (devise par défaut)
Notez que nous définissons d'abord les variables supplémentaires pour les paramètres, puis payment_sum. Les variables peuvent être définies plus tôt dans la chaîne, et non dans un seul bloc, ceci est un exemple.
Ensuite, à l'endroit souhaité, nous affichons la variable bepaid_pay_url, qui contient le lien
Gestion des abonnements
L'intégration du système de paiement offre la possibilité de créer des abonnements pour vos clients.
Avant de commencer à utiliser les fonctionnalités de MaviBot, créez un plan d'abonnement dans votre compte personnel bePaid.
Si le menu "Plans" et "Abonnements" ne s'affiche pas dans votre compte personnel, contactez votre gestionnaire.
Création d'un abonnement et obtention d'un lien de paiement
Utilisez la fonction get_bepaid_subscription_url, en lui passant le paramètre plan_id, où
En conséquence, la fonction créera un abonnement et retournera un lien pour son paiement.
Envoyez le lien au client et attendez la fin du paiement.
En cas de paiement réussi, l'abonnement sera activé, les variables bepaid_subscription_id et bepaid_subscription_status seront ajoutées à la transaction, et un callback sera envoyé au bot (voir la section "Comment traiter le résultat").
Obtention d'informations sur l'abonnement
Pour obtenir les données de l'abonnement actuel du client, appelez la fonction get_bepaid_subscription_info, en lui passant le paramètre subscription_id (la valeur peut être extraite de la variable bepaid_subscription_id).
Annulation de l'abonnement
Pour annuler l'abonnement, utilisez la fonction cancel_bepaid_subscription.
Cette fonction accepte un seul paramètre subscription_id (la valeur peut être extraite de la variable bepaid_subscription_id).
En cas d'annulation réussie, la variable bepaid_subscription_status prendra la valeur “canceled”, et un callback sera envoyé au bot (voir la section “Comment traiter le résultat”).
Statuts des abonnements
Paiements récurrents
Vous pouvez également organiser un système d'abonnements sans créer de plan dans votre compte personnel bePaid.
Pour cela, vous aurez besoin du jeton de carte du client.
Pour obtenir le jeton de carte, le client doit effectuer un paiement d'installation via un lien généré via payment_sum.
Avant de définir la valeur de payment_sum, définissez la variable bepaid_contract, dans laquelle vous spécifiez l'objet des futurs paiements par jeton : “recurring” pour les paiements réguliers à périodicité définie ou “card_on_file” pour les paiements irréguliers (par exemple, le paiement différé d'un service fourni).
L'option “card_on_file” n'est pas prise en charge par tous les acquéreurs. Si vous souhaitez l'utiliser, contactez votre gestionnaire de compte.
Après un paiement réussi, la variable bepaid_client_card_token sera ajoutée à la transaction, dans laquelle le jeton de carte du client sera enregistré. Ce jeton permet de débiter les fonds de la carte du client sans sa participation.
Ensuite, configurez l'entonnoir et définissez la date ou la condition pour le débit automatique, puis appelez la fonction de la calculatrice make_bepaid_token_payment, en lui passant les paramètres nécessaires.
Ordre des paramètres :
amount -> currency -> description -> contract
Description des paramètres :
La valeur de contract doit obligatoirement correspondre à la valeur spécifiée lors de la création du lien pour le paiement d'installation !
Si le paiement a réussi, la fonction retournera le message “Débit réussi par jeton bePaid”, vous recevrez un callback de paiement réussi, et la variable de transaction bepaid_token_payment_completed prendra la valeur “True”.
Si le paiement a échoué, la fonction retournera un message indiquant la raison de l'échec du paiement, un callback avec le suffixe “_fail” sera envoyé au bot, et la variable de transaction bepaid_token_payment_completed prendra la valeur “False”.
La banque peut demander au client de finaliser le paiement. Dans ce cas, la fonction retournera un lien avec une demande d'authentification 3-D Secure.
Comment traiter le résultat
En réponse aux actions du client, des callbacks seront envoyés au bot, composés des 20 premiers caractères de la clé secrète et d'un suffixe dépendant du type et du résultat de l'opération.
Dans le système, le callback apparaît comme un message de l'utilisateur, mais l'utilisateur lui-même ne le voit pas.
Pour les paiements
À la suite d'un paiement non lié à un abonnement, vous recevrez l'un des messages suivants :
numéroClé_success - en cas de paiement réussi ;
numéroClé_fail - en cas d'échec du paiement ;
Le statut du dernier paiement peut également être suivi via les variables bepaid_payment_completed (pour les paiements avec participation du client) et bepaid_token_payment_completed (pour les paiements sans acceptation par jeton de carte)
Pour les abonnements
Après une activation réussie de l'abonnement lors du premier ou d'un paiement ultérieur, le message numéroClé_success sera envoyé au bot.
Si l'abonnement a été annulé, vous recevrez numéroClé_canceled.
En cas d'échec du paiement de l'abonnement, vous recevrez le message numéroClé**_fail.**


