Η χειροκίνητη αποστολή τιμολογίων στο Dolibarr ERP/CRM είναι λειτουργική αλλά χρονοβόρα, ειδικά όταν πρόκειται για μεγάλους όγκους ή επαναλαμβανόμενες χρεώσεις. Η αυτοματοποίηση αυτής της διαδικασίας μέσω προγραμματισμένων εργασιών cron μπορεί να εξοικονομήσει σημαντικό χρόνο και να εξαλείψει το ανθρώπινο λάθος. Αυτός ο οδηγός παρέχει μια πλήρη επεξήγηση για τη ρύθμιση της αυτόματης παράδοσης τιμολογίων μέσω email στο Dolibarr χρησιμοποιώντας το cron, χωρίς να βασίζεστε σε πρόσθετα επί πληρωμή ή εξωτερικά εργαλεία αυτοματισμού.

Πίνακας περιεχομένων

  1. Εισαγωγή στην Αυτοματοποίηση Τιμολογίων στο Dolibarr

  2. Οφέλη από την αυτοματοποίηση της αποστολής τιμολογίων μέσω email

  3. Κατανόηση της αρχιτεκτονικής και του συστήματος ηλεκτρονικού ταχυδρομείου του Dolibarr

  4. Απαιτήσεις για αυτοματοποίηση βάσει Cron

  5. Επισκόπηση του Dolibarr CLI και του REST API

  6. Προετοιμασία του περιβάλλοντος Dolibarr σας

  7. Δημιουργία τιμολογίων μέσω προγραμματισμού

  8. Σήμανση τιμολογίων ως επικυρωμένων

  9. Δημιουργία εγγράφων PDF μέσω γραμμής εντολών ή δέσμης ενεργειών

  10. Αυτόματη αποστολή τιμολογίων μέσω email

  11. Σύνταξη ενός προσαρμοσμένου σεναρίου για τη διαχείριση της ροής εργασίας

  12. Ρύθμιση μιας εργασίας Cron για προγραμματισμένη εκτέλεση

  13. Καταγραφή, Διαχείριση Σφαλμάτων και Ειδοποιήσεις

  14. Ασφάλεια της εγκατάστασης αυτοματισμού σας

  15. Τελικές Σκέψεις και Βέλτιστες Πρακτικές


1. Εισαγωγή στην Αυτοματοποίηση Τιμολογίων στο Dolibarr

Το Dolibarr παρέχει ισχυρά εργαλεία για τη δημιουργία, την επικύρωση και την παράδοση τιμολογίων μέσω email. Ωστόσο, η άμεση λειτουργικότητα απαιτεί χειροκίνητες ενέργειες. Για επιχειρήσεις που δημιουργούν δεκάδες ή εκατοντάδες τιμολόγια ημερησίως ή μηνιαίως, η αυτοματοποίηση αυτών των βημάτων δεν είναι απλώς βολική - είναι απαραίτητη για την επιχειρησιακή αποτελεσματικότητα.

Αυτός ο οδηγός εστιάζει στην αυτοματοποίηση ολόκληρου του κύκλου: από τον εντοπισμό τιμολογίων έτοιμων προς αποστολή, τη δημιουργία των αντίστοιχων εγγράφων PDF και την αποστολή τους μέσω email στους πελάτες—ενεργοποιείται μέσω μιας προγραμματισμένης εργασίας cron.


2. Οφέλη από την αυτοματοποίηση της αποστολής τιμολογίων μέσω email

Η αυτοματοποιημένη αποστολή τιμολογίων μέσω email προσφέρει πολλά βασικά πλεονεκτήματα:

  • Εξοικονομεί χρόνο και χειρωνακτική εργασία

  • Μειώνει τον κίνδυνο χαμένων τιμολογίων

  • Ενισχύει τη συνέπεια και τον επαγγελματισμό

  • Εξασφαλίζει την έγκαιρη παράδοση, ειδικά για επιχειρήσεις που βασίζονται σε συνδρομές

  • Ελαχιστοποιεί το ανθρώπινο λάθος στη ροή εργασίας τιμολόγησης

Σε συνδυασμό με αρχεία καταγραφής και ειδοποιήσεις, σας παρέχει επίσης δυνατότητα ιχνηλασιμότητας για κάθε τιμολόγιο που αποστέλλεται.


3. Κατανόηση της αρχιτεκτονικής και του συστήματος email του Dolibarr

Το σύστημα email της Dolibarr λειτουργεί είτε μέσω:

  • Η ενσωματωμένη PHP mail() λειτουργία (δεν συνιστάται για παραγωγή)

  • Ρύθμιση παραμέτρων SMTP (συνιστάται ιδιαίτερα για έλεγχο ταυτότητας και δυνατότητα παράδοσης)

