Errors and status codes
Internal Validation
Internal validation errors occur when the data sent in a request does not conform to the expected format or schema defined by the API. For instance, if a field expects a specific type of value, such as a particular enumeration (e.g., "1" for Herr, "2" for Frau, "3" for Divers) or a required structure, any discrepancy from this will trigger a validation error.
External Validation
In case the external validation via ERiC/ELSTER fails, the error message can be retrieved via the endpoint Download ERiC/ELSTER transmission XML. Note that the XML may contain several errors.
Important: The XML is the raw response sent by ERiC/ELSTER. The fiskaly SIGN DE x Submission API does not interpret the response.
Status 2xx
Status codes in the 200-299 range indicate success.
Status 4xx
Status codes in the 400-499 range indicate errors that have been caused by the requesting application (e.g., a malformed request body has been sent). Retrying such requests with the same request body is pointless and will result in the same status code again. Some 4xx errors can be handled programmatically. The error response is in JSON format and is structured like this:
{
"status_code": 400,
"error": "Bad Request",
"code": "E_SOME_ERROR",
"message": "Something bad happened"
}
The response will contain an error code or other information that reveals the reason for the error. Change the request accordingly before retrying. Below you can find the most frequent errors and how to fix them.
401
UnauthorizedE_UNAUTHORIZED_ACCESS
- Authenticate API
403
ForbiddenE_ACCESS_FORBIDDEN
404
Resource does not existE_ESTABLISHMENT_NOT_FOUND
E_TAXPAYER_NOT_FOUND
E_TAXPAYER_ADDRESS_NOT_FOUND
E_TAXPAYER_PERSON_NOT_FOUND
E_SUBMISSION_NOT_FOUND
E_CLIENT_NOT_FOUND
E_CLIENT_ADDITIONAL_DATA_NOT_FOUND
409
Conflict423
LockedE_LOCKED_RESOURCE
Status 5xx
Status codes in the 500-599 range indicate errors on the server side. These errors can be considered temporary.