Sage X3 et Web Services : Faire dialoguer l’ERP pour gagner en puissance

sagex3 et web services

Nous vivons dans un monde où l’accès à l’information doit être rapide et simple pour les entreprises. Échanger des informations entre plusieurs applications et en garder une trace grâce à la gestion de plusieurs API et Web services est un réel besoin. Les flux de données doivent être dynamisés, la communication entre vos différents services facilitée et vos espaces de stockages non saturés.

Sage X3 est un ERP encore plus complet et personnalisé grâce aux Web Services. Vous gagnerez en qualité d’informations et améliorerez la communication interne.

Voici les points abordés dans cet article :

Qu’est-ce qu’un Web Service ?

Définition du Web Service

Les web services sont des solutions utilisant le protocole HTTP permettant l’interopérabilité des différents logiciels exposés sur la toile qui peuvent être écrit dans des langages de programmation différents.

De nos jours, les outils d’une entreprise sont de plus en plus exposés sur le web et donc ce qui rend les web services de plus en plus utiles.

Comment fonctionne un Web Service ?

Le Web Service fonctionne en 3 étapes :

      • Etape 1 : une requête au format XML, JSON ou http va être envoyée à un serveur
      • Etape 2 : une fois la requête reçue par le serveur, elle est transmise à un autre serveur à distance via les protocoles http, SOAP ou une architecture REST
      • Etape 3 : la réponse est envoyée au client (celui ayant réalisé la requête) au format demandé (XML, JSON, HTTP)

Cette réponse va pouvoir être interprétée et exploitée dans l’application du client tout en gardant la trace de tout ce qui se passera.

Quelle est la différence entre API et Web Service ?

API est l’acronyme de « Application Programming Interface » que l’on traduit en français par « interface de programmation d’applications ». Concrètement, l’API va exploiter les Web Services afin de faire communiquer 2 solutions entre elles. Il s’avère souvent que la confusion se fasse entre API et web service.

Marquons la différence entre ces deux notions :

      • Une API est une interface entre deux applications afin de leur permettre de communiquer entre elles, de faire passer des message
      • Un Web Service, a pour but de faciliter la gestion et échanges de données entre deux logiciels sur un réseau.

Quel est l’intérêt des Web Services

A quoi va servir un Web Service

Un web service va permettre d’interfacer deux solutions et donc d’avoir des communications directes en mode synchrone entre chaque application. Cela va leur permettre de communiquer de manière dynamique en temps réel.

Pour quel type d’entreprise et fonctions le Web Service est-il intéressant ?

Le Web Service correspond à toutes les entreprises et pour tous types de fonctions selon les différentes solutions implémentées chez le client.

Il sert aussi pour certaines démarches auprès de l’Etat par exemple. Typiquement la plateforme Chorus qui peut être interfacée par le Web Service de manière à faire des déclarations de factures au niveau de l’Etat.

En résumé, toutes les entreprises et toutes les fonctions de ces dernières peuvent utiliser les Web Services.

Quels sont les avantages du Web Service ?

Le Web Service possède 3 avantages principaux :

      • Il est dynamique et synchrone : il génère des réponses en temps réel par rapport à d’autres solutions existantes dans le passé comme les échanges EDI qui vont être des échanges par fichiers à plat. Il n’y aura donc pas de réponse dynamique et ce sera un système de fonctionnement asynchrone.
      • Il ne génère pas de besoins supplémentaires de stockage de données : le serveur distant envoie des informations à l’ordinateur du client sans nécessiter un stockage supplémentaire des données sur ce dernier.
      • Il se base sur des serveurs distants : le serveur distant, c’est-à-dire celui qui reçoit la requête, peut être interrogé par plusieurs personnes en même temps.

Quels sont les limites du Web Service ?

Quelque part il n’y a pas vraiment de limites au Web Service. Ce dernier va surtout être limité par l’infrastructures du client, du volume d’échange qu’on va pouvoir réaliser par cette solution.