Τα τιμολόγια στο Dolibarr ακολουθούν αυτόν τον κύκλο ζωής:

  1. Σχέδιο (δεν ισχύει ακόμη)

  2. Επικυρωμένο

  3. Κατάσταση πληρωμένης / μη πληρωμένης

Τα email μπορούν να αποσταλούν μόνο για επικυρωμένο τιμολόγια. Η δημιουργία PDF συνδέεται με πρότυπα τιμολογίων που βρίσκονται στο /htdocs/core/modules/facture/doc/.


4. Απαιτήσεις για αυτοματοποίηση βάσει Cron

Για να αυτοματοποιήσετε την αποστολή τιμολογίων μέσω email:

  • Ένας διακομιστής με πρόσβαση γραμμής εντολών (προτιμάται Linux)

  • Μια λειτουργική εγκατάσταση Dolibarr με πρόσβαση CLI/API

  • Το SMTP έχει ρυθμιστεί σωστά στο Dolibarr

  • Βασικές γνώσεις scripting bash ή PHP/Python

  • Πρόσβαση στο σύστημα αρχείων (για PDF)

Βεβαιωθείτε ότι η έκδοση Dolibarr που χρησιμοποιείτε είναι ενημερωμένη (συνιστάται έκδοση 12 ή νεότερη).


5. Επισκόπηση του Dolibarr CLI και του REST API

Το Dolibarr δεν προσφέρει επίσημα εργαλεία CLI έτοιμα προς χρήση, αλλά μπορείτε να επικοινωνήσετε μαζί του χρησιμοποιώντας:

  • REST API (συνιστάται για αρθρωτή λειτουργία και απομακρυσμένη πρόσβαση)

  • Άμεσες κλήσεις σεναρίων PHP εντός του πλαισίου Dolibarr

Το REST API επιτρέπει την αλληλεπίδραση με τιμολόγια, τρίτους και έγγραφα.

Παράδειγμα αιτήματος GET για ανάκτηση τιμολογίων:

curl -X GET "https://yourdomain.com/api/index.php/invoices?DOLAPIKEY=yourapikey"

6. Προετοιμασία του περιβάλλοντος Dolibarr σας

Βήματα προετοιμασίας:

  1. Ενεργοποίηση η Μονάδα API στην ενότητα Ρύθμιση > Ενότητες > Υπηρεσίες Web/API

  2. Δημιουργήστε ένα κλειδί API για έναν χρήστη με πρόσβαση σε τιμολόγια και τρίτους

  3. Ρύθμιση SMTP στην ενότητα Ρύθμιση > Ηλεκτρονικό ταχυδρομείο > Ρύθμιση ηλεκτρονικού ταχυδρομείου

  4. Δοκιμή δημιουργίας PDF και παράδοσης μέσω email χειροκίνητα

Επιβεβαιώστε ότι μπορείτε:

  • Δημιουργήστε ένα τιμολόγιο σε μορφή PDF

  • Αποστολή email με συνημμένο PDF


7. Δημιουργία Τιμολογίων μέσω Προγραμματισμού

Για να αυτοματοποιήσετε, πρέπει να δημιουργήσετε νέα τιμολόγια ή να εντοπίσετε υπάρχοντα που είναι έτοιμα για αποστολή.

Δημιουργία μέσω API:

POST https://yourdomain.com/api/index.php/invoices
{
  "socid": 12,
  "lines": [
    {"desc": "Service Plan A", "subprice": 100, "qty": 1}
  ],
  "date": "2025-05-01",
  "cond_reglement_id": 1,
  "mode_reglement_id": 2
}

Μετά τη δημιουργία, το τιμολόγιο βρίσκεται σε λειτουργία προσχεδίου.


8. Σήμανση Τιμολογίων ως Επικυρωμένων

Για να στείλετε ένα τιμολόγιο, πρέπει να επικυρωθεί. Χρησιμοποιήστε αυτό το τελικό σημείο:

POST /api/index.php/invoices/{id}/validate

Αυτό ενεργοποιεί την εσωτερική αλλαγή κατάστασης και προετοιμάζει το τιμολόγιο για email.

Ενδέχεται επίσης να χρειαστεί να δημιουργήσετε το PDF, εάν δεν έχει δημιουργηθεί ακόμα.


9. Δημιουργία εγγράφων PDF μέσω γραμμής εντολών ή δέσμης ενεργειών

Τα τιμολόγια συνήθως δημιουργούνται ως PDF χρησιμοποιώντας πρότυπα όπως crabe or azur.

