Euroins — Error codes¶
Όταν το Estia.API επιστρέφει 422 Provider business error με provider: "Euroins",
το providerErrorMessage περιέχει το upstream error message. Παρακάτω τα codes που
μπορούν να εμφανιστούν.
Ο Euroins (Infopad) είναι SOAP provider. Κάθε ServiceResponse περιέχει property
Errors με entries τύπου ServiceError που έχουν τα πεδία Code, Message,
Level. Ο EuroinsErrorHelper.ThrowIfBusinessError ελέγχει το Level enum και
πετάει ProviderBusinessException όταν Level >= Critical (2).
Error envelope shape¶
ServiceError {
Code: int // upstream Euroins code (όχι enumerated public)
Message: string // human-readable message
Level: enum {
Information = 0, // δεν μπλοκάρει
Warning = 1, // δεν μπλοκάρει
Critical = 2, // → ProviderBusinessException → 422
Fatal = 3, // → ProviderBusinessException → 422
}
}
providerErrorMessage= τοMessageτου πρώτου error μεLevel >= 2providerDetailedMessage=ErrorCode: {code}, Level: {level}
Codes¶
Το Level enum καθορίζει αν ένα error μπλοκάρει το request. Ο Euroins δεν
δημοσιεύει stable, enumerated Code values στο public surface — οι αριθμοί
είναι runtime hints για observability, όχι contractual identifiers.
| Level | Numeric | Meaning | Consumer action |
|---|---|---|---|
Information |
0 | Πληροφοριακό μήνυμα | Δεν θρου-άρει — logging only |
Warning |
1 | Soft validation issue | Δεν θρου-άρει — logging only |
Critical |
2 | Business rule rejection — ProviderBusinessException → 422 |
Διαβάστε providerErrorMessage· διορθώστε το request |
Fatal |
3 | Σοβαρό upstream business error — ProviderBusinessException → 422 |
Συνήθως απαιτεί επικοινωνία με πάροχο |
Transport-level failures (WCF FaultException, CommunicationException,
EndpointNotFoundException, TimeoutException) μαπάρονται μέσω
EuroinsErrorHelper.Translate σε ProviderApiException → 502 ή 504.
Code field
Το Code field στο ServiceError εκτίθεται στο providerDetailedMessage ως
ErrorCode: {code} για debugging/correlation. Μην το χρησιμοποιείτε ως
programmatic key — δεν είναι documented από τον πάροχο.
Παράδειγμα 422 response¶
{
"type": "https://docs.insurancegateway.gr/errors/provider-business",
"title": "Provider business error",
"status": 422,
"detail": "Euroins declined: invalid vehicle registration.",
"instance": "/euroins/applications/submit",
"provider": "Euroins",
"providerErrorMessage": "Vehicle registration ABC-1234 not found in registry.",
"providerDetailedMessage": "ErrorCode: 5021, Level: Critical",
"category": "business",
"correlationId": "9f3a2b1c-4d5e-6789-abcd-ef0123456789"
}