- So richten Sie Paypal ein
- So erstellen Sie einen Zahlungslink
- So erstellen Sie eine wiederkehrende Zahlung
- So verarbeiten Sie das Ergebnis
So richten Sie Paypal ein
Um mit Paypal zu arbeiten, benötigen Sie zwei Schlüssel: client_id und secret
Gehen Sie zur Seite https://developer.paypal.com/developer/applications/
Wählen Sie aus der Liste aus oder erstellen Sie eine neue Anwendung:
Wechseln Sie oben in den Live-Modus und wählen Sie die gewünschte Anwendung aus. Die Einstellungsseite wird geöffnet, auf der sich die benötigten Daten befinden:
Kopieren Sie die Daten und fügen Sie sie in die entsprechenden Felder in den Mavibot-Einstellungen ein: Gehen Sie zum Bereich „Acquiring" und suchen Sie den Paypal-Dienst:

Klicken Sie anschließend auf „Verbinden" und füllen Sie die Felder mit dem zuvor erhaltenen Secret Key und der Client-ID aus:

Klicken Sie dann auf „Einstellungen speichern". Damit ist die Verbindung hergestellt.
So erstellen Sie einen Zahlungslink
Verwendung der Variable payment_sum
Um einen Zahlungslink zu generieren, müssen Sie den Wert der Variable payment_sum festlegen. Unmittelbar danach erscheint die Variable paypal_pay_url.
| Funktionsparameter | Parameterbeschreibung | Hinweis |
|---|---|---|
| payment_title | (optionale Variable)Dies ist der Produktname. | Wenn nicht angegeben, wird der Text: „Rechnungszahlung order_id" (order_id ist die Bestellkennung in Mavibot) eingefügt |
| payment_description | Produktbeschreibung, optionales Feld | |
| company_name | Der Name Ihres Unternehmens wird ganz oben auf der Zahlungsseite angezeigt (Beispiel unten, company) |

Zusätzlich können Sie vor der Angabe von payment_sum festlegen, in welcher Sprache die Zahlungsseite angezeigt wird.
Setzen Sie dazu die Variable locale. Die Standardsprache ist Russisch (ru-RU). Mögliche Optionen: da-DK, he-IL, id-ID, ja-JP, no-NO, pt-BR, ru-RU, sv-SE, th-TH, zh-CN, zh-HK, zh-TW, usw. (die verfügbaren Sprachen variieren, orientieren Sie sich an der Originalquelle)
Sie können auch die Währung angeben, in der die Zahlung akzeptiert wird. Geben Sie dazu die Variable currency an. Standardmäßig ist der Rubel (RUB) eingestellt. Für den Dollar setzen Sie den Wert auf USD (currency = USD). Mögliche Währungsoptionen finden Sie unter dem Link.
Der dritte zusätzliche Parameter ist company_name - der Name Ihres Unternehmens, der ganz oben auf der Zahlungsseite angezeigt wird (Beispiel unten, company).
Die Variable paypal_pay_url kann mit einem Link angezeigt oder auf einen Button mit dem Text „Bezahlen" gesetzt werden.
Der Link sieht so aus: https://www.paypal.com/checkoutnow?token=07N53571YM296381N
Ein Implementierungsbeispiel.
Festlegen des Zahlungsbetrags und des Firmennamens

Bitte beachten Sie: der Variable payment_sum wird der Wert zuletzt zugewiesen, nach den optionalen Variablen payment_title, company_name, usw.
Geben Sie anschließend die Variable #{paypal_pay_url} im zweiten „Status"-Block an:
- Die Variable kann im Nachrichtenfeld angegeben werden:

- Die Variable kann im URL-Feld in den Anhangeinstellungen angegeben werden:

- Die Variable kann im URL-Feld in den Button-Einstellungen angegeben werden:

Beim Öffnen des Zahlungslinks
Verwendung der Calculator-Funktion paypal_payment_url
Erstellen Sie einen Funnel-Constructor-Block und verwenden Sie die Funktion paypal_payment_url im Calculator, indem Sie die erforderlichen Parameter übergeben:
Wenn die Blockbedingung erfüllt ist, erhält der Kunde einen Zahlungslink, und die Client-Variable paypal_payment_completed wird mit dem Wert False erstellt.

url = paypal_payment_url(2500,`` 'RUB', 'Rechnungszahlung payment_id','Zahlungsbeschreibung', 'Organisationsname', 'ru-RU')
So erstellen Sie eine wiederkehrende Zahlung
Um einen Link zur Zahlung mit wiederkehrenden Zahlungen zu erstellen und zu erhalten, müssen Sie in Ihrem persönlichen Konto einen Abonnementplan erstellen.


Auswählen eines bereits erstellten Angebots:

Alternativ geben Sie den Angebotsnamen in die Suchleiste ein und klicken Sie auf „Erstellen".


Wählen Sie den Lastschrifttyp „Fest":

Abonnement erstellen

Wählen Sie die Abonnementwährung und die Lastschriftbedingungen:
Achtung!!
In Mavibot ist die Standardwährung Euro. Wenn die Lastschrift in Dollar oder einer anderen Währung erfolgt, geben Sie bei der Erstellung des Abonnements die benötigte Währung an und in Mavibot dieselbe Währung aus dem Paypal-Abonnement.

Als nächstes aktivieren Sie das Abonnement:


Nach der Erstellung ist seine ID verfügbar, die wir in Zukunft verwenden werden, um ein Abonnement zu erstellen und einen Zahlungslink zu erhalten.

Der Zahlungslink wird von der Funktion generiert und zurückgegeben:
paypal_subscription_url(plan_id, shipping_currency, shipping_payment_sum, start_time)
| Funktionsparameter | Parameterbeschreibung |
|---|---|
| ! plan_id | Abonnementplan-ID |
| ! shipping_currency | Wenn die Zahlung für den angegebenen Plan in Dollar erfolgt, müssen Sie nichts übergeben, andernfalls übergeben Sie den Währungscode, den Sie im Plan angegeben haben. Die Währung, in der der Versand bezahlt wird, wird hier übergeben (auch bei Nullkosten). Standardmäßig USD |
| shipping_payment_sum | Dies ist ein optionaler Parameter, der die Versandkosten angibt. Standardmäßig ist der Wert auf Null gesetzt. |
| start_time | optionaler Parameter, Datum und Uhrzeit des Abonnementstarts. Wenn Sie nichts übergeben, ist das Abonnementstartdatum = das Zahlungsdatum. Formate: %d.%m.%Y oder %d.%m.%Y %H:%M. |

Beim Erstellen des Links erscheint auch die Variable paypal_subscription_id, die die Abonnement-ID enthält.
Während der Zahlung erhalten Sie einen Callback, der dem Bezahlen einer regulären Zahlung ähnelt.
paypal_subscription_data(paypal_subscription_id) - Abrufen von Informationen über das Abonnement
| Funktionsparameter | Parameterbeschreibung |
|---|---|
| paypal_subscription_id | die Abonnement-ID. |
Das Ergebnis der Ausführung der Funktion ist ein Array, das alle Informationen über das Abonnement enthält, einschließlich der Anzahl der Zahlungen, der Anzahl der fehlgeschlagenen Abbuchungsversuche, des Status und mehr.
So kündigen Sie ein Abonnement
Die Funktion paypal_remove_subscription(paypal_subscription_id) hilft Kunden, ihre Abonnements für Ihre Dienste zu kündigen.
Parameter:
| Funktionsparameter | Beschreibung |
|---|---|
| paypal_subscription_id | die Abonnement-ID, die beim Abonnieren in der Client-Variable gespeichert wird. |

So verarbeiten Sie das Ergebnis
Nach einer erfolgreichen Zahlung werden Callbacks an den Bot gesendet, die Sie darüber informieren, dass die Zahlung erfolgreich war.
Im System sehen Sie Callbacks als Nachrichten vom Benutzer, aber der Benutzer selbst sieht sie NICHT: Sie werden nur dem Operator angezeigt.
Um den Callback im Block zu verarbeiten und dem Benutzer Nachrichten über den Zahlungsstatus zu senden, verwenden Sie den Vergleichstyp „Exakte Übereinstimmung".
Callbacks können sich verzögern. Daher wird empfohlen, dem Benutzer nach der Anzeige des Zahlungslinks eine Nachricht zu senden wie: „Bitte warten Sie nach der Zahlung auf eine Bestätigungsnachricht, dass die Zahlung erfolgreich war."
Für Direktzahlung
Der Callback für erfolgreiche Zahlungen besteht aus den ersten 10 Zeichen des Secrets und der Signatur mit dem Status. Zum Beispiel: EHsWHYOoWV_success
Beispiel 1: Reaktion auf eine erfolgreiche Zahlung mit dem Block „Startbedingung":

Beispiel 2: Reaktion auf eine erfolgreiche Zahlung mit dem Block „Startbedingung":

Wenn Sie den Benutzer nicht aus dem Haupt-Chatbot-Fluss herausnehmen möchten, verwenden Sie den Block „Kein Zustand mit Bedingung" – Benutzer können nicht direkt zu diesem Block weitergeleitet werden, sodass sie nach einer erfolgreichen Zahlung weiterhin im Haupt-Trichter bleiben und gleichzeitig eine Benachrichtigung über die erfolgreiche Zahlung erhalten.
Wenn Sie den Trichter jedoch basierend auf dem Ereignis der erfolgreichen Zahlung fortsetzen möchten, verwenden Sie den Block „Startbedingung". In diesem Fall wird der Benutzer nach Abschluss des Zahlungsblocks zum Block „Startbedingung" weitergeleitet, von wo aus Sie mit dem Aufbau Ihres Trichters fortfahren können.
Weitere Informationen zu Bedingungsblöcken finden Sie im gleichnamigen Artikel. Blöcke mit Bedingung erklärt
Bei erfolgreicher Zahlung wird die Variable paypal_payment_completed auf True gesetzt.
Nach Abschluss der Zahlung wird dem Client die Variable paypal_callback_data hinzugefügt, die aktuelle Zahlungssystemdaten zum Transaktionsstatus enthält. Sie können die erforderlichen Daten aus dem empfangenen Wörterbuch mit der get-Methode extrahieren.
Für eine erneute Zahlung müssen Sie die Variable payment_sum zurücksetzen, die Variable mit dem zuvor generierten Link und dann die Variable payment_sum erneut zuweisen oder die Funktion aufrufen, um einen neuen Link zu erhalten.
Für Abonnementzahlungen
Die Callback-Einstellungsfunktion für abonnementbezogene Vorgänge wurde am 01.09.2024 hinzugefügt. Damit die Callbacks dieser Kategorie korrekt funktionieren, müssen Sie die Integration des Paypal-Zahlungssystems in Ihrem Projekt deaktivieren und erneut verbinden.
Bei einer Abonnementzahlung erhält der Bot eine der folgenden Nachrichten:
- über die Aktivierung des Abonnements. Zum Beispiel subscription_I-PTV5H4MRC1H3_activated;
- Benachrichtigung über eine erfolgreiche wiederkehrende Abonnementzahlung. Zum Beispiel subscription_I-PTV5H4MRC1H3_paid;
- oder über einen Fehler bei der Abonnementzahlung. Zum Beispiel subscription_I-PTV5H4MRC1H3_not_paid;
In den obigen Beispielen ist „I-PTV5H4MRC1H3" die ID des Kundenabonnements, auf die über die Variable paypal_subscription_id zugegriffen werden kann.
Der Callback fügt dem Client die Variable paypal_subscription_callback_data hinzu, die aktuelle Zahlungssystemdaten zum Transaktionsstatus enthält. Sie können die erforderlichen Daten aus dem empfangenen Wörterbuch mit der get-Methode extrahieren.
Beispiel 1: Reaktion auf die Abonnementaktivierung mit dem Block „Startbedingung":

Beispiel 2: Reaktion auf die Abonnementaktivierung mit dem Block „Kein Zustand mit Bedingung":