Cependant, il s’agit simplement d’un problème d’infrastructure. Les limites sont les limites de programmation de certains outils.

L’ERP Sage X3 et les Web Services

Comment peut-on utiliser les Web Services avec Sage X3 ?

Si vous lisez cet article, c’est que probablement vous êtes utilisateur Sage X3 voire même un utilisateur dans sa version 12.

Comme pour d’autres ERP, le web service va permettre d’interfacer Sage X3 avec d’autre solutions. Bon nombre de type d’objet dans Sage X3 sont disponibles pour des échanges via des web services.

En tentant d’être un peu plus concret, sur la base des besoins d’une entreprise, il sera possible de créer des flux entre Sage X3 et d’autres solutions bien spécifiques. Cela peut concerner un outil de gestion des caisses, une solution BtoB, un WMS pour les entrepôts, un TMS pour le transport, un site web e-commerce ou même un CRM.

Dans le cas du CRM, Flow Line Intégration a développé un connecteur qui s’appuie sur des web services afin de faire le pont entre l’ERP Sage X3 et le CRM Salesforce.

En mode ERP étendu, l’objectif est bien d’élargir le périmètre fonctionnel de Sage X3, de le personnaliser à des besoins précis avec toute une panoplie de solutions sélectionnées une à une en complément de l’ERP.

Quelle est la démarche à suivre d’un projet incluant des Web Services pour Sage X3

Comme pour tout projetinformatique quel que soit sa nature ou dimension, il est important d’appliquer un peu de méthodologie et d’en assimiler tous les paramètres.

Tout d’abord le cahier des charges. Une nouvelle fois, vous allez devoir monter un cahier des charges projet. C’est à partir de ce document d’entreprise que les besoins d’interfaçages vont être identifiés.

Suite à cette première analyse, l’intégrateur Sage X3, va prendre l’initiative d’organiser un atelier avec son client. L’objectif de cet atelier commun est de représenter les différents flux d’échanges de données qui vont être créés dans les Web Services.

Si l’on reprend l’exemple d’une connexion entre Salesforce et Sage X3, ces échanges peuvent concerner un large panel d’objets :

      • Des clients dans Sage X3 à Comptes dans Salesforce
      • Des articles dans Sage X3 à Produits dans Salesforce
      • L’échange d’informations sur des contacts
      • L’échange d’informations sur des devis
      • Etc.

Une fois ces flux dessinés, la prochaine étape sera de développer un prototype d’une solution type. Ce prototype va probablement évoluer au fil de versions. Chaque version va nécessairement passer par une phase test avant la validation finale à soumettre au client.

Quelle sont les questions à se poser sur un processus identifié ?

A chaque processus clé identifié impliquant Sage X3 et des web services, vous devez vous poser des questions. A première vue, il s’agit de questions qui se veulent classiques, mais qui au final sont terriblement importantes.

Voici une liste de questions de base :

      • Quelles sont les données échangées entre les deux solutions ?
      • Quelle va être la fréquence d’échange qui va permettre de dimensionner l’infrastructure ?
      • Quelle est la volumétrie qui va intervenir sur l’infrastructure et le dimensionnement des poules de web services donc du serveur qui va recevoir les échanges ?
      • Sous quelles formes les données vont-elles être stockées ?
      • Comment sera-t-il possible de garder la trace des échanges ?
      • Quel type d’erreur sera-t-il possible de rencontrer ?

En résumé, les web services ouvrent de nouvelles perspectives pour faire communiquer vos données entre plusieurs applications, le tout de manière dynamique et sans stockage de données supplémentaire. L’utilisation des Web Services avec Sage X3, vous permet de personnaliser votre ERP selon des besoins très précis. Flow Line est composé d’équipes expertes sur le sujet des Web Services avec Sage X3, contactez-nous pour parler de votre projet. 😉