Zum Inhalt springen
Developer

Donation

Abrechnung16 EndpunkteBilling / Donation

Anfrage
curl --request GET \
  --url https://eure-instanz.iw-erp.de/api/invoice/donation/report \
  --header 'x-iw-jwt-token: <TOKEN>'

Alle Spenden auflisten

GET/api/invoice/donation

Antworten

200Liefert eine Liste von Spenden.

Anfrage
curl --request GET \
  --url https://eure-instanz.iw-erp.de/api/invoice/donation \
  --header 'x-iw-jwt-token: <TOKEN>'

Neue Spende anlegen (Admin)

POST/api/invoice/donation

Antworten

200Legt eine neue Spende an

Anfrage
curl --request POST \
  --url https://eure-instanz.iw-erp.de/api/invoice/donation \
  --header 'x-iw-jwt-token: <TOKEN>'

Einzelne Spende abrufen

GET/api/invoice/donation/{id}

Pfad-Parameter

idPflichtstring

Antworten

200Liefert ein einzelnes Donation-Objekt.

Anfrage
curl --request GET \
  --url https://eure-instanz.iw-erp.de/api/invoice/donation/42 \
  --header 'x-iw-jwt-token: <TOKEN>'

Spende aktualisieren (eingeschränkte Felder: Status, Adresse, Verknüpfung mit Person/Firma)

PUT/api/invoice/donation/{id}

Pfad-Parameter

idPflichtstring

Antworten

200Spende aktualisieren

Anfrage
curl --request PUT \
  --url https://eure-instanz.iw-erp.de/api/invoice/donation/42 \
  --header 'x-iw-jwt-token: <TOKEN>'

Spende aktualisieren (eingeschränkte Felder: Status, Adresse, Verknüpfung mit Person/Firma)

PATCH/api/invoice/donation/{id}

Pfad-Parameter

idPflichtstring

Antworten

200Spende aktualisieren

Anfrage
curl --request PATCH \
  --url https://eure-instanz.iw-erp.de/api/invoice/donation/42 \
  --header 'x-iw-jwt-token: <TOKEN>'

Spendenbescheinigung als PDF herunterladen

GET/api/invoice/donation/{id}/pdf

Pfad-Parameter

idPflichtstring

Antworten

200Liefert die Spendenbescheinigung als PDF

Anfrage
curl --request GET \
  --url https://eure-instanz.iw-erp.de/api/invoice/donation/42/pdf \
  --header 'x-iw-jwt-token: <TOKEN>'

Rücklastschrift einer per SEPA eingezogenen Spende von Hand erfassen.

POST/api/invoice/donation/{id}/sepa_return

Für Rücklastschriften, die der Bankabgleich nicht selbst zuordnen kann (Kontoauszug ohne Referenz, Mitteilung der Bank per Brief). Die Spende wird storniert, eine Dauerspende nach mehreren Rücklastschriften in Folge pausiert. Einstellung donation_sepa_return_enabled.

Pfad-Parameter

idPflichtstring

Request-Body application/json

  • reasonstring

    Rückgabegrund, z. B. AC04 oder MD06

  • feenumber

    Bankentgelt der Rücklastschrift

Antworten

200Die stornierte Spende

409Die Spende wurde nicht per SEPA eingezogen oder der Einzug ging noch nicht an die Bank

Anfrage
curl --request POST \
  --url https://eure-instanz.iw-erp.de/api/invoice/donation/42/sepa_return \
  --header 'content-type: application/json' \
  --header 'x-iw-jwt-token: <TOKEN>' \
  --data '
{
  "reason": "string",
  "fee": 1.5
}
'

Spenden ohne Person, die mit einer E-Mail-Adresse der Person gegeben wurden.

GET/api/invoice/donation/reassign/suggestions

Für das Zuordnen von Gast-Spenden zu einem Mitglied (V5). Einstellung donation_reassign_enabled.

Query-Parameter

crmPersonstringDie Person, für die gesucht wird

Antworten

200Die Mailadressen der Person, passende Spenden und Dauerspenden

404Funktion nicht aktiviert oder Person nicht gefunden

Anfrage
curl --request GET \
  --url https://eure-instanz.iw-erp.de/api/invoice/donation/reassign/suggestions \
  --header 'x-iw-jwt-token: <TOKEN>'

Spenden und Dauerspenden einer anderen Person oder einem anderen Haushalt zuordnen.

POST/api/invoice/donation/reassign

Gast-Spenden einem Mitglied zuordnen oder die Spenden einer doppelt angelegten Person zusammenführen (V5). Ohne Haushalt gilt der einzige Haushalt der Person. Eine Spende mit ausgestellter Zuwendungsbestätigung bleibt beim Spender, bis die Bestätigung storniert ist; dann wird keine der Spenden geändert. Einstellung donation_reassign_enabled.

Request-Body application/json

  • donationsarray<integer>

    IDs der Spenden

  • recurringDonationsarray<integer>

    IDs der Dauerspenden

  • crmPersoninteger

    Neue Person

  • crmCompanyinteger

    Neuer Haushalt

Antworten

200Anzahl der zugeordneten Spenden und Dauerspenden

409Eine Spende ist bereits bestätigt

Anfrage
curl --request POST \
  --url https://eure-instanz.iw-erp.de/api/invoice/donation/reassign \
  --header 'content-type: application/json' \
  --header 'x-iw-jwt-token: <TOKEN>' \
  --data '
{
  "donations": [
    1
  ],
  "recurringDonations": [
    1
  ],
  "crmPerson": 1,
  "crmCompany": 1
}
'

Die Arbeitsliste für die Sammelbestätigungen eines Jahres.

GET/api/invoice/donation/collective_receipt/candidates

Wer im Jahr mehrfach gespendet hat, bekommt eine Bestätigung statt zwölf. Diese Liste sagt, für wen sich das lohnt – mit Anzahl und Summe, damit vor dem Erzeugen erkennbar ist, worum es geht.

Voran stehen die Stammdaten: fehlen Finanzamt oder Bescheiddatum, ist jede Bestätigung angreifbar, und das fällt erst beim Spender auf.

Query-Parameter

yearstringKalenderjahr, Vorgabe das vergangene
minimumstringAb wie vielen Zuwendungen, Standardwert 2

Antworten

200Zuwendende mit mehreren Spenden im Jahr

Anfrage
curl --request GET \
  --url https://eure-instanz.iw-erp.de/api/invoice/donation/collective_receipt/candidates \
  --header 'x-iw-jwt-token: <TOKEN>'

Sachspende erfassen (S4).

POST/api/invoice/donation/in_kind

Die Felder einer Spende wie beim Anlegen, amount ist der Wert der Sachspende. Dazu inKind mit der genauen Bezeichnung, der Herkunft (private, business, unknown), ob Unterlagen zur Wertermittlung vorliegen und der Bewertungsgrundlage. Die Spende ist sofort abgeschlossen: sie kommt nicht über das Konto. Setting donation_in_kind_enabled.

Request-Body application/json

  • amountnumber

    Wert der Sachspende

  • donorNamestring
  • inKindobject
    Felder anzeigen (4)
    • descriptionstring

      Bezeichnung mit Alter, Zustand, Kaufpreis

    • originstring

      Erlaubt: private business unknown

    • documentsboolean

      Unterlagen zur Wertermittlung liegen vor

    • valuationBasisstring

      z. B. Rechnung vom 03.02.2026

Antworten

200Die Sachspende

400Angaben zur Sachspende fehlen

Anfrage
curl --request POST \
  --url https://eure-instanz.iw-erp.de/api/invoice/donation/in_kind \
  --header 'content-type: application/json' \
  --header 'x-iw-jwt-token: <TOKEN>' \
  --data '
{
  "amount": 49.9,
  "donorName": "string",
  "inKind": {
    "description": "Text",
    "origin": "private",
    "documents": true,
    "valuationBasis": "string"
  }
}
'

Angaben einer Sachspende korrigieren (S4): Wert und inKind wie beim Erfassen. Nach dem Ausstellen der Bestätigung erst nach deren Storno.

PUT/api/invoice/donation/{id}/in_kind

Pfad-Parameter

idPflichtstring

Antworten

200Die Sachspende

409Die Bestätigung ist ausgestellt

Anfrage
curl --request PUT \
  --url https://eure-instanz.iw-erp.de/api/invoice/donation/42/in_kind \
  --header 'x-iw-jwt-token: <TOKEN>'

Angaben einer Sachspende korrigieren (S4): Wert und inKind wie beim Erfassen. Nach dem Ausstellen der Bestätigung erst nach deren Storno.

PATCH/api/invoice/donation/{id}/in_kind

Pfad-Parameter

idPflichtstring

Antworten

200Die Sachspende

409Die Bestätigung ist ausgestellt

Anfrage
curl --request PATCH \
  --url https://eure-instanz.iw-erp.de/api/invoice/donation/42/in_kind \
  --header 'x-iw-jwt-token: <TOKEN>'

Sammelbestätigungen eines Jahres als Massenlauf.

POST/api/invoice/donation/collective_receipt/run

Der Testlauf (dryRun) zeigt nur, wer eine bekommt. Der echte Lauf stellt sie aus und schickt sie mit sendMail per Mail mit dem PDF im Anhang. Wer für das Jahr schon eine hat, bleibt draußen, ebenso wer unter der Mindestsumme donation_collective_receipt_min_total liegt. Setting donation_collective_receipt_bulk_enabled (S7).

Request-Body application/json

  • yearinteger

    Kalenderjahr, Vorgabe das vergangene

  • minimuminteger

    Ab wie vielen Zuwendungen, Standardwert 2

  • dryRunboolean

    Nur anzeigen, Vorgabe true

  • sendMailboolean

    Per Mail verschicken, Vorgabe true

Antworten

200Ergebnis je Zuwendendem und Zusammenfassung

409Angaben zum Freistellungsbescheid fehlen oder Bestätigungen werden nicht protokolliert

Anfrage
curl --request POST \
  --url https://eure-instanz.iw-erp.de/api/invoice/donation/collective_receipt/run \
  --header 'content-type: application/json' \
  --header 'x-iw-jwt-token: <TOKEN>' \
  --data '
{
  "year": 1,
  "minimum": 1,
  "dryRun": true,
  "sendMail": true
}
'

Die Sammelbestätigung eines Zuwendenden als PDF.

GET/api/invoice/donation/collective_receipt/{id}/pdf

Pfad-Parameter

idPflichtstring

Query-Parameter

yearstringKalenderjahr, Vorgabe das vergangene
donor_typestringperson oder company, Vorgabe person
previewstring1 = Entwurf zum Testlauf, wird weder ausgestellt noch protokolliert (Einstellung donation_collective_receipt_bulk_enabled)

Antworten

200Die Sammelbestätigung als PDF

Anfrage
curl --request GET \
  --url https://eure-instanz.iw-erp.de/api/invoice/donation/collective_receipt/42/pdf \
  --header 'x-iw-jwt-token: <TOKEN>'