συγχαρητήρια για την εξαιρετική τεχνική δουλειά που έχετε κάνει και ένα απίστευτο προϊόν που τόσο καιρό περιμέναμε για την Ελληνική αγορά.
Με το παρόν και κατόπιν αναλυτικής μελέτης και χρήσης του API για ενσωμάτωση Viva πληρωμών σε ιστότοπό μας, καταθέτω κάποια σχόλιά μας, σε περίπτωση που το κρίνετε χρήσιμο. Όπως και να έχει και τώρα που εξοικειωθήκαμε, σίγουρα θα το επιλέγουμε σε όλα τα επόμενα eshop μας! :-)
1) Βρήκαμε την δυνατότητα ενσωμάτωσης πληρωμών από την σελίδα σας: https://www.vivawallet.com/el-gr/business/pay-with-vivawallet
Στην σελίδα λέει "Ενσωματώστε τη «Πληρωμή με Viva Wallet» στην ιστοσελίδα σας εύκολα σε μία μόλις γραμμή κώδικα! ". Από αυτό θεωρήσαμε ότι θα κάναμε απλά ένα copy paste και έτσι επιλέξαμε να ασχοληθούμε με την ενσωμάτωση.
2) Στην πράξη και πηγαίνωντας στις αναλυτικές προδιαγραφές, καταλαβαίνουμε ότι η ενσωμάτωση δεν γίνεται "εύκολα και με μια γραμμή κώδικα". Επιπρόσθετα, στην σελίδα των προδιαγραφών https://github.com/VivaPayments/API/wiki/Pay-with-Viva-Wallet, στην ενότητα "STEP 2: Make the charge", έχει ένα παράδειγμα και όχι αναλυτικές προδιαγραφές. Το παράδειγμα από μόνο του αφήνει έξω από την διαδικασία ενσωμάτωσης: α) την χρήση REST Client, β) την διαδικασία authentication, γ) την διαδικασία δημιουργίας API και Source Code, δ) την χρήση του demo environment για να γίνει testing του integration.
3) Προσπαθώντας να βρούμε -δομημένη- πληροφορία και end-to-end οδηγίες, καλέσαμε το τεχνικό support. Αναφέραμε ότι ζητάμε ολοκληρωμένες οδηγίες για την εγκατάσταση και μας δώσανε εξειδικευμένο αριθμό Viva Support που ασχολείται μόνο με αυτά τα θέματα. Καλέσαμε εκεί και μας είπανε ότι η Viva δεν παρέχει καμία υποστήριξη σε τέτοια θέματα και ότι δεν έχει ολοκληρωμένο οδηγό. Μας συμβούλεψε να πάμε στο GitHub page και να ανοίξουμε αίτημα τεχνικής υποστήριξης από την ειδική φόρμα. Ρωτήσαμε τι σημαίνει "αίτημα τεχνικής υποστήριξης από την ειδική φόρμα" και μας ενημερώσανε ότι εννούν να ανοίξουμε ένα GitHub issue. Ρωτήσαμε αν υπάρχει προσωπικό που ασχολείται με τα issues και εξυπηρετεί το κοινό και μας είπαν ότι εξαρτάται γιατί η Viva δεν παρέχει υποστήριξη σε τέτοια θέματα.
4) Επιστρέψαμε στην αρχική σελίδα του GitHub αυτή την φορά και διαβάσαμε αναλυτικά τα πάντα. Βρήκαμε κάποιες αναφορές σε authentication οδηγίες που όμως δεν καθορίζαν λεπτομέρειες στα headers των API calls, ούτε και σημαντικά πεδία όπως το Source Code.
5) Προσπαθήσαμε να βγάλουμε άκρη με τα παραδείγματα κώδικα. Δυστυχώς δεν υπήρχε παράδειγμα για Viva Wallet Payment μέθοδο. Με κόπο και διασταυρώνοντας την λογική διαφόρων σελιδών, διαπιστώσαμε ότι ο φάκελος με τίτλο "Create order", αφορούσε την μέθοδο πληρωμής "Redirection". Επίσης με κόπο και πολύ πειραματισμό συμπεράναμε ότι το "create order" sample code, δεν ήταν απλά ένα συγκεκριμένο function του API, αλλά παρείχε ολοκληρωμένο παράδειγμα προς χρήση, για την μέθοδο πληρωμής "Redirection".
Συνοψίζοντας:
Το μέσο web agency με μέση γνώση χρήσης RESTAPIs που θέλει να ενσωματώσει την πληρωμή "Viva Wallet Payments" για έναν πελάτη τους, πληροφορείται αυτή την στιγμή από τον εμπορικό ιστότοπο της Viva ότι είναι μια γρήγορη και εύκολη διαδικασία, που απαιτεί απλά copy-paste μια γραμμή κώδικα, κάτι το οποιό δεν ισχύει. Χρειάζεται αναλυτικό διάβασμα, πειραματισμό και αρκετές γραμμές κώδικα που πρέπει να γράψει.
Οι αναλυτικές προδιαγραφές που παραπέμπει το εμπορικό site, δεν είναι αναλυτικές. Απεναντίας οι προδιαγραφές είναι γενικές συνόψεις που δεν συνδέονται μεταξύ τους και δεν δείχνουν όλα τα βήματα, δομημένα και οργανωμένα. Ο αναγνώστης πρέπει να κάνει cross-reference και ανακαλύψει όλες τις λεπτομέρειες που χρειάζεται (να πάρει API authentication sample από τα samples, να καταλάβει ότι πρέπει να στήσει Source Code, να καταλάβει ότι πρέπει να στήσει demo account, κτλ )
Στα δείγματα κώδικα, δεν μπορεί να καταλάβει κανείς που υπάρχει κώδικας για "Redirection" μέθοδο και "Viva Wallet Payments" μέθοδο.
Από τις 4 ώρες που θα χρειαστεί να επικοινωνήσει με την Viva, να διαβάσει αναλυτικά, να πειραματιστεί και να πετύχει το integration, οι 3,5 ώρες είναι για να συνδέσει τα "dots".
Ελπίζω το παρόν issue, να φανεί χρήσιμο.
Με συγχωρείτε εκ των προτέρων, αν τελικά έχω κάνει κάποιο σφάλμα και υπάρχει όντως αναλυτικός και δομημένος οδηγός για κάθε περίπτωση, ή εάν η Viva δηλώνει κάπου στην διαφήμιση της υπηρεσίας ότι οι developers θα πρέπει να μελετήσουν γιατί δεν προσφέρεται support σε τέτοια ζητήματα.
UPDATE/EDIT
Παρέλειψα και διάφορες λεπτομέρειες που θα ήταν χρήσιμες όπως:
H μέθοδος "Native Checkout" απαιτεί SSL και HTTPS, κάτι που δεν αναφέρεται πουθενά και προκύπτει στην πράξη. Λογικό φυσικά που χρειάζεται..
Η μέθοδος "Redirection" επιστρέφει στα "success" και "failure" pages δεδομένα μέσω GET μεταβλητών, ενώ τα περισσότερα payment gateways (πχ των τραπεζών) δουλεύουν με POST. Οι περισσότερες πλατφόρμες με e-shop (magento, woocommerce, κτλ), κατά 90% βγάζουν error σε αυτή την περίπτωση γιατί έχουν SEF URLs που απορίπτουν URL query μεταβλητές.
Αν η Viva κάνει tracking του customer feedback μπορούμε να σας γράψουμε αναλυτικά.
Αγαπητέ candreikos
Ευχαριστούμε πολύ για τα σχόλια.
Ετοιμάζουμε νέο live documentation, οπότε κάθε σχόλιο για ελλείψεις/προτάσεις είναι φυσικά ευπρόσδεκτο.
Καλή συνέχεια
Αγαπητοί/ές συνεργάτες από την Viva Services,
συγχαρητήρια για την εξαιρετική τεχνική δουλειά που έχετε κάνει και ένα απίστευτο προϊόν που τόσο καιρό περιμέναμε για την Ελληνική αγορά.
Με το παρόν και κατόπιν αναλυτικής μελέτης και χρήσης του API για ενσωμάτωση Viva πληρωμών σε ιστότοπό μας, καταθέτω κάποια σχόλιά μας, σε περίπτωση που το κρίνετε χρήσιμο. Όπως και να έχει και τώρα που εξοικειωθήκαμε, σίγουρα θα το επιλέγουμε σε όλα τα επόμενα eshop μας! :-)
1) Βρήκαμε την δυνατότητα ενσωμάτωσης πληρωμών από την σελίδα σας: https://www.vivawallet.com/el-gr/business/pay-with-vivawallet Στην σελίδα λέει "Ενσωματώστε τη «Πληρωμή με Viva Wallet» στην ιστοσελίδα σας εύκολα σε μία μόλις γραμμή κώδικα! ". Από αυτό θεωρήσαμε ότι θα κάναμε απλά ένα copy paste και έτσι επιλέξαμε να ασχοληθούμε με την ενσωμάτωση.
2) Στην πράξη και πηγαίνωντας στις αναλυτικές προδιαγραφές, καταλαβαίνουμε ότι η ενσωμάτωση δεν γίνεται "εύκολα και με μια γραμμή κώδικα". Επιπρόσθετα, στην σελίδα των προδιαγραφών https://github.com/VivaPayments/API/wiki/Pay-with-Viva-Wallet, στην ενότητα "STEP 2: Make the charge", έχει ένα παράδειγμα και όχι αναλυτικές προδιαγραφές. Το παράδειγμα από μόνο του αφήνει έξω από την διαδικασία ενσωμάτωσης: α) την χρήση REST Client, β) την διαδικασία authentication, γ) την διαδικασία δημιουργίας API και Source Code, δ) την χρήση του demo environment για να γίνει testing του integration.
3) Προσπαθώντας να βρούμε -δομημένη- πληροφορία και end-to-end οδηγίες, καλέσαμε το τεχνικό support. Αναφέραμε ότι ζητάμε ολοκληρωμένες οδηγίες για την εγκατάσταση και μας δώσανε εξειδικευμένο αριθμό Viva Support που ασχολείται μόνο με αυτά τα θέματα. Καλέσαμε εκεί και μας είπανε ότι η Viva δεν παρέχει καμία υποστήριξη σε τέτοια θέματα και ότι δεν έχει ολοκληρωμένο οδηγό. Μας συμβούλεψε να πάμε στο GitHub page και να ανοίξουμε αίτημα τεχνικής υποστήριξης από την ειδική φόρμα. Ρωτήσαμε τι σημαίνει "αίτημα τεχνικής υποστήριξης από την ειδική φόρμα" και μας ενημερώσανε ότι εννούν να ανοίξουμε ένα GitHub issue. Ρωτήσαμε αν υπάρχει προσωπικό που ασχολείται με τα issues και εξυπηρετεί το κοινό και μας είπαν ότι εξαρτάται γιατί η Viva δεν παρέχει υποστήριξη σε τέτοια θέματα.
4) Επιστρέψαμε στην αρχική σελίδα του GitHub αυτή την φορά και διαβάσαμε αναλυτικά τα πάντα. Βρήκαμε κάποιες αναφορές σε authentication οδηγίες που όμως δεν καθορίζαν λεπτομέρειες στα headers των API calls, ούτε και σημαντικά πεδία όπως το Source Code.
5) Προσπαθήσαμε να βγάλουμε άκρη με τα παραδείγματα κώδικα. Δυστυχώς δεν υπήρχε παράδειγμα για Viva Wallet Payment μέθοδο. Με κόπο και διασταυρώνοντας την λογική διαφόρων σελιδών, διαπιστώσαμε ότι ο φάκελος με τίτλο "Create order", αφορούσε την μέθοδο πληρωμής "Redirection". Επίσης με κόπο και πολύ πειραματισμό συμπεράναμε ότι το "create order" sample code, δεν ήταν απλά ένα συγκεκριμένο function του API, αλλά παρείχε ολοκληρωμένο παράδειγμα προς χρήση, για την μέθοδο πληρωμής "Redirection".
Συνοψίζοντας:
Ελπίζω το παρόν issue, να φανεί χρήσιμο. Με συγχωρείτε εκ των προτέρων, αν τελικά έχω κάνει κάποιο σφάλμα και υπάρχει όντως αναλυτικός και δομημένος οδηγός για κάθε περίπτωση, ή εάν η Viva δηλώνει κάπου στην διαφήμιση της υπηρεσίας ότι οι developers θα πρέπει να μελετήσουν γιατί δεν προσφέρεται support σε τέτοια ζητήματα.
UPDATE/EDIT Παρέλειψα και διάφορες λεπτομέρειες που θα ήταν χρήσιμες όπως: