Η EMDI συνδέεται με οποιοδήποτε e-shop ή εξωτερική βάση δεδομένων μέσω λήψης αρχείων απλού κειμένου που είναι χωρισμένα με ερωτηματικά (csv). Σημειώνεται ότι υπάρχουν έτοιμες γέφυρες σε php για διάφορες δημοφιλείς πλατφόρμες e-shop, όπως το OpenCart, το CS-Cart, το Magento και το WordPress. Αυτές οι έτοιμες γέφυρες προσφέρουν μια ευέλικτη και εύκολη λύση για τη σύνδεση της EMDI με το αντίστοιχο e-shop, εξοικονομώντας σημαντικό χρόνο και προσπάθεια που θα απαιτούνταν για την ανάπτυξη προσαρμοσμένης λύσης. Οι έτοιμες γέφυρες μπορούν να ληφθούν από τον παρακάτω σύνδεσμο για κάθε αντίστοιχη πλατφόρμα e-shop.
https://www.sbzsystems.com/el/programmata-efarmoges/emdi-emporiki-diaxeirisi/ypostirixi-emdi-commercial-management/rythmiseis/gefyres-eshop/

Γέφυρα για σύνδεση με e-shop

Ένα παράδειγμα για τα αρχεία που πρέπει να παράγει το e-shop:

orderlist https://www.domain.com/neworders.asp
selectedorder https://www.domain.com/neworder.asp?id=
confirmorder https://www.domain.com/orderok.asp?docid=#docid&shipcomp=#shipcomp&voucherno=#voucherno&orderid=
cancelorder https://www.domain.com/cancelorder.asp?orderid=
modifiedcustomers https://www.domain.com/newclients.asp
customersconfirm https://www.domain.com/allclientsok.asp
modifiedproducts https://www.domain.com/newproducts.asp
productsconfirm https://www.domain.com/allproductsok.asp
productavailability https://www.domain.com/changequantity.asp?id=
quantityvariable &quantity=
resetdates
uploadproduct
uploadcustomer
redirect

 

 orderlist

Ο σύνδεσμος αναπαράγει μια λίστα csv που περιέχει τις παραγγελίες. Η κάθε γραμμή είναι μια παραγγελία.

Μορφή λίστας παραγγελιών (η σειρά των πεδίων δεν πρέπει να αλλάξει. Η πρώτη γραμμή αγνοείται.):

παράδειγμα:

Αν ο “ΚΩΔΙΚΟΣ ΠΕΛΑΤΗ” δεν συσχετίζεται με τη λίστα πελατών της EMDI τότε ο συσχετισμός γίνεται με βάση το ΑΦΜ που το αναζητά μέσα από το πεδίο “ΣΧΟΛΙΟ”. Επίσης από το πεδίο “ΧΡΗΣΤΗΣ” ορίζεται αυτόματα και ο χρήστης της EMDI.
Επίσης αν το “ΚΟΣΤΟΣ ΑΝΤΙΚΑΤΑΒΟΛΗΣ” είναι 0.01 τότε στην EMDI εισάγεται κανονικά γραμμή κόστους αντικαταβολής αλλά με μηδενική αξία.
Το νέο πεδίο Κατάσταση ορίζεις το που θα αποθηκεύεται στις ρυθμίσεις->Σύνδεση e-shop->Πεδίο κατάστασης σε πεδίο.

 confirmorder

Ενημερώνει το e-shop για τη πραγματοποίηση της παραγγελίας. Έτσι στη λίστα παραγγελιών της EMDI φαίνονται μόνο όσες εκκρεμούν. Η EMDI στέλνει τον αριθμό παραγγελίας.
Επίσης αποστέλλονται στις μεταβλητές:

orderid Αριθμός παραγγελίας e-shop
shipcomp Τρόπος αποστολής
voucherno Αριθμός αποστολής (voucher)
docid Αριθμός γραμμής παραστατικού. Αποστέλλεται από την EMDI ο αριθμός γραμμής παραστατικού

