Bepaid (ru)

Comment connecter

Pour connecter le système de paiement bePaid, vous aurez besoin de l’ID du magasin, de la clé secrète et de la clé publique. Une fois obtenues, passons aux paramètres dans MaviBot.

Dans MaviBot, ouvrez la section "Encaissement", choisissez bePaid. Vous devez saisir les données obtenues.

Veuillez noter que le dernier champ est un commutateur d’hébergement API selon le 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 !)), après quoi la variable bepaid_pay_url apparaîtra. Cette variable peut être affichée sous forme de lien ou placée sur un bouton avec le texte "Payer".

Le lien ressemble à ceci : https://checkout.bepaid.by/widget/hpp.html?token=a05eabd3f9368725efbc175614c7d469da08f198cc51916b07fb75e53f9a3e1aarrow-up-right

Avant de définir la valeur de la variable payment_sum, vous pouvez également définir les variables optionnelles suivantes pour configurer le paiement.

circle-info

Par défaut, le rouble biélorusse est défini ; si une autre devise est nécessaire, il faut définir la valeur de la variable currency

Paramètres de la fonction
Description du paramètre
Supplémentaire

currency

devise de paiement en ISO-4217arrow-up-right format

par exemple USD

language

langue de la page de paiement

Par défaut - en.

Valeurs autorisées :

en - Anglais

es - Espagnol

tr - Turc

de - Allemand

it - Italien

ru - Russe

zh - Chinois

fr - Français

da - Danois

sv - Suédois

no - Norvégien

fi - Finnois

pl - Polonais

ja - Japonais

uk - Ukrainien

be - Biélorusse

ka - Géorgien

ro - Roumain

payment_description

description du paiement

link_expired

durée de validité du lien de paiement, au format jj.mm.aaaa (par exemple 25.06.2025).

Par défaut, le paiement doit être effectué dans les 24 heures

Vous pouvez également, dans le champ "Affectation des variables lors du passage" indiquer : link_expired = current_date + 2 (le lien sera valable 2 jours jusqu’à 00:00)

link_expired vous pouvez aussi indiquer une date avec une heure précise, séparée par un espace, au format jj.mm.aaaa hh:mm (par exemple : 25.06.2025 12:23). Par défaut, le paiement doit être effectué dans les 24 heures

Vous pouvez aussi utiliser des variables standard, par exemple définissons la durée de validité du lien à 30 minutes :

time = current_time + 30

link_expired = "#{current_date} #{time}"

russian_host

indicateur d’enregistrement du magasin sur l’hôte russe de bePaid. Indiquez ce paramètre avec la valeur 1 si votre magasin est enregistré sur le site bepaid.tech

Si vous devez passer l’hôte en biélorusse, indiquez le paramètre avec la valeur ''

test_payments

la variable est nécessaire pour les paiements de test ; si un paiement de test est requis, ajoutez-la avec n’importe quelle valeur.

bepaid_attempts

indique le nombre de tentatives pour effectuer le paiement ; par défaut, 1 tentative est accordée.

сustomer_data

un tableau contenant first_name, last_name et email du payeur. Ces données sont nécessaires pour envoyer le reçu par e-mail au payeur et sont disponibles pour modification sur la page de paiement.

Le paramètre doit être transmis sous forme de liste au format JSON, composée de paires clé-valeur

par exemple:

customer_data = ‘{“first_name”: “Vladimir”, “last_name”: “Popov”, “email”: “[email protected]” }’

bepaid_contract (conditionnellement obligatoire)

destination du paiement par jeton.

Valeurs attendues : “recurring” (pour les paiements récurrents à fréquence définie) ou “card_on_file” (pour les paiements non récurrents, par exemple un paiement différé pour un service rendu)

Après l’achèvement du paiement, la variable suivante sera ajoutée au client bepaid_callback_data, contenant les données de réponse du système de paiement pour l’opération effectuée. À partir du dictionnaire reçu, 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 d’indiquer 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 succès

4005550000000019 échec

Si quelque chose ne fonctionne pas, comparez les données avec celles du site officiel : https://docs.bepaid.by/ru/test-integration#test-card-numberarrow-up-right

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)

