Zum Inhalt

Response-Envelope & Fehler

Jede SecPaid API-Antwort folgt einer einheitlichen JSON-Envelope-Struktur.

Standard-Response-Envelope

Alle Erfolgs- und Fehler-Antworten teilen dieses Format:

{
  "ResponseCode": 1,
  "ResponseMsg": "Lesbare Nachricht",
  "Result": "True",
  "ServerTime": "CEST"
}
Feld Typ Beschreibung
ResponseCode integer 1 = Erfolg, 0 = Fehler
ResponseMsg string Lesbare Statusnachricht (kann lokalisiert sein)
Result string "True" bei Erfolg, "False" bei Fehler
ServerTime string Server-Zeitzonen-Abkürzung (z.B. CEST, CET)

Erfolgs-Antwort

Erfolgreiche Antworten enthalten zusätzliche Datenfelder je nach Endpoint:

{
  "ResponseCode": 1,
  "ResponseMsg": "Link created successfully",
  "Result": "True",
  "ServerTime": "CEST",
  "data": {
    "linktopay_id": 12345,
    "pay_link": "https://app.secpaid.com/payment?link_id=MTIzNDU=",
    "amount": "49.99"
  }
}

Für Listen-Endpoints sehen Sie möglicherweise:

{
  "ResponseCode": 1,
  "ResponseMsg": "List retrieved successfully",
  "Result": "True",
  "ServerTime": "CEST",
  "data": [...]
}

Fehler-Antwort

{
  "ResponseCode": 0,
  "ResponseMsg": "Amount is required",
  "Result": "False",
  "ServerTime": "CEST"
}

Häufige Fehlermeldungen

ResponseMsg Ursache Lösung
Incorrect token or missing token Auth-Header fehlt oder ungültig token-Header-Wert prüfen
Please enter token Kein token-Header in der Anfrage token-Header hinzufügen
Amount is required Fehlendes amount-Feld amount im Request-Body angeben
Invalid recipient token at index N Empfänger-Token nicht im System gefunden Empfänger-Tokens verifizieren
Link not found Ungültige link_id Gültige Link-ID aus createLink verwenden
This link is already used Versuch einen bezahlten Link zu löschen Nur ungenutzte Links können gelöscht werden
Refund amount is required Fehlendes refund_amount in v2 Immer refund_amount angeben

Erfolg prüfen

const response = await fetch(url, options);
const json = await response.json();

if (json.ResponseCode === 1 && json.Result === "True") {
  // Erfolg — json.data verarbeiten
} else {
  // Fehler — json.ResponseMsg behandeln
  console.error(json.ResponseMsg);
}

Immer ResponseCode prüfen

Der HTTP-Statuscode ist immer 200, unabhängig vom geschäftslogischen Ergebnis. Verwenden Sie ResponseCode um das tatsächliche Ergebnis zu bestimmen.