Έτσι σε οποιαδήποτε γέφυρα μπορούμε να πάρουμε τη τιμή:

 cancelorder

Ενημερώνει το e-shop για την ακύρωση της παραγγελίας. Έτσι στη λίστα παραγγελιών της EMDI φαίνονται μόνο όσες εκκρεμούν. Η EMDI στέλνει τον αριθμό παραγγελίας.

 selectedorder

Μορφή αρχείου προϊόντων παραγγελίας (η σειρά των πεδίων δεν πρέπει να αλλάξει. Η πρώτη γραμμή αγνοείται.):

παράδειγμα:

Αν στο τέλος του συνδέσμου υπάρχει “=” τότε η EMDI διαβάζει όλο το αρχείο. Σε αντίθετη περίπτωση διαβάζει μόνο τις γραμμές της επιλεγμένης παραγγελίας.
Η έκπτωση είναι ποσοστό.

 modifiedcustomers

Μορφή αρχείου πελατών (η σειρά των πεδίων δεν πρέπει να αλλάξει. Η πρώτη γραμμή αγνοείται.):

παράδειγμα:

 

Για πρόσθετα πεδία:

Στο πεδίο “ΠΡΟΣΘΕΤΑ ΠΕΔΙΑ” μπορούμε να συμπεριλάβουμε όλα τα πρόσθετα πεδία με τη μορφή:

Σαν διαχωριστικό μεταξύ των πεδίων χρησιμοποιούμε \n

Προσοχή, αν η μεταβλητή έχει κενά, πρέπει να αντικατασταθούν από το χαρακτήρα ‘_’.

παράδειγμα 1:

κώδικας :

*Ουσιαστικά βάζω στην μεταβλητή name2 να φέρει το ΕΑΝ και MPN στα προσαρμοσμένα πεδία που θέλω και μετά βάζω την μεταβλητή στο echo μετά το name1.

Αποτέλεσμα :

 

παράδειγμα 2:

 

Η χώρα για να μπορεί να καταχωρηθεί, πρέπει να ακολουθεί την επίσημη κωδικοποίηση alpha-2.

 

 modifiedproducts

Μορφή αρχείου προϊόντων (η σειρά των πεδίων δεν πρέπει να αλλάξει. Η πρώτη γραμμή αγνοείται.):

παράδειγμα:

Στη TIMH1 μπορείς να συμπληρώσεις άλλες 4 τιμές τιμοκαταλόγου:

Οπότε στη περίπτωση που θέλεις να συμπεριλάβεις και 1 ακόμα τιμή το παραπάνω παράδειγμα διαμορφώνεται ως εξής:

Πατώντας στις πωλήσεις της EMDI το πλήκτρο INS ανοίγει το παράθυρο με τις παραγγελίες.

Ανοίγοντας το παράθυρο καλούνται οι σύνδεσμοι “modifiedcustomers” και “modifiedproducts” και αυτόματα εισάγεται η λίστα πελατών και προϊόντων. Αν υπάρχουν αλλαγές καλούνται αντίστοιχα οι σύνδεσμοι “customersconfirm” και “productsconfirm” ώστε να ενημερωθεί το e-shop για τη λήψη τους.

Καλό είναι το e-shop να στέλνει πάντα τους νέους πελάτες και προϊόντα και όχι όλη τη λίστα. Παρόλα αυτά σε όλες τις περιπτώσεις εισάγονται μόνο οι διαφοροποιήσεις.

Μετά καλείται ο σύνδεσμος “orderlist” που φέρνει τη λίστα παραγγελιών.
Κάθε φορά που επιλέγεις παραγγελία στην αριστερή στήλη καλείται ο σύνδεσμος “selectedorder” ώστε να εμφανίσει τα προϊόντα της επιλεγμένης παραγγελίας.

Στη συνέχεια αφού επιλέξεις τη παραγγελία και κλείσεις το παράθυρο αυτόματα συμπληρώνεται το παραστατικό με όλα τα απαραίτητα στοιχεία, που έχει “τραβήξει” από το e-shop.

