L'un des plus grands attraits de la plateforme Acumatica est son API robuste et facile à utiliser. Ici, je vais vous montrer comment vous pouvez étendre un service web et ajouter des entités personnalisées à un objet. Un de nos clients avait besoin d'introduire des détails fiscaux provenant d'un autre système dans un document de vente au comptant.
Dans certains cas, la déclaration des transactions à partir d'un autre système comme Lightspeed doivent être saisies en tant que documents de vente au comptant dans Acumatica sans être recalculées. Nous voulions éviter les écarts de valeur décimale dus à des recalculs dans un autre système. L'objectif était d'introduire les taux d'imposition et les montants imposables de Lightspeed tels quels dans Acumatica. Le résultat souhaité se trouve dans la capture d'écran ci-dessous et les étapes suivantes vous permettront d'y parvenir.
Il existe une section sur les détails de la taxe dans le document des ventes au comptant, mais elle n'a pas été exposée par l'API.
Si vous utilisez Acumatica 2020R2 ou une version ultérieure, vous devrez prendre le point de terminaison Default de la version 20.200.001 et l'étendre. Donnez un nom et un numéro de version au point de terminaison. Typiquement, je fais correspondre le numéro de version de celui que j'étend, comme vous pouvez le voir dans l'exemple ci-dessous dans Endpoint version 20.200.001.
J'essaie de faire correspondre le numéro de version du point de terminaison avec celui que je suis en train d'étendre pour des raisons de cohérence :
Une fois que le point final a été étendu, vous allez au niveau supérieur de l'objet (Ventes au comptant), et vous cliquez sur INSERER, vous verrez l'écran de saisie suivant.
Je renseigne les informations nécessaires à la création d'un objet fiscal au niveau détaillé :
A partir de là, j'ajoute les champs nécessaires à l'objet détails nouvellement défini qui existe déjà dans Acumatica.
Afin de tester l'API étendue, nous nous appuyons sur l'application Postman qui est utilisé dans l'outil de certification d'Acumatica Certification des intégrations d'Acumatica. En utilisant Postman, je confirme que l'objet TaxDetails fonctionne comme prévu.
Et voici le code accessible sur Github avec un lien vers la GIST.
GIST : https://gist.github.com/kulvirTAC/669fc94ff72abf7f2364db9df3389791
Comme vous pouvez le constater, il s'agit d'un processus assez simple et direct, qui est très efficace grâce à une approche de type code bas/pas de code que la plateforme Acumatica propose pour les tâches triviales des développeurs. Toutes les qualités d'une API REST robuste avec la flexibilité de l'étendre avec des objets personnalisés et d'intégrer des champs existants.
Bon codage !