COD Reports
Εγκατάσταση - Αρχικές ρυθμίσεις
Μετά την τυπική εγκατάσταση μπορούμε να κάνουμε στο πρόσθετο μια ρύθμιση.

Το πρόσθετο διαβάζει από τα πρόσθετα των μεταφορικών τους τρόπους πληρωμής που έχουμε ορίσει ως αντικαταβολές. Αν για κάποιο λόγο θέλουμε να προσθέσουμε και κάποιον άλλον τον ορίζουμε εδώ.
Για να έχει δεδομένα μετά την εγκατάσταση και να μπορεί να χρησιμοποιήσει το πρόσθετο ο διαχειριστής από την πρώτη μέρα, υπάρχει το εργαλείο που δημιουργεί τις εγγραφές των αντικαταβολών για τις αποστολές των τελευταίων 60 ημερών.
Υποστηριζόμενα πρόσθετα
ACS
Speedex
Taxydromiki
BoxNow
EltaCourier
Όλα μετά την έκδοση 25.03.01 ή που έχουμε κάνει το patch που αναφέρουμε στο τέλος.
Καταγραφή αντικαταβολών
Όταν δημιουργούμε ένα voucher με κάποιο από τα υποστηριζόμενα πρόσθετα, τότε γίνεται μια εγγραφή στις αντικαταβολές. Επίσης, αν δημιουργήσουμε χειροκίνητα μια αποστολή σε παραγγελία που έχει τρόπο πληρωμής αντικαταβολή, τότε επίσης θα δημιουργηθεί εγγραφή στις αντικαταβολές.
Αν διαγράψουμε μια αποστολή παραγγελίας με αντικαταβολή, τότε θα διαγραφεί και η εγγραφή από τις αντικαταβολές.
Λίστα αντικαταβολών
Στην επιλογή Παραγγελίες>Αντικαταβολές βρίσκουμε τη λίστα των αντικαταβολών.

Τα δεδομένα που εμφανίζονται είναι:
IDTimestampημερομηνία που δημουργήθηκε η εγγραφήID Παραγγελίαςη συσχετιζόμενη παραγγελίαΦορέαςη μεταφορικήVoucherτο voucher που εκδόθηκεΠοσότο ποσό της αντικαταβολής (το σύνολο της παραγγελίας)ΡυθμίστηκεΑν εισπράχθηκε ή όχιΡυθμίστηκε στιςΠότε έγινε η είσπραξηΠοσό είσπραξηςτο ποσό που εισέπραξε η μεταφορική από τον πελάτηΔιαφοράΗ τυχόν διαφορά του ποσού είσπραξης από το σύνολο της παραγγελίας
Με την αναζήτηση δεξιά, μπορούμε να φιλτράρουμε τις εγγραφές με διάφορους τρόπους.

Αναφέρουμε ειδικά την αναζήτηση με ημερομηνία, γιατί μπορούμε να αναζητήσουμε σε δύο πεδία ημερομηνίας:
Παραγγελία, με βάση την ημερομηνία της παραγγελίαςΡυθμίστηκε στις, με βάση την ημερομηνία που έγινε η είσπραξη
Ανάλογα με το πεδίο που θα επιλέξουμε, η Περίοδος που θα ορίσουμε θα αφορά αυτό το πεδίο.
Όταν έχει επιλεγεί χρονική περίοδος από την αναζήτηση δεξιά, τότε εμφανίζονται κάτω από τη λίστα των εγγραφών και τα σύνολα για αυτή την περίοδο, ανά φορέα.

Αν επιλέξουμε εγγραφές, τότε εμφανίζονται οι ενέργειες που μπορούμε να κάνουμε σε αυτές.

Διαγραφή επιλεγμένωνδιαγράφονται οι εγγραφές των αντικαταβολών.Θέσε ως πλήρως τακτοποιημένο, ενημερώνει τις εγγραφές ως εισπραχθείσες την τρέχουσα ημερομηνία.Αφαίρεση πληρωμής, αφαιρεί από τις εγγραφές τα δεδομένα της είσπραξης και φαίνονται ξανά ως απλήρωτες.
Σε κάθε γραμμή υπάρχει η επιλογή Χειροκίνητη είσπραξη. Εμφανίζεται ο παρακάτω διάλογος
για να καταχωρήσουμε λεπτομερώς είσπραξη για αυτή την αντικαταβολή.

Καταχωρούμε το ποσό είσπραξης και την ημερομηνία.

Εισαγωγή αρχείου εισπράξεων
Στη λίστα των αντικαταβολών, πάνω δεξιά υπάρχει η επιλογή Εισαγωγή.

Επιλέγοντας τη, εμφανίζεται η παρακάτω σελίδα.

Επιλέγουμε το φορέα και το αρχείο από το δίσκο μας και στη συνέχεια Upload.
Οι πληροφορίες που περιέχονται στα αρχεία των φορέων είναι,
voucher
ημερομηνία είσπραξης
ποσό
Ονοματεπώνυμο παραλήπτη
Η εισαγωγή διαβάζει τις εγγραφές του αρχείου και για όσα voucher έχουμε εγγραφή για αντικαταβολή ενημερώνει τα πεδία. Στο τέλος μας δίνει όσα τυχόν voucher υπάρχουν στο αρχείο, αλλά δε βρέθηκε εγγραφή για να κάνουμε διερεύνηση.
Patch older courier addon versions
Θα δούμε τις αλλαγές για Elta, ίδιο πράγμα και στα υπόλοιπα.
Στο αρχείο func.php ψάχνουμε για το hook fn_slx_elta_change_order_status.
Εκεί για τη γραμμή
$ash->create($order_info, $voucherNo, 'eltacourier');
την κάνουμε
$shipment_id = $ash->create($order_info, $voucherNo, $carrier);
$isCod = $av->isCod($order_info);
fn_set_hook("slx_shipment_created", $order_info, $carrier,$shipment_id, $voucherNo, $isCod);
Στη συνέχεια στο αρχείο Slx/Elta/EltaClient.php προσθέτουμε το
public function isCod($order_info) {
$paymentIds = explode(',', Registry::get('addons.slx_elta.payment_id'));
return (in_array($order_info['payment_id'], $paymentIds)) && $order_info['total'] != 0;
}
Προαιρετικά στο ίδιο αρχείο
public function createBOL($order_info) {
$out = false;
/*$paymentIds = explode(',', Registry::get('addons.slx_elta.payment_id'));
$cod = (in_array($order_info['payment_id'], $paymentIds)) && $order_info['total'] != 0;
*/
$cod = $this->isCod($order_info);