Όταν πατήσεις “καταχώρηση” στην EMDI τότε μόνο καλείται ο σύνδεσμος “confirmorder” που ενημερώνει το e-shop ότι η παραγγελία τιμολογήθηκε. Στη συνέχεια καλείται ο σύνδεσμος “productavailability” που  σε συνδυασμό με τη μεταβλητή “quantityvariable” στέλνει στο e-shop τη διαθεσιμότητα.

Για να τηρηθούν οι διαθεσιμότητες πρέπει να καταχωρείς τα τιμολόγια αγορών στην EMDI, αλλιώς αγνοήστε το σύνδεσμο.
Προσοχή: Ο κωδικός πελάτη στην EMDI πρέπει να περιέχει μόνο αριθμούς και κεφαλαίους χαρακτήρες.

Για να προσθέσουμε και κωδικό αγοράς, τότε το πεδίο του κωδικού χωρίζεται με |.

παράδειγμα:

Για πρόσθετα πεδία:

Στο πεδίο “ΠΕΡΙΓΡΑΦΗ2” μπορούμε να συμπεριλάβουμε όλα τα πρόσθετα πεδία με τη μορφή:

Σαν διαχωριστικό μεταξύ των πεδίων χρησιμοποιούμε \n

Αν κάτι θέλουμε να φαίνεται στην αναλυτική περιγραφή το γράφουμε στην αρχή και τελειώνουμε με \n πριν βάλουμε τα πρόσθετα πεδία.

Προσοχή, αν η μεταβλητή έχει κενά, πρέπει να αντικατασταθούν από το χαρακτήρα ‘_’.

παράδειγμα:

Σημαντικό: O κωδικός των προϊόντων πρέπει να είναι ακριβώς ίδιος στο e-shop και την EMDI.

 resetdates

Με το “productsconfirm” και “customersconfirm” αποθηκεύουμε στο e-shop την ημερομηνία λήψης από την EMDI.
Η επαναφορά σβήνει αυτές τις ημερομηνίες και έτσι με το “modifiedproducts” και “modifiedcustomers” έχουμε όλη τη λίστα.

 uploadproduct

Από την αποθήκη της EMDI πατώντας το πλήκτρο καταχώρηση αποστέλλεται με post το προϊόν και η φωτογραφία του.
Παράμετροι:

productid Κωδικός προϊόντος
productmpn Κωδικός προμηθευτή
title Τίτλος προϊόντος
descr Περιγραφή
price Τιμή με ΦΠΑ
sprice Αξία αγοράς
subcat Κωδικός γραμμής υποκατηγορίας
cat Κωδικός γραμμής κατηγορίας
tax Ποσοστό ΦΠΑ
cattitle Τίτλος κατηγορίας
subcattitle Τίτλος υποκατηγορίας
field_x Πρόσθετες μεταβλητές. Όπου x το όνομα της μεταβλητής π.χ. field_Μέγεθος
cprice_x Τιμές τιμοκαταλόγου. Όπου x το όνομα της μεταβλητής π.χ. cprice_Λιανική. Προσοχή, για να αποσταλεί η αντίστοιχη τιμή πρέπει ο τιμοκατάλογος να έχει ορισθεί στη λίστα ειδών αποθήκης
file Η κύρια φωτογραφία
file2,file2… Φωτογραφίες
weight Βάρος

Στις ρυθμίσεις->Σύνδεση e-shop->Με ΦΠΑ, ορίζουμε για το αν η τιμή περιλαμβάνει ΦΠΑ.

 uploadcustomer

 redirect

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

Όταν πατάει το κουμπί αυτό ο χρήστης γίνεται μία κλήση τύπου:
Από πελατολόγιο: https://www.domain.gr/redirectproduct.asp?productid=
Από αποθήκη: https://www.domain.gr/redirectproduct.asp?customerid=
Από πωλήσεις: https://www.domain.gr/redirectproduct.asp?orderid=