Εισαγωγή

Σφάλματα

Κατά την επικοινωνία με τους διακομιστές του myDATA μπορεί να προκύψουν δύο είδη σφαλμάτων.

Τεχνικά σφάλματα

Τα τεχνικά σφάλματα χαρακτηρίζουν την κλήση ως μή επιτυχημένη και επιστρέφουν ένα από τα παρακάτω exceptions:

Firebed\AadeMyData\Exceptions\MyDataAuthenticationException

Αυτό το σφάλμα εμφανίζεται όταν δεν έχουν οριστεί τα διαπιστευτήρια user id ή το subscription key ή όταν τα διαπιστευτήρια user id και subscription key δεν είναι σωστά.

Firebed\AadeMyData\Exceptions\MyDataConnectionException

Αυτό το σφάλμα εμφανίζεται όταν δεν είναι δυνατή η σύνδεση με τον διακομιστή του myDATA.

Firebed\AadeMyData\Exceptions\MyDataException

Αφορά τα υπόλοιπα τεχνικά σφάλματα. Το σφάλμα περιέχει τον κωδικό σφάλματος και το μήνυμα σφάλματος.

Παράδειγμα χρήσης

use Firebed\AadeMyData\Exceptions\MyDataException;
use Firebed\AadeMyData\Exceptions\MyDataAuthenticationException;
use Firebed\AadeMyData\Exceptions\MyDataConnectionException;
use Firebed\AadeMyData\Http\SendInvoices;
use Firebed\AadeMyData\Models\Invoice;

try {
    $send = new SendInvoices();
    $send->handle(new Invoice());
} catch (MyDataConnectionException $connectionException) {
    // Σφάλμα επικοινωνίας με τον διακομιστή
    // - Δεν έχετε σύνδεση στο internet
    // - Υπάρχει πρόβλημα στον διακομιστή του myDATA
    // - Το endpoint URL είναι λάθος
} catch (MyDataAuthenticationException $authenticationException) {
    // Σφάλμα αυθεντικοποίησης, λάθος διαπιστευτήρια
} catch (MyDataException $myDataException) {
    // Γενικό τεχνικό σφάλμα
}

Όλα τα σφάλματα που προκύπτουν κατά την επικοινωνία με τον διακομιστή του myDATA κληρονομούν την κλάση Firebed\AadeMyData\Exceptions\MyDataException. Αυτό σημαίνει ότι μπορείτε να χρησιμοποιήσετε μόνο την κλάση MyDataException για να ανιχνεύσετε τα σφάλματα που προκύπτουν.

use Firebed\AadeMyData\Exceptions\MyDataException;
use Firebed\AadeMyData\Http\SendInvoices;
use Firebed\AadeMyData\Models\Invoice;

try {
    $send = new SendInvoices();
    $send->handle(new Invoice());
} catch (MyDataException $myDataException) {
    // - Δεν έχετε σύνδεση στο internet
    // - Υπάρχει πρόβλημα στον διακομιστή του myDATA
    // - Το endpoint URL είναι λάθος
    // - Σφάλμα αυθεντικοποίησης, λάθος διαπιστευτήρια
    // - Γενικό τεχνικό σφάλμα
    
    $statusCode = $myDataException->getCode();
    $message = $myDataException->getMessage();
}

Επιχειρησιακά Σφάλματα

Τα επιχειρησιακά σφάλματα προκύπτουν κατά την αποτυχία των επιχειρησιακών ελέγχων, λανθασμένα ΑΦΜ, λανθασμένα σύνολα παραστατικού, λανθασμένοι χαρακτηρισμοί εσόδων και εξόδων κ.λπ. Στην περίπτωση τους η κλήση θεωρείται τεχνικά επιτυχημένη (HTTP Response 200).

Υπάρχουν πάνω από 100 διαφορετικά επιχειρησιακά σφάλματα που μπορεί να επιστρέψει ο διακομιστής του myDATA. Μπορείτε να ανατρέξετε στο σχετικό PDF του myDATA για να δείτε τα επιχειρησιακά σφάλματα αναλυτικά.

Προηγούμενο
Χαρακτηρισμοί / Classifications
Επόμενο
Contributing