Skip to main content

Identifiers

Most resource and reference identifiers use a 24-character hexadecimal string. Treat every ID as opaque and store it exactly as returned.
Do not derive creation time, tenant ownership, ordering, or resource type from an identifier.

Timestamps

Public timestamps use ISO 8601 UTC values ending in Z:
  • Preserve the instant in UTC in logs and checkpoints.
  • Do not remove the trailing Z.
  • createdAtFrom and createdAtTo are inclusive bounds.

Payroll months

Payroll document periods use YYYY-MM:
startMonth is the first covered month and endMonth is the last covered month according to document metadata.

Country codes

countryCode uses an uppercase two-character country or territory code, for example:

Monetary values in order products

Order product VAT and pricing values are returned as decimal strings, not as integer-cent fields:
Apply the following rules:
  • Preserve the returned precision.
  • Parse monetary values with an exact decimal type when calculations are required; do not use binary floating-point arithmetic.
  • vatRate is a decimal percentage string.
  • vatRate and grossAmount use two decimal places; netAmount uses four decimal places.
  • grossService and netService are nullable decimal strings with two decimal places.
  • service is nullable; the provider schema uses null for an accessory where the service flag does not apply.
  • model, manufacturerName, and articleGroupName are nullable strings.
  • The former description, rateInCents, and serviceRateInCents fields are no longer part of OrderProduct.

Enums

Enum values are case-sensitive. Examples include: Clients should not fail merely because a response contains an additive enum value introduced by a compatible contract update. Log and surface unknown values for mapping review.

Null, omission, and empty string

Files

Incident uploads accept image/* or application/pdf under the multipart field uploads, subject to the documented file-count and complete-body limits. Download endpoints return the media type documented by the response.
Last modified on August 28, 2026