Για να αυτοματοποιήσετε τη δημιουργία PDF:

  1. Χρησιμοποιήστε το API: POST /api/index.php/invoices/{id}/builddoc?model=azur

  2. Ή εκτελέστε ένα προσαρμοσμένο σενάριο PHP στη ρίζα του Dolibarr:

require 'main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php';

$invoice = new Facture($db);
$invoice->fetch($invoice_id);
$invoice->generateDocument('azur', $langs);

10. Αυτόματη αποστολή τιμολογίων μέσω email

Αποστολή τιμολογίων μέσω API:

POST /api/index.php/invoices/{id}/sendbymail

Με ωφέλιμο φορτίο JSON:

{
  "email_from": "billing@company.com",
  "email_to": "client@example.com",
  "subject": "Your Invoice",
  "message": "Please find attached your invoice.",
  "trackid": "INV-202505"
}

Συγουρεύομαι:

  • Το τιμολόγιο έχει μια έγκυρη διεύθυνση ηλεκτρονικού ταχυδρομείου συνδεδεμένη με το τρίτο μέρος

  • Το τιμολόγιο έχει επικυρωθεί και έχει δημιουργηθεί ένα PDF


11. Σύνταξη ενός προσαρμοσμένου σεναρίου για τη διαχείριση της ροής εργασίας

Χρησιμοποιήστε PHP, Python ή bash. Ακολουθεί μια απλοποιημένη ψευδο-λογική στην Python:

for invoice in fetch_draft_invoices():
    validate_invoice(invoice['id'])
    generate_pdf(invoice['id'])
    send_email(invoice['id'], invoice['email'])

Βεβαιωθείτε ότι κάθε βήμα ελέγχει το προηγούμενο αποτέλεσμα πριν προχωρήσετε. Καταγράψτε τα αποτελέσματα.


12. Ρύθμιση μιας εργασίας Cron για προγραμματισμένη εκτέλεση

Σε Linux, επεξεργαστείτε το crontab:

crontab -e

Προσθήκη:

0 8 * * * /usr/bin/python3 /path/to/send_invoices.py >> /var/log/dolibarr_invoice.log 2>&1

Αυτό εκτελεί το σενάριο καθημερινά στις 8 π.μ. και καταγράφει την έξοδο.


13. Καταγραφή, Διαχείριση Σφαλμάτων και Ειδοποιήσεις

Το σενάριό σας θα πρέπει:

  • Εγγραφή αρχείων καταγραφής ανά εκτέλεση

  • Χειρισμός σφαλμάτων με ομαλό τρόπο (π.χ. μη προσβάσιμο API, κακόβουλο email)

  • Αποστολή ειδοποιήσεων σε περίπτωση ανίχνευσης μαζικής βλάβης

Χρησιμοποιήστε την Python logging ενότητα ή logrotate σε Linux για τη διαχείριση αρχείων καταγραφής.


14. Ασφάλιση της εγκατάστασης αυτοματισμού σας

Βέλτιστες πρακτικές:

  • Χρήση .env ή κρυπτογραφημένα αρχεία ρυθμίσεων για κλειδιά API

  • Ορισμός δικαιωμάτων σε σενάρια και αρχεία καταγραφής

  • Χρήση HTTPS για όλες τις αλληλεπιδράσεις API

  • Παρακολούθηση αρχείων καταγραφής cron για μη εξουσιοδοτημένες επεξεργασίες

Εξετάστε το ενδεχόμενο εκτέλεσης σεναρίων αυτοματοποίησης με έναν αποκλειστικό χρήστη με χαμηλά δικαιώματα.


15. Τελικές σκέψεις και βέλτιστες πρακτικές

Η αυτοματοποίηση της παράδοσης τιμολογίων μέσω email στο Dolibarr εξοικονομεί χρόνο, ενισχύει την ακρίβεια και βελτιώνει την εμπειρία του πελάτη. Με έναν συνδυασμό του REST API, σωστής δημιουργίας σεναρίων και προγραμματισμένων εργασιών cron, οι επιχειρήσεις μπορούν να εξαλείψουν μια κουραστική διοικητική εργασία.

Σύνοψη βέλτιστων πρακτικών:

  • Να επικυρώνετε πάντα τα τιμολόγια πριν τα στείλετε μέσω email

  • Βεβαιωθείτε ότι το SMTP έχει ρυθμιστεί σωστά

  • Διατήρηση σαφών αρχείων καταγραφής και αναφοράς σφαλμάτων

  • Ξεκινήστε με μη αυτόματες δοκιμές πριν από την αυτοματοποίηση

  • Ασφαλίστε πλήρως το περιβάλλον σας