createSplitLink¶
Einen Payment Link erstellen, der die Zahlung auf mehrere Empfänger verteilt.
Request¶
Headers¶
| Header | Erforderlich | Beschreibung |
|---|---|---|
token |
Ja | Ihre API Key |
Content-Type |
Ja | application/json |
Body-Parameter¶
| Feld | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
amount |
number | Ja | Gesamtbetrag in EUR (muss > 0 sein) |
recipients |
array | Ja | Array von Empfänger-Objekten (siehe unten) |
split_type |
string | Nein | "normal" (proportional, Standard) oder "absolute" (feste Beträge) |
recipient_note |
string | Nein | Notiz zur Identifikation |
callback_url |
string | Nein | URL oder Index für Browser-Redirect |
payment_endpoint |
string | Nein | Webhook-URL(s) für diesen Link. Akzeptiert URL, Index oder kommaseparierte Kombination. Siehe Webhooks |
cancellable |
boolean | Nein | Ob Kunde abbrechen kann. Standard: true |
is_qr_link |
boolean | Nein | QR-Code generieren |
Recipients-Array¶
Jedes Objekt im recipients-Array:
| Feld | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
token |
string | Ja | recipient_token des Empfängers (SecPaid-Attribut) |
share |
number | Ja | Anteilswert — Bedeutung abhängig von split_type |
split_type = "normal" (Standard): share ist ein Prozentsatz (0–100). Empfänger erhalten ihren Prozentsatz, der Link-Ersteller erhält den Rest. Z.B. Shares [30, 30] bei €100 → Empfänger erhalten €30 + €30, Ersteller erhält €40.
split_type = "absolute": share ist ein fester EUR-Betrag pro Empfänger. Der Ersteller erhält den Rest (Betrag minus Summe der Shares). Summe der Shares darf amount nicht überschreiten.
Antwort¶
Erfolg (ResponseCode: 1)¶
{
"data": {
"is_cancellation": "No",
"user_id": "b44c4429-4a7b-4e27-85af-c1c2f43f4ffe",
"amount": 35.39,
"recipient_note": "Projektzahlung",
"status": "Unused",
"paymentEndpoint": "https://ihreseite.de/webhook",
"callback_url": "https://ihreseite.de/zahlung/fertig",
"servicefee": "1.0",
"recipients": "[{\"token\":\"empfaenger-a\",\"share\":10}]",
"is_split_link": "true",
"split_type": "normal",
"bank_transfer": "true",
"is_qr_link": "false",
"payment_config": "",
"bank_statement_description": "",
"created_at": "2026-05-20 11:19:42",
"id": 99289,
"pay_link": "https://app.secpaid.com/payment?link_id=OTkyODk=",
"qr_img": "https://quickchart.io/chart?chl=https://app.secpaid.com/payment?link_id=OTkyODk=&chs=300x300&cht=qr",
"transaction_type": "Split"
},
"ResponseCode": 1,
"ResponseMsg": "Link has been created successfully",
"Result": "True",
"ServerTime": "CEST"
}
Fehler (ResponseCode: 0)¶
| ResponseMsg | Ursache |
|---|---|
Please enter token |
Fehlender token-Header |
No user found with the provided API key. |
Ungültiger API-Key |
Please enter amount |
Fehlendes amount-Feld |
Invalid recipient token at index N |
Token an Position N existiert nicht im System |
You cannot use your own token in recipient list at index N |
Eigener Token in Empfängerliste |
Share should be less than 100 |
Normal-Split: Summe der Shares überschreitet 100 |
Share should be less than or equal to {amount} |
Absolut-Split: Summe überschreitet Betrag |
Share should be greater than zero at index N |
Share-Wert ist ≤ 0 |
Beispiele¶
curl -X POST https://app.secpaid.com/api/v2/createSplitLink \
-H "Content-Type: application/json" \
-H "token: IHR_API_KEY" \
-d '{
"amount": 100,
"split_type": "normal",
"recipients": [
{"token": "empfaenger_a", "share": 6},
{"token": "empfaenger_b", "share": 4}
],
"recipient_note": "Projektzahlung"
}'
curl -X POST https://app.secpaid.com/api/v2/createSplitLink \
-H "Content-Type: application/json" \
-H "token: IHR_API_KEY" \
-d '{
"amount": 100,
"split_type": "absolute",
"recipients": [
{"token": "empfaenger_a", "share": 60.00},
{"token": "empfaenger_b", "share": 40.00}
],
"recipient_note": "Projektzahlung"
}'
$response = Http::withHeaders([
'token' => 'IHR_API_KEY',
])->post('https://app.secpaid.com/api/v2/createSplitLink', [
'amount' => 100,
'split_type' => 'absolute',
'recipients' => [
['token' => 'empfaenger_a', 'share' => 60.00],
['token' => 'empfaenger_b', 'share' => 40.00],
],
'recipient_note' => 'Projektzahlung',
]);
Hinweise¶
- Jeder Empfänger muss einen gültigen
recipient_tokenim SecPaid-System haben - Sie können Ihren eigenen Token nicht in der Empfängerliste verwenden — der Ersteller-Anteil ist immer der Rest
- Bei
split_type: "absolute"darf die Summe aller Shares denamountnicht überschreiten - Bei
split_type: "normal"darf die Summe aller Shares 100 nicht überschreiten - Nur der
payment_endpointdes Link-Erstellers erhält den Webhook — Empfänger bekommen keine individuellen Benachrichtigungen - Bei aktivierter Verschlüsselung wird ein zweiter Webhook mit der vollständigen Split-Aufschlüsselung an den Ersteller gesendet
- Siehe Split Links Konzept für detaillierte Split-Mathematik