TravelExpenseCountryRate
Returns a list of all TravelExpenseCountryRate
GET/api/billing/travel/country_rates
Query parameters
idinteger | |
countryCodestring | ISO 3166-1 alpha-2 country code (e.g., DE, AT, FR, US) |
countryNamestring | Country name for display |
fullDayRatenumber | Per diem rate for full day (24 hours) |
partialDayRatenumber | Per diem rate for partial day (>8h or arrival/departure) |
accommodationRatestring | Optional accommodation rate limit (Uebernachtungspauschale) |
breakfastDeductionstring | Breakfast deduction amount (if applicable for this country) |
lunchDeductionstring | Lunch deduction amount |
dinnerDeductionstring | Dinner deduction amount |
currencystring | Currency for the rates (usually EUR) |
validFromstring | Date from which this rate is valid |
validUntilstring | Date until which this rate is valid (null = indefinitely) |
isActiveboolean | Is this rate active/available |
notesstring | Notes about the rate (e.g., source, special rules) |
createdstring | |
updatedstring | |
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 TravelExpenseCountryRate objectsarray<TravelExpenseCountryRate>
Show fields (16)
idintegerPrimary key of the travel expense country rate. Internal ID.
country_codestringrequiredISO 3166-1 alpha-2 country code (e.g., DE, AT, FR, US)
country_namestringrequiredCountry name for display
full_day_ratestringrequiredPer diem rate for full day (24 hours)
partial_day_ratestringrequiredPer diem rate for partial day (>8h or arrival/departure)
accommodation_ratestringOptional accommodation rate limit (Uebernachtungspauschale)
breakfast_deductionstringBreakfast deduction amount (if applicable for this country)
lunch_deductionstringLunch deduction amount
dinner_deductionstringDinner deduction amount
currencystringCurrency for the rates (usually EUR)
valid_fromstring (date-time)Date from which this rate is valid
valid_untilstring (date-time)Date until which this rate is valid (null = indefinitely)
is_activebooleanIs this rate active/available
notesstringNotes about the rate (e.g., source, special rules)
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/billing/travel/country_rates \
--header 'x-iw-jwt-token: <TOKEN>'const options = {method: 'GET', headers: {'x-iw-jwt-token': '<TOKEN>'}};
fetch('https://your-instance.iw-erp.de/api/billing/travel/country_rates', 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/billing/travel/country_rates"
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/billing/travel/country_rates', [
'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/billing/travel/country_rates"),
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/billing/travel/country_rates")
.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/billing/travel/country_rates"
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/travel_expense_country_rate_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 TravelExpenseCountryRateController.getAll();
if (result.success) {
print(result.data);
}[
{
"country_code": "string",
"country_name": "Beispiel",
"full_day_rate": "string",
"partial_day_rate": "string",
"id": 42,
"currency": "EUR",
"accommodation_rate": "string",
"breakfast_deduction": "string",
"lunch_deduction": "string",
"dinner_deduction": "string"
}
]Get a single TravelExpenseCountryRate
GET/api/billing/travel/country_rates/{identifier}
Path parameters
identifierrequiredstring |
Responses
200Returns a single TravelExpenseCountryRateTravelExpenseCountryRate
Show fields (16)
idintegerPrimary key of the travel expense country rate. Internal ID.
country_codestringrequiredISO 3166-1 alpha-2 country code (e.g., DE, AT, FR, US)
country_namestringrequiredCountry name for display
full_day_ratestringrequiredPer diem rate for full day (24 hours)
partial_day_ratestringrequiredPer diem rate for partial day (>8h or arrival/departure)
accommodation_ratestringOptional accommodation rate limit (Uebernachtungspauschale)
breakfast_deductionstringBreakfast deduction amount (if applicable for this country)
lunch_deductionstringLunch deduction amount
dinner_deductionstringDinner deduction amount
currencystringCurrency for the rates (usually EUR)
valid_fromstring (date-time)Date from which this rate is valid
valid_untilstring (date-time)Date until which this rate is valid (null = indefinitely)
is_activebooleanIs this rate active/available
notesstringNotes about the rate (e.g., source, special rules)
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/billing/travel/country_rates/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/billing/travel/country_rates/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/billing/travel/country_rates/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/billing/travel/country_rates/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/billing/travel/country_rates/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/billing/travel/country_rates/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/billing/travel/country_rates/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/travel_expense_country_rate_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 TravelExpenseCountryRateController.get('42');
if (result.success) {
print(result.data);
}{
"country_code": "string",
"country_name": "Beispiel",
"full_day_rate": "string",
"partial_day_rate": "string",
"id": 42,
"currency": "EUR",
"accommodation_rate": "string",
"breakfast_deduction": "string",
"lunch_deduction": "string",
"dinner_deduction": "string"
}Delete a TravelExpenseCountryRate (soft delete via isActive = false)
DELETE/api/billing/travel/country_rates/{identifier}
Path parameters
identifierrequiredstring |
Responses
default
curl --request DELETE \
--url https://your-instance.iw-erp.de/api/billing/travel/country_rates/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/billing/travel/country_rates/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/billing/travel/country_rates/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/billing/travel/country_rates/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/billing/travel/country_rates/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/billing/travel/country_rates/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/billing/travel/country_rates/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 package:http (no controller in the iw_erp_api package)
import 'package:http/http.dart' as http;
final response = await http.delete(
Uri.parse('https://your-instance.iw-erp.de/api/billing/travel/country_rates/42'),
headers: {'x-iw-jwt-token': '<TOKEN>'},
);
print(response.body);