Split Links & Empfänger¶
Ein Split Link verteilt eine einzelne Zahlung zwischen Ihnen (dem Link-Ersteller) und einem oder mehreren Empfängern. Wenn der Kunde bezahlt, splittet die Plattform die Mittel automatisch — jede Partei erhält ihren Anteil nach Gebühren.
So funktioniert es¶
flowchart LR
C[Kunde] -->|"Bezahlt €100"| S[SecPaid]
S -->|"€40 (Rest)"| O[Sie - Link-Ersteller]
S -->|"€36 (share: 6)"| R1[Empfänger A]
S -->|"€24 (share: 4)"| R2[Empfänger B]
- Sie erstellen einen Split Link mit Empfängern und deren Anteilen
- Der Kunde bezahlt den vollen Betrag über den einzelnen
pay_link - SecPaid teilt die Zahlung auf: Empfänger erhalten ihre definierten Anteile, Sie (der Ersteller) erhalten den Rest
- Nur Ihr
payment_endpointwird benachrichtigt (der auf dem Link hinterlegte)
Ersteller erhält immer den Rest
Der Link-Ersteller (Sie) erhält automatisch den Anteil der Zahlung, der nicht an Empfänger zugewiesen ist. Sie fügen sich selbst nicht zum recipients-Array hinzu — tatsächlich verursacht die Verwendung Ihres eigenen Tokens in der Empfängerliste einen Fehler.
Empfänger-Tokens¶
Jeder Empfänger in Ihrem SecPaid-System hat einen eindeutigen Recipient Token — ein SecPaid-Attribut namens recipient_token. Sie referenzieren Empfänger über diesen Token beim Erstellen von Split Links.
Empfänger-Tokens erhalten¶
Jeder Benutzer hat einen Recipient Token sichtbar in seinem Dashboard:
- Navigieren Sie zu Settings → API & Integrations
- Das Feld Recipient Token zeigt den Token (z.B.
aeltai-receiver)
Bei der Erstellung von Split Links referenzieren Sie andere Benutzer über deren Recipient Token. Fragen Sie Ihre Empfänger nach deren Token, oder suchen Sie sie über das Admin-Panel.
Token-Format¶
Recipient Tokens sind alphanumerische Strings, z.B.: receivera, usertoken123, merchant_abc
Split-Typen¶
SecPaid unterstützt zwei Split-Berechnungsmodi:
Normaler Split (Proportional)¶
split_type: "normal" (Standard)
Anteile sind Prozentpunkte. Die Empfänger erhalten ihre definierten Prozentsätze, und der Ersteller erhält den Rest (100 minus Gesamtsumme der Shares).
Beispiel: Gesamt = €100, zwei Empfänger mit Shares 30 und 30 (gesamt: 60%):
| Partei | Share | Berechnung | Erhält |
|---|---|---|---|
| Sie (Ersteller) | Rest | 100 × (100-60)/100 | €40,00 |
| Empfänger A | 30 | 100 × 30/100 | €30,00 |
| Empfänger B | 30 | 100 × 30/100 | €30,00 |
{
"amount": 100,
"split_type": "normal",
"recipients": [
{"token": "empfaenger_a", "share": 30},
{"token": "empfaenger_b", "share": 30}
]
}
Gesamtsumme der Shares darf 100 nicht überschreiten
Die Summe aller Empfänger-Shares muss ≤ 100 sein. Bei Überschreitung gibt die API einen Fehler zurück.
Absoluter Split¶
split_type: "absolute"
Anteile sind feste EUR-Beträge. Jeder Empfänger erhält genau den angegebenen Betrag, und der Ersteller erhält den Rest (Gesamtbetrag minus Summe aller Shares).
Beispiel: Gesamt = €100, zwei Empfänger erhalten jeweils €25:
| Partei | Share (EUR) | Erhält |
|---|---|---|
| Sie (Ersteller) | Rest | €50,00 |
| Empfänger A | 25,00 | €25,00 |
| Empfänger B | 25,00 | €25,00 |
{
"amount": 100,
"split_type": "absolute",
"recipients": [
{"token": "empfaenger_a", "share": 25.00},
{"token": "empfaenger_b", "share": 25.00}
]
}
Validierung beim absoluten Split
Die Summe aller share-Werte darf den amount nicht überschreiten. Bei Überschreitung gibt die API einen Fehler zurück.
Gesamten Betrag an Empfänger geben¶
Wenn Empfänger die gesamte Zahlung erhalten sollen (Ersteller behält nichts):
- Normal: Shares die sich auf genau 100 summieren (z.B.
[{"share": 60}, {"share": 40}]) - Absolut: Shares die sich auf genau den Betrag summieren (z.B.
[{"share": 60.00}, {"share": 40.00}]für einen €100-Link)
Service-Gebühren¶
Die Plattform erhebt eine Service-Gebühr auf den Anteil jeder Partei individuell. Jede Partei kann einen unterschiedlichen Gebühren-Prozentsatz auf ihrem Konto konfiguriert haben. Zusätzlich wird eine PSP-Gebühr (Zahlungsabwicklung) abgezogen.
Beispiel: €55,25 Split-Zahlung mit split_type: "normal":
| Partei | Brutto-Betrag | SecPaid-Gebühr | PSP-Gebühr | Netto-Betrag | Payout-Status |
|---|---|---|---|---|---|
| Ersteller (Sie) | €55,25 | €0,83 | €1,29 | €53,13 | Pending |
| Empfänger A | €14,99 | €0,16 | €0,35 | €14,49 | Pending |
Ein kleineres Beispiel — €88,19 reguläre Kartenzahlung (Basic):
| Brutto-Betrag | SecPaid-Gebühr | PSP-Gebühr | Netto-Betrag | |
|---|---|---|---|---|
| Sie | €88,19 | €1,33 | €3,15 | €84,71 |
Webhooks für Split Links¶
Nur der payment_endpoint des Link-Erstellers wird aufgerufen — Empfänger erhalten keine individuellen Webhooks. Der payment_endpoint ist auf Link-Ebene gespeichert und gehört daher immer dem Ersteller.
Standard-Webhook (wie bei regulären Links):
{
"ResponseCode": 1,
"data": {
"pay_id": 12345,
"note": "Projektzahlung",
"amount": 100.00,
"user_id": "ersteller-uuid",
"status": "Success"
}
}
Bei aktivierter Verschlüsselung erhält der Ersteller einen zweiten Webhook mit der vollständigen Split-Aufschlüsselung:
[
{"user_id": "ersteller-uuid", "user_token": null, "amount": 40.00, "service_fee": 1.16, "service_fee_psp": 0.29, "net_amount": 38.55, "pay_id": 12345, "payment_method": null},
{"user_id": "empfaenger-a-uuid", "user_token": "tok_a", "amount": 30.00, "service_fee": 0.87, "service_fee_psp": 0.22, "net_amount": 28.91, "pay_id": 12345, "payment_method": null},
{"user_id": "empfaenger-b-uuid", "user_token": "tok_b", "amount": 30.00, "service_fee": 0.87, "service_fee_psp": 0.22, "net_amount": 28.91, "pay_id": 12345, "payment_method": null}
]
Note
Der zweite Webhook mit Split-Details wird nur gesendet, wenn die Verschlüsselung auf dem Link aktiviert ist (is_encryption: "true"). Beide Webhooks werden an dieselbe(n) payment_endpoint-URL(s) gesendet.
Einschränkungen¶
- Maximale Empfänger pro Link: nicht formal begrenzt, aber im Rahmen halten
- Jeder Recipient Token muss im System existieren — ungültige Tokens lassen die gesamte Anfrage fehlschlagen
- Sie können Ihren eigenen Token nicht in der Empfängerliste verwenden — der Ersteller-Anteil ist immer der Rest
- Recipient Tokens sind case-sensitive