IncomingInvoice
Returns a list of all IncomingInvoice
GET/api/invoice/incoming_invoice
Query parameters
searchStringstring | text to search for in the list |
orderFieldNamestring | name of the order field |
orderFieldSortstring | sorting modeAllowed: DESCASC |
pageinteger | page of the list |
pageSizeinteger | number of entries for each page |
withMaxPageNumberstring | returns the number of pages available as a header if this is set |
Responses
200Returns a list of all IncomingInvoicearray<IncomingInvoice>
Show fields (46)
idintegerPrimary key of the invoice document. Internal ID.
tokenstringToken that identifies the document for public access.
numberintegerRunning document number.
manual_number_prefixstringPrefix of a manually entered document number.
manual_numberintegerManually entered document number.
number_stringstringDocument number as displayed to users.
generation_datestring (date-time)Date the document was generated.
number_datestring (date-time)Date used for the document number.
messagestringMessage printed on the document.
currencystringCurrency of the document.
namestringName of the document.
due_datestring (date-time)Due date of the document.
netto_valuenumber (float)Net total of the document.
brutto_valuenumber (float)Gross total of the document.
tax_valuenumber (float)Total tax amount of the document.
taxTaxrequiredTax rate applied to the document.
Show fields (6)
idintegerPrimary key of the tax rate. Internal ID.
namestringrequiredName of the tax rate, for example 19 percent.
valuenumber (float)Tax rate in percent.
deletedbooleanThe tax rate is deleted.
global_defaultbooleanDefault tax rate for new items.
datev_tax_keyintegerDATEV Steuerschlüssel für Umsatzsteuer (Ausgangsrechnungen). Wird von BuchhaltungsButler und DATEV-Export genutzt. Standardwerte: 0 = Kein Steuerausweis (0%) 2 = Umsatzsteuer 7% (ermäßigt) 3 = Umsatzsteuer 19% (Regelsteuersatz) Für Vorsteuer (Eingangsrechnungen) gibt es eine spiegelbildliche Zuordnung: 0 = Keine Vorsteuer (0%) 5 = Vorsteuer 7% 8 = Vorsteuer 19%
linked_number_titlestringTitle of the linked document number.
linked_numberstringNumber of the linked document.
statusstringStatus of the document.
previous_statusstringStatus before the last change.
status_updatedstring (date-time)Point in time the status was last changed.
archivedbooleanWhether the document is archived.
last_pdf_exportstring (date-time)Point in time the PDF was last exported.
last_status_exportstringStatus at the last export.
search_stringstringText that the entity can be searched by.
external_invoice_numberstringExterne Rechnungsnummer des Lieferanten
received_datestring (date-time)Eingangsdatum (wann wurde die Rechnung empfangen)
payment_datestring (date-time)Zahlungsdatum
service_date_startstring (date-time)Leistungszeitraum Start
service_date_endstring (date-time)Leistungszeitraum Ende
vat_categorystringDer umsatzsteuerliche Sachverhalt. Auf der Eingangsseite entscheidet er darüber, ob die Vorsteuer unter Kennzahl 66 steht (Rechnung eines anderen Unternehmers), unter 61 (innergemeinschaftlicher Erwerb), unter 62 (Einfuhrumsatzsteuer) oder unter 67 (§ 13b UStG). Beim Erwerb und bei § 13b kommt eine zweite Zeile hinzu: die Steuer schulden wir selbst, obwohl sie uns niemand berechnet hat, und sie steht deshalb zugleich als Umsatzsteuer im Vordruck. Wer nur eine der beiden bucht, zahlt zu viel oder zu wenig. Ohne Angabe der Regelfall.
vat_self_assessed_ratenumber (float)Der Steuersatz, mit dem die selbst geschuldete Steuer zu rechnen ist. Beim innergemeinschaftlichen Erwerb und bei § 13b UStG berechnet der Lieferant keine Steuer - die Rechnung ist netto, und die Steuer schulden wir. Womit sie zu rechnen ist, steht deshalb auf keinem Beleg: es ist der Satz, der im Inland auf diese Leistung anzuwenden wäre. Ohne Angabe rechnet die Voranmeldung mit dem Regelsatz und sagt in den Hinweisen, bei wie vielen Belegen sie das getan hat. Stillschweigend zu raten wäre in einer Steueranmeldung das Falsche.
import_vat_amountstringDie Einfuhrumsatzsteuer aus dem Zollbescheid. Sie steht NICHT auf der Rechnung des Lieferanten - die ist bei einer Einfuhr ohne deutsche Steuer. Entrichtet wird sie an den Zoll, und nur der entrichtete Betrag ist als Vorsteuer abziehbar (§ 15 Abs. 1 Satz 1 Nr. 2 UStG, Kennzahl 62 der Voranmeldung). Den Steuerbetrag der Lieferantenrechnung dafür zu nehmen war schlicht der falsche Beleg.
paid_valuenumber (float)Bereits bezahlter Betrag (für Teilzahlungen)
itemsarray<IncomingInvoiceItem>Rechnungspositionen
Show fields (16)
idintegerPrimary key of the invoice item. Internal ID.
descriptionstringDescription of the invoice item.
price_is_bruttobooleanWhether the price is a gross price including tax.
skustringArtikelnummer (Stock Keeping Unit)
barcodestringBarcode (ISBN, UPC, GTIN usw.)
item_typestringTyp (Item, Shipping)
netto_valuenumber (float)Net value of the invoice item.
brutto_valuenumber (float)Gross value of the invoice item.
tax_valuenumber (float)Tax amount of the invoice item.
quantitynumber (float)requiredQuantity of the invoice item.
pricenumber (float)requiredUnit price of the invoice item.
namestringrequiredName of the invoice item.
unitstringrequiredUnit of the invoice item.
taxTaxTax rate applied to the invoice item.
expense_categoryExpenseCategory10Kostenkategorie für EÜR (kann von der Hauptkategorie der Rechnung abweichen)
positionintegerPosition/Reihenfolge
sellerIncomingInvoiceSellerVerkäufer/Lieferant Informationen (Snapshot)
Show fields (25)
idintegerPrimary key of the client. Internal ID.
namestringName of the client on the invoice.
vat_idstringVAT ID of the client.
taxnumberstringTax number of the client.
buyer_reference_idstringLeitweg-ID or custom reference ID defined by the customer
secondary_namestringSecond name line of the client on the invoice.
addressstringAddress as text.
address_streetstringStreet of the address.
address_house_numberstringHouse number of the address.
address_street_levelstringStreet and house number of the address.
address_costringCare-of line of the address.
address_citystringCity of the address.
address_zipstringPostal code of the address.
address_admin_level1stringFirst administrative level of the address, e.g. the federal state.
address_countrystringCountry code of the address.
address_full_countrystringFull name of the country of the address.
address_geo_latstringLatitude of the address.
address_geo_lngstringLongitude of the address.
address_external_provider_idstringfield to store the external provider id of the address. e.g. Google Maps PlaceID like google:ChIJVcKw5r90sEcRhdjNq6NItqE
numberstringCustomer number of the buyer.
search_stringstringText that the entity can be searched by.
main_phonestringMain phone number.
main_faxstringMain fax number.
main_emailstringMain e-mail address.
websitestringWebsite address.
expense_categoryExpenseCategory10Hauptkategorie für EÜR
Show fields (19)
idintegerPrimary key of the expense category. Internal ID.
codestringKurzbezeichnung/Code (z.B. "WAREN", "PERSONAL", "MIETE")
eur_line_numberintegerZeile in der Anlage EÜR (z.B. 23 für Wareneinkauf)
eur_line_namestringBezeichnung der EÜR-Zeile (z.B. "Waren, Rohstoffe und Hilfsstoffe")
category_typestringTyp der Kategorie (expense, income, neutral, asset, private)
default_taxTaxStandard-Steuersatz für diese Kategorie
cost_centerCostCenterKostenstelle der Kategorie - bei Vereinen die steuerliche Sphäre. Ein Beleg trägt keine eigene Sphäre; über seine Kategorie bekommt er eine. Die EÜR des wirtschaftlichen Geschäftsbetriebs liest sie (billing_euer_commercial_sphere_only), die automatische Buchung setzt sie auf die Buchungszeilen (billing_accounting_cost_center_from_category).
is_vat_deductiblebooleanIst Vorsteuerabzug möglich?
is_immediate_deductionbooleanIst die Kategorie sofort abzugsfähig? (vs. Abschreibung über mehrere Jahre)
depreciation_yearsintegerAbschreibungsdauer in Jahren (für Anlagevermögen)
sort_orderintegerSortierreihenfolge
is_activebooleanIst die Kategorie aktiv/sichtbar?
colorstringFarbe für UI-Darstellung (Hex-Code)
iconstringIcon-Name für UI-Darstellung
is_systembooleanIst dies eine System-Kategorie? (nicht löschbar)
deletedbooleanThis property is used to mark an entity as deleted / archived
namestringName of the entity.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
payment_transactionsarray<PaymentTransaction4>Verknüpfte Zahlungstransaktionen
Show fields (14)
autobooleanThe transaction was created automatically.
incomingbooleanThe transaction is incoming money.
bank_transactionbooleanThe transaction comes from a bank account.
currencystringCurrency of the transaction, for example EUR.
payment_typePaymentTypePayment type of the transaction.
invoicesarray<Invoice31>brutto_valuenumber (float)Gross amount of the transaction.
is_feebooleanThe transaction is a fee, for example a bank fee.
due_datestring (date-time)This is used for negative transactions to exclude them from potential bill reminders until they are due.
cash_discountbooleanSkonto: dieser Teil der Forderung erlischt durch Abzug, nicht durch Zahlung. Kein Geldeingang - Ist-Versteuerung und Mindest-Ist zählen ihn nicht; bei Sollversteuerung mindert er die Bemessungsgrundlage im Zeitraum des Abzugs (§ 17 Abs. 1 UStG).
deletedbooleanThis property is used to mark an entity as deleted / archived
namestringName of the entity.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
incoming_invoice_transactionsarray<IncomingInvoiceTransaction2>Spezialisierte Zahlungen, die nur dieser Eingangsrechnung zugeordnet sind.
Show fields (5)
amountnumber (float)Positiver Betrag dieser konkreten Zahlung.
payment_datestring (date-time)Date of the payment.
currencystringCurrency of the payment.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
document_pathstringPfad zur gespeicherten Rechnungsdatei (PDF/Bild)
document_filenamestringOriginal Dateiname
document_mime_typestringMIME Type des Dokuments
notesstringNotizen/Bemerkungen
is_deductiblebooleanIst die Rechnung für den Vorsteuerabzug relevant?
is_approvedbooleanWurde die Rechnung geprüft/freigegeben?
approved_atstring (date-time)Time the incoming invoice was approved.
curl --request GET \
--url https://your-instance.iw-erp.de/api/invoice/incoming_invoice \
--header 'x-iw-jwt-token: <TOKEN>'const options = {method: 'GET', headers: {'x-iw-jwt-token': '<TOKEN>'}};
fetch('https://your-instance.iw-erp.de/api/invoice/incoming_invoice', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://your-instance.iw-erp.de/api/invoice/incoming_invoice"
headers = {"x-iw-jwt-token": "<TOKEN>"}
response = requests.get(url, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('GET', 'https://your-instance.iw-erp.de/api/invoice/incoming_invoice', [
'headers' => [
'x-iw-jwt-token' => '<TOKEN>',
],
]);
echo $response->getBody();using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Get,
RequestUri = new Uri("https://your-instance.iw-erp.de/api/invoice/incoming_invoice"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://your-instance.iw-erp.de/api/invoice/incoming_invoice")
.get()
.addHeader("x-iw-jwt-token", "<TOKEN>")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://your-instance.iw-erp.de/api/invoice/incoming_invoice"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart with the iw_erp_api package
import 'package:iw_erp_api/clients/incoming_invoice_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
IwApiState().host = 'your-instance.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await IncomingInvoiceController.getAll();
if (result.success) {
print(result.data);
}[
{
"tax": {
"name": "Beispiel",
"id": 42,
"value": 1.5,
"deleted": true,
"global_default": true,
"datev_tax_key": 1
},
"id": 42,
"currency": "EUR",
"name": "Beispiel",
"linked_number_title": "Beispiel",
"token": "string",
"number": 1,
"manual_number_prefix": "string",
"manual_number": 1,
"number_string": "string"
}
]Import an IncomingInvoice from file upload (ZUGFeRD PDF/XML or regular PDF)
POST/api/invoice/incoming_invoice
Request body multipart/form-data
data[file]string (binary)Invoice file (PDF or XML)
Responses
200Import IncomingInvoice from fileIncomingInvoice
Show fields (46)
idintegerPrimary key of the invoice document. Internal ID.
tokenstringToken that identifies the document for public access.
numberintegerRunning document number.
manual_number_prefixstringPrefix of a manually entered document number.
manual_numberintegerManually entered document number.
number_stringstringDocument number as displayed to users.
generation_datestring (date-time)Date the document was generated.
number_datestring (date-time)Date used for the document number.
messagestringMessage printed on the document.
currencystringCurrency of the document.
namestringName of the document.
due_datestring (date-time)Due date of the document.
netto_valuenumber (float)Net total of the document.
brutto_valuenumber (float)Gross total of the document.
tax_valuenumber (float)Total tax amount of the document.
taxTaxrequiredTax rate applied to the document.
Show fields (6)
idintegerPrimary key of the tax rate. Internal ID.
namestringrequiredName of the tax rate, for example 19 percent.
valuenumber (float)Tax rate in percent.
deletedbooleanThe tax rate is deleted.
global_defaultbooleanDefault tax rate for new items.
datev_tax_keyintegerDATEV Steuerschlüssel für Umsatzsteuer (Ausgangsrechnungen). Wird von BuchhaltungsButler und DATEV-Export genutzt. Standardwerte: 0 = Kein Steuerausweis (0%) 2 = Umsatzsteuer 7% (ermäßigt) 3 = Umsatzsteuer 19% (Regelsteuersatz) Für Vorsteuer (Eingangsrechnungen) gibt es eine spiegelbildliche Zuordnung: 0 = Keine Vorsteuer (0%) 5 = Vorsteuer 7% 8 = Vorsteuer 19%
linked_number_titlestringTitle of the linked document number.
linked_numberstringNumber of the linked document.
statusstringStatus of the document.
previous_statusstringStatus before the last change.
status_updatedstring (date-time)Point in time the status was last changed.
archivedbooleanWhether the document is archived.
last_pdf_exportstring (date-time)Point in time the PDF was last exported.
last_status_exportstringStatus at the last export.
search_stringstringText that the entity can be searched by.
external_invoice_numberstringExterne Rechnungsnummer des Lieferanten
received_datestring (date-time)Eingangsdatum (wann wurde die Rechnung empfangen)
payment_datestring (date-time)Zahlungsdatum
service_date_startstring (date-time)Leistungszeitraum Start
service_date_endstring (date-time)Leistungszeitraum Ende
vat_categorystringDer umsatzsteuerliche Sachverhalt. Auf der Eingangsseite entscheidet er darüber, ob die Vorsteuer unter Kennzahl 66 steht (Rechnung eines anderen Unternehmers), unter 61 (innergemeinschaftlicher Erwerb), unter 62 (Einfuhrumsatzsteuer) oder unter 67 (§ 13b UStG). Beim Erwerb und bei § 13b kommt eine zweite Zeile hinzu: die Steuer schulden wir selbst, obwohl sie uns niemand berechnet hat, und sie steht deshalb zugleich als Umsatzsteuer im Vordruck. Wer nur eine der beiden bucht, zahlt zu viel oder zu wenig. Ohne Angabe der Regelfall.
vat_self_assessed_ratenumber (float)Der Steuersatz, mit dem die selbst geschuldete Steuer zu rechnen ist. Beim innergemeinschaftlichen Erwerb und bei § 13b UStG berechnet der Lieferant keine Steuer - die Rechnung ist netto, und die Steuer schulden wir. Womit sie zu rechnen ist, steht deshalb auf keinem Beleg: es ist der Satz, der im Inland auf diese Leistung anzuwenden wäre. Ohne Angabe rechnet die Voranmeldung mit dem Regelsatz und sagt in den Hinweisen, bei wie vielen Belegen sie das getan hat. Stillschweigend zu raten wäre in einer Steueranmeldung das Falsche.
import_vat_amountstringDie Einfuhrumsatzsteuer aus dem Zollbescheid. Sie steht NICHT auf der Rechnung des Lieferanten - die ist bei einer Einfuhr ohne deutsche Steuer. Entrichtet wird sie an den Zoll, und nur der entrichtete Betrag ist als Vorsteuer abziehbar (§ 15 Abs. 1 Satz 1 Nr. 2 UStG, Kennzahl 62 der Voranmeldung). Den Steuerbetrag der Lieferantenrechnung dafür zu nehmen war schlicht der falsche Beleg.
paid_valuenumber (float)Bereits bezahlter Betrag (für Teilzahlungen)
itemsarray<IncomingInvoiceItem>Rechnungspositionen
Show fields (16)
idintegerPrimary key of the invoice item. Internal ID.
descriptionstringDescription of the invoice item.
price_is_bruttobooleanWhether the price is a gross price including tax.
skustringArtikelnummer (Stock Keeping Unit)
barcodestringBarcode (ISBN, UPC, GTIN usw.)
item_typestringTyp (Item, Shipping)
netto_valuenumber (float)Net value of the invoice item.
brutto_valuenumber (float)Gross value of the invoice item.
tax_valuenumber (float)Tax amount of the invoice item.
quantitynumber (float)requiredQuantity of the invoice item.
pricenumber (float)requiredUnit price of the invoice item.
namestringrequiredName of the invoice item.
unitstringrequiredUnit of the invoice item.
taxTaxTax rate applied to the invoice item.
expense_categoryExpenseCategory10Kostenkategorie für EÜR (kann von der Hauptkategorie der Rechnung abweichen)
positionintegerPosition/Reihenfolge
sellerIncomingInvoiceSellerVerkäufer/Lieferant Informationen (Snapshot)
Show fields (25)
idintegerPrimary key of the client. Internal ID.
namestringName of the client on the invoice.
vat_idstringVAT ID of the client.
taxnumberstringTax number of the client.
buyer_reference_idstringLeitweg-ID or custom reference ID defined by the customer
secondary_namestringSecond name line of the client on the invoice.
addressstringAddress as text.
address_streetstringStreet of the address.
address_house_numberstringHouse number of the address.
address_street_levelstringStreet and house number of the address.
address_costringCare-of line of the address.
address_citystringCity of the address.
address_zipstringPostal code of the address.
address_admin_level1stringFirst administrative level of the address, e.g. the federal state.
address_countrystringCountry code of the address.
address_full_countrystringFull name of the country of the address.
address_geo_latstringLatitude of the address.
address_geo_lngstringLongitude of the address.
address_external_provider_idstringfield to store the external provider id of the address. e.g. Google Maps PlaceID like google:ChIJVcKw5r90sEcRhdjNq6NItqE
numberstringCustomer number of the buyer.
search_stringstringText that the entity can be searched by.
main_phonestringMain phone number.
main_faxstringMain fax number.
main_emailstringMain e-mail address.
websitestringWebsite address.
expense_categoryExpenseCategory10Hauptkategorie für EÜR
Show fields (19)
idintegerPrimary key of the expense category. Internal ID.
codestringKurzbezeichnung/Code (z.B. "WAREN", "PERSONAL", "MIETE")
eur_line_numberintegerZeile in der Anlage EÜR (z.B. 23 für Wareneinkauf)
eur_line_namestringBezeichnung der EÜR-Zeile (z.B. "Waren, Rohstoffe und Hilfsstoffe")
category_typestringTyp der Kategorie (expense, income, neutral, asset, private)
default_taxTaxStandard-Steuersatz für diese Kategorie
cost_centerCostCenterKostenstelle der Kategorie - bei Vereinen die steuerliche Sphäre. Ein Beleg trägt keine eigene Sphäre; über seine Kategorie bekommt er eine. Die EÜR des wirtschaftlichen Geschäftsbetriebs liest sie (billing_euer_commercial_sphere_only), die automatische Buchung setzt sie auf die Buchungszeilen (billing_accounting_cost_center_from_category).
is_vat_deductiblebooleanIst Vorsteuerabzug möglich?
is_immediate_deductionbooleanIst die Kategorie sofort abzugsfähig? (vs. Abschreibung über mehrere Jahre)
depreciation_yearsintegerAbschreibungsdauer in Jahren (für Anlagevermögen)
sort_orderintegerSortierreihenfolge
is_activebooleanIst die Kategorie aktiv/sichtbar?
colorstringFarbe für UI-Darstellung (Hex-Code)
iconstringIcon-Name für UI-Darstellung
is_systembooleanIst dies eine System-Kategorie? (nicht löschbar)
deletedbooleanThis property is used to mark an entity as deleted / archived
namestringName of the entity.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
payment_transactionsarray<PaymentTransaction4>Verknüpfte Zahlungstransaktionen
Show fields (14)
autobooleanThe transaction was created automatically.
incomingbooleanThe transaction is incoming money.
bank_transactionbooleanThe transaction comes from a bank account.
currencystringCurrency of the transaction, for example EUR.
payment_typePaymentTypePayment type of the transaction.
invoicesarray<Invoice31>brutto_valuenumber (float)Gross amount of the transaction.
is_feebooleanThe transaction is a fee, for example a bank fee.
due_datestring (date-time)This is used for negative transactions to exclude them from potential bill reminders until they are due.
cash_discountbooleanSkonto: dieser Teil der Forderung erlischt durch Abzug, nicht durch Zahlung. Kein Geldeingang - Ist-Versteuerung und Mindest-Ist zählen ihn nicht; bei Sollversteuerung mindert er die Bemessungsgrundlage im Zeitraum des Abzugs (§ 17 Abs. 1 UStG).
deletedbooleanThis property is used to mark an entity as deleted / archived
namestringName of the entity.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
incoming_invoice_transactionsarray<IncomingInvoiceTransaction2>Spezialisierte Zahlungen, die nur dieser Eingangsrechnung zugeordnet sind.
Show fields (5)
amountnumber (float)Positiver Betrag dieser konkreten Zahlung.
payment_datestring (date-time)Date of the payment.
currencystringCurrency of the payment.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
document_pathstringPfad zur gespeicherten Rechnungsdatei (PDF/Bild)
document_filenamestringOriginal Dateiname
document_mime_typestringMIME Type des Dokuments
notesstringNotizen/Bemerkungen
is_deductiblebooleanIst die Rechnung für den Vorsteuerabzug relevant?
is_approvedbooleanWurde die Rechnung geprüft/freigegeben?
approved_atstring (date-time)Time the incoming invoice was approved.
curl --request POST \
--url https://your-instance.iw-erp.de/api/invoice/incoming_invoice \
--header 'content-type: multipart/form-data' \
--header 'x-iw-jwt-token: <TOKEN>' \
--form data[file]='@datei.pdf'const form = new FormData();
form.append('data[file]', 'datei.pdf');
const options = {method: 'POST', headers: {'x-iw-jwt-token': '<TOKEN>'}};
options.body = form;
fetch('https://your-instance.iw-erp.de/api/invoice/incoming_invoice', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://your-instance.iw-erp.de/api/invoice/incoming_invoice"
files = { "data[file]": ("datei.pdf", open("datei.pdf", "rb"), "application/pdf") }
headers = {"x-iw-jwt-token": "<TOKEN>"}
response = requests.post(url, files=files, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('POST', 'https://your-instance.iw-erp.de/api/invoice/incoming_invoice', [
'multipart' => [
[
'name' => 'data[file]',
'filename' => 'datei.pdf',
'contents' => null,
'headers' => [
'Content-Type' => 'application/pdf'
]
]
]
'headers' => [
'x-iw-jwt-token' => '<TOKEN>',
],
]);
echo $response->getBody();using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Post,
RequestUri = new Uri("https://your-instance.iw-erp.de/api/invoice/incoming_invoice"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
Content = new MultipartFormDataContent
{
new StringContent("")
{
Headers =
{
ContentType = new MediaTypeHeaderValue("application/pdf"),
ContentDisposition = new ContentDispositionHeaderValue("form-data")
{
Name = "data[file]",
FileName = "datei.pdf",
}
}
},
},
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("multipart/form-data; boundary=---011000010111000001101001");
RequestBody body = RequestBody.create(mediaType, "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"data[file]\"; filename=\"datei.pdf\"\r\nContent-Type: application/pdf\r\n\r\n\r\n-----011000010111000001101001--");
Request request = new Request.Builder()
.url("https://your-instance.iw-erp.de/api/invoice/incoming_invoice")
.post(body)
.addHeader("x-iw-jwt-token", "<TOKEN>")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://your-instance.iw-erp.de/api/invoice/incoming_invoice"
payload := strings.NewReader("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"data[file]\"; filename=\"datei.pdf\"\r\nContent-Type: application/pdf\r\n\r\n\r\n-----011000010111000001101001--")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart with the iw_erp_api package
import 'package:iw_erp_api/clients/incoming_invoice_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
IwApiState().host = 'your-instance.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await IncomingInvoiceController.postFile(Stream<List<int>>.fromJson({}), 42, '…');
if (result.success) {
print(result.data);
}{
"tax": {
"name": "Beispiel",
"id": 42,
"value": 1.5,
"deleted": true,
"global_default": true,
"datev_tax_key": 1
},
"id": 42,
"currency": "EUR",
"name": "Beispiel",
"linked_number_title": "Beispiel",
"token": "string",
"number": 1,
"manual_number_prefix": "string",
"manual_number": 1,
"number_string": "string"
}Get a single IncomingInvoice
GET/api/invoice/incoming_invoice/{identifier}
Path parameters
identifierrequiredstring |
Responses
200Get a single IncomingInvoiceIncomingInvoice
Show fields (46)
idintegerPrimary key of the invoice document. Internal ID.
tokenstringToken that identifies the document for public access.
numberintegerRunning document number.
manual_number_prefixstringPrefix of a manually entered document number.
manual_numberintegerManually entered document number.
number_stringstringDocument number as displayed to users.
generation_datestring (date-time)Date the document was generated.
number_datestring (date-time)Date used for the document number.
messagestringMessage printed on the document.
currencystringCurrency of the document.
namestringName of the document.
due_datestring (date-time)Due date of the document.
netto_valuenumber (float)Net total of the document.
brutto_valuenumber (float)Gross total of the document.
tax_valuenumber (float)Total tax amount of the document.
taxTaxrequiredTax rate applied to the document.
Show fields (6)
idintegerPrimary key of the tax rate. Internal ID.
namestringrequiredName of the tax rate, for example 19 percent.
valuenumber (float)Tax rate in percent.
deletedbooleanThe tax rate is deleted.
global_defaultbooleanDefault tax rate for new items.
datev_tax_keyintegerDATEV Steuerschlüssel für Umsatzsteuer (Ausgangsrechnungen). Wird von BuchhaltungsButler und DATEV-Export genutzt. Standardwerte: 0 = Kein Steuerausweis (0%) 2 = Umsatzsteuer 7% (ermäßigt) 3 = Umsatzsteuer 19% (Regelsteuersatz) Für Vorsteuer (Eingangsrechnungen) gibt es eine spiegelbildliche Zuordnung: 0 = Keine Vorsteuer (0%) 5 = Vorsteuer 7% 8 = Vorsteuer 19%
linked_number_titlestringTitle of the linked document number.
linked_numberstringNumber of the linked document.
statusstringStatus of the document.
previous_statusstringStatus before the last change.
status_updatedstring (date-time)Point in time the status was last changed.
archivedbooleanWhether the document is archived.
last_pdf_exportstring (date-time)Point in time the PDF was last exported.
last_status_exportstringStatus at the last export.
search_stringstringText that the entity can be searched by.
external_invoice_numberstringExterne Rechnungsnummer des Lieferanten
received_datestring (date-time)Eingangsdatum (wann wurde die Rechnung empfangen)
payment_datestring (date-time)Zahlungsdatum
service_date_startstring (date-time)Leistungszeitraum Start
service_date_endstring (date-time)Leistungszeitraum Ende
vat_categorystringDer umsatzsteuerliche Sachverhalt. Auf der Eingangsseite entscheidet er darüber, ob die Vorsteuer unter Kennzahl 66 steht (Rechnung eines anderen Unternehmers), unter 61 (innergemeinschaftlicher Erwerb), unter 62 (Einfuhrumsatzsteuer) oder unter 67 (§ 13b UStG). Beim Erwerb und bei § 13b kommt eine zweite Zeile hinzu: die Steuer schulden wir selbst, obwohl sie uns niemand berechnet hat, und sie steht deshalb zugleich als Umsatzsteuer im Vordruck. Wer nur eine der beiden bucht, zahlt zu viel oder zu wenig. Ohne Angabe der Regelfall.
vat_self_assessed_ratenumber (float)Der Steuersatz, mit dem die selbst geschuldete Steuer zu rechnen ist. Beim innergemeinschaftlichen Erwerb und bei § 13b UStG berechnet der Lieferant keine Steuer - die Rechnung ist netto, und die Steuer schulden wir. Womit sie zu rechnen ist, steht deshalb auf keinem Beleg: es ist der Satz, der im Inland auf diese Leistung anzuwenden wäre. Ohne Angabe rechnet die Voranmeldung mit dem Regelsatz und sagt in den Hinweisen, bei wie vielen Belegen sie das getan hat. Stillschweigend zu raten wäre in einer Steueranmeldung das Falsche.
import_vat_amountstringDie Einfuhrumsatzsteuer aus dem Zollbescheid. Sie steht NICHT auf der Rechnung des Lieferanten - die ist bei einer Einfuhr ohne deutsche Steuer. Entrichtet wird sie an den Zoll, und nur der entrichtete Betrag ist als Vorsteuer abziehbar (§ 15 Abs. 1 Satz 1 Nr. 2 UStG, Kennzahl 62 der Voranmeldung). Den Steuerbetrag der Lieferantenrechnung dafür zu nehmen war schlicht der falsche Beleg.
paid_valuenumber (float)Bereits bezahlter Betrag (für Teilzahlungen)
itemsarray<IncomingInvoiceItem>Rechnungspositionen
Show fields (16)
idintegerPrimary key of the invoice item. Internal ID.
descriptionstringDescription of the invoice item.
price_is_bruttobooleanWhether the price is a gross price including tax.
skustringArtikelnummer (Stock Keeping Unit)
barcodestringBarcode (ISBN, UPC, GTIN usw.)
item_typestringTyp (Item, Shipping)
netto_valuenumber (float)Net value of the invoice item.
brutto_valuenumber (float)Gross value of the invoice item.
tax_valuenumber (float)Tax amount of the invoice item.
quantitynumber (float)requiredQuantity of the invoice item.
pricenumber (float)requiredUnit price of the invoice item.
namestringrequiredName of the invoice item.
unitstringrequiredUnit of the invoice item.
taxTaxTax rate applied to the invoice item.
expense_categoryExpenseCategory10Kostenkategorie für EÜR (kann von der Hauptkategorie der Rechnung abweichen)
positionintegerPosition/Reihenfolge
sellerIncomingInvoiceSellerVerkäufer/Lieferant Informationen (Snapshot)
Show fields (25)
idintegerPrimary key of the client. Internal ID.
namestringName of the client on the invoice.
vat_idstringVAT ID of the client.
taxnumberstringTax number of the client.
buyer_reference_idstringLeitweg-ID or custom reference ID defined by the customer
secondary_namestringSecond name line of the client on the invoice.
addressstringAddress as text.
address_streetstringStreet of the address.
address_house_numberstringHouse number of the address.
address_street_levelstringStreet and house number of the address.
address_costringCare-of line of the address.
address_citystringCity of the address.
address_zipstringPostal code of the address.
address_admin_level1stringFirst administrative level of the address, e.g. the federal state.
address_countrystringCountry code of the address.
address_full_countrystringFull name of the country of the address.
address_geo_latstringLatitude of the address.
address_geo_lngstringLongitude of the address.
address_external_provider_idstringfield to store the external provider id of the address. e.g. Google Maps PlaceID like google:ChIJVcKw5r90sEcRhdjNq6NItqE
numberstringCustomer number of the buyer.
search_stringstringText that the entity can be searched by.
main_phonestringMain phone number.
main_faxstringMain fax number.
main_emailstringMain e-mail address.
websitestringWebsite address.
expense_categoryExpenseCategory10Hauptkategorie für EÜR
Show fields (19)
idintegerPrimary key of the expense category. Internal ID.
codestringKurzbezeichnung/Code (z.B. "WAREN", "PERSONAL", "MIETE")
eur_line_numberintegerZeile in der Anlage EÜR (z.B. 23 für Wareneinkauf)
eur_line_namestringBezeichnung der EÜR-Zeile (z.B. "Waren, Rohstoffe und Hilfsstoffe")
category_typestringTyp der Kategorie (expense, income, neutral, asset, private)
default_taxTaxStandard-Steuersatz für diese Kategorie
cost_centerCostCenterKostenstelle der Kategorie - bei Vereinen die steuerliche Sphäre. Ein Beleg trägt keine eigene Sphäre; über seine Kategorie bekommt er eine. Die EÜR des wirtschaftlichen Geschäftsbetriebs liest sie (billing_euer_commercial_sphere_only), die automatische Buchung setzt sie auf die Buchungszeilen (billing_accounting_cost_center_from_category).
is_vat_deductiblebooleanIst Vorsteuerabzug möglich?
is_immediate_deductionbooleanIst die Kategorie sofort abzugsfähig? (vs. Abschreibung über mehrere Jahre)
depreciation_yearsintegerAbschreibungsdauer in Jahren (für Anlagevermögen)
sort_orderintegerSortierreihenfolge
is_activebooleanIst die Kategorie aktiv/sichtbar?
colorstringFarbe für UI-Darstellung (Hex-Code)
iconstringIcon-Name für UI-Darstellung
is_systembooleanIst dies eine System-Kategorie? (nicht löschbar)
deletedbooleanThis property is used to mark an entity as deleted / archived
namestringName of the entity.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
payment_transactionsarray<PaymentTransaction4>Verknüpfte Zahlungstransaktionen
Show fields (14)
autobooleanThe transaction was created automatically.
incomingbooleanThe transaction is incoming money.
bank_transactionbooleanThe transaction comes from a bank account.
currencystringCurrency of the transaction, for example EUR.
payment_typePaymentTypePayment type of the transaction.
invoicesarray<Invoice31>brutto_valuenumber (float)Gross amount of the transaction.
is_feebooleanThe transaction is a fee, for example a bank fee.
due_datestring (date-time)This is used for negative transactions to exclude them from potential bill reminders until they are due.
cash_discountbooleanSkonto: dieser Teil der Forderung erlischt durch Abzug, nicht durch Zahlung. Kein Geldeingang - Ist-Versteuerung und Mindest-Ist zählen ihn nicht; bei Sollversteuerung mindert er die Bemessungsgrundlage im Zeitraum des Abzugs (§ 17 Abs. 1 UStG).
deletedbooleanThis property is used to mark an entity as deleted / archived
namestringName of the entity.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
incoming_invoice_transactionsarray<IncomingInvoiceTransaction2>Spezialisierte Zahlungen, die nur dieser Eingangsrechnung zugeordnet sind.
Show fields (5)
amountnumber (float)Positiver Betrag dieser konkreten Zahlung.
payment_datestring (date-time)Date of the payment.
currencystringCurrency of the payment.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
document_pathstringPfad zur gespeicherten Rechnungsdatei (PDF/Bild)
document_filenamestringOriginal Dateiname
document_mime_typestringMIME Type des Dokuments
notesstringNotizen/Bemerkungen
is_deductiblebooleanIst die Rechnung für den Vorsteuerabzug relevant?
is_approvedbooleanWurde die Rechnung geprüft/freigegeben?
approved_atstring (date-time)Time the incoming invoice was approved.
curl --request GET \
--url https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42 \
--header 'x-iw-jwt-token: <TOKEN>'const options = {method: 'GET', headers: {'x-iw-jwt-token': '<TOKEN>'}};
fetch('https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42"
headers = {"x-iw-jwt-token": "<TOKEN>"}
response = requests.get(url, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('GET', 'https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42', [
'headers' => [
'x-iw-jwt-token' => '<TOKEN>',
],
]);
echo $response->getBody();using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Get,
RequestUri = new Uri("https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42")
.get()
.addHeader("x-iw-jwt-token", "<TOKEN>")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart with the iw_erp_api package
import 'package:iw_erp_api/clients/incoming_invoice_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
IwApiState().host = 'your-instance.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await IncomingInvoiceController.get('42');
if (result.success) {
print(result.data);
}{
"tax": {
"name": "Beispiel",
"id": 42,
"value": 1.5,
"deleted": true,
"global_default": true,
"datev_tax_key": 1
},
"id": 42,
"currency": "EUR",
"name": "Beispiel",
"linked_number_title": "Beispiel",
"token": "string",
"number": 1,
"manual_number_prefix": "string",
"manual_number": 1,
"number_string": "string"
}Update an IncomingInvoice
PUT/api/invoice/incoming_invoice/{identifier}
Path parameters
identifierrequiredstring |
Request body application/json
dataIncomingInvoiceShow fields (46)
idintegerPrimary key of the invoice document. Internal ID.
tokenstringToken that identifies the document for public access.
numberintegerRunning document number.
manual_number_prefixstringPrefix of a manually entered document number.
manual_numberintegerManually entered document number.
number_stringstringDocument number as displayed to users.
generation_datestring (date-time)Date the document was generated.
number_datestring (date-time)Date used for the document number.
messagestringMessage printed on the document.
currencystringCurrency of the document.
namestringName of the document.
due_datestring (date-time)Due date of the document.
netto_valuenumber (float)Net total of the document.
brutto_valuenumber (float)Gross total of the document.
tax_valuenumber (float)Total tax amount of the document.
taxTaxrequiredTax rate applied to the document.
linked_number_titlestringTitle of the linked document number.
linked_numberstringNumber of the linked document.
statusstringStatus of the document.
previous_statusstringStatus before the last change.
status_updatedstring (date-time)Point in time the status was last changed.
archivedbooleanWhether the document is archived.
last_pdf_exportstring (date-time)Point in time the PDF was last exported.
last_status_exportstringStatus at the last export.
search_stringstringText that the entity can be searched by.
external_invoice_numberstringExterne Rechnungsnummer des Lieferanten
received_datestring (date-time)Eingangsdatum (wann wurde die Rechnung empfangen)
payment_datestring (date-time)Zahlungsdatum
service_date_startstring (date-time)Leistungszeitraum Start
service_date_endstring (date-time)Leistungszeitraum Ende
vat_categorystringDer umsatzsteuerliche Sachverhalt. Auf der Eingangsseite entscheidet er darüber, ob die Vorsteuer unter Kennzahl 66 steht (Rechnung eines anderen Unternehmers), unter 61 (innergemeinschaftlicher Erwerb), unter 62 (Einfuhrumsatzsteuer) oder unter 67 (§ 13b UStG). Beim Erwerb und bei § 13b kommt eine zweite Zeile hinzu: die Steuer schulden wir selbst, obwohl sie uns niemand berechnet hat, und sie steht deshalb zugleich als Umsatzsteuer im Vordruck. Wer nur eine der beiden bucht, zahlt zu viel oder zu wenig. Ohne Angabe der Regelfall.
vat_self_assessed_ratenumber (float)Der Steuersatz, mit dem die selbst geschuldete Steuer zu rechnen ist. Beim innergemeinschaftlichen Erwerb und bei § 13b UStG berechnet der Lieferant keine Steuer - die Rechnung ist netto, und die Steuer schulden wir. Womit sie zu rechnen ist, steht deshalb auf keinem Beleg: es ist der Satz, der im Inland auf diese Leistung anzuwenden wäre. Ohne Angabe rechnet die Voranmeldung mit dem Regelsatz und sagt in den Hinweisen, bei wie vielen Belegen sie das getan hat. Stillschweigend zu raten wäre in einer Steueranmeldung das Falsche.
import_vat_amountstringDie Einfuhrumsatzsteuer aus dem Zollbescheid. Sie steht NICHT auf der Rechnung des Lieferanten - die ist bei einer Einfuhr ohne deutsche Steuer. Entrichtet wird sie an den Zoll, und nur der entrichtete Betrag ist als Vorsteuer abziehbar (§ 15 Abs. 1 Satz 1 Nr. 2 UStG, Kennzahl 62 der Voranmeldung). Den Steuerbetrag der Lieferantenrechnung dafür zu nehmen war schlicht der falsche Beleg.
paid_valuenumber (float)Bereits bezahlter Betrag (für Teilzahlungen)
itemsarray<IncomingInvoiceItem>Rechnungspositionen
sellerIncomingInvoiceSellerVerkäufer/Lieferant Informationen (Snapshot)
expense_categoryExpenseCategory10Hauptkategorie für EÜR
payment_transactionsarray<PaymentTransaction4>Verknüpfte Zahlungstransaktionen
incoming_invoice_transactionsarray<IncomingInvoiceTransaction2>Spezialisierte Zahlungen, die nur dieser Eingangsrechnung zugeordnet sind.
document_pathstringPfad zur gespeicherten Rechnungsdatei (PDF/Bild)
document_filenamestringOriginal Dateiname
document_mime_typestringMIME Type des Dokuments
notesstringNotizen/Bemerkungen
is_deductiblebooleanIst die Rechnung für den Vorsteuerabzug relevant?
is_approvedbooleanWurde die Rechnung geprüft/freigegeben?
approved_atstring (date-time)Time the incoming invoice was approved.
Responses
200Update an IncomingInvoiceIncomingInvoice
Show fields (46)
idintegerPrimary key of the invoice document. Internal ID.
tokenstringToken that identifies the document for public access.
numberintegerRunning document number.
manual_number_prefixstringPrefix of a manually entered document number.
manual_numberintegerManually entered document number.
number_stringstringDocument number as displayed to users.
generation_datestring (date-time)Date the document was generated.
number_datestring (date-time)Date used for the document number.
messagestringMessage printed on the document.
currencystringCurrency of the document.
namestringName of the document.
due_datestring (date-time)Due date of the document.
netto_valuenumber (float)Net total of the document.
brutto_valuenumber (float)Gross total of the document.
tax_valuenumber (float)Total tax amount of the document.
taxTaxrequiredTax rate applied to the document.
Show fields (6)
idintegerPrimary key of the tax rate. Internal ID.
namestringrequiredName of the tax rate, for example 19 percent.
valuenumber (float)Tax rate in percent.
deletedbooleanThe tax rate is deleted.
global_defaultbooleanDefault tax rate for new items.
datev_tax_keyintegerDATEV Steuerschlüssel für Umsatzsteuer (Ausgangsrechnungen). Wird von BuchhaltungsButler und DATEV-Export genutzt. Standardwerte: 0 = Kein Steuerausweis (0%) 2 = Umsatzsteuer 7% (ermäßigt) 3 = Umsatzsteuer 19% (Regelsteuersatz) Für Vorsteuer (Eingangsrechnungen) gibt es eine spiegelbildliche Zuordnung: 0 = Keine Vorsteuer (0%) 5 = Vorsteuer 7% 8 = Vorsteuer 19%
linked_number_titlestringTitle of the linked document number.
linked_numberstringNumber of the linked document.
statusstringStatus of the document.
previous_statusstringStatus before the last change.
status_updatedstring (date-time)Point in time the status was last changed.
archivedbooleanWhether the document is archived.
last_pdf_exportstring (date-time)Point in time the PDF was last exported.
last_status_exportstringStatus at the last export.
search_stringstringText that the entity can be searched by.
external_invoice_numberstringExterne Rechnungsnummer des Lieferanten
received_datestring (date-time)Eingangsdatum (wann wurde die Rechnung empfangen)
payment_datestring (date-time)Zahlungsdatum
service_date_startstring (date-time)Leistungszeitraum Start
service_date_endstring (date-time)Leistungszeitraum Ende
vat_categorystringDer umsatzsteuerliche Sachverhalt. Auf der Eingangsseite entscheidet er darüber, ob die Vorsteuer unter Kennzahl 66 steht (Rechnung eines anderen Unternehmers), unter 61 (innergemeinschaftlicher Erwerb), unter 62 (Einfuhrumsatzsteuer) oder unter 67 (§ 13b UStG). Beim Erwerb und bei § 13b kommt eine zweite Zeile hinzu: die Steuer schulden wir selbst, obwohl sie uns niemand berechnet hat, und sie steht deshalb zugleich als Umsatzsteuer im Vordruck. Wer nur eine der beiden bucht, zahlt zu viel oder zu wenig. Ohne Angabe der Regelfall.
vat_self_assessed_ratenumber (float)Der Steuersatz, mit dem die selbst geschuldete Steuer zu rechnen ist. Beim innergemeinschaftlichen Erwerb und bei § 13b UStG berechnet der Lieferant keine Steuer - die Rechnung ist netto, und die Steuer schulden wir. Womit sie zu rechnen ist, steht deshalb auf keinem Beleg: es ist der Satz, der im Inland auf diese Leistung anzuwenden wäre. Ohne Angabe rechnet die Voranmeldung mit dem Regelsatz und sagt in den Hinweisen, bei wie vielen Belegen sie das getan hat. Stillschweigend zu raten wäre in einer Steueranmeldung das Falsche.
import_vat_amountstringDie Einfuhrumsatzsteuer aus dem Zollbescheid. Sie steht NICHT auf der Rechnung des Lieferanten - die ist bei einer Einfuhr ohne deutsche Steuer. Entrichtet wird sie an den Zoll, und nur der entrichtete Betrag ist als Vorsteuer abziehbar (§ 15 Abs. 1 Satz 1 Nr. 2 UStG, Kennzahl 62 der Voranmeldung). Den Steuerbetrag der Lieferantenrechnung dafür zu nehmen war schlicht der falsche Beleg.
paid_valuenumber (float)Bereits bezahlter Betrag (für Teilzahlungen)
itemsarray<IncomingInvoiceItem>Rechnungspositionen
Show fields (16)
idintegerPrimary key of the invoice item. Internal ID.
descriptionstringDescription of the invoice item.
price_is_bruttobooleanWhether the price is a gross price including tax.
skustringArtikelnummer (Stock Keeping Unit)
barcodestringBarcode (ISBN, UPC, GTIN usw.)
item_typestringTyp (Item, Shipping)
netto_valuenumber (float)Net value of the invoice item.
brutto_valuenumber (float)Gross value of the invoice item.
tax_valuenumber (float)Tax amount of the invoice item.
quantitynumber (float)requiredQuantity of the invoice item.
pricenumber (float)requiredUnit price of the invoice item.
namestringrequiredName of the invoice item.
unitstringrequiredUnit of the invoice item.
taxTaxTax rate applied to the invoice item.
expense_categoryExpenseCategory10Kostenkategorie für EÜR (kann von der Hauptkategorie der Rechnung abweichen)
positionintegerPosition/Reihenfolge
sellerIncomingInvoiceSellerVerkäufer/Lieferant Informationen (Snapshot)
Show fields (25)
idintegerPrimary key of the client. Internal ID.
namestringName of the client on the invoice.
vat_idstringVAT ID of the client.
taxnumberstringTax number of the client.
buyer_reference_idstringLeitweg-ID or custom reference ID defined by the customer
secondary_namestringSecond name line of the client on the invoice.
addressstringAddress as text.
address_streetstringStreet of the address.
address_house_numberstringHouse number of the address.
address_street_levelstringStreet and house number of the address.
address_costringCare-of line of the address.
address_citystringCity of the address.
address_zipstringPostal code of the address.
address_admin_level1stringFirst administrative level of the address, e.g. the federal state.
address_countrystringCountry code of the address.
address_full_countrystringFull name of the country of the address.
address_geo_latstringLatitude of the address.
address_geo_lngstringLongitude of the address.
address_external_provider_idstringfield to store the external provider id of the address. e.g. Google Maps PlaceID like google:ChIJVcKw5r90sEcRhdjNq6NItqE
numberstringCustomer number of the buyer.
search_stringstringText that the entity can be searched by.
main_phonestringMain phone number.
main_faxstringMain fax number.
main_emailstringMain e-mail address.
websitestringWebsite address.
expense_categoryExpenseCategory10Hauptkategorie für EÜR
Show fields (19)
idintegerPrimary key of the expense category. Internal ID.
codestringKurzbezeichnung/Code (z.B. "WAREN", "PERSONAL", "MIETE")
eur_line_numberintegerZeile in der Anlage EÜR (z.B. 23 für Wareneinkauf)
eur_line_namestringBezeichnung der EÜR-Zeile (z.B. "Waren, Rohstoffe und Hilfsstoffe")
category_typestringTyp der Kategorie (expense, income, neutral, asset, private)
default_taxTaxStandard-Steuersatz für diese Kategorie
cost_centerCostCenterKostenstelle der Kategorie - bei Vereinen die steuerliche Sphäre. Ein Beleg trägt keine eigene Sphäre; über seine Kategorie bekommt er eine. Die EÜR des wirtschaftlichen Geschäftsbetriebs liest sie (billing_euer_commercial_sphere_only), die automatische Buchung setzt sie auf die Buchungszeilen (billing_accounting_cost_center_from_category).
is_vat_deductiblebooleanIst Vorsteuerabzug möglich?
is_immediate_deductionbooleanIst die Kategorie sofort abzugsfähig? (vs. Abschreibung über mehrere Jahre)
depreciation_yearsintegerAbschreibungsdauer in Jahren (für Anlagevermögen)
sort_orderintegerSortierreihenfolge
is_activebooleanIst die Kategorie aktiv/sichtbar?
colorstringFarbe für UI-Darstellung (Hex-Code)
iconstringIcon-Name für UI-Darstellung
is_systembooleanIst dies eine System-Kategorie? (nicht löschbar)
deletedbooleanThis property is used to mark an entity as deleted / archived
namestringName of the entity.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
payment_transactionsarray<PaymentTransaction4>Verknüpfte Zahlungstransaktionen
Show fields (14)
autobooleanThe transaction was created automatically.
incomingbooleanThe transaction is incoming money.
bank_transactionbooleanThe transaction comes from a bank account.
currencystringCurrency of the transaction, for example EUR.
payment_typePaymentTypePayment type of the transaction.
invoicesarray<Invoice31>brutto_valuenumber (float)Gross amount of the transaction.
is_feebooleanThe transaction is a fee, for example a bank fee.
due_datestring (date-time)This is used for negative transactions to exclude them from potential bill reminders until they are due.
cash_discountbooleanSkonto: dieser Teil der Forderung erlischt durch Abzug, nicht durch Zahlung. Kein Geldeingang - Ist-Versteuerung und Mindest-Ist zählen ihn nicht; bei Sollversteuerung mindert er die Bemessungsgrundlage im Zeitraum des Abzugs (§ 17 Abs. 1 UStG).
deletedbooleanThis property is used to mark an entity as deleted / archived
namestringName of the entity.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
incoming_invoice_transactionsarray<IncomingInvoiceTransaction2>Spezialisierte Zahlungen, die nur dieser Eingangsrechnung zugeordnet sind.
Show fields (5)
amountnumber (float)Positiver Betrag dieser konkreten Zahlung.
payment_datestring (date-time)Date of the payment.
currencystringCurrency of the payment.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
document_pathstringPfad zur gespeicherten Rechnungsdatei (PDF/Bild)
document_filenamestringOriginal Dateiname
document_mime_typestringMIME Type des Dokuments
notesstringNotizen/Bemerkungen
is_deductiblebooleanIst die Rechnung für den Vorsteuerabzug relevant?
is_approvedbooleanWurde die Rechnung geprüft/freigegeben?
approved_atstring (date-time)Time the incoming invoice was approved.
curl --request PUT \
--url https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42 \
--header 'content-type: application/json' \
--header 'x-iw-jwt-token: <TOKEN>' \
--data '
{
"data": {
"tax": {
"name": "Beispiel",
"id": 42,
"value": 1.5,
"deleted": true,
"global_default": true,
"datev_tax_key": 1
},
"id": 42,
"currency": "EUR",
"name": "Beispiel",
"linked_number_title": "Beispiel",
"token": "string"
}
}
'const options = {
method: 'PUT',
headers: {'x-iw-jwt-token': '<TOKEN>', 'content-type': 'application/json'},
body: JSON.stringify({
data: {
tax: {
name: 'Beispiel',
id: 42,
value: 1.5,
deleted: true,
global_default: true,
datev_tax_key: 1
},
id: 42,
currency: 'EUR',
name: 'Beispiel',
linked_number_title: 'Beispiel',
token: 'string'
}
})
};
fetch('https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42"
payload = { "data": {
"tax": {
"name": "Beispiel",
"id": 42,
"value": 1.5,
"deleted": True,
"global_default": True,
"datev_tax_key": 1
},
"id": 42,
"currency": "EUR",
"name": "Beispiel",
"linked_number_title": "Beispiel",
"token": "string"
} }
headers = {
"x-iw-jwt-token": "<TOKEN>",
"content-type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('PUT', 'https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42', [
'body' => '{"data":{"tax":{"name":"Beispiel","id":42,"value":1.5,"deleted":true,"global_default":true,"datev_tax_key":1},"id":42,"currency":"EUR","name":"Beispiel","linked_number_title":"Beispiel","token":"string"}}',
'headers' => [
'content-type' => 'application/json',
'x-iw-jwt-token' => '<TOKEN>',
],
]);
echo $response->getBody();using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Put,
RequestUri = new Uri("https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
Content = new StringContent("{\"data\":{\"tax\":{\"name\":\"Beispiel\",\"id\":42,\"value\":1.5,\"deleted\":true,\"global_default\":true,\"datev_tax_key\":1},\"id\":42,\"currency\":\"EUR\",\"name\":\"Beispiel\",\"linked_number_title\":\"Beispiel\",\"token\":\"string\"}}")
{
Headers =
{
ContentType = new MediaTypeHeaderValue("application/json")
}
}
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"data\":{\"tax\":{\"name\":\"Beispiel\",\"id\":42,\"value\":1.5,\"deleted\":true,\"global_default\":true,\"datev_tax_key\":1},\"id\":42,\"currency\":\"EUR\",\"name\":\"Beispiel\",\"linked_number_title\":\"Beispiel\",\"token\":\"string\"}}");
Request request = new Request.Builder()
.url("https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42")
.put(body)
.addHeader("x-iw-jwt-token", "<TOKEN>")
.addHeader("content-type", "application/json")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42"
payload := strings.NewReader("{\"data\":{\"tax\":{\"name\":\"Beispiel\",\"id\":42,\"value\":1.5,\"deleted\":true,\"global_default\":true,\"datev_tax_key\":1},\"id\":42,\"currency\":\"EUR\",\"name\":\"Beispiel\",\"linked_number_title\":\"Beispiel\",\"token\":\"string\"}}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
req.Header.Add("content-type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart with the iw_erp_api package
import 'package:iw_erp_api/clients/incoming_invoice_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
import 'package:iw_erp_api/model/incoming_invoice.dart';
IwApiState().host = 'your-instance.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await IncomingInvoiceController.put(IncomingInvoice.fromJson({
"tax": {
"name": "Beispiel",
"id": 42,
"value": 1.5,
"deleted": true,
"global_default": true,
"datev_tax_key": 1
},
"id": 42,
"currency": "EUR",
"name": "Beispiel",
"linked_number_title": "Beispiel",
"token": "string"
}));
if (result.success) {
print(result.data);
}{
"tax": {
"name": "Beispiel",
"id": 42,
"value": 1.5,
"deleted": true,
"global_default": true,
"datev_tax_key": 1
},
"id": 42,
"currency": "EUR",
"name": "Beispiel",
"linked_number_title": "Beispiel",
"token": "string",
"number": 1,
"manual_number_prefix": "string",
"manual_number": 1,
"number_string": "string"
}Delete an IncomingInvoice (soft delete - archive)
DELETE/api/invoice/incoming_invoice/{identifier}
Path parameters
identifierrequiredstring |
Responses
200Delete an IncomingInvoiceIncomingInvoice
Show fields (46)
idintegerPrimary key of the invoice document. Internal ID.
tokenstringToken that identifies the document for public access.
numberintegerRunning document number.
manual_number_prefixstringPrefix of a manually entered document number.
manual_numberintegerManually entered document number.
number_stringstringDocument number as displayed to users.
generation_datestring (date-time)Date the document was generated.
number_datestring (date-time)Date used for the document number.
messagestringMessage printed on the document.
currencystringCurrency of the document.
namestringName of the document.
due_datestring (date-time)Due date of the document.
netto_valuenumber (float)Net total of the document.
brutto_valuenumber (float)Gross total of the document.
tax_valuenumber (float)Total tax amount of the document.
taxTaxrequiredTax rate applied to the document.
Show fields (6)
idintegerPrimary key of the tax rate. Internal ID.
namestringrequiredName of the tax rate, for example 19 percent.
valuenumber (float)Tax rate in percent.
deletedbooleanThe tax rate is deleted.
global_defaultbooleanDefault tax rate for new items.
datev_tax_keyintegerDATEV Steuerschlüssel für Umsatzsteuer (Ausgangsrechnungen). Wird von BuchhaltungsButler und DATEV-Export genutzt. Standardwerte: 0 = Kein Steuerausweis (0%) 2 = Umsatzsteuer 7% (ermäßigt) 3 = Umsatzsteuer 19% (Regelsteuersatz) Für Vorsteuer (Eingangsrechnungen) gibt es eine spiegelbildliche Zuordnung: 0 = Keine Vorsteuer (0%) 5 = Vorsteuer 7% 8 = Vorsteuer 19%
linked_number_titlestringTitle of the linked document number.
linked_numberstringNumber of the linked document.
statusstringStatus of the document.
previous_statusstringStatus before the last change.
status_updatedstring (date-time)Point in time the status was last changed.
archivedbooleanWhether the document is archived.
last_pdf_exportstring (date-time)Point in time the PDF was last exported.
last_status_exportstringStatus at the last export.
search_stringstringText that the entity can be searched by.
external_invoice_numberstringExterne Rechnungsnummer des Lieferanten
received_datestring (date-time)Eingangsdatum (wann wurde die Rechnung empfangen)
payment_datestring (date-time)Zahlungsdatum
service_date_startstring (date-time)Leistungszeitraum Start
service_date_endstring (date-time)Leistungszeitraum Ende
vat_categorystringDer umsatzsteuerliche Sachverhalt. Auf der Eingangsseite entscheidet er darüber, ob die Vorsteuer unter Kennzahl 66 steht (Rechnung eines anderen Unternehmers), unter 61 (innergemeinschaftlicher Erwerb), unter 62 (Einfuhrumsatzsteuer) oder unter 67 (§ 13b UStG). Beim Erwerb und bei § 13b kommt eine zweite Zeile hinzu: die Steuer schulden wir selbst, obwohl sie uns niemand berechnet hat, und sie steht deshalb zugleich als Umsatzsteuer im Vordruck. Wer nur eine der beiden bucht, zahlt zu viel oder zu wenig. Ohne Angabe der Regelfall.
vat_self_assessed_ratenumber (float)Der Steuersatz, mit dem die selbst geschuldete Steuer zu rechnen ist. Beim innergemeinschaftlichen Erwerb und bei § 13b UStG berechnet der Lieferant keine Steuer - die Rechnung ist netto, und die Steuer schulden wir. Womit sie zu rechnen ist, steht deshalb auf keinem Beleg: es ist der Satz, der im Inland auf diese Leistung anzuwenden wäre. Ohne Angabe rechnet die Voranmeldung mit dem Regelsatz und sagt in den Hinweisen, bei wie vielen Belegen sie das getan hat. Stillschweigend zu raten wäre in einer Steueranmeldung das Falsche.
import_vat_amountstringDie Einfuhrumsatzsteuer aus dem Zollbescheid. Sie steht NICHT auf der Rechnung des Lieferanten - die ist bei einer Einfuhr ohne deutsche Steuer. Entrichtet wird sie an den Zoll, und nur der entrichtete Betrag ist als Vorsteuer abziehbar (§ 15 Abs. 1 Satz 1 Nr. 2 UStG, Kennzahl 62 der Voranmeldung). Den Steuerbetrag der Lieferantenrechnung dafür zu nehmen war schlicht der falsche Beleg.
paid_valuenumber (float)Bereits bezahlter Betrag (für Teilzahlungen)
itemsarray<IncomingInvoiceItem>Rechnungspositionen
Show fields (16)
idintegerPrimary key of the invoice item. Internal ID.
descriptionstringDescription of the invoice item.
price_is_bruttobooleanWhether the price is a gross price including tax.
skustringArtikelnummer (Stock Keeping Unit)
barcodestringBarcode (ISBN, UPC, GTIN usw.)
item_typestringTyp (Item, Shipping)
netto_valuenumber (float)Net value of the invoice item.
brutto_valuenumber (float)Gross value of the invoice item.
tax_valuenumber (float)Tax amount of the invoice item.
quantitynumber (float)requiredQuantity of the invoice item.
pricenumber (float)requiredUnit price of the invoice item.
namestringrequiredName of the invoice item.
unitstringrequiredUnit of the invoice item.
taxTaxTax rate applied to the invoice item.
expense_categoryExpenseCategory10Kostenkategorie für EÜR (kann von der Hauptkategorie der Rechnung abweichen)
positionintegerPosition/Reihenfolge
sellerIncomingInvoiceSellerVerkäufer/Lieferant Informationen (Snapshot)
Show fields (25)
idintegerPrimary key of the client. Internal ID.
namestringName of the client on the invoice.
vat_idstringVAT ID of the client.
taxnumberstringTax number of the client.
buyer_reference_idstringLeitweg-ID or custom reference ID defined by the customer
secondary_namestringSecond name line of the client on the invoice.
addressstringAddress as text.
address_streetstringStreet of the address.
address_house_numberstringHouse number of the address.
address_street_levelstringStreet and house number of the address.
address_costringCare-of line of the address.
address_citystringCity of the address.
address_zipstringPostal code of the address.
address_admin_level1stringFirst administrative level of the address, e.g. the federal state.
address_countrystringCountry code of the address.
address_full_countrystringFull name of the country of the address.
address_geo_latstringLatitude of the address.
address_geo_lngstringLongitude of the address.
address_external_provider_idstringfield to store the external provider id of the address. e.g. Google Maps PlaceID like google:ChIJVcKw5r90sEcRhdjNq6NItqE
numberstringCustomer number of the buyer.
search_stringstringText that the entity can be searched by.
main_phonestringMain phone number.
main_faxstringMain fax number.
main_emailstringMain e-mail address.
websitestringWebsite address.
expense_categoryExpenseCategory10Hauptkategorie für EÜR
Show fields (19)
idintegerPrimary key of the expense category. Internal ID.
codestringKurzbezeichnung/Code (z.B. "WAREN", "PERSONAL", "MIETE")
eur_line_numberintegerZeile in der Anlage EÜR (z.B. 23 für Wareneinkauf)
eur_line_namestringBezeichnung der EÜR-Zeile (z.B. "Waren, Rohstoffe und Hilfsstoffe")
category_typestringTyp der Kategorie (expense, income, neutral, asset, private)
default_taxTaxStandard-Steuersatz für diese Kategorie
cost_centerCostCenterKostenstelle der Kategorie - bei Vereinen die steuerliche Sphäre. Ein Beleg trägt keine eigene Sphäre; über seine Kategorie bekommt er eine. Die EÜR des wirtschaftlichen Geschäftsbetriebs liest sie (billing_euer_commercial_sphere_only), die automatische Buchung setzt sie auf die Buchungszeilen (billing_accounting_cost_center_from_category).
is_vat_deductiblebooleanIst Vorsteuerabzug möglich?
is_immediate_deductionbooleanIst die Kategorie sofort abzugsfähig? (vs. Abschreibung über mehrere Jahre)
depreciation_yearsintegerAbschreibungsdauer in Jahren (für Anlagevermögen)
sort_orderintegerSortierreihenfolge
is_activebooleanIst die Kategorie aktiv/sichtbar?
colorstringFarbe für UI-Darstellung (Hex-Code)
iconstringIcon-Name für UI-Darstellung
is_systembooleanIst dies eine System-Kategorie? (nicht löschbar)
deletedbooleanThis property is used to mark an entity as deleted / archived
namestringName of the entity.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
payment_transactionsarray<PaymentTransaction4>Verknüpfte Zahlungstransaktionen
Show fields (14)
autobooleanThe transaction was created automatically.
incomingbooleanThe transaction is incoming money.
bank_transactionbooleanThe transaction comes from a bank account.
currencystringCurrency of the transaction, for example EUR.
payment_typePaymentTypePayment type of the transaction.
invoicesarray<Invoice31>brutto_valuenumber (float)Gross amount of the transaction.
is_feebooleanThe transaction is a fee, for example a bank fee.
due_datestring (date-time)This is used for negative transactions to exclude them from potential bill reminders until they are due.
cash_discountbooleanSkonto: dieser Teil der Forderung erlischt durch Abzug, nicht durch Zahlung. Kein Geldeingang - Ist-Versteuerung und Mindest-Ist zählen ihn nicht; bei Sollversteuerung mindert er die Bemessungsgrundlage im Zeitraum des Abzugs (§ 17 Abs. 1 UStG).
deletedbooleanThis property is used to mark an entity as deleted / archived
namestringName of the entity.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
incoming_invoice_transactionsarray<IncomingInvoiceTransaction2>Spezialisierte Zahlungen, die nur dieser Eingangsrechnung zugeordnet sind.
Show fields (5)
amountnumber (float)Positiver Betrag dieser konkreten Zahlung.
payment_datestring (date-time)Date of the payment.
currencystringCurrency of the payment.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
document_pathstringPfad zur gespeicherten Rechnungsdatei (PDF/Bild)
document_filenamestringOriginal Dateiname
document_mime_typestringMIME Type des Dokuments
notesstringNotizen/Bemerkungen
is_deductiblebooleanIst die Rechnung für den Vorsteuerabzug relevant?
is_approvedbooleanWurde die Rechnung geprüft/freigegeben?
approved_atstring (date-time)Time the incoming invoice was approved.
curl --request DELETE \
--url https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42 \
--header 'x-iw-jwt-token: <TOKEN>'const options = {method: 'DELETE', headers: {'x-iw-jwt-token': '<TOKEN>'}};
fetch('https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42"
headers = {"x-iw-jwt-token": "<TOKEN>"}
response = requests.delete(url, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('DELETE', 'https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42', [
'headers' => [
'x-iw-jwt-token' => '<TOKEN>',
],
]);
echo $response->getBody();using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Delete,
RequestUri = new Uri("https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42")
.delete(null)
.addHeader("x-iw-jwt-token", "<TOKEN>")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42"
req, _ := http.NewRequest("DELETE", url, nil)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart with the iw_erp_api package
import 'package:iw_erp_api/clients/incoming_invoice_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
IwApiState().host = 'your-instance.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await IncomingInvoiceController.delete('42');
if (result.success) {
print(result.data);
}{
"tax": {
"name": "Beispiel",
"id": 42,
"value": 1.5,
"deleted": true,
"global_default": true,
"datev_tax_key": 1
},
"id": 42,
"currency": "EUR",
"name": "Beispiel",
"linked_number_title": "Beispiel",
"token": "string",
"number": 1,
"manual_number_prefix": "string",
"manual_number": 1,
"number_string": "string"
}Import all PDF/XML invoices from a ZIP archive.
POST/api/invoice/incoming_invoice/archive
Query parameters
searchStringstring | text to search for in the list |
orderFieldNamestring | name of the order field |
orderFieldSortstring | sorting modeAllowed: DESCASC |
pageinteger | page of the list |
pageSizeinteger | number of entries for each page |
withMaxPageNumberstring | returns the number of pages available as a header if this is set |
Responses
200Import IncomingInvoices from a ZIP archivearray<IncomingInvoice>
Show fields (46)
idintegerPrimary key of the invoice document. Internal ID.
tokenstringToken that identifies the document for public access.
numberintegerRunning document number.
manual_number_prefixstringPrefix of a manually entered document number.
manual_numberintegerManually entered document number.
number_stringstringDocument number as displayed to users.
generation_datestring (date-time)Date the document was generated.
number_datestring (date-time)Date used for the document number.
messagestringMessage printed on the document.
currencystringCurrency of the document.
namestringName of the document.
due_datestring (date-time)Due date of the document.
netto_valuenumber (float)Net total of the document.
brutto_valuenumber (float)Gross total of the document.
tax_valuenumber (float)Total tax amount of the document.
taxTaxrequiredTax rate applied to the document.
Show fields (6)
idintegerPrimary key of the tax rate. Internal ID.
namestringrequiredName of the tax rate, for example 19 percent.
valuenumber (float)Tax rate in percent.
deletedbooleanThe tax rate is deleted.
global_defaultbooleanDefault tax rate for new items.
datev_tax_keyintegerDATEV Steuerschlüssel für Umsatzsteuer (Ausgangsrechnungen). Wird von BuchhaltungsButler und DATEV-Export genutzt. Standardwerte: 0 = Kein Steuerausweis (0%) 2 = Umsatzsteuer 7% (ermäßigt) 3 = Umsatzsteuer 19% (Regelsteuersatz) Für Vorsteuer (Eingangsrechnungen) gibt es eine spiegelbildliche Zuordnung: 0 = Keine Vorsteuer (0%) 5 = Vorsteuer 7% 8 = Vorsteuer 19%
linked_number_titlestringTitle of the linked document number.
linked_numberstringNumber of the linked document.
statusstringStatus of the document.
previous_statusstringStatus before the last change.
status_updatedstring (date-time)Point in time the status was last changed.
archivedbooleanWhether the document is archived.
last_pdf_exportstring (date-time)Point in time the PDF was last exported.
last_status_exportstringStatus at the last export.
search_stringstringText that the entity can be searched by.
external_invoice_numberstringExterne Rechnungsnummer des Lieferanten
received_datestring (date-time)Eingangsdatum (wann wurde die Rechnung empfangen)
payment_datestring (date-time)Zahlungsdatum
service_date_startstring (date-time)Leistungszeitraum Start
service_date_endstring (date-time)Leistungszeitraum Ende
vat_categorystringDer umsatzsteuerliche Sachverhalt. Auf der Eingangsseite entscheidet er darüber, ob die Vorsteuer unter Kennzahl 66 steht (Rechnung eines anderen Unternehmers), unter 61 (innergemeinschaftlicher Erwerb), unter 62 (Einfuhrumsatzsteuer) oder unter 67 (§ 13b UStG). Beim Erwerb und bei § 13b kommt eine zweite Zeile hinzu: die Steuer schulden wir selbst, obwohl sie uns niemand berechnet hat, und sie steht deshalb zugleich als Umsatzsteuer im Vordruck. Wer nur eine der beiden bucht, zahlt zu viel oder zu wenig. Ohne Angabe der Regelfall.
vat_self_assessed_ratenumber (float)Der Steuersatz, mit dem die selbst geschuldete Steuer zu rechnen ist. Beim innergemeinschaftlichen Erwerb und bei § 13b UStG berechnet der Lieferant keine Steuer - die Rechnung ist netto, und die Steuer schulden wir. Womit sie zu rechnen ist, steht deshalb auf keinem Beleg: es ist der Satz, der im Inland auf diese Leistung anzuwenden wäre. Ohne Angabe rechnet die Voranmeldung mit dem Regelsatz und sagt in den Hinweisen, bei wie vielen Belegen sie das getan hat. Stillschweigend zu raten wäre in einer Steueranmeldung das Falsche.
import_vat_amountstringDie Einfuhrumsatzsteuer aus dem Zollbescheid. Sie steht NICHT auf der Rechnung des Lieferanten - die ist bei einer Einfuhr ohne deutsche Steuer. Entrichtet wird sie an den Zoll, und nur der entrichtete Betrag ist als Vorsteuer abziehbar (§ 15 Abs. 1 Satz 1 Nr. 2 UStG, Kennzahl 62 der Voranmeldung). Den Steuerbetrag der Lieferantenrechnung dafür zu nehmen war schlicht der falsche Beleg.
paid_valuenumber (float)Bereits bezahlter Betrag (für Teilzahlungen)
itemsarray<IncomingInvoiceItem>Rechnungspositionen
Show fields (16)
idintegerPrimary key of the invoice item. Internal ID.
descriptionstringDescription of the invoice item.
price_is_bruttobooleanWhether the price is a gross price including tax.
skustringArtikelnummer (Stock Keeping Unit)
barcodestringBarcode (ISBN, UPC, GTIN usw.)
item_typestringTyp (Item, Shipping)
netto_valuenumber (float)Net value of the invoice item.
brutto_valuenumber (float)Gross value of the invoice item.
tax_valuenumber (float)Tax amount of the invoice item.
quantitynumber (float)requiredQuantity of the invoice item.
pricenumber (float)requiredUnit price of the invoice item.
namestringrequiredName of the invoice item.
unitstringrequiredUnit of the invoice item.
taxTaxTax rate applied to the invoice item.
expense_categoryExpenseCategory10Kostenkategorie für EÜR (kann von der Hauptkategorie der Rechnung abweichen)
positionintegerPosition/Reihenfolge
sellerIncomingInvoiceSellerVerkäufer/Lieferant Informationen (Snapshot)
Show fields (25)
idintegerPrimary key of the client. Internal ID.
namestringName of the client on the invoice.
vat_idstringVAT ID of the client.
taxnumberstringTax number of the client.
buyer_reference_idstringLeitweg-ID or custom reference ID defined by the customer
secondary_namestringSecond name line of the client on the invoice.
addressstringAddress as text.
address_streetstringStreet of the address.
address_house_numberstringHouse number of the address.
address_street_levelstringStreet and house number of the address.
address_costringCare-of line of the address.
address_citystringCity of the address.
address_zipstringPostal code of the address.
address_admin_level1stringFirst administrative level of the address, e.g. the federal state.
address_countrystringCountry code of the address.
address_full_countrystringFull name of the country of the address.
address_geo_latstringLatitude of the address.
address_geo_lngstringLongitude of the address.
address_external_provider_idstringfield to store the external provider id of the address. e.g. Google Maps PlaceID like google:ChIJVcKw5r90sEcRhdjNq6NItqE
numberstringCustomer number of the buyer.
search_stringstringText that the entity can be searched by.
main_phonestringMain phone number.
main_faxstringMain fax number.
main_emailstringMain e-mail address.
websitestringWebsite address.
expense_categoryExpenseCategory10Hauptkategorie für EÜR
Show fields (19)
idintegerPrimary key of the expense category. Internal ID.
codestringKurzbezeichnung/Code (z.B. "WAREN", "PERSONAL", "MIETE")
eur_line_numberintegerZeile in der Anlage EÜR (z.B. 23 für Wareneinkauf)
eur_line_namestringBezeichnung der EÜR-Zeile (z.B. "Waren, Rohstoffe und Hilfsstoffe")
category_typestringTyp der Kategorie (expense, income, neutral, asset, private)
default_taxTaxStandard-Steuersatz für diese Kategorie
cost_centerCostCenterKostenstelle der Kategorie - bei Vereinen die steuerliche Sphäre. Ein Beleg trägt keine eigene Sphäre; über seine Kategorie bekommt er eine. Die EÜR des wirtschaftlichen Geschäftsbetriebs liest sie (billing_euer_commercial_sphere_only), die automatische Buchung setzt sie auf die Buchungszeilen (billing_accounting_cost_center_from_category).
is_vat_deductiblebooleanIst Vorsteuerabzug möglich?
is_immediate_deductionbooleanIst die Kategorie sofort abzugsfähig? (vs. Abschreibung über mehrere Jahre)
depreciation_yearsintegerAbschreibungsdauer in Jahren (für Anlagevermögen)
sort_orderintegerSortierreihenfolge
is_activebooleanIst die Kategorie aktiv/sichtbar?
colorstringFarbe für UI-Darstellung (Hex-Code)
iconstringIcon-Name für UI-Darstellung
is_systembooleanIst dies eine System-Kategorie? (nicht löschbar)
deletedbooleanThis property is used to mark an entity as deleted / archived
namestringName of the entity.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
payment_transactionsarray<PaymentTransaction4>Verknüpfte Zahlungstransaktionen
Show fields (14)
autobooleanThe transaction was created automatically.
incomingbooleanThe transaction is incoming money.
bank_transactionbooleanThe transaction comes from a bank account.
currencystringCurrency of the transaction, for example EUR.
payment_typePaymentTypePayment type of the transaction.
invoicesarray<Invoice31>brutto_valuenumber (float)Gross amount of the transaction.
is_feebooleanThe transaction is a fee, for example a bank fee.
due_datestring (date-time)This is used for negative transactions to exclude them from potential bill reminders until they are due.
cash_discountbooleanSkonto: dieser Teil der Forderung erlischt durch Abzug, nicht durch Zahlung. Kein Geldeingang - Ist-Versteuerung und Mindest-Ist zählen ihn nicht; bei Sollversteuerung mindert er die Bemessungsgrundlage im Zeitraum des Abzugs (§ 17 Abs. 1 UStG).
deletedbooleanThis property is used to mark an entity as deleted / archived
namestringName of the entity.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
incoming_invoice_transactionsarray<IncomingInvoiceTransaction2>Spezialisierte Zahlungen, die nur dieser Eingangsrechnung zugeordnet sind.
Show fields (5)
amountnumber (float)Positiver Betrag dieser konkreten Zahlung.
payment_datestring (date-time)Date of the payment.
currencystringCurrency of the payment.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
document_pathstringPfad zur gespeicherten Rechnungsdatei (PDF/Bild)
document_filenamestringOriginal Dateiname
document_mime_typestringMIME Type des Dokuments
notesstringNotizen/Bemerkungen
is_deductiblebooleanIst die Rechnung für den Vorsteuerabzug relevant?
is_approvedbooleanWurde die Rechnung geprüft/freigegeben?
approved_atstring (date-time)Time the incoming invoice was approved.
curl --request POST \
--url https://your-instance.iw-erp.de/api/invoice/incoming_invoice/archive \
--header 'x-iw-jwt-token: <TOKEN>'const options = {method: 'POST', headers: {'x-iw-jwt-token': '<TOKEN>'}};
fetch('https://your-instance.iw-erp.de/api/invoice/incoming_invoice/archive', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://your-instance.iw-erp.de/api/invoice/incoming_invoice/archive"
headers = {"x-iw-jwt-token": "<TOKEN>"}
response = requests.post(url, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('POST', 'https://your-instance.iw-erp.de/api/invoice/incoming_invoice/archive', [
'headers' => [
'x-iw-jwt-token' => '<TOKEN>',
],
]);
echo $response->getBody();using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Post,
RequestUri = new Uri("https://your-instance.iw-erp.de/api/invoice/incoming_invoice/archive"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://your-instance.iw-erp.de/api/invoice/incoming_invoice/archive")
.post(null)
.addHeader("x-iw-jwt-token", "<TOKEN>")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://your-instance.iw-erp.de/api/invoice/incoming_invoice/archive"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart with the iw_erp_api package
import 'package:iw_erp_api/clients/incoming_invoice_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
IwApiState().host = 'your-instance.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await IncomingInvoiceController.postArchive(Stream<List<int>>.fromJson({}), 42, '…');
if (result.success) {
print(result.data);
}[
{
"tax": {
"name": "Beispiel",
"id": 42,
"value": 1.5,
"deleted": true,
"global_default": true,
"datev_tax_key": 1
},
"id": 42,
"currency": "EUR",
"name": "Beispiel",
"linked_number_title": "Beispiel",
"token": "string",
"number": 1,
"manual_number_prefix": "string",
"manual_number": 1,
"number_string": "string"
}
]Mark an IncomingInvoice as approved
POST/api/invoice/incoming_invoice/{identifier}/approve
Path parameters
identifierrequiredstring |
Responses
200Approve an IncomingInvoiceIncomingInvoice
Show fields (46)
idintegerPrimary key of the invoice document. Internal ID.
tokenstringToken that identifies the document for public access.
numberintegerRunning document number.
manual_number_prefixstringPrefix of a manually entered document number.
manual_numberintegerManually entered document number.
number_stringstringDocument number as displayed to users.
generation_datestring (date-time)Date the document was generated.
number_datestring (date-time)Date used for the document number.
messagestringMessage printed on the document.
currencystringCurrency of the document.
namestringName of the document.
due_datestring (date-time)Due date of the document.
netto_valuenumber (float)Net total of the document.
brutto_valuenumber (float)Gross total of the document.
tax_valuenumber (float)Total tax amount of the document.
taxTaxrequiredTax rate applied to the document.
Show fields (6)
idintegerPrimary key of the tax rate. Internal ID.
namestringrequiredName of the tax rate, for example 19 percent.
valuenumber (float)Tax rate in percent.
deletedbooleanThe tax rate is deleted.
global_defaultbooleanDefault tax rate for new items.
datev_tax_keyintegerDATEV Steuerschlüssel für Umsatzsteuer (Ausgangsrechnungen). Wird von BuchhaltungsButler und DATEV-Export genutzt. Standardwerte: 0 = Kein Steuerausweis (0%) 2 = Umsatzsteuer 7% (ermäßigt) 3 = Umsatzsteuer 19% (Regelsteuersatz) Für Vorsteuer (Eingangsrechnungen) gibt es eine spiegelbildliche Zuordnung: 0 = Keine Vorsteuer (0%) 5 = Vorsteuer 7% 8 = Vorsteuer 19%
linked_number_titlestringTitle of the linked document number.
linked_numberstringNumber of the linked document.
statusstringStatus of the document.
previous_statusstringStatus before the last change.
status_updatedstring (date-time)Point in time the status was last changed.
archivedbooleanWhether the document is archived.
last_pdf_exportstring (date-time)Point in time the PDF was last exported.
last_status_exportstringStatus at the last export.
search_stringstringText that the entity can be searched by.
external_invoice_numberstringExterne Rechnungsnummer des Lieferanten
received_datestring (date-time)Eingangsdatum (wann wurde die Rechnung empfangen)
payment_datestring (date-time)Zahlungsdatum
service_date_startstring (date-time)Leistungszeitraum Start
service_date_endstring (date-time)Leistungszeitraum Ende
vat_categorystringDer umsatzsteuerliche Sachverhalt. Auf der Eingangsseite entscheidet er darüber, ob die Vorsteuer unter Kennzahl 66 steht (Rechnung eines anderen Unternehmers), unter 61 (innergemeinschaftlicher Erwerb), unter 62 (Einfuhrumsatzsteuer) oder unter 67 (§ 13b UStG). Beim Erwerb und bei § 13b kommt eine zweite Zeile hinzu: die Steuer schulden wir selbst, obwohl sie uns niemand berechnet hat, und sie steht deshalb zugleich als Umsatzsteuer im Vordruck. Wer nur eine der beiden bucht, zahlt zu viel oder zu wenig. Ohne Angabe der Regelfall.
vat_self_assessed_ratenumber (float)Der Steuersatz, mit dem die selbst geschuldete Steuer zu rechnen ist. Beim innergemeinschaftlichen Erwerb und bei § 13b UStG berechnet der Lieferant keine Steuer - die Rechnung ist netto, und die Steuer schulden wir. Womit sie zu rechnen ist, steht deshalb auf keinem Beleg: es ist der Satz, der im Inland auf diese Leistung anzuwenden wäre. Ohne Angabe rechnet die Voranmeldung mit dem Regelsatz und sagt in den Hinweisen, bei wie vielen Belegen sie das getan hat. Stillschweigend zu raten wäre in einer Steueranmeldung das Falsche.
import_vat_amountstringDie Einfuhrumsatzsteuer aus dem Zollbescheid. Sie steht NICHT auf der Rechnung des Lieferanten - die ist bei einer Einfuhr ohne deutsche Steuer. Entrichtet wird sie an den Zoll, und nur der entrichtete Betrag ist als Vorsteuer abziehbar (§ 15 Abs. 1 Satz 1 Nr. 2 UStG, Kennzahl 62 der Voranmeldung). Den Steuerbetrag der Lieferantenrechnung dafür zu nehmen war schlicht der falsche Beleg.
paid_valuenumber (float)Bereits bezahlter Betrag (für Teilzahlungen)
itemsarray<IncomingInvoiceItem>Rechnungspositionen
Show fields (16)
idintegerPrimary key of the invoice item. Internal ID.
descriptionstringDescription of the invoice item.
price_is_bruttobooleanWhether the price is a gross price including tax.
skustringArtikelnummer (Stock Keeping Unit)
barcodestringBarcode (ISBN, UPC, GTIN usw.)
item_typestringTyp (Item, Shipping)
netto_valuenumber (float)Net value of the invoice item.
brutto_valuenumber (float)Gross value of the invoice item.
tax_valuenumber (float)Tax amount of the invoice item.
quantitynumber (float)requiredQuantity of the invoice item.
pricenumber (float)requiredUnit price of the invoice item.
namestringrequiredName of the invoice item.
unitstringrequiredUnit of the invoice item.
taxTaxTax rate applied to the invoice item.
expense_categoryExpenseCategory10Kostenkategorie für EÜR (kann von der Hauptkategorie der Rechnung abweichen)
positionintegerPosition/Reihenfolge
sellerIncomingInvoiceSellerVerkäufer/Lieferant Informationen (Snapshot)
Show fields (25)
idintegerPrimary key of the client. Internal ID.
namestringName of the client on the invoice.
vat_idstringVAT ID of the client.
taxnumberstringTax number of the client.
buyer_reference_idstringLeitweg-ID or custom reference ID defined by the customer
secondary_namestringSecond name line of the client on the invoice.
addressstringAddress as text.
address_streetstringStreet of the address.
address_house_numberstringHouse number of the address.
address_street_levelstringStreet and house number of the address.
address_costringCare-of line of the address.
address_citystringCity of the address.
address_zipstringPostal code of the address.
address_admin_level1stringFirst administrative level of the address, e.g. the federal state.
address_countrystringCountry code of the address.
address_full_countrystringFull name of the country of the address.
address_geo_latstringLatitude of the address.
address_geo_lngstringLongitude of the address.
address_external_provider_idstringfield to store the external provider id of the address. e.g. Google Maps PlaceID like google:ChIJVcKw5r90sEcRhdjNq6NItqE
numberstringCustomer number of the buyer.
search_stringstringText that the entity can be searched by.
main_phonestringMain phone number.
main_faxstringMain fax number.
main_emailstringMain e-mail address.
websitestringWebsite address.
expense_categoryExpenseCategory10Hauptkategorie für EÜR
Show fields (19)
idintegerPrimary key of the expense category. Internal ID.
codestringKurzbezeichnung/Code (z.B. "WAREN", "PERSONAL", "MIETE")
eur_line_numberintegerZeile in der Anlage EÜR (z.B. 23 für Wareneinkauf)
eur_line_namestringBezeichnung der EÜR-Zeile (z.B. "Waren, Rohstoffe und Hilfsstoffe")
category_typestringTyp der Kategorie (expense, income, neutral, asset, private)
default_taxTaxStandard-Steuersatz für diese Kategorie
cost_centerCostCenterKostenstelle der Kategorie - bei Vereinen die steuerliche Sphäre. Ein Beleg trägt keine eigene Sphäre; über seine Kategorie bekommt er eine. Die EÜR des wirtschaftlichen Geschäftsbetriebs liest sie (billing_euer_commercial_sphere_only), die automatische Buchung setzt sie auf die Buchungszeilen (billing_accounting_cost_center_from_category).
is_vat_deductiblebooleanIst Vorsteuerabzug möglich?
is_immediate_deductionbooleanIst die Kategorie sofort abzugsfähig? (vs. Abschreibung über mehrere Jahre)
depreciation_yearsintegerAbschreibungsdauer in Jahren (für Anlagevermögen)
sort_orderintegerSortierreihenfolge
is_activebooleanIst die Kategorie aktiv/sichtbar?
colorstringFarbe für UI-Darstellung (Hex-Code)
iconstringIcon-Name für UI-Darstellung
is_systembooleanIst dies eine System-Kategorie? (nicht löschbar)
deletedbooleanThis property is used to mark an entity as deleted / archived
namestringName of the entity.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
payment_transactionsarray<PaymentTransaction4>Verknüpfte Zahlungstransaktionen
Show fields (14)
autobooleanThe transaction was created automatically.
incomingbooleanThe transaction is incoming money.
bank_transactionbooleanThe transaction comes from a bank account.
currencystringCurrency of the transaction, for example EUR.
payment_typePaymentTypePayment type of the transaction.
invoicesarray<Invoice31>brutto_valuenumber (float)Gross amount of the transaction.
is_feebooleanThe transaction is a fee, for example a bank fee.
due_datestring (date-time)This is used for negative transactions to exclude them from potential bill reminders until they are due.
cash_discountbooleanSkonto: dieser Teil der Forderung erlischt durch Abzug, nicht durch Zahlung. Kein Geldeingang - Ist-Versteuerung und Mindest-Ist zählen ihn nicht; bei Sollversteuerung mindert er die Bemessungsgrundlage im Zeitraum des Abzugs (§ 17 Abs. 1 UStG).
deletedbooleanThis property is used to mark an entity as deleted / archived
namestringName of the entity.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
incoming_invoice_transactionsarray<IncomingInvoiceTransaction2>Spezialisierte Zahlungen, die nur dieser Eingangsrechnung zugeordnet sind.
Show fields (5)
amountnumber (float)Positiver Betrag dieser konkreten Zahlung.
payment_datestring (date-time)Date of the payment.
currencystringCurrency of the payment.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
document_pathstringPfad zur gespeicherten Rechnungsdatei (PDF/Bild)
document_filenamestringOriginal Dateiname
document_mime_typestringMIME Type des Dokuments
notesstringNotizen/Bemerkungen
is_deductiblebooleanIst die Rechnung für den Vorsteuerabzug relevant?
is_approvedbooleanWurde die Rechnung geprüft/freigegeben?
approved_atstring (date-time)Time the incoming invoice was approved.
curl --request POST \
--url https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/approve \
--header 'x-iw-jwt-token: <TOKEN>'const options = {method: 'POST', headers: {'x-iw-jwt-token': '<TOKEN>'}};
fetch('https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/approve', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/approve"
headers = {"x-iw-jwt-token": "<TOKEN>"}
response = requests.post(url, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('POST', 'https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/approve', [
'headers' => [
'x-iw-jwt-token' => '<TOKEN>',
],
]);
echo $response->getBody();using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Post,
RequestUri = new Uri("https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/approve"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/approve")
.post(null)
.addHeader("x-iw-jwt-token", "<TOKEN>")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/approve"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart with the iw_erp_api package
import 'package:iw_erp_api/clients/incoming_invoice_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
IwApiState().host = 'your-instance.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await IncomingInvoiceController.approve('42');
if (result.success) {
print(result.data);
}{
"tax": {
"name": "Beispiel",
"id": 42,
"value": 1.5,
"deleted": true,
"global_default": true,
"datev_tax_key": 1
},
"id": 42,
"currency": "EUR",
"name": "Beispiel",
"linked_number_title": "Beispiel",
"token": "string",
"number": 1,
"manual_number_prefix": "string",
"manual_number": 1,
"number_string": "string"
}Ask the AI decision model for a booking suggestion (expense category, VAT case).
POST/api/invoice/incoming_invoice/{identifier}/ai_category
Opt-in (inwendo_invoice_ai_expense_category_enabled). The category is only pre-filled when the invoice has none and the probability reaches the threshold; the VAT case stays a hint. Nothing is approved or posted.
Path parameters
identifierrequiredstring |
Responses
200AI booking suggestion for an IncomingInvoiceIncomingInvoice
Show fields (46)
idintegerPrimary key of the invoice document. Internal ID.
tokenstringToken that identifies the document for public access.
numberintegerRunning document number.
manual_number_prefixstringPrefix of a manually entered document number.
manual_numberintegerManually entered document number.
number_stringstringDocument number as displayed to users.
generation_datestring (date-time)Date the document was generated.
number_datestring (date-time)Date used for the document number.
messagestringMessage printed on the document.
currencystringCurrency of the document.
namestringName of the document.
due_datestring (date-time)Due date of the document.
netto_valuenumber (float)Net total of the document.
brutto_valuenumber (float)Gross total of the document.
tax_valuenumber (float)Total tax amount of the document.
taxTaxrequiredTax rate applied to the document.
Show fields (6)
idintegerPrimary key of the tax rate. Internal ID.
namestringrequiredName of the tax rate, for example 19 percent.
valuenumber (float)Tax rate in percent.
deletedbooleanThe tax rate is deleted.
global_defaultbooleanDefault tax rate for new items.
datev_tax_keyintegerDATEV Steuerschlüssel für Umsatzsteuer (Ausgangsrechnungen). Wird von BuchhaltungsButler und DATEV-Export genutzt. Standardwerte: 0 = Kein Steuerausweis (0%) 2 = Umsatzsteuer 7% (ermäßigt) 3 = Umsatzsteuer 19% (Regelsteuersatz) Für Vorsteuer (Eingangsrechnungen) gibt es eine spiegelbildliche Zuordnung: 0 = Keine Vorsteuer (0%) 5 = Vorsteuer 7% 8 = Vorsteuer 19%
linked_number_titlestringTitle of the linked document number.
linked_numberstringNumber of the linked document.
statusstringStatus of the document.
previous_statusstringStatus before the last change.
status_updatedstring (date-time)Point in time the status was last changed.
archivedbooleanWhether the document is archived.
last_pdf_exportstring (date-time)Point in time the PDF was last exported.
last_status_exportstringStatus at the last export.
search_stringstringText that the entity can be searched by.
external_invoice_numberstringExterne Rechnungsnummer des Lieferanten
received_datestring (date-time)Eingangsdatum (wann wurde die Rechnung empfangen)
payment_datestring (date-time)Zahlungsdatum
service_date_startstring (date-time)Leistungszeitraum Start
service_date_endstring (date-time)Leistungszeitraum Ende
vat_categorystringDer umsatzsteuerliche Sachverhalt. Auf der Eingangsseite entscheidet er darüber, ob die Vorsteuer unter Kennzahl 66 steht (Rechnung eines anderen Unternehmers), unter 61 (innergemeinschaftlicher Erwerb), unter 62 (Einfuhrumsatzsteuer) oder unter 67 (§ 13b UStG). Beim Erwerb und bei § 13b kommt eine zweite Zeile hinzu: die Steuer schulden wir selbst, obwohl sie uns niemand berechnet hat, und sie steht deshalb zugleich als Umsatzsteuer im Vordruck. Wer nur eine der beiden bucht, zahlt zu viel oder zu wenig. Ohne Angabe der Regelfall.
vat_self_assessed_ratenumber (float)Der Steuersatz, mit dem die selbst geschuldete Steuer zu rechnen ist. Beim innergemeinschaftlichen Erwerb und bei § 13b UStG berechnet der Lieferant keine Steuer - die Rechnung ist netto, und die Steuer schulden wir. Womit sie zu rechnen ist, steht deshalb auf keinem Beleg: es ist der Satz, der im Inland auf diese Leistung anzuwenden wäre. Ohne Angabe rechnet die Voranmeldung mit dem Regelsatz und sagt in den Hinweisen, bei wie vielen Belegen sie das getan hat. Stillschweigend zu raten wäre in einer Steueranmeldung das Falsche.
import_vat_amountstringDie Einfuhrumsatzsteuer aus dem Zollbescheid. Sie steht NICHT auf der Rechnung des Lieferanten - die ist bei einer Einfuhr ohne deutsche Steuer. Entrichtet wird sie an den Zoll, und nur der entrichtete Betrag ist als Vorsteuer abziehbar (§ 15 Abs. 1 Satz 1 Nr. 2 UStG, Kennzahl 62 der Voranmeldung). Den Steuerbetrag der Lieferantenrechnung dafür zu nehmen war schlicht der falsche Beleg.
paid_valuenumber (float)Bereits bezahlter Betrag (für Teilzahlungen)
itemsarray<IncomingInvoiceItem>Rechnungspositionen
Show fields (16)
idintegerPrimary key of the invoice item. Internal ID.
descriptionstringDescription of the invoice item.
price_is_bruttobooleanWhether the price is a gross price including tax.
skustringArtikelnummer (Stock Keeping Unit)
barcodestringBarcode (ISBN, UPC, GTIN usw.)
item_typestringTyp (Item, Shipping)
netto_valuenumber (float)Net value of the invoice item.
brutto_valuenumber (float)Gross value of the invoice item.
tax_valuenumber (float)Tax amount of the invoice item.
quantitynumber (float)requiredQuantity of the invoice item.
pricenumber (float)requiredUnit price of the invoice item.
namestringrequiredName of the invoice item.
unitstringrequiredUnit of the invoice item.
taxTaxTax rate applied to the invoice item.
expense_categoryExpenseCategory10Kostenkategorie für EÜR (kann von der Hauptkategorie der Rechnung abweichen)
positionintegerPosition/Reihenfolge
sellerIncomingInvoiceSellerVerkäufer/Lieferant Informationen (Snapshot)
Show fields (25)
idintegerPrimary key of the client. Internal ID.
namestringName of the client on the invoice.
vat_idstringVAT ID of the client.
taxnumberstringTax number of the client.
buyer_reference_idstringLeitweg-ID or custom reference ID defined by the customer
secondary_namestringSecond name line of the client on the invoice.
addressstringAddress as text.
address_streetstringStreet of the address.
address_house_numberstringHouse number of the address.
address_street_levelstringStreet and house number of the address.
address_costringCare-of line of the address.
address_citystringCity of the address.
address_zipstringPostal code of the address.
address_admin_level1stringFirst administrative level of the address, e.g. the federal state.
address_countrystringCountry code of the address.
address_full_countrystringFull name of the country of the address.
address_geo_latstringLatitude of the address.
address_geo_lngstringLongitude of the address.
address_external_provider_idstringfield to store the external provider id of the address. e.g. Google Maps PlaceID like google:ChIJVcKw5r90sEcRhdjNq6NItqE
numberstringCustomer number of the buyer.
search_stringstringText that the entity can be searched by.
main_phonestringMain phone number.
main_faxstringMain fax number.
main_emailstringMain e-mail address.
websitestringWebsite address.
expense_categoryExpenseCategory10Hauptkategorie für EÜR
Show fields (19)
idintegerPrimary key of the expense category. Internal ID.
codestringKurzbezeichnung/Code (z.B. "WAREN", "PERSONAL", "MIETE")
eur_line_numberintegerZeile in der Anlage EÜR (z.B. 23 für Wareneinkauf)
eur_line_namestringBezeichnung der EÜR-Zeile (z.B. "Waren, Rohstoffe und Hilfsstoffe")
category_typestringTyp der Kategorie (expense, income, neutral, asset, private)
default_taxTaxStandard-Steuersatz für diese Kategorie
cost_centerCostCenterKostenstelle der Kategorie - bei Vereinen die steuerliche Sphäre. Ein Beleg trägt keine eigene Sphäre; über seine Kategorie bekommt er eine. Die EÜR des wirtschaftlichen Geschäftsbetriebs liest sie (billing_euer_commercial_sphere_only), die automatische Buchung setzt sie auf die Buchungszeilen (billing_accounting_cost_center_from_category).
is_vat_deductiblebooleanIst Vorsteuerabzug möglich?
is_immediate_deductionbooleanIst die Kategorie sofort abzugsfähig? (vs. Abschreibung über mehrere Jahre)
depreciation_yearsintegerAbschreibungsdauer in Jahren (für Anlagevermögen)
sort_orderintegerSortierreihenfolge
is_activebooleanIst die Kategorie aktiv/sichtbar?
colorstringFarbe für UI-Darstellung (Hex-Code)
iconstringIcon-Name für UI-Darstellung
is_systembooleanIst dies eine System-Kategorie? (nicht löschbar)
deletedbooleanThis property is used to mark an entity as deleted / archived
namestringName of the entity.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
payment_transactionsarray<PaymentTransaction4>Verknüpfte Zahlungstransaktionen
Show fields (14)
autobooleanThe transaction was created automatically.
incomingbooleanThe transaction is incoming money.
bank_transactionbooleanThe transaction comes from a bank account.
currencystringCurrency of the transaction, for example EUR.
payment_typePaymentTypePayment type of the transaction.
invoicesarray<Invoice31>brutto_valuenumber (float)Gross amount of the transaction.
is_feebooleanThe transaction is a fee, for example a bank fee.
due_datestring (date-time)This is used for negative transactions to exclude them from potential bill reminders until they are due.
cash_discountbooleanSkonto: dieser Teil der Forderung erlischt durch Abzug, nicht durch Zahlung. Kein Geldeingang - Ist-Versteuerung und Mindest-Ist zählen ihn nicht; bei Sollversteuerung mindert er die Bemessungsgrundlage im Zeitraum des Abzugs (§ 17 Abs. 1 UStG).
deletedbooleanThis property is used to mark an entity as deleted / archived
namestringName of the entity.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
incoming_invoice_transactionsarray<IncomingInvoiceTransaction2>Spezialisierte Zahlungen, die nur dieser Eingangsrechnung zugeordnet sind.
Show fields (5)
amountnumber (float)Positiver Betrag dieser konkreten Zahlung.
payment_datestring (date-time)Date of the payment.
currencystringCurrency of the payment.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
document_pathstringPfad zur gespeicherten Rechnungsdatei (PDF/Bild)
document_filenamestringOriginal Dateiname
document_mime_typestringMIME Type des Dokuments
notesstringNotizen/Bemerkungen
is_deductiblebooleanIst die Rechnung für den Vorsteuerabzug relevant?
is_approvedbooleanWurde die Rechnung geprüft/freigegeben?
approved_atstring (date-time)Time the incoming invoice was approved.
curl --request POST \
--url https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/ai_category \
--header 'x-iw-jwt-token: <TOKEN>'const options = {method: 'POST', headers: {'x-iw-jwt-token': '<TOKEN>'}};
fetch('https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/ai_category', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/ai_category"
headers = {"x-iw-jwt-token": "<TOKEN>"}
response = requests.post(url, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('POST', 'https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/ai_category', [
'headers' => [
'x-iw-jwt-token' => '<TOKEN>',
],
]);
echo $response->getBody();using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Post,
RequestUri = new Uri("https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/ai_category"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/ai_category")
.post(null)
.addHeader("x-iw-jwt-token", "<TOKEN>")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/ai_category"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart with the iw_erp_api package
import 'package:iw_erp_api/clients/incoming_invoice_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
IwApiState().host = 'your-instance.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await IncomingInvoiceController.aiCategory('42');
if (result.success) {
print(result.data);
}{
"tax": {
"name": "Beispiel",
"id": 42,
"value": 1.5,
"deleted": true,
"global_default": true,
"datev_tax_key": 1
},
"id": 42,
"currency": "EUR",
"name": "Beispiel",
"linked_number_title": "Beispiel",
"token": "string",
"number": 1,
"manual_number_prefix": "string",
"manual_number": 1,
"number_string": "string"
}Mark an IncomingInvoice as paid
POST/api/invoice/incoming_invoice/{identifier}/paid
Path parameters
identifierrequiredstring |
Request body application/json
dataobjectShow fields (2)
paidValuenumberDefaults to the invoice total
paymentDatestringDefaults to today
Responses
200Mark IncomingInvoice as paidIncomingInvoice
Show fields (46)
idintegerPrimary key of the invoice document. Internal ID.
tokenstringToken that identifies the document for public access.
numberintegerRunning document number.
manual_number_prefixstringPrefix of a manually entered document number.
manual_numberintegerManually entered document number.
number_stringstringDocument number as displayed to users.
generation_datestring (date-time)Date the document was generated.
number_datestring (date-time)Date used for the document number.
messagestringMessage printed on the document.
currencystringCurrency of the document.
namestringName of the document.
due_datestring (date-time)Due date of the document.
netto_valuenumber (float)Net total of the document.
brutto_valuenumber (float)Gross total of the document.
tax_valuenumber (float)Total tax amount of the document.
taxTaxrequiredTax rate applied to the document.
Show fields (6)
idintegerPrimary key of the tax rate. Internal ID.
namestringrequiredName of the tax rate, for example 19 percent.
valuenumber (float)Tax rate in percent.
deletedbooleanThe tax rate is deleted.
global_defaultbooleanDefault tax rate for new items.
datev_tax_keyintegerDATEV Steuerschlüssel für Umsatzsteuer (Ausgangsrechnungen). Wird von BuchhaltungsButler und DATEV-Export genutzt. Standardwerte: 0 = Kein Steuerausweis (0%) 2 = Umsatzsteuer 7% (ermäßigt) 3 = Umsatzsteuer 19% (Regelsteuersatz) Für Vorsteuer (Eingangsrechnungen) gibt es eine spiegelbildliche Zuordnung: 0 = Keine Vorsteuer (0%) 5 = Vorsteuer 7% 8 = Vorsteuer 19%
linked_number_titlestringTitle of the linked document number.
linked_numberstringNumber of the linked document.
statusstringStatus of the document.
previous_statusstringStatus before the last change.
status_updatedstring (date-time)Point in time the status was last changed.
archivedbooleanWhether the document is archived.
last_pdf_exportstring (date-time)Point in time the PDF was last exported.
last_status_exportstringStatus at the last export.
search_stringstringText that the entity can be searched by.
external_invoice_numberstringExterne Rechnungsnummer des Lieferanten
received_datestring (date-time)Eingangsdatum (wann wurde die Rechnung empfangen)
payment_datestring (date-time)Zahlungsdatum
service_date_startstring (date-time)Leistungszeitraum Start
service_date_endstring (date-time)Leistungszeitraum Ende
vat_categorystringDer umsatzsteuerliche Sachverhalt. Auf der Eingangsseite entscheidet er darüber, ob die Vorsteuer unter Kennzahl 66 steht (Rechnung eines anderen Unternehmers), unter 61 (innergemeinschaftlicher Erwerb), unter 62 (Einfuhrumsatzsteuer) oder unter 67 (§ 13b UStG). Beim Erwerb und bei § 13b kommt eine zweite Zeile hinzu: die Steuer schulden wir selbst, obwohl sie uns niemand berechnet hat, und sie steht deshalb zugleich als Umsatzsteuer im Vordruck. Wer nur eine der beiden bucht, zahlt zu viel oder zu wenig. Ohne Angabe der Regelfall.
vat_self_assessed_ratenumber (float)Der Steuersatz, mit dem die selbst geschuldete Steuer zu rechnen ist. Beim innergemeinschaftlichen Erwerb und bei § 13b UStG berechnet der Lieferant keine Steuer - die Rechnung ist netto, und die Steuer schulden wir. Womit sie zu rechnen ist, steht deshalb auf keinem Beleg: es ist der Satz, der im Inland auf diese Leistung anzuwenden wäre. Ohne Angabe rechnet die Voranmeldung mit dem Regelsatz und sagt in den Hinweisen, bei wie vielen Belegen sie das getan hat. Stillschweigend zu raten wäre in einer Steueranmeldung das Falsche.
import_vat_amountstringDie Einfuhrumsatzsteuer aus dem Zollbescheid. Sie steht NICHT auf der Rechnung des Lieferanten - die ist bei einer Einfuhr ohne deutsche Steuer. Entrichtet wird sie an den Zoll, und nur der entrichtete Betrag ist als Vorsteuer abziehbar (§ 15 Abs. 1 Satz 1 Nr. 2 UStG, Kennzahl 62 der Voranmeldung). Den Steuerbetrag der Lieferantenrechnung dafür zu nehmen war schlicht der falsche Beleg.
paid_valuenumber (float)Bereits bezahlter Betrag (für Teilzahlungen)
itemsarray<IncomingInvoiceItem>Rechnungspositionen
Show fields (16)
idintegerPrimary key of the invoice item. Internal ID.
descriptionstringDescription of the invoice item.
price_is_bruttobooleanWhether the price is a gross price including tax.
skustringArtikelnummer (Stock Keeping Unit)
barcodestringBarcode (ISBN, UPC, GTIN usw.)
item_typestringTyp (Item, Shipping)
netto_valuenumber (float)Net value of the invoice item.
brutto_valuenumber (float)Gross value of the invoice item.
tax_valuenumber (float)Tax amount of the invoice item.
quantitynumber (float)requiredQuantity of the invoice item.
pricenumber (float)requiredUnit price of the invoice item.
namestringrequiredName of the invoice item.
unitstringrequiredUnit of the invoice item.
taxTaxTax rate applied to the invoice item.
expense_categoryExpenseCategory10Kostenkategorie für EÜR (kann von der Hauptkategorie der Rechnung abweichen)
positionintegerPosition/Reihenfolge
sellerIncomingInvoiceSellerVerkäufer/Lieferant Informationen (Snapshot)
Show fields (25)
idintegerPrimary key of the client. Internal ID.
namestringName of the client on the invoice.
vat_idstringVAT ID of the client.
taxnumberstringTax number of the client.
buyer_reference_idstringLeitweg-ID or custom reference ID defined by the customer
secondary_namestringSecond name line of the client on the invoice.
addressstringAddress as text.
address_streetstringStreet of the address.
address_house_numberstringHouse number of the address.
address_street_levelstringStreet and house number of the address.
address_costringCare-of line of the address.
address_citystringCity of the address.
address_zipstringPostal code of the address.
address_admin_level1stringFirst administrative level of the address, e.g. the federal state.
address_countrystringCountry code of the address.
address_full_countrystringFull name of the country of the address.
address_geo_latstringLatitude of the address.
address_geo_lngstringLongitude of the address.
address_external_provider_idstringfield to store the external provider id of the address. e.g. Google Maps PlaceID like google:ChIJVcKw5r90sEcRhdjNq6NItqE
numberstringCustomer number of the buyer.
search_stringstringText that the entity can be searched by.
main_phonestringMain phone number.
main_faxstringMain fax number.
main_emailstringMain e-mail address.
websitestringWebsite address.
expense_categoryExpenseCategory10Hauptkategorie für EÜR
Show fields (19)
idintegerPrimary key of the expense category. Internal ID.
codestringKurzbezeichnung/Code (z.B. "WAREN", "PERSONAL", "MIETE")
eur_line_numberintegerZeile in der Anlage EÜR (z.B. 23 für Wareneinkauf)
eur_line_namestringBezeichnung der EÜR-Zeile (z.B. "Waren, Rohstoffe und Hilfsstoffe")
category_typestringTyp der Kategorie (expense, income, neutral, asset, private)
default_taxTaxStandard-Steuersatz für diese Kategorie
cost_centerCostCenterKostenstelle der Kategorie - bei Vereinen die steuerliche Sphäre. Ein Beleg trägt keine eigene Sphäre; über seine Kategorie bekommt er eine. Die EÜR des wirtschaftlichen Geschäftsbetriebs liest sie (billing_euer_commercial_sphere_only), die automatische Buchung setzt sie auf die Buchungszeilen (billing_accounting_cost_center_from_category).
is_vat_deductiblebooleanIst Vorsteuerabzug möglich?
is_immediate_deductionbooleanIst die Kategorie sofort abzugsfähig? (vs. Abschreibung über mehrere Jahre)
depreciation_yearsintegerAbschreibungsdauer in Jahren (für Anlagevermögen)
sort_orderintegerSortierreihenfolge
is_activebooleanIst die Kategorie aktiv/sichtbar?
colorstringFarbe für UI-Darstellung (Hex-Code)
iconstringIcon-Name für UI-Darstellung
is_systembooleanIst dies eine System-Kategorie? (nicht löschbar)
deletedbooleanThis property is used to mark an entity as deleted / archived
namestringName of the entity.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
payment_transactionsarray<PaymentTransaction4>Verknüpfte Zahlungstransaktionen
Show fields (14)
autobooleanThe transaction was created automatically.
incomingbooleanThe transaction is incoming money.
bank_transactionbooleanThe transaction comes from a bank account.
currencystringCurrency of the transaction, for example EUR.
payment_typePaymentTypePayment type of the transaction.
invoicesarray<Invoice31>brutto_valuenumber (float)Gross amount of the transaction.
is_feebooleanThe transaction is a fee, for example a bank fee.
due_datestring (date-time)This is used for negative transactions to exclude them from potential bill reminders until they are due.
cash_discountbooleanSkonto: dieser Teil der Forderung erlischt durch Abzug, nicht durch Zahlung. Kein Geldeingang - Ist-Versteuerung und Mindest-Ist zählen ihn nicht; bei Sollversteuerung mindert er die Bemessungsgrundlage im Zeitraum des Abzugs (§ 17 Abs. 1 UStG).
deletedbooleanThis property is used to mark an entity as deleted / archived
namestringName of the entity.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
incoming_invoice_transactionsarray<IncomingInvoiceTransaction2>Spezialisierte Zahlungen, die nur dieser Eingangsrechnung zugeordnet sind.
Show fields (5)
amountnumber (float)Positiver Betrag dieser konkreten Zahlung.
payment_datestring (date-time)Date of the payment.
currencystringCurrency of the payment.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
document_pathstringPfad zur gespeicherten Rechnungsdatei (PDF/Bild)
document_filenamestringOriginal Dateiname
document_mime_typestringMIME Type des Dokuments
notesstringNotizen/Bemerkungen
is_deductiblebooleanIst die Rechnung für den Vorsteuerabzug relevant?
is_approvedbooleanWurde die Rechnung geprüft/freigegeben?
approved_atstring (date-time)Time the incoming invoice was approved.
curl --request POST \
--url https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/paid \
--header 'content-type: application/json' \
--header 'x-iw-jwt-token: <TOKEN>' \
--data '
{
"data": {
"paidValue": 119,
"paymentDate": "2026-07-30"
}
}
'const options = {
method: 'POST',
headers: {'x-iw-jwt-token': '<TOKEN>', 'content-type': 'application/json'},
body: JSON.stringify({data: {paidValue: 119, paymentDate: '2026-07-30'}})
};
fetch('https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/paid', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/paid"
payload = { "data": {
"paidValue": 119,
"paymentDate": "2026-07-30"
} }
headers = {
"x-iw-jwt-token": "<TOKEN>",
"content-type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('POST', 'https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/paid', [
'body' => '{"data":{"paidValue":119,"paymentDate":"2026-07-30"}}',
'headers' => [
'content-type' => 'application/json',
'x-iw-jwt-token' => '<TOKEN>',
],
]);
echo $response->getBody();using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Post,
RequestUri = new Uri("https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/paid"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
Content = new StringContent("{\"data\":{\"paidValue\":119,\"paymentDate\":\"2026-07-30\"}}")
{
Headers =
{
ContentType = new MediaTypeHeaderValue("application/json")
}
}
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"data\":{\"paidValue\":119,\"paymentDate\":\"2026-07-30\"}}");
Request request = new Request.Builder()
.url("https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/paid")
.post(body)
.addHeader("x-iw-jwt-token", "<TOKEN>")
.addHeader("content-type", "application/json")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/paid"
payload := strings.NewReader("{\"data\":{\"paidValue\":119,\"paymentDate\":\"2026-07-30\"}}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
req.Header.Add("content-type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart with the iw_erp_api package
import 'package:iw_erp_api/clients/incoming_invoice_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
IwApiState().host = 'your-instance.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await IncomingInvoiceController.markAsPaid('42');
if (result.success) {
print(result.data);
}{
"tax": {
"name": "Beispiel",
"id": 42,
"value": 1.5,
"deleted": true,
"global_default": true,
"datev_tax_key": 1
},
"id": 42,
"currency": "EUR",
"name": "Beispiel",
"linked_number_title": "Beispiel",
"token": "string",
"number": 1,
"manual_number_prefix": "string",
"manual_number": 1,
"number_string": "string"
}Push an IncomingInvoice to BuchhaltungsButler (manual transfer / re-transfer)
POST/api/invoice/incoming_invoice/{identifier}/buchhaltungsbutler_push
Path parameters
identifierrequiredstring |
Responses
200Push an IncomingInvoice to BuchhaltungsButlerIncomingInvoice
Show fields (46)
idintegerPrimary key of the invoice document. Internal ID.
tokenstringToken that identifies the document for public access.
numberintegerRunning document number.
manual_number_prefixstringPrefix of a manually entered document number.
manual_numberintegerManually entered document number.
number_stringstringDocument number as displayed to users.
generation_datestring (date-time)Date the document was generated.
number_datestring (date-time)Date used for the document number.
messagestringMessage printed on the document.
currencystringCurrency of the document.
namestringName of the document.
due_datestring (date-time)Due date of the document.
netto_valuenumber (float)Net total of the document.
brutto_valuenumber (float)Gross total of the document.
tax_valuenumber (float)Total tax amount of the document.
taxTaxrequiredTax rate applied to the document.
Show fields (6)
idintegerPrimary key of the tax rate. Internal ID.
namestringrequiredName of the tax rate, for example 19 percent.
valuenumber (float)Tax rate in percent.
deletedbooleanThe tax rate is deleted.
global_defaultbooleanDefault tax rate for new items.
datev_tax_keyintegerDATEV Steuerschlüssel für Umsatzsteuer (Ausgangsrechnungen). Wird von BuchhaltungsButler und DATEV-Export genutzt. Standardwerte: 0 = Kein Steuerausweis (0%) 2 = Umsatzsteuer 7% (ermäßigt) 3 = Umsatzsteuer 19% (Regelsteuersatz) Für Vorsteuer (Eingangsrechnungen) gibt es eine spiegelbildliche Zuordnung: 0 = Keine Vorsteuer (0%) 5 = Vorsteuer 7% 8 = Vorsteuer 19%
linked_number_titlestringTitle of the linked document number.
linked_numberstringNumber of the linked document.
statusstringStatus of the document.
previous_statusstringStatus before the last change.
status_updatedstring (date-time)Point in time the status was last changed.
archivedbooleanWhether the document is archived.
last_pdf_exportstring (date-time)Point in time the PDF was last exported.
last_status_exportstringStatus at the last export.
search_stringstringText that the entity can be searched by.
external_invoice_numberstringExterne Rechnungsnummer des Lieferanten
received_datestring (date-time)Eingangsdatum (wann wurde die Rechnung empfangen)
payment_datestring (date-time)Zahlungsdatum
service_date_startstring (date-time)Leistungszeitraum Start
service_date_endstring (date-time)Leistungszeitraum Ende
vat_categorystringDer umsatzsteuerliche Sachverhalt. Auf der Eingangsseite entscheidet er darüber, ob die Vorsteuer unter Kennzahl 66 steht (Rechnung eines anderen Unternehmers), unter 61 (innergemeinschaftlicher Erwerb), unter 62 (Einfuhrumsatzsteuer) oder unter 67 (§ 13b UStG). Beim Erwerb und bei § 13b kommt eine zweite Zeile hinzu: die Steuer schulden wir selbst, obwohl sie uns niemand berechnet hat, und sie steht deshalb zugleich als Umsatzsteuer im Vordruck. Wer nur eine der beiden bucht, zahlt zu viel oder zu wenig. Ohne Angabe der Regelfall.
vat_self_assessed_ratenumber (float)Der Steuersatz, mit dem die selbst geschuldete Steuer zu rechnen ist. Beim innergemeinschaftlichen Erwerb und bei § 13b UStG berechnet der Lieferant keine Steuer - die Rechnung ist netto, und die Steuer schulden wir. Womit sie zu rechnen ist, steht deshalb auf keinem Beleg: es ist der Satz, der im Inland auf diese Leistung anzuwenden wäre. Ohne Angabe rechnet die Voranmeldung mit dem Regelsatz und sagt in den Hinweisen, bei wie vielen Belegen sie das getan hat. Stillschweigend zu raten wäre in einer Steueranmeldung das Falsche.
import_vat_amountstringDie Einfuhrumsatzsteuer aus dem Zollbescheid. Sie steht NICHT auf der Rechnung des Lieferanten - die ist bei einer Einfuhr ohne deutsche Steuer. Entrichtet wird sie an den Zoll, und nur der entrichtete Betrag ist als Vorsteuer abziehbar (§ 15 Abs. 1 Satz 1 Nr. 2 UStG, Kennzahl 62 der Voranmeldung). Den Steuerbetrag der Lieferantenrechnung dafür zu nehmen war schlicht der falsche Beleg.
paid_valuenumber (float)Bereits bezahlter Betrag (für Teilzahlungen)
itemsarray<IncomingInvoiceItem>Rechnungspositionen
Show fields (16)
idintegerPrimary key of the invoice item. Internal ID.
descriptionstringDescription of the invoice item.
price_is_bruttobooleanWhether the price is a gross price including tax.
skustringArtikelnummer (Stock Keeping Unit)
barcodestringBarcode (ISBN, UPC, GTIN usw.)
item_typestringTyp (Item, Shipping)
netto_valuenumber (float)Net value of the invoice item.
brutto_valuenumber (float)Gross value of the invoice item.
tax_valuenumber (float)Tax amount of the invoice item.
quantitynumber (float)requiredQuantity of the invoice item.
pricenumber (float)requiredUnit price of the invoice item.
namestringrequiredName of the invoice item.
unitstringrequiredUnit of the invoice item.
taxTaxTax rate applied to the invoice item.
expense_categoryExpenseCategory10Kostenkategorie für EÜR (kann von der Hauptkategorie der Rechnung abweichen)
positionintegerPosition/Reihenfolge
sellerIncomingInvoiceSellerVerkäufer/Lieferant Informationen (Snapshot)
Show fields (25)
idintegerPrimary key of the client. Internal ID.
namestringName of the client on the invoice.
vat_idstringVAT ID of the client.
taxnumberstringTax number of the client.
buyer_reference_idstringLeitweg-ID or custom reference ID defined by the customer
secondary_namestringSecond name line of the client on the invoice.
addressstringAddress as text.
address_streetstringStreet of the address.
address_house_numberstringHouse number of the address.
address_street_levelstringStreet and house number of the address.
address_costringCare-of line of the address.
address_citystringCity of the address.
address_zipstringPostal code of the address.
address_admin_level1stringFirst administrative level of the address, e.g. the federal state.
address_countrystringCountry code of the address.
address_full_countrystringFull name of the country of the address.
address_geo_latstringLatitude of the address.
address_geo_lngstringLongitude of the address.
address_external_provider_idstringfield to store the external provider id of the address. e.g. Google Maps PlaceID like google:ChIJVcKw5r90sEcRhdjNq6NItqE
numberstringCustomer number of the buyer.
search_stringstringText that the entity can be searched by.
main_phonestringMain phone number.
main_faxstringMain fax number.
main_emailstringMain e-mail address.
websitestringWebsite address.
expense_categoryExpenseCategory10Hauptkategorie für EÜR
Show fields (19)
idintegerPrimary key of the expense category. Internal ID.
codestringKurzbezeichnung/Code (z.B. "WAREN", "PERSONAL", "MIETE")
eur_line_numberintegerZeile in der Anlage EÜR (z.B. 23 für Wareneinkauf)
eur_line_namestringBezeichnung der EÜR-Zeile (z.B. "Waren, Rohstoffe und Hilfsstoffe")
category_typestringTyp der Kategorie (expense, income, neutral, asset, private)
default_taxTaxStandard-Steuersatz für diese Kategorie
cost_centerCostCenterKostenstelle der Kategorie - bei Vereinen die steuerliche Sphäre. Ein Beleg trägt keine eigene Sphäre; über seine Kategorie bekommt er eine. Die EÜR des wirtschaftlichen Geschäftsbetriebs liest sie (billing_euer_commercial_sphere_only), die automatische Buchung setzt sie auf die Buchungszeilen (billing_accounting_cost_center_from_category).
is_vat_deductiblebooleanIst Vorsteuerabzug möglich?
is_immediate_deductionbooleanIst die Kategorie sofort abzugsfähig? (vs. Abschreibung über mehrere Jahre)
depreciation_yearsintegerAbschreibungsdauer in Jahren (für Anlagevermögen)
sort_orderintegerSortierreihenfolge
is_activebooleanIst die Kategorie aktiv/sichtbar?
colorstringFarbe für UI-Darstellung (Hex-Code)
iconstringIcon-Name für UI-Darstellung
is_systembooleanIst dies eine System-Kategorie? (nicht löschbar)
deletedbooleanThis property is used to mark an entity as deleted / archived
namestringName of the entity.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
payment_transactionsarray<PaymentTransaction4>Verknüpfte Zahlungstransaktionen
Show fields (14)
autobooleanThe transaction was created automatically.
incomingbooleanThe transaction is incoming money.
bank_transactionbooleanThe transaction comes from a bank account.
currencystringCurrency of the transaction, for example EUR.
payment_typePaymentTypePayment type of the transaction.
invoicesarray<Invoice31>brutto_valuenumber (float)Gross amount of the transaction.
is_feebooleanThe transaction is a fee, for example a bank fee.
due_datestring (date-time)This is used for negative transactions to exclude them from potential bill reminders until they are due.
cash_discountbooleanSkonto: dieser Teil der Forderung erlischt durch Abzug, nicht durch Zahlung. Kein Geldeingang - Ist-Versteuerung und Mindest-Ist zählen ihn nicht; bei Sollversteuerung mindert er die Bemessungsgrundlage im Zeitraum des Abzugs (§ 17 Abs. 1 UStG).
deletedbooleanThis property is used to mark an entity as deleted / archived
namestringName of the entity.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
incoming_invoice_transactionsarray<IncomingInvoiceTransaction2>Spezialisierte Zahlungen, die nur dieser Eingangsrechnung zugeordnet sind.
Show fields (5)
amountnumber (float)Positiver Betrag dieser konkreten Zahlung.
payment_datestring (date-time)Date of the payment.
currencystringCurrency of the payment.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
document_pathstringPfad zur gespeicherten Rechnungsdatei (PDF/Bild)
document_filenamestringOriginal Dateiname
document_mime_typestringMIME Type des Dokuments
notesstringNotizen/Bemerkungen
is_deductiblebooleanIst die Rechnung für den Vorsteuerabzug relevant?
is_approvedbooleanWurde die Rechnung geprüft/freigegeben?
approved_atstring (date-time)Time the incoming invoice was approved.
curl --request POST \
--url https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/buchhaltungsbutler_push \
--header 'x-iw-jwt-token: <TOKEN>'const options = {method: 'POST', headers: {'x-iw-jwt-token': '<TOKEN>'}};
fetch('https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/buchhaltungsbutler_push', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/buchhaltungsbutler_push"
headers = {"x-iw-jwt-token": "<TOKEN>"}
response = requests.post(url, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('POST', 'https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/buchhaltungsbutler_push', [
'headers' => [
'x-iw-jwt-token' => '<TOKEN>',
],
]);
echo $response->getBody();using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Post,
RequestUri = new Uri("https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/buchhaltungsbutler_push"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/buchhaltungsbutler_push")
.post(null)
.addHeader("x-iw-jwt-token", "<TOKEN>")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/buchhaltungsbutler_push"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart with package:http (no controller in the iw_erp_api package)
import 'package:http/http.dart' as http;
final response = await http.post(
Uri.parse('https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/buchhaltungsbutler_push'),
headers: {'x-iw-jwt-token': '<TOKEN>'},
);
print(response.body);{
"tax": {
"name": "Beispiel",
"id": 42,
"value": 1.5,
"deleted": true,
"global_default": true,
"datev_tax_key": 1
},
"id": 42,
"currency": "EUR",
"name": "Beispiel",
"linked_number_title": "Beispiel",
"token": "string",
"number": 1,
"manual_number_prefix": "string",
"manual_number": 1,
"number_string": "string"
}Download the document file of an IncomingInvoice
GET/api/invoice/incoming_invoice/{identifier}/document
Path parameters
identifierrequiredstring |
Responses
200Returns the document file
curl --request GET \
--url https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/document \
--header 'x-iw-jwt-token: <TOKEN>'const options = {method: 'GET', headers: {'x-iw-jwt-token': '<TOKEN>'}};
fetch('https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/document', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/document"
headers = {"x-iw-jwt-token": "<TOKEN>"}
response = requests.get(url, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('GET', 'https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/document', [
'headers' => [
'x-iw-jwt-token' => '<TOKEN>',
],
]);
echo $response->getBody();using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Get,
RequestUri = new Uri("https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/document"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/document")
.get()
.addHeader("x-iw-jwt-token", "<TOKEN>")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://your-instance.iw-erp.de/api/invoice/incoming_invoice/42/document"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart with the iw_erp_api package
import 'package:iw_erp_api/clients/incoming_invoice_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
IwApiState().host = 'your-instance.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await IncomingInvoiceController.getDocumentDownloadLink('42');
print(result);