KNOWLEDGEBASE

Knowledgebase-128x128

Χρήση web hooks στο EBS οικοσύστημα

Πολλές φορές υπάρχει η ανάγκη να ενημερωθεί το EBS από κάποιο εξωτερικό σύστημα ώστε να κάνει κάποιοα ενέργεια. Π.χ μια παραγγελία μπήκε σε κάποιο marketplace, μια πληρωμή μπήκε μέσω ΔΙΑΣ, ολοκληρώθηκε η αποστολή από μια μεταφορική κτλ. Τότε την στιγμή που γίνεται η ενέργεια στο τρίτο σύστημα, θα θέλαμε να ενημερωθεί το EBS ώστε να δημιουργηθεί και σε αυτό η αντίστοιχη εγγραφή. Το Entersoft, με το Web Api που παρέχει δίνει την δυνατότητα να υλοποιηθούν web hooks που εκπληρώνουν την ανάγκη αυτή. Έτσι υλοποιείτε ένας απλός αυτοματισμός με συγκεκριμένες προδιαγραφές που δέχεται όλη το περιεχόμενο της κλήσης από το εξωτερικό σύστημα (συνήθως json) και δημιουργεί τις αντίστοιχες εγγραφές στο ERP.

Παρακάτω οι προδιαγραφές που δίνει η Entersoft για την παραγωγή του εν λόγω μηχανισμού

KB-02230 Generic Web Hook API
Κατηγορία: WEBAPI

The need:

Some APIs require to call a web hook to invoke some action od pass some information to the caller, e.g. EBS. In such cases the API provides parameters to define the URL to be called and the authentication to be passed, to gether with documentation regarding the payload passed to the web hook and optionally, the expected return values

The solution:

WEBAPI has implemented a generic WEB Hook API in Entersoft Business Suite WEBAPI available using the eComConnector Cloud App.

The API has the following URL:

/api/endpoint/autohook/scroller Area/Scroller ID/Scroller Automation ID

it requires a POST verb and it calls directly the specified Scroller Automation (with ID Scroller Automation ID) declared on a scroller in the scroller Area with scroller ID Scroller ID
it requires a POST verb and it calls directly the specified Scroller Automation.

The Web Hook Automation:

1. must have a Command Parameter with Code Payload (attn. the name is case-sensitive)
2. may have an output variable with code RetCode (attn. the name is case-sensitive)
3. must have Apply to: Without view i.e. it runs without a source dataset

How it works:
When called the API calls the Scroller automation and passes the POST payload to the automation Payload command parameter

The automation processes the the Payload (e.g. if it’s JSON it may use Newtonsoft library to parse it)
and formulates the proper responce to the output variable RetCode
The API returns RetCode’s string content the result to the caller.

Εδώ απαιτείται μια σημαντική επισήμανση. Η απάντηση από το web api webhook είναι πάντα σε text (κείμενο) ακόμα και αν πρόκεται για σωστά δομημένο json. Εδώ παρέχουμε ως πρόσθετη υπηρεσία σε πελάτες μας που έχουν ενεργό συμβόλαιο υποστήριξης με την INTELISEIS και ενεργές εκδόσεις με την ENTERSOFT, μέσω azure functions ένα σύνολο από κλήσεις που
1. Λαμβάνουν από το τρίτο σύστημα την κλήση
2. Καταγράφουν με ένα απλό τρόπο την πηγή της κλήσης ώστε στο ERP να γνωρίζετε από που προήλθε μέσω ενός αναγνωριστικού.
3. Την μεταφέρουν στον αντίστοιχο subscirption του api.entersoft.gr
4. Επιστρέφουν το αποτέλεσμα της κλήσης που στέλνει το Entersoft μορφοποιημένο ως json ώστε να ενημερωθεί σωστά το τρίτο σύστημα.