Outils pour utilisateurs

Outils du site


doc:admin:cold:macro_getjson

Extraction de donnée via requêtage JSON (jsonpath)

C’est quoi JSONPath ?

JSONPath est un outil qui permet de chercher des informations dans un fichier JSON (ex: facture électronique).


À quoi ça sert ?

  • Extraire des identifiants (SIREN, TVA, IBAN…)
  • Lire les montants (HT, TVA, TTC)
  • Vérifier des règles (présence d’un champ, valeur attendue)

Les bases

1. Point de départ

$

Début du document


2. Accéder à un champ

$['rsm:CrossIndustryInvoice']['rsm:ExchangedDocument']['ram:ID']

3. Filtrer

[?(@.champ == "valeur")]

Permet de sélectionner un élément précis dans une liste

récupérer les données du vendeur
"ram:ID": [
  { "@schemeID": "0008", "#text": "FRxxxxxxxxxxx" },
  { "@schemeID": "0002", "#text": "xxxxxxxxx" },
  { "@schemeID": "0009", "#text": "xxxxxxxxxxxxxx" }
]

Dans ce cas :

  • 0008 = TVA
  • 0002 = SIREN
  • 0009 = SIRET

JSONPath

$['rsm:CrossIndustryInvoice']
['rsm:SupplyChainTradeTransaction']
['ram:ApplicableHeaderTradeAgreement']
['ram:SellerTradeParty']
['ram:ID'][?(@['@schemeID']=='0008')]
['#text']

Traduction métier

“Dans la facture :”

  1. Aller dans la facture principale
  2. Aller dans la transaction
  3. Aller dans les infos vendeur
  4. Regarder les identifiants du vendeur
  5. Trouver celui avec schemeID = TVA (0008)
  6. Récupérer la valeur

Résultat

FRxxxxxxxxxxx

A retenir

Élément Signification
$ début de la facture
[‘champ’]accéder à un champ
[*] tous les éléments
[0] premier élément
[?()] filtre
@ élément courant

Autres Exemples

Trouver le nom de la société

$['rsm:CrossIndustryInvoice']
    ['rsm:SupplyChainTradeTransaction']
    ['ram:ApplicableHeaderTradeAgreement']
    ['ram:SellerTradeParty']
    ['ram:Name']

Trouver un montant TTC

$['rsm:CrossIndustryInvoice']['rsm:SpecifiedTradeSettlementHeaderMonetarySummation']['ram:GrandTotalAmount']

doc/admin/cold/macro_getjson.txt · Dernière modification : de jeremy