...
Contactez nous si vous souhaitez plus d’information à ce sujet.
Objectifs
Synchronisation des articles
Synchronisation des disponibilités articles
Synchronisation des clients
Synchronisation des factures effectuées sur le webshop dans un journal spécifique de IGFact
Aspects techniques
Sécurité
Les APIs font l’objet d’une authentification au moyen d’un standard actuel en la matière (Token, Clé d’API, … ) et utilisent un système de documentation comme Swagger (OpenAPI) afin de faciliter les échanges entre les deux plate-formes.
Il vous sera fourni:
un login = votre adresse email
vous recevrez un mail à cette adresse pour définir votre mot de passe
un numéro de série (SerialNumber)
Deux manières de fonctionner
L’Api peut être utilisée de deux manières:
indépendante: une application tierce a juste besoin de consulter les données de IGFact, dans ce cas, login au moyen de Token/LoginUser
dépendante d’une application tierce (par exemple Prestashop): login au moyen de Token/LoginExtenalLink
La version dépendante permet à IGFact Api de fournir un webhook qui sera appelé par l’application dépendante quand un événement survient sur le webshop (une nouvelle commande est passée par exemple). Ainsi l’API IGFact va pouvoir aller récupérer la commande sur le webshop.
Objets
De manière générale, les objets disponibles dans l’API devront implémenter les méthodes suivantes :
Un webhook pour notifier d’un ajout / mise à jour / suppression qui contiendra l’objet modifié au format de l’API émettrice.
Une méthode pour récupérer tous les changements effectuées depuis un timestamp UTC
Une méthode pour récupérer l’ensemble de la liste (en cas de migration initiale ou de mise à jour complète)
Une méthode pour récupérer un objet spécifique sur base de sa clé unique.
Il sera de la responsabilité de chaque API de convertir les données fournies par les webhook afin de réaliser l’intégration des changements.
Suppressions
Afin d’éviter tout problème (serveur indisponible pendant un webhook par exemple, la suppression d’un objet ne devra jamais être une suppression physique mais bien un flag indiquant que l’objet est effacé. Ainsi, les méthodes qui récupèrent les changements depuis un timestamp UTC auront également accès aux éléments effacés.
Webhooks
Les webhooks devront être déclenchés pour les différentes opérations CRUD, pour rappel :
Create
Update
Delete
Administration des Webhooks
Une page de gestion des webhooks est disponible à l’adresse https://igfact.igsoft.eu afin de paramétrer ceux-ci.
Interactions prévues
Produits
La clé unique sera la référence d’article de IGFact.
Les données des produits sont gérées et créées principalement sur le site web.
La création / modification d’un article sur le webshop, engendre une notification à l’API de IGFact via un webhook contenant l’objet mis à jour, au format défini par le webshop.
La référence IGFact sera attribuée du côté du Webshop, mais celui-ci devra vérifier qu’elle n’est pas déjà utilisée dans IGFact afin d’éviter les doublons.
La modification d’un article dans IGFact, engendre une notification à l’API du Webshop via un webhook contenant l’objet au format défini par IGFact.
Disponibilité des produits
Les données de disponibilité des produits sont gérées des deux côtés.
Il faudra envisager les conflits de réservation d’articles entre IGFact et le Webshop afin d’éviter que deux utilisateurs réservent le même article. Nous suggérons que 3 données soit gérées : Le stock physique, une quantité réservée dans IGFact (commandes, … ), une quantité réservée dans le web (paniers).
La mise à jour de la quantité réservée coté webshop engendre une notification à l’API de IGFact via un webhook au format défini par le webshop
La mise à jour du stock ou de la quantité réservée dans IGFact engendre une notification à l’API du Webshop via un webhook contenant l’objet au format défini par IGFact.
Le stock physique sera géré intégralement au niveau de IGFact, et ce afin de maintenir le contrôle de celui-ci en un seul et même endroit. Il sera mis à jour à la création des factures et renvoyé à chaque changement de IGFact.
La quantité réservée dans le webshop devra impérativement être maintenue à jour et libérée en cas de panier abandonné pour ne pas entraver les ventes dans IGFact.
Clients
La clé unique sera la référence client de IGFact
Les clients seront générés à l’inscription sur le site web. Un webhook signale les ajouts/modifications à IGFact au format défini par le Webshop. IGFact renverra ensuite une mise à jour avec la référence générée dans IGFact.
Les ajouts/mises à jour effectuées du côté de IGFact engendreront une notification à l’API du Webshop via un webhook au format défini par IGFact.
Factures
Les factures seront générées sur le Webshop. Un webhook signale les ajouts/modification à IGFact au format défini par le Webshop. IGFact intégrera ces documents dans un journal spécifique au Webshop.
Il n’y a pas de mise à jour prévue au départ de IGFact vers le Webshop.
Description de l’API
Chaque objet disponible dispose des mêmes méthodes génériques. Seules les méthodes en lecture sont disponibles au départ d’une application tierce.
...
"DateExpire": "2020-03-10T16:49:28.818716+01:00"
}
Webhooks
Pour adapter les URLs des webhooks, et en consulter les notifications, vous pouvez vous rendre sur https://igfact.igsoft.eu. Vous loguer avec votre compte et votre SerialNumber sans cocher la case “Admin”.
...