Gibt es Code-Beispiele für meine Programmiersprache?

Veröffentlicht am · Aktualisiert am

Gibt es Code-Beispiele für meine Programmiersprache?

Ja. Die API ist ein gewöhnlicher HTTP-Dienst: Jede Sprache, die einen POST-Request mit JSON und HTTP-Basic-Authentifizierung senden kann, funktioniert. Ein SDK müssen Sie nicht installieren.

Zwei Punkte gelten in jeder Sprache:

  • Authentifizierung: Der API-Schlüssel ist der Benutzername, das Passwort bleibt leer.
  • Antwort: Das SEPA-XML kommt Base64-kodiert im Feld file; Sie müssen es nur dekodieren.

Die API-Referenz erzeugt außerdem kopierfertige Snippets in mehreren Sprachen (curl, Python, Node.js, PHP, Ruby u. a.).

Python-Beispiel

import base64
import requests

r = requests.post(
    "https://api.generatesepa.com/api/v2/sdd",
    auth=("IHR_API_SCHLUESSEL", ""),
    json={
        "name": "Muster GmbH",
        "iban": "DE89370400440532013000",
        "sepa_identifier": "DE98ZZZ09999999999",
        "debits": [{
            "name": "Max Mustermann",
            "iban": "DE02120300000000202051",
            "amount": 2599,  # in Cent
            "date": "2026-12-05",
            "description": "Mitgliedsbeitrag Dezember",
            "reference": "RE-2026-120",
            "mandate_reference": "MANDAT-000123",
            "mandate_signature": "2026-01-15",
        }],
    },
)
if r.status_code != 201:
    raise SystemExit(r.json())
with open("lastschriften.xml", "wb") as f:
    f.write(base64.b64decode(r.json()["file"]))

Node.js-Beispiel (ab Version 18)

const auth = Buffer.from("IHR_API_SCHLUESSEL:").toString("base64");
const res = await fetch("https://api.generatesepa.com/api/v2/sct", {
  method: "POST",
  headers: { "Authorization": `Basic ${auth}`, "Content-Type": "application/json" },
  body: JSON.stringify({
    name: "Muster GmbH",
    iban: "DE89370400440532013000",
    payments: [{
      name: "Lieferant Schmidt KG",
      iban: "DE02120300000000202051",
      amount: 125000, // in Cent
      date: "2026-12-05",
      description: "Rechnung R-2026-311",
      reference: "ZAHLUNG-311",
    }],
  }),
});
const data = await res.json();
if (res.status !== 201) throw new Error(JSON.stringify(data));
const xml = Buffer.from(data.file, "base64").toString("utf8");

Fazit

Übertragen Sie eines dieser Beispiele in Ihre Sprache: ein POST-Request, Basic-Authentifizierung und eine Base64-Dekodierung genügen.


Häufig gestellte Fragen

Muss ich eine Bibliothek installieren?
Nein. Jeder HTTP-Client, der JSON mit Basic-Authentifizierung senden kann, funktioniert: requests in Python, fetch in Node.js, cURL oder Guzzle in PHP, Net::HTTP in Ruby.
Wie komme ich an die XML-Datei?
Die Antwort enthält die Datei Base64-kodiert im Feld file. Dekodieren Sie sie und speichern Sie sie mit der Endung .xml, bevor Sie sie in Ihr Online-Banking hochladen.
Kompatibel mit Lambda/Cloud Run?
Ja. Die API ist ein gewöhnlicher HTTP-Endpunkt ohne besondere Infrastrukturanforderungen.
Meine Programmiersprache ist nicht aufgeführt. Was kann ich tun?
Jede Sprache, die HTTP-Anfragen senden kann, funktioniert: ein POST-Request mit JSON, Basic-Authentifizierung und eine Base64-Dekodierung der Antwort. Die API-Referenz auf conversorsepa.readme.io erzeugt Snippets für viele Sprachen.

API-Dokumentation lesen

Jetzt ausprobieren →
War dieser Artikel hilfreich?

Verwandte Artikel