Veuillez noter qu’au début, nous définissons les variables supplémentaires pour les paramètres, puis payment_sum. Les variables peuvent également être définies plus tôt dans la chaîne, et pas dans un seul bloc ; c’est un exemple.

Ensuite, à l’endroit voulu, 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 d’utiliser les fonctionnalités de MaviBot, créez un plan d’abonnement dans votre espace personnel bePaid.

circle-exclamation

Création d’un abonnement et obtention du lien de paiement

Utilisez la fonction get_bepaid_subscription_urlen lui transmettant le paramètre plan_id, où

plan_id

est l’identifiant du plan dans le système bePaid.

En résultat, la fonction créera un abonnement et renverra le 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 arrivera dans le 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 transmettant le paramètre subscription_id (la valeur peut être prise de la variable bepaid_subscription_id).

Annulation de l’abonnement

Pour annuler l’abonnement, utilisez la fonction cancel_bepaid_subscription.

Cette fonction ne prend qu’un seul paramètre subscription_id (la valeur peut être prise de la variable bepaid_subscription_id).

En cas d’annulation réussie, la variable bepaid_subscription_status prendra la valeur “canceled”, et un callback arrivera dans le bot (voir la section “Comment traiter le résultat”).

Statuts des abonnements

trial

Abonnement actif ou annulé de la période d’essai.

active

Abonnement actif dont le paiement a été effectué dans les délais.

failed

Abonnement échoué. bePaid n’a pas pu effectuer le paiement suivant.

error

Une erreur s’est produite lors de la tentative de bePaid d’effectuer le paiement.

canceled

L’abonnement est annulé et n’est plus en vigueur.

Paiements récurrents

Vous pouvez également organiser un système d’abonnements sans créer de plan dans l’espace personnel bePaid.

Pour cela, vous aurez besoin du jeton de la carte du client.

Pour obtenir le jeton de la carte, le client doit effectuer un paiement initial via le lien généré à l’aide de payment_sum.

Avant de définir la valeur de payment_sum, définissez la variable bepaid_contract, dans laquelle indiquez l’objectif des futurs paiements par jeton : “recurring” pour les paiements récurrents à fréquence définie ou “card_on_file” pour les paiements non récurrents (par exemple, un paiement différé pour un service rendu).

circle-exclamation

Après un paiement réussi, la variable bepaid_client_card_token sera ajoutée à la transaction, et le jeton de la carte du client y sera enregistré. Ce jeton permet de débiter la carte du client sans sa participation.

Ensuite, configurez le tunnel et définissez une date ou une condition pour le débit automatique, puis appelez la fonction du calculateur make_bepaid_token_payment en lui transmettant les paramètres nécessaires.

Ordre des paramètres:

amount -> currency -> description -> contract

Description des paramètres :

amount (obligatoire)

montant du paiement, valeur attendue - nombre entier ou décimal, par exemple 100 ou 100.5;

currency (obligatoire)

devise de paiement en ISO-4217arrow-up-right format, par exemple “USD”

description (obligatoire)

description de la raison du débit, par exemple, “Paiement de l’abonnement hebdomadaire pour participer à un club d’intérêts”;

contract (obligatoire)

destination du paiement par jeton. Valeurs attendues : “recurring” ou “card_on_file”.

circle-exclamation

Si le paiement a réussi, la fonction renverra le message “Débit réussi via le 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 n’a pas abouti, la fonction renverra un message indiquant la raison de l’échec du paiement, un callback avec le suffixe “_fail” arrivera dans le bot, et la variable de transaction bepaid_token_payment_completed prendra la valeur “False”.

circle-exclamation

Comment traiter le résultat

En réponse aux actions du client, des callbacks arriveront dans le 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 ressemble à un message de l’utilisateur, mais l’utilisateur lui-même ne le voit pas.

Pour les paiements

À la suite d’un paiement ne relevant pas d’un abonnement, vous recevrez l’un des messages suivants :

numeroCle_success - en cas de paiement réussi ;

numeroCle_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 token de carte)

Pour les abonnements

Après l’activation réussie d’un abonnement lors du premier paiement ou d’un paiement récurrent, un message arrivera dans le bot numeroCle_success.

Si l’abonnement a été annulé, vous recevrez numeroCle_canceled.

En cas d’échec du paiement de l’abonnement, vous recevrez un message numeroCle_fail.

Mis à jour