AccountingType
Returns a list of all AccountingType
GET/api/invoice/accountingtypes
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 AccountingTypearray<AccountingType>
Show fields (6)
idintegerPrimary key of the accounting type. Internal ID.
namestringrequiredName of the accounting type, for example course fee.
cancelled_namestringName used when an invoice of this type is canceled.
typestringrequiredType of the accounting type, for example invoice or credit note.
deletedbooleanThe accounting type is deleted.
default_expense_categoryExpenseCategory10Standard-EÜR-Kategorie für diesen Rechnungstyp (für Einnahmen-Mapping)
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.
curl --request GET \
--url https://your-instance.iw-erp.de/api/invoice/accountingtypes \
--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/accountingtypes', 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/accountingtypes"
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/accountingtypes', [
'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/accountingtypes"),
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/accountingtypes")
.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/accountingtypes"
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/invoice_accounting_type_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 InvoiceAccountingTypeController.getAll();
if (result.success) {
print(result.data);
}[
{
"name": "Beispiel",
"type": "string",
"id": 42,
"cancelled_name": "Beispiel",
"deleted": true,
"default_expense_category": {
"id": 42,
"eur_line_name": "Beispiel",
"color": "#3f5efb",
"name": "Beispiel",
"code": "string",
"eur_line_number": 1,
"category_type": "string",
"is_vat_deductible": true,
"is_immediate_deduction": true,
"depreciation_years": 1
}
}
]Add a new AccountingType
POST/api/invoice/accountingtypes
Request body application/json
dataAccountingTypeShow fields (6)
idintegerPrimary key of the accounting type. Internal ID.
namestringrequiredName of the accounting type, for example course fee.
cancelled_namestringName used when an invoice of this type is canceled.
typestringrequiredType of the accounting type, for example invoice or credit note.
deletedbooleanThe accounting type is deleted.
default_expense_categoryExpenseCategory10Standard-EÜR-Kategorie für diesen Rechnungstyp (für Einnahmen-Mapping)
Responses
200Add a new AccountingTypeAccountingType
Show fields (6)
idintegerPrimary key of the accounting type. Internal ID.
namestringrequiredName of the accounting type, for example course fee.
cancelled_namestringName used when an invoice of this type is canceled.
typestringrequiredType of the accounting type, for example invoice or credit note.
deletedbooleanThe accounting type is deleted.
default_expense_categoryExpenseCategory10Standard-EÜR-Kategorie für diesen Rechnungstyp (für Einnahmen-Mapping)
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.
curl --request POST \
--url https://your-instance.iw-erp.de/api/invoice/accountingtypes \
--header 'content-type: application/json' \
--header 'x-iw-jwt-token: <TOKEN>' \
--data '
{
"data": {
"name": "Beispiel",
"type": "string",
"id": 42,
"cancelled_name": "Beispiel",
"deleted": true,
"default_expense_category": {
"id": 42,
"eur_line_name": "Beispiel",
"color": "#3f5efb",
"name": "Beispiel",
"code": "string",
"eur_line_number": 1
}
}
}
'const options = {
method: 'POST',
headers: {'x-iw-jwt-token': '<TOKEN>', 'content-type': 'application/json'},
body: JSON.stringify({
data: {
name: 'Beispiel',
type: 'string',
id: 42,
cancelled_name: 'Beispiel',
deleted: true,
default_expense_category: {
id: 42,
eur_line_name: 'Beispiel',
color: '#3f5efb',
name: 'Beispiel',
code: 'string',
eur_line_number: 1
}
}
})
};
fetch('https://your-instance.iw-erp.de/api/invoice/accountingtypes', 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/accountingtypes"
payload = { "data": {
"name": "Beispiel",
"type": "string",
"id": 42,
"cancelled_name": "Beispiel",
"deleted": True,
"default_expense_category": {
"id": 42,
"eur_line_name": "Beispiel",
"color": "#3f5efb",
"name": "Beispiel",
"code": "string",
"eur_line_number": 1
}
} }
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/accountingtypes', [
'body' => '{"data":{"name":"Beispiel","type":"string","id":42,"cancelled_name":"Beispiel","deleted":true,"default_expense_category":{"id":42,"eur_line_name":"Beispiel","color":"#3f5efb","name":"Beispiel","code":"string","eur_line_number":1}}}',
'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/accountingtypes"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
Content = new StringContent("{\"data\":{\"name\":\"Beispiel\",\"type\":\"string\",\"id\":42,\"cancelled_name\":\"Beispiel\",\"deleted\":true,\"default_expense_category\":{\"id\":42,\"eur_line_name\":\"Beispiel\",\"color\":\"#3f5efb\",\"name\":\"Beispiel\",\"code\":\"string\",\"eur_line_number\":1}}}")
{
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\":{\"name\":\"Beispiel\",\"type\":\"string\",\"id\":42,\"cancelled_name\":\"Beispiel\",\"deleted\":true,\"default_expense_category\":{\"id\":42,\"eur_line_name\":\"Beispiel\",\"color\":\"#3f5efb\",\"name\":\"Beispiel\",\"code\":\"string\",\"eur_line_number\":1}}}");
Request request = new Request.Builder()
.url("https://your-instance.iw-erp.de/api/invoice/accountingtypes")
.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/accountingtypes"
payload := strings.NewReader("{\"data\":{\"name\":\"Beispiel\",\"type\":\"string\",\"id\":42,\"cancelled_name\":\"Beispiel\",\"deleted\":true,\"default_expense_category\":{\"id\":42,\"eur_line_name\":\"Beispiel\",\"color\":\"#3f5efb\",\"name\":\"Beispiel\",\"code\":\"string\",\"eur_line_number\":1}}}")
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/invoice_accounting_type_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
import 'package:iw_erp_api/model/invoice_accounting_type.dart';
IwApiState().host = 'your-instance.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await InvoiceAccountingTypeController.post(InvoiceAccountingType.fromJson({
"name": "Beispiel",
"type": "string",
"id": 42,
"cancelled_name": "Beispiel",
"deleted": true,
"default_expense_category": {
"id": 42,
"eur_line_name": "Beispiel",
"color": "#3f5efb",
"name": "Beispiel",
"code": "string",
"eur_line_number": 1
}
}));
if (result.success) {
print(result.data);
}{
"name": "Beispiel",
"type": "string",
"id": 42,
"cancelled_name": "Beispiel",
"deleted": true,
"default_expense_category": {
"id": 42,
"eur_line_name": "Beispiel",
"color": "#3f5efb",
"name": "Beispiel",
"code": "string",
"eur_line_number": 1,
"category_type": "string",
"default_tax": {
"name": "Beispiel",
"id": 42,
"value": 1.5,
"deleted": true,
"global_default": true,
"datev_tax_key": 1
},
"cost_center": {
"display_name": "Beispiel",
"id": 42,
"name": "Beispiel",
"number": "string",
"sphere": "string",
"is_system": true,
"is_active": true,
"deleted": true,
"created": "2026-10-15T09:30:00+02:00",
"updated": "2026-10-15T09:30:00+02:00"
},
"is_vat_deductible": true
}
}Get a single AccountingType
GET/api/invoice/accountingtypes/{identifier}
Path parameters
identifierrequiredstring |
Responses
200Get a single AccountingTypeAccountingType
Show fields (6)
idintegerPrimary key of the accounting type. Internal ID.
namestringrequiredName of the accounting type, for example course fee.
cancelled_namestringName used when an invoice of this type is canceled.
typestringrequiredType of the accounting type, for example invoice or credit note.
deletedbooleanThe accounting type is deleted.
default_expense_categoryExpenseCategory10Standard-EÜR-Kategorie für diesen Rechnungstyp (für Einnahmen-Mapping)
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.
curl --request GET \
--url https://your-instance.iw-erp.de/api/invoice/accountingtypes/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/accountingtypes/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/accountingtypes/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/accountingtypes/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/accountingtypes/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/accountingtypes/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/accountingtypes/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/invoice_accounting_type_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 InvoiceAccountingTypeController.get('42');
if (result.success) {
print(result.data);
}{
"name": "Beispiel",
"type": "string",
"id": 42,
"cancelled_name": "Beispiel",
"deleted": true,
"default_expense_category": {
"id": 42,
"eur_line_name": "Beispiel",
"color": "#3f5efb",
"name": "Beispiel",
"code": "string",
"eur_line_number": 1,
"category_type": "string",
"default_tax": {
"name": "Beispiel",
"id": 42,
"value": 1.5,
"deleted": true,
"global_default": true,
"datev_tax_key": 1
},
"cost_center": {
"display_name": "Beispiel",
"id": 42,
"name": "Beispiel",
"number": "string",
"sphere": "string",
"is_system": true,
"is_active": true,
"deleted": true,
"created": "2026-10-15T09:30:00+02:00",
"updated": "2026-10-15T09:30:00+02:00"
},
"is_vat_deductible": true
}
}Update an AccountingType
PUT/api/invoice/accountingtypes/{identifier}
Path parameters
identifierrequiredstring |
Request body application/json
dataAccountingTypeShow fields (6)
idintegerPrimary key of the accounting type. Internal ID.
namestringrequiredName of the accounting type, for example course fee.
cancelled_namestringName used when an invoice of this type is canceled.
typestringrequiredType of the accounting type, for example invoice or credit note.
deletedbooleanThe accounting type is deleted.
default_expense_categoryExpenseCategory10Standard-EÜR-Kategorie für diesen Rechnungstyp (für Einnahmen-Mapping)
Responses
200Update an AccountingTypeAccountingType
Show fields (6)
idintegerPrimary key of the accounting type. Internal ID.
namestringrequiredName of the accounting type, for example course fee.
cancelled_namestringName used when an invoice of this type is canceled.
typestringrequiredType of the accounting type, for example invoice or credit note.
deletedbooleanThe accounting type is deleted.
default_expense_categoryExpenseCategory10Standard-EÜR-Kategorie für diesen Rechnungstyp (für Einnahmen-Mapping)
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.
curl --request PUT \
--url https://your-instance.iw-erp.de/api/invoice/accountingtypes/42 \
--header 'content-type: application/json' \
--header 'x-iw-jwt-token: <TOKEN>' \
--data '
{
"data": {
"name": "Beispiel",
"type": "string",
"id": 42,
"cancelled_name": "Beispiel",
"deleted": true,
"default_expense_category": {
"id": 42,
"eur_line_name": "Beispiel",
"color": "#3f5efb",
"name": "Beispiel",
"code": "string",
"eur_line_number": 1
}
}
}
'const options = {
method: 'PUT',
headers: {'x-iw-jwt-token': '<TOKEN>', 'content-type': 'application/json'},
body: JSON.stringify({
data: {
name: 'Beispiel',
type: 'string',
id: 42,
cancelled_name: 'Beispiel',
deleted: true,
default_expense_category: {
id: 42,
eur_line_name: 'Beispiel',
color: '#3f5efb',
name: 'Beispiel',
code: 'string',
eur_line_number: 1
}
}
})
};
fetch('https://your-instance.iw-erp.de/api/invoice/accountingtypes/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/accountingtypes/42"
payload = { "data": {
"name": "Beispiel",
"type": "string",
"id": 42,
"cancelled_name": "Beispiel",
"deleted": True,
"default_expense_category": {
"id": 42,
"eur_line_name": "Beispiel",
"color": "#3f5efb",
"name": "Beispiel",
"code": "string",
"eur_line_number": 1
}
} }
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/accountingtypes/42', [
'body' => '{"data":{"name":"Beispiel","type":"string","id":42,"cancelled_name":"Beispiel","deleted":true,"default_expense_category":{"id":42,"eur_line_name":"Beispiel","color":"#3f5efb","name":"Beispiel","code":"string","eur_line_number":1}}}',
'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/accountingtypes/42"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
Content = new StringContent("{\"data\":{\"name\":\"Beispiel\",\"type\":\"string\",\"id\":42,\"cancelled_name\":\"Beispiel\",\"deleted\":true,\"default_expense_category\":{\"id\":42,\"eur_line_name\":\"Beispiel\",\"color\":\"#3f5efb\",\"name\":\"Beispiel\",\"code\":\"string\",\"eur_line_number\":1}}}")
{
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\":{\"name\":\"Beispiel\",\"type\":\"string\",\"id\":42,\"cancelled_name\":\"Beispiel\",\"deleted\":true,\"default_expense_category\":{\"id\":42,\"eur_line_name\":\"Beispiel\",\"color\":\"#3f5efb\",\"name\":\"Beispiel\",\"code\":\"string\",\"eur_line_number\":1}}}");
Request request = new Request.Builder()
.url("https://your-instance.iw-erp.de/api/invoice/accountingtypes/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/accountingtypes/42"
payload := strings.NewReader("{\"data\":{\"name\":\"Beispiel\",\"type\":\"string\",\"id\":42,\"cancelled_name\":\"Beispiel\",\"deleted\":true,\"default_expense_category\":{\"id\":42,\"eur_line_name\":\"Beispiel\",\"color\":\"#3f5efb\",\"name\":\"Beispiel\",\"code\":\"string\",\"eur_line_number\":1}}}")
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/invoice_accounting_type_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
import 'package:iw_erp_api/model/invoice_accounting_type.dart';
IwApiState().host = 'your-instance.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await InvoiceAccountingTypeController.put(InvoiceAccountingType.fromJson({
"name": "Beispiel",
"type": "string",
"id": 42,
"cancelled_name": "Beispiel",
"deleted": true,
"default_expense_category": {
"id": 42,
"eur_line_name": "Beispiel",
"color": "#3f5efb",
"name": "Beispiel",
"code": "string",
"eur_line_number": 1
}
}));
if (result.success) {
print(result.data);
}{
"name": "Beispiel",
"type": "string",
"id": 42,
"cancelled_name": "Beispiel",
"deleted": true,
"default_expense_category": {
"id": 42,
"eur_line_name": "Beispiel",
"color": "#3f5efb",
"name": "Beispiel",
"code": "string",
"eur_line_number": 1,
"category_type": "string",
"default_tax": {
"name": "Beispiel",
"id": 42,
"value": 1.5,
"deleted": true,
"global_default": true,
"datev_tax_key": 1
},
"cost_center": {
"display_name": "Beispiel",
"id": 42,
"name": "Beispiel",
"number": "string",
"sphere": "string",
"is_system": true,
"is_active": true,
"deleted": true,
"created": "2026-10-15T09:30:00+02:00",
"updated": "2026-10-15T09:30:00+02:00"
},
"is_vat_deductible": true
}
}