So verbinden Sie Prodamus
Um Prodamus zu verbinden, benötigen Sie die URL des Zahlungsformulars und einen geheimen Schlüssel.
Die URL des Zahlungsformulars wird nach der Registrierung bereitgestellt. Beispiel:
demo.payform.ru
Den geheimen Schlüssel erhalten Sie in Ihrem Prodamus-Konto. Sie müssen auch die URL angeben, an die Zahlungsbenachrichtigungen gesendet werden.

Ausführliche Anleitung zur Konfiguration
Benachrichtigungs-URL:
https://chatter.mavibot.ai/prodamus_callback/result
Diese URL muss an zwei Stellen in den Einstellungen angegeben werden.
Auf der Hauptseite der Einstellungen können Sie den Betriebsmodus des Zahlungsformulars auswählen:
- Demo-Modus ohne echte Zahlungen
- Live-Modus zur Annahme von Zahlungen

Die Benachrichtigungs-URL muss in zwei Abschnitten der Zahlungssystemeinstellungen angegeben werden:
- Im Tab Formulareinstellungen für einmalige Zahlungen
- Im Tab Abonnements für Abonnementzahlungen

Benachrichtigungs-URL:
https://chatter.mavibot.ai/prodamus_callback/result
Um Abonnementzahlungen zu konfigurieren, öffnen Sie den Tab Abonnements und geben Sie die Benachrichtigungs-URL ein:
https://chatter.mavibot.ai/prodamus_callback/result

Wichtig: Klicken Sie nach der Eingabe der URL unbedingt auf Speichern.
Um Prodamus in Mavibot zu verbinden, öffnen Sie den Bereich Acquiring.

Geben Sie dann die URL des Zahlungsformulars und den geheimen Schlüssel in die entsprechenden Felder ein.

Wichtig: Fügen Sie bei der Eingabe der URL des Zahlungsformulars kein
https://hinzu.
Die Verbindung ist nun abgeschlossen. Als Nächstes betrachten wir, wie diese Funktionalität genutzt wird.
Erstellen eines Zahlungslinks
Zahlungsbutton
Ein Zahlungslink kann mit einem Button mit der Funktion Zahlung erstellt werden.
Siehe die Anleitung zum Erstellen eines Zahlungsbuttons:
/docs/chatbot-builder-buttons-payment-button
Die folgenden Abschnitte beschreiben alle verfügbaren Button-Einstellungen.
Erforderliche Parameter
Um einen Zahlungslink zu erstellen, sind die folgenden Felder erforderlich:
- Betrag
- Produktname
- Produkte für den Kassenbon (nur erforderlich, wenn Sie keine eigene Online-Kasse haben und möchten, dass Prodamus Steuerbelege erstellt)
Wenn der Kunde die Zahlungsseite öffnet, sind die Produktinformationen und der Preis bereits ausgefüllt. Der Kunde muss nur seine Kontaktdaten eingeben.
Wenn die E-Mail-Adresse und/oder Telefonnummer des Kunden in den Button-Einstellungen angegeben sind, werden diese ebenfalls auf der Zahlungsseite vorausgefüllt.

Button-Einstellungen
Text – Der Text, der auf dem Zahlungsbutton angezeigt wird.
Funktion – Wählen Sie Zahlung, um einen Zahlungslink zu erstellen.
Zahlungssystem – Zeigt die mit dem Projekt verbundenen Zahlungssysteme an.
Wenn kein Zahlungssystem verbunden ist, ist dieser Button-Typ nicht verfügbar.
Produktname (erforderlich) – Geben Sie den genauen Produktnamen an.
Zum Beispiel, anstatt:
Telefon
verwenden Sie:
Xiaomi Smartphone, Modell ...
Hinweis: Doppelte Anführungszeichen (
") sind im Produktnamen nicht erlaubt. Entfernen Sie sie oder ersetzen Sie sie durch einfache Anführungszeichen.
Betrag (erforderlich) – Der Zahlungsbetrag.
Zusätzliche Parameter
Klicken Sie auf Zusätzliche Informationen, um optionale Felder zu konfigurieren:
- Bestellbeschreibung
- Rabatt (RUB)
- Variable für Kunden-E-Mail
- Variable für Kundentelefon
- Ablaufdatum des Links
- Abonnement-Produkt-ID
- Produkte für den Kassenbon
Bei Klick benachrichtigen – Aktivieren Sie diese Option, wenn Sie eine Benachrichtigung im Kundengespräch erhalten möchten, wenn der Kunde auf den Zahlungsbutton klickt.

Diese Benachrichtigung kann verwendet werden, um zusätzliche Chatbot-Logik zu erstellen.
Viele Zahlungsanbieter unterstützen Cloud-Kassen, die für die Steuerkonformität erforderlich sind. Überprüfen Sie die Dokumentation Ihres Zahlungsanbieters, um Informationen zur Kassenbonerstellung und Fiskalisierung zu erhalten.
Die vom Button geöffnete Zahlungsseite sieht wie folgt aus:

Zusätzliche Zahlungslink-Einstellungen

Bestellbeschreibung – Der in dieses Feld eingegebene Text wird auf der Zahlungsseite im Abschnitt Zusätzliche Informationen angezeigt.
Rabatt – Geben Sie den Rabattbetrag in RUB an. Dezimalwerte werden mit einem Punkt als Trennzeichen unterstützt (z. B. 50.99).
Auf der Zahlungsseite wird der Rabatt automatisch angewendet. Der ursprüngliche Preis wird durchgestrichen, und der rabattierte Betrag wird als Gesamtzahlung angezeigt.
Variable für Kunden-E-Mail (optional, wenn eine Telefonnummer angegeben ist) – Die E-Mail-Adresse des Kunden oder eine Variable, die diese enthält, zum Beispiel:
#{email}
Variable für Kundentelefon (optional, wenn eine E-Mail-Adresse angegeben ist) – Eine Variable, die die Telefonnummer des Kunden im Format enthält:
79000000000
Zum Beispiel:
#{phone}
Es muss entweder eine E-Mail-Adresse oder eine Telefonnummer angegeben werden.
Ablaufdatum des Links – Geben Sie das Ablaufdatum im Format an:
dd.MM.yyyy HH:mm
Beispiel:
25.01.2021 11:00
Sie können auch eine Variable verwenden, zum Beispiel:
#{link_expired}
Abonnement-Produkt-ID – Geben Sie die Abonnement-Produkt-ID ein, um eine wiederkehrende Zahlung zu erstellen.
Informationen zum Erstellen von Abonnementprodukten finden Sie in der Prodamus-Dokumentation.
Wenn eine Abonnement-Produkt-ID angegeben ist:
- wird der Zahlungsbetrag ignoriert;
- werden die Produktinformationen aus dem Abonnementprodukt in Prodamus geladen;
- ist die Telefonnummer des Kunden für die Abonnementverwaltung erforderlich;
- enthält der Callback die Abonnement-Produkt-ID nach einer erfolgreichen Zahlung.
Produkte für den Kassenbon (bedingt erforderlich) – Erforderlich für die Zahlungsfiskalisierung über Prodamus, wenn Sie keine eigene Online-Kasse verwenden.
Geben Sie die Produktbeschreibung, den Preis und einen Link zum gekauften Inhalt an.
Beispiel:
Kurs "Fortgeschrittene Fotografie", Preis 3000 RUB,
https://example.com/course
Verhalten bei Link-Ablauf
Wenn Sie ein Ablaufdatum für den Link angeben, verhält sich der Zahlungsbutton je nachdem, ob der Link noch gültig ist, unterschiedlich.
Abgelaufener Link
Wenn der Kunde den Zahlungslink nach Ablauf öffnet, kann die Zahlung nicht abgeschlossen werden, und er sieht die folgende Meldung:

Hinweis: Das Ablaufdatum muss später als das aktuelle Datum sein. Andernfalls kann der Kunde die Zahlung nicht abschließen.
Inaktiver Zahlungsbutton
Wenn der Kunde den Zahlungsbutton anfordert, nachdem der Link bereits abgelaufen ist, wird der Button nicht angezeigt.
Stattdessen wird die folgende Kunden-Variable erstellt:
error_payment_button
Wert:
Fehler: Das Ablaufdatum des Links muss später als das aktuelle Datum sein.
Wir empfehlen, diese Situation in Ihrem Chatbot-Ablauf zu behandeln.
Erstellen Sie eine Bedingung, die prüft:
error_payment_button == "Fehler: Das Ablaufdatum des Links muss später als das aktuelle Datum sein."
Wenn die Bedingung erfüllt ist, senden Sie eine Nachricht wie:
Entschuldigung, Sie konnten die Zahlung nicht rechtzeitig abschließen. Der Zahlungslink ist abgelaufen.


Vom Zahlungsbutton erstellte Kunden-Variablen
Wenn ein Kunde eine Nachricht mit einem Zahlungs-Button erhält, erstellt Mavibot automatisch die folgenden Variablen.
__payments
Eine Systemvariable, die den Zahlungsbetrag und die Kennung des erstellten Zahlungslinks speichert. Sie wird verwendet, um Callbacks vom Zahlungssystem zuzuordnen.
Wichtig: Ändern oder löschen Sie die Systemvariable
__paymentsnicht.
error_payment_button
Diese Variable wird automatisch erstellt, wenn beim Erstellen des Zahlungsbuttons ein Fehler auftritt.
Sie enthält entweder die von Mavibot erstellte Fehlermeldung oder den vom Zahlungssystem zurückgegebenen Fehler.
Variablenwerte werden verfügbar, nachdem der Chatbot zum nächsten Block gewechselt ist.
Verarbeitung von Zahlungsergebnissen
Erfolgreiche Zahlung
Nach einer erfolgreichen Zahlung empfängt Mavibot automatisch den folgenden Callback:
<erste_10_Zeichen_des_geheimen_Schlüssels>_success <Zahlungsbetrag>
Beispiel:
ovg58keefc_success 44
Wobei:
-
ovg58keefc— die ersten 10 Zeichen des Prodamus-Geheimschlüssels. -
_success— zeigt eine erfolgreiche Zahlung an. -
44— der Zahlungsbetrag.
Kunden sehen Zahlungs-Callbacks nie. Sie sind nur im Bereich Kunden sichtbar und können verwendet werden, um Chatbot-Logik zu erstellen.
Beispiel
Schritt 1
Erstellen Sie einen Block, der den Zahlungs-Button enthält.
Schritt 2
Erstellen Sie einen Trigger-Block oder konfigurieren Sie einen Pfeil, der zum nächsten Block führt.
Fügen Sie den Zahlungs-Callback in den Trigger oder die Übereinstimmungsbedingung ein.
Derselbe Callback kann auch im Startbedingung-Block konfiguriert werden, wenn Ihr Chatbot eine globale Zahlungsverarbeitung erfordert.
Wichtig: Verwenden Sie als Übereinstimmungstyp entweder Exakte Übereinstimmung oder Enthält Schlüsselwörter.
Hinweis: Wenn Sie Callbacks auf einem bestimmten Pfeil verarbeiten, stellen Sie sicher, dass sich der Kunde noch in dem Block mit diesem Pfeil befindet, wenn der Callback eintrifft. Andernfalls findet der Übergang nicht statt. Für Chatbot-Abläufe, bei denen Kunden zwischen Blöcken wechseln können, wird empfohlen, Callbacks stattdessen im Startbedingung-Block zu verarbeiten.

Erfolgreiche Abonnementzahlung
Für Abonnementprodukte lautet das Callback-Format:
<erste_10_Zeichen_des_geheimen_Schlüssels>_success <Abonnement-Produkt-ID>
Beispiel:
214009eefc_success 618117
Wobei:
-
214009eefc— die ersten 10 Zeichen des geheimen Schlüssels. -
_success— erfolgreiche Zahlung. -
618117— die Abonnement-Produkt-ID.

Fehlgeschlagene Zahlung
Wenn die Zahlung fehlschlägt, empfängt Mavibot den folgenden Callback:
<erste_10_Zeichen_des_geheimen_Schlüssels>_fail <Zahlungsbetrag>
Beispiel:
ovg58keefc_fail 44
Wobei:
-
ovg58keefc— die ersten 10 Zeichen des geheimen Schlüssels. -
_fail— Zahlung fehlgeschlagen. -
44— der Zahlungsbetrag.
Hinweis: Nicht alle Zahlungsanbieter senden Callbacks für fehlgeschlagene Zahlungen.
Abweichung des Zahlungsbetrags
Wenn der gezahlte Betrag vom im Zahlungsbutton angegebenen Betrag abweicht, empfängt Mavibot den folgenden Callback:
<erste_10_Zeichen_des_geheimen_Schlüssels>_different_amounts <Zahlungs-ID>
Beispiel:
ovg58keefc_different_amounts 123456
Wobei:
-
ovg58keefc— die ersten 10 Zeichen des geheimen Schlüssels. -
_different_amounts— zeigt an, dass der gezahlte Betrag vom erwarteten Betrag abweicht. -
123456— die eindeutige Zahlungs-ID.
get_prodamus_payment_url-Rechnerfunktion
Sie können einen Zahlungslink mit der Funktion get_prodamus_payment_url im Rechner-Block erstellen.
Weisen Sie das Funktionsergebnis einer beliebigen Variable zu.
Sie können jeden Variablennamen wählen. Die Screenshots unten verwenden beispielhafte Variablennamen.
Der erstellte Zahlungslink wird in der Variable gespeichert und kann in einer Nachricht oder an einem Button verwendet werden.
Beispiel-Zahlungslink:
https://payform.ru/7p3JR8/
Beispiel

Funktionssyntax
your_variable = get_prodamus_payment_url(
amount,
product_name,
expired,
customer_phone,
customer_email,
discount,
description,
extra_params,
products_for_receipt
)
Parameter
| Parameter | Beschreibung |
|---|---|
amount |
Erforderlich. Zahlungsbetrag. Akzeptiert ganze Zahlen oder Dezimalwerte (z. B. 25 oder 52.5). |
product_name |
Erforderlich. Produktname. |
expired |
Ablaufdatum des Zahlungslinks. Unterstützte Formate: dd.MM.yyyy oder dd.MM.yyyy HH:mm. Sie können auch Variablen oder Ausdrücke wie current_date + 2 verwenden. Übergeben Sie '', "" oder None, um diesen Parameter zu überspringen. |
customer_phone |
Telefonnummer des Kunden. Optional, wenn customer_email angegeben ist. Übergeben Sie '' oder "", um zu überspringen. |
customer_email |
E-Mail-Adresse des Kunden. Optional, wenn customer_phone angegeben ist. Übergeben Sie '' oder "", um zu überspringen. |
discount |
Rabattbetrag. Akzeptiert ganze Zahlen oder Dezimalwerte (z. B. 25 oder 63.5). Übergeben Sie '' oder "", um zu überspringen. |
description |
Produktbeschreibung. Wenn nicht angegeben, verwendet Prodamus automatisch Zahlung für Bestellung order_id. Übergeben Sie '' oder "", um zu überspringen. |
extra_params |
Zusätzliche Prodamus-API-Parameter, die nicht in den Funktionsargumenten enthalten sind. Übergeben Sie '', "" oder None, um zu überspringen. |
products_for_receipt |
Belegdaten im Format "Produktbeschreibung - Preis - URL des gekauften Inhalts". Erforderlich, wenn Sie die Prodamus-Fiskalisierung ohne eigene Online-Registrierkasse verwenden. |
Beispiele für Ablaufdaten
Ablauf nach zwei Tagen:
expired = current_date + 2
Ablauf in 30 Minuten:
time = current_time + 30
expired = "#{current_date} #{time}"
Beispiel extra_params
extra_params = {
"payments_limit": "3",
"payment_method": "vsegdada_installment_0_0_6"
}
Die vollständige Liste der unterstützten Parameter finden Sie in der Prodamus-REST-API-Dokumentation.
Beispiel
extra_params = {
"payments_limit": "3"
}
products_for_receipt = "Fotografie-Kurs, Preis 4999 RUB, https://example.com/course"
payment_link = get_prodamus_payment_url(4999, "Fotografie-Kurs", "27.03.2023 17:00", "79167777771", "[email protected]", 20, "Der beste Fotografie-Kurs", extra_params, products_for_receipt)
In diesem Beispiel:
-
extra_paramsenthält zusätzliche Zahlungsparameter. -
products_for_receiptenthält Informationen zum Fiskalbeleg. -
payment_linkspeichert die generierte Zahlungs-URL.
Wenn im selben Calculator-Block mehrere Zahlungslink-Funktionen verwendet werden und eine davon fehlschlägt, wird der Fehler in der Variablen
error_payment_funcgespeichert. Nur der letzte Funktionsfehler wird gespeichert.
Generieren eines Zahlungslinks mit payment_sum
Hinweis: Der Wert von
payment_sumwird nach allen optionalen Variablen wiepayment_description,product_nameund anderen angewendet.
Anstatt get_prodamus_payment_url() aufzurufen, können Sie einen Zahlungslink generieren, indem Sie einfach der Variablen payment_sum im Calculator-Block einen Wert zuweisen.
Nachdem payment_sum zugewiesen wurde, erstellt Mavibot automatisch die Variable prodamus_pay_url, die den Zahlungslink enthält.
Beispiel:
https://payform.ru/7p3JR8/
Sie können diese Variable in einer Nachricht anzeigen oder als URL einer Schaltfläche verwenden.
Optionale Variablen
Die folgenden Variablen können vor der Zuweisung von payment_sum definiert werden.
| Variable | Beschreibung |
|---|---|
product_name |
Produktname. Wenn nicht angegeben, lautet der Standardwert Zahlung für Bestellung order_id. |
payment_description |
Produktbeschreibung, die auf der Zahlungsseite angezeigt wird. |
discount_value |
Rabattbetrag. Beispiel: 25 oder 50.25. |
customer_phone |
Telefonnummer des Kunden. |
customer_email |
E-Mail-Adresse des Kunden. |
link_expired |
Ablaufdatum des Zahlungslinks. |
currency |
Zahlungswährung. Unterstützte Werte: rub, usd, eur, kzt. Muss in Kleinbuchstaben sein. |
payment_title |
Zahlungstitel (maximal 127 Zeichen). Standardmäßig Zahlung payment_id. |
locale |
Sprache der Zahlungsseite (z. B. ru-RU, en-US, fr-FR). |
products_for_receipt |
Beleginformationen. Erforderlich, wenn Sie die Prodamus-Fiskalisierung ohne eigene Online-Registrierkasse verwenden. |
payment_sum |
Erforderlich. Zahlungsbetrag. |
Link-Ablauf
Sie können das Ablaufdatum auf verschiedene Arten angeben.
Bestimmtes Datum:
25.01.2021
Bestimmtes Datum und Uhrzeit:
25.01.2021 12:23
Verwendung von Variablen:
time = current_time + 30
link_expired = "#{current_date} #{time}"
Oder:
link_expired = current_date + 2
Beispiel
Legen Sie zuerst den Zahlungsbetrag fest.

Verwenden Sie dann die generierte Variable prodamus_pay_url überall dort, wo Sie den Zahlungslink senden müssen.

Verfügbare Zahlungsmethoden
Die Variable prodamus_available_payment_methods muss vor payment_sum definiert werden.
Unterstützte Werte sind:
| Wert | Beschreibung |
|---|---|
AC |
Russische Bankkarten |
ACkz |
Kasachische Bankkarten |
ACf |
GUS-Bankkarten (außer Russland) |
ACEURNMBX |
EUR-Karten (außer Russland und Weißrussland) |
SBP |
Schnelleres Zahlungssystem (Russland) |
QW |
QIWI Wallet |
PC |
YooMoney |
GP |
Zahlungsterminal |
sbol |
Sberbank Online |
invoice |
Rechnungszahlung |
installment |
Prodamus-Ratenzahlung |
credit |
T-Bank-Kredit |
monetaworld |
Internationale Karten (außer Russland) |
Mehrere Zahlungsmethoden können durch einen senkrechten Strich (|) getrennt angegeben werden.
Beispiel:
prodamus_available_payment_methods = "AC|PC|QW"
Währung
Sie können die Zahlungswährung mit der Variablen prodamus_currency angeben.
Unterstützte Werte:
kztusdeur
Die generierte Zahlungsseite zeigt den Betrag in der ausgewählten Währung an.
Achten Sie bei der Verarbeitung des payment_callback-Callbacks auf die folgenden Felder:
currencycurrency_sum
Diese enthalten die Zahlungswährung und den bezahlten Betrag.
Wenn keine Zahlungsmethoden angegeben sind, zeigt die Zahlungsseite keine verfügbaren Zahlungsmethoden an. Aktivieren Sie zuerst die erforderlichen Zahlungsmethoden in Ihrem Prodamus-Konto.
Verarbeitung von Zahlungsergebnissen
Zahlungs-Callbacks
Nach einer erfolgreichen oder fehlgeschlagenen Zahlung empfängt Mavibot Callbacks, die zur Bestimmung des Zahlungsstatus verwendet werden können.
Callbacks erscheinen im Gespräch als Systemnachrichten. Kunden sehen oder senden diese Nachrichten nie.
Beispiele:
Erfolgreiche Zahlung:
453e8fba8b7cef9ce58dc6e18e25b39ad5a05748175a3f205f2b084acbfc3b66_success
Fehlgeschlagene Zahlung:
453e8fba8b7cef9ce58dc6e18e25b39ad5a05748175a3f205f2b084acbfc3b66_fail
Nach einer erfolgreichen Zahlung wird automatisch die folgende Kunden-Variable erstellt:
prodamus_payment_completed = True
Hinweis: Callbacks werden mit einer leichten Verzögerung empfangen. Nach dem Senden des Zahlungslinks wird empfohlen, den Kunden darauf hinzuweisen, dass die Zahlungsbestätigung einen Moment dauern kann.
Beispielnachricht:
Bitte warten Sie nach Abschluss der Zahlung auf die Zahlungsbestätigung.
Callback-Format
Zahlungslinks, die entweder über die Schaltfläche Zahlung oder die Funktion get_prodamus_payment_url() generiert wurden, geben nach einer erfolgreichen Zahlung den folgenden Callback zurück:
<secret_key>_success
Beispiel:
ovg58keefc_success
Wo:
-
<secret_key>Ihr Prodamus-Geheimschlüssel ist. -
_successeine erfolgreiche Zahlung anzeigt.
Beispiel
Erstellen Sie einen Trigger oder einen Bedingungsblock, der auf den Callback wartet und dann den Chatbot-Fluss fortsetzt.

Wichtig: Verwenden Sie Exakte Übereinstimmung als Übereinstimmungstyp.
Wenn Sie nach einer erfolgreichen Zahlung einen weiteren Zahlungslink generieren möchten, setzen Sie zuerst die vorhandenen Zahlungsinformationen zurück.
Setzen Sie:
payment_sum = 0
Weisen Sie dann payment_sum einen neuen Wert zu, um einen neuen Zahlungslink zu generieren.
Abonnement-Callbacks
Prodamus sendet auch Callbacks zum Abonnementstatus.
Beispiele sind:
- Vom Kunden gekündigtes Abonnement
- Vom Kunden reaktiviertes Abonnement
- Nach mehreren fehlgeschlagenen Zahlungsversuchen deaktiviertes Abonnement

Abonnement gekündigt
Wird gesendet, wenn der Kunde sein Abonnement manuell kündigt.
Der aktuelle bezahlte Abrechnungszeitraum kann weiterhin aktiv bleiben.
Sie können diesen Callback verwenden, um:
- das Ereignis zu ignorieren;
- Ihr Team zu benachrichtigen;
- eine Kundenrückgewinnungsnachricht zu senden.
Abonnement reaktiviert
Wird gesendet, wenn der Kunde ein zuvor gekündigtes Abonnement wiederherstellt.
Abhängig von Ihrer Geschäftslogik können Sie diesen Callback ignorieren oder den Kunden aus einem Kundenrückgewinnungs-Workflow entfernen.
Abonnement deaktiviert
Wird nach mehreren erfolglosen wiederkehrenden Zahlungsversuchen gesendet.
Speichern von Callback-Daten
Nach einer erfolgreichen Zahlung wird die vollständige Callback-Nutzlast in der folgenden Variablen gespeichert:
payment_callback
Sie enthält alle von Prodamus zurückgegebenen Zahlungsinformationen.
Beispiel:
{
"date": "2021-03-30T11:44:43+03:00",
"order_id": "757679",
"sum": "14.50",
"customer_phone": "+77777777777",
"customer_extra": "Produkt",
"payment_status": "success"
}
Wenn Sie beim Generieren des Zahlungslinks product_name und payment_description angegeben haben, können Sie diese aus dem Callback abrufen.
Beispiel:
product = get(payment_callback, "products[0][name]")
description = get(payment_callback, "customer_extra")
Den Zahlungsbetrag abrufen:
amount = get(payment_callback, "sum")
Hinweis: Der Wert von
payment_sumwird immer nach optionalen Variablen wiepayment_descriptionundproduct_namezugewiesen.
Verfügbare Callbacks
Zusätzlich zu den Callbacks für erfolgreiche Zahlungen sendet Prodamus verschiedene System-Callbacks, die zur Automatisierung Ihres Chatbots verwendet werden können.
Abonnement-Ereignisse
- Vom Kunden gekündigtes Abonnement
- Vom Kunden reaktiviertes Abonnement
- Abgelaufenes Abonnement
Zahlungsfehler-Ereignisse
Abhängig vom Zahlungsanbieter können Sie Callbacks mit dem Fehlergrund erhalten, zum Beispiel:
- Zahlung fehlgeschlagen – Nicht ausreichende Deckung
- Zahlung fehlgeschlagen – Karte abgelaufen
- Zahlung fehlgeschlagen – Kartenlimit überschritten
- Zahlung fehlgeschlagen – Karte als verloren gemeldet
- Zahlung fehlgeschlagen – Systemfehler
- Zahlung fehlgeschlagen – Transaktion von der ausstellenden Bank abgelehnt
- Zahlung fehlgeschlagen – Transaktion von der Bank abgelehnt
Andere Ereignisse
- Benachrichtigung über anstehende wiederkehrende Zahlung
- Ratenzahlungsantrag genehmigt
- Ratenzahlungsantrag storniert
- Ratenzahlungsantrag abgelehnt
Sie können Chatbot-Flows erstellen, die auf jeden dieser Callbacks reagieren.
Sie können Kunden beispielsweise automatisch benachrichtigen, wenn eine wiederkehrende Zahlung fehlschlägt.
Um einen bestimmten Fehlergrund zu verarbeiten, erstellen Sie einen Trigger, der dem entsprechenden Callback entspricht.

Um alle fehlgeschlagenen Zahlungen unabhängig vom Grund zu verarbeiten, verwenden Sie eine Bedingung, die prüft, ob der Callback Folgendes enthält:
Zahlung fehlgeschlagen

Jeder Callback, der den Text Zahlung fehlgeschlagen enthält, löst die konfigurierte Chatbot-Aktion aus.
Abonnementzahlungen
Erstellen eines Abonnements
Bevor Sie Abonnementzahlungen akzeptieren, erstellen Sie ein Abonnementprodukt in Ihrem Prodamus-Konto.
Ausführliche Anweisungen finden Sie in der Prodamus-Dokumentation.
Nachdem Sie das Abonnementprodukt erstellt haben, kopieren Sie dessen Abonnement-Produkt-ID.

Weisen Sie die Abonnement-Produkt-ID der folgenden Variable zu:
prodamus_subscription
Mavibot generiert automatisch die folgende Variable:
prodamus_pay_url
Die generierte URL kann in einer Nachricht angezeigt oder an einen Button angehängt werden.
Beispiel:
https://payform.kz/7p3JR8/
Abonnementzahlungen werden genauso verarbeitet wie einmalige Zahlungen.
Nach einer erfolgreichen Abonnementzahlung wird die Telefonnummer des Kunden automatisch in der Variable customer_phone gespeichert.
Wenn
customer_emailnicht angegeben ist, istcustomer_phonefür die Abonnementverwaltung erforderlich.
get_prodamus_subscription_url
Sie können auch Abonnement-Zahlungslinks mit dem Rechner generieren.
Funktion:
get_prodamus_subscription_url(
subscription_id,
product_name,
expired,
customer_phone,
customer_email,
discount,
description,
extra_params,
products_for_receipt
)
Beispiel

Parameter
| Parameter | Beschreibung |
|---|---|
subscription_id |
Erforderlich. Abonnement-Produkt-ID aus Ihrem Prodamus-Konto. |
product_name |
Erforderlich. Produktname. |
expired |
Ablaufdatum des Zahlungslinks. Unterstützt dd.MM.yyyy oder dd.MM.yyyy HH:mm. Variablen werden ebenfalls unterstützt. |
customer_phone |
Telefonnummer des Kunden. Optional, wenn customer_email angegeben ist. |
customer_email |
E-Mail-Adresse des Kunden. Optional, wenn customer_phone angegeben ist. |
discount |
Rabattbetrag. |
description |
Produktbeschreibung. |
extra_params |
Zusätzliche Prodamus-API-Parameter. |
products_for_receipt |
Beleginformationen. Erforderlich bei Verwendung der Prodamus-Fiskalisierung ohne eigene Online-Registrierkasse. |
Beispiel
extra_params = {
"payments_limit": "3"
}
products_for_receipt = "Fotografiekurs-Abonnement, 2000 RUB/Monat, https://example.com/course"
subscription_link = get_prodamus_subscription_url(618988, "Fotografiekurs", "27.03.2023 17:02", "79167777771", "[email protected]", 20, "Premium-Abonnement", extra_params, products_for_receipt)
Wenn im selben Rechnerblock mehrere Zahlungslink-Funktionen ausgeführt werden und eine davon fehlschlägt, wird der Fehler in der Variable
error_payment_funcgespeichert.
Verwaltung des Abonnementstatus
Die Abonnementverwaltung ist nur für aktive Abonnements verfügbar. Sie wird im Demo-Modus nicht unterstützt, da keine Zahlungskarte hinterlegt ist.
Um ein Abonnement zu verwalten, muss mindestens einer der folgenden Parameter verfügbar sein:
customer_phonecustomer_email
Um ein Abonnement zu kündigen oder zu reaktivieren, verwenden Sie die folgende Funktion:
delete_subscription_prodamus
Beispielparameter:
{
"customer_phone": "#{customer_phone}",
"id_subscription": "#{prodamus_subscription}",
"url": "https://demo.payform.ru/",
"secret_key": "453e8fba8b7cef9ce58dc6e18e25b39ad5a05748175a3f205f2b084acbfc3b66",
"switcher": "0",
"profile_id": "12345"
}
Parameter
| Parameter | Beschreibung |
|---|---|
url |
In Mavibot konfigurierte Zahlungsformular-URL. |
secret_key |
Ihr Prodamus-Geheimschlüssel. |
id_subscription |
Abonnement-Produkt-ID. |
customer_phone |
Telefonnummer des Abonnenten. |
switcher |
Abonnementaktion: 0 – deaktivieren, 1 – reaktivieren. |
profile_id |
Kundenprofil-ID in Prodamus. |
Wenn eine Profil-ID von Prodamus zurückgegeben wird, wird sie automatisch in der Variable
profile_idgespeichert. Sie können diese Variable anstelle voncustomer_phoneodercustomer_emailbei der Verwaltung von Abonnements verwenden.
Beispiel:

Die Funktion gibt einen Statuswert zurück.
Bei erfolgreichem Vorgang:
status = ok
prodamus_subscription_switch_status
Sie können Abonnements auch mit dem Rechner verwalten.
prodamus_subscription_switch_status(
subscription_id,
switcher,
customer_phone,
customer_email,
profile_id
)
Parameter
| Parameter | Beschreibung |
|---|---|
subscription_id |
Abonnement-Produkt-ID. |
switcher |
0 – Abonnement deaktivieren, 1 – Abonnement reaktivieren. |
customer_phone |
Telefonnummer des Kunden. Optional, wenn customer_email angegeben ist. |
customer_email |
E-Mail-Adresse des Kunden. Optional, wenn customer_phone angegeben ist. |
profile_id |
Kundenprofil-ID in Prodamus. |
Beispiel 1
Deaktivieren Sie ein Abonnement mit der Telefonnummer des Kunden.
status = prodamus_subscription_switch_status(
"618117",
"0",
"75431312321"
)
Beispiel 2
Deaktivieren Sie ein Abonnement mit der E-Mail-Adresse des Kunden.
status = prodamus_subscription_switch_status(
"618117",
"0",
"",
"[email protected]"
)
Die Funktion gibt
okzurück, wenn der Vorgang erfolgreich ist. Andernfalls wird eine Fehlermeldung zurückgegeben.
Verwaltung von Abonnementrabatten
Verwenden Sie die folgende Funktion, um einen Rabatt auf zukünftige wiederkehrende Zahlungen anzuwenden.
Der Rabatt kann für eine begrenzte Anzahl von Zahlungen oder unbegrenzt angewendet werden.
prodamus_subscription_discount(
subscription_id,
discount,
customer_phone,
num,
profile_id
)
Parameter
| Parameter | Beschreibung |
|---|---|
subscription_id |
Abonnement-ID. |
discount |
Rabattbetrag. Muss größer als Null sein und darf den Abonnementpreis nicht überschreiten. |
customer_phone |
Telefonnummer des Kunden. Optional, wenn aus customer_phone verfügbar. |
num |
Anzahl der zukünftigen Zahlungen, auf die der Rabatt angewendet werden soll. Wenn nicht angegeben, ist der Rabatt dauerhaft. |
profile_id |
Kundenprofil-ID in Prodamus. |
Bei Erfolg gibt die Funktion Folgendes zurück:
ok
Andernfalls wird eine Fehlerbeschreibung zurückgegeben.
Das Aktualisieren des Rabatts oder der Anzahl der Zahlungen erfordert einen erneuten Aufruf der Funktion mit den neuen Werten.
Beispiele
Dauerhafter Rabatt
Wenden Sie einen Rabatt von 1 auf alle zukünftigen Abonnementzahlungen an.
result = prodamus_subscription_discount(
"624034",
"1"
)

Rabatt für die nächsten drei Zahlungen
result = prodamus_subscription_discount(
"624034",
"2",
"",
"3"
)

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


Ändern des nächsten Abonnementzahlungsdatums
Sie können die nächste wiederkehrende Zahlung verschieben, indem Sie deren geplantes Datum ändern.
Das neue Zahlungsdatum muss immer später als das aktuell geplante Zahlungsdatum sein.
Diese Funktion kann beispielsweise verwendet werden, um den Abonnementzeitraum eines Kunden als Bonus zu verlängern.
Verwenden Sie die folgende Funktion:
prodamus_subscription_payment_date(
subscription_id,
date,
customer_phone,
profile_id
)
Parameter
| Parameter | Beschreibung |
|---|---|
subscription_id |
Abonnement-ID. |
date |
Neues Zahlungsdatum im Format dd.MM.yyyy oder dd.MM.yyyy HH:mm. Wenn keine Uhrzeit angegeben ist, wird 00:00 verwendet. |
customer_phone |
Telefonnummer des Kunden. Optional. Wenn nicht angegeben, wird der Wert aus der Variable customer_phone übernommen. |
profile_id |
Kundenprofil-ID in Prodamus. |
Übergeben zusätzlicher Parameter an Prodamus
Sie können zusätzliche Parameter, die von Prodamus unterstützt werden (z. B. Abonnement-Startdaten oder Ratenzahlungseinstellungen), beim Generieren eines Zahlungslinks senden.
Erstellen Sie einfach eine Variable, deren Name mit dem Präfix prodamus_ beginnt.
Beispiel:
prodamus_some_parameter
Wenn ein Zahlungslink generiert wird, werden alle Variablen mit dem Präfix prodamus_ automatisch in die an Prodamus gesendete Anfrage aufgenommen.
Testen von Zahlungen
Nur der Zahlungsvorgang wird simuliert.
Während der Konfiguration Ihrer Integration und Chatbot-Abläufe können Sie Prodamus-Testkarten verwenden, um die Belastung echter Gelder zu vermeiden.
Schalten Sie zunächst Ihre Zahlungsseite in den Demo-Modus.
Vergessen Sie nicht, nach dem Ändern des Modus auf Speichern zu klicken.

Testkarten
MIR
| Feld | Wert |
|---|---|
| Kartennummer | 2202 2050 0001 2424 |
| Ablaufdatum | 05/35 |
| CVV | 669 |
Mastercard
| Feld | Wert |
|---|---|
| Kartennummer | 5469 9801 0004 8525 |
| Ablaufdatum | 05/26 |
| CVV | 041 |
| 3-D Secure Code | 111111 |
Visa
| Feld | Wert |
|---|---|
| Kartennummer | 4006 8009 0096 2514 |
| Ablaufdatum | 05/26 |
| CVV | 941 |
| 3-D Secure Code | 111111 |
Wichtig: Testkarten lösen dieselbe Chatbot-Logik, Callbacks, Automatisierungen und Integrationen aus wie echte Zahlungen.
Sobald die Tests abgeschlossen sind, schalten Sie die Zahlungsseite zurück in den Live-Modus, um mit der Annahme echter Zahlungen zu beginnen.
Der Demo-Modus-Schalter muss ausgeschaltet sein (roter Schalter deaktiviert).