Vous connaissez la douleur des rapports de dépenses – pas pour vous, pour vos utilisateurs. Les reçus qui s’accumulent, la saisie manuelle, les fautes de frappe qui s’échappent. Avec 4D AIKit, cette corvée n’existe plus. Un simple téléchargement transforme un reçu papier ou une facture en JSON propre et structuré, prêt pour votre base de données.
Plus de perte de temps sur les totaux, les dates ou les noms des fournisseurs. Vision AI le lit, les modèles de langage le structurent et 4D le relie directement à votre application. Du papier à la base de données en quelques secondes – et vos utilisateurs ne ressentent jamais la friction.
Rapports de dépenses HDI AIKit
Avec seulement quelques lignes de code, vous pouvez transformer une photo d’un reçu papier en un objet JSON structuré et prêt à être stocké – pas de saisie manuelle, pas d’erreur humaine.
Exemple : Extraction de données structurées à partir d’un reçu
Imaginez que votre utilisateur télécharge un reçu via votre application. Avec AIKit, le système peut automatiquement détecter :
- le type de document (reçu, facture ou bon de commande)
- la date
- Le nom du vendeur
- Le numéro de la facture, si disponible
- la devise
- Totaux (y compris et hors taxes)
- Montants des taxes
Toutes ces informations sont analysées dans un objet JSON propre, prêt à être stocké dans votre base de données.
Exemple de code :
Voici ce que cela donne en pratique :
var $client := cs.AIKit.OpenAI.new("YourAPIKey")
// CONVERT THE IMAGE TO BASE64 IF IT'S NOT A URL
var $blob := $pictureEntity.picture
var $base64Encoded : Text
BASE64 ENCODE($blob; $base64Encoded)
var $picture := "data:image/jpeg;base64," + $base64Encoded
var $prompt := "You are an expert assistant in processing accounting documents. Analyze the image of the attached document (receipt, invoice, or purchase order). Return only a JSON object, without any explanation, without markdown tags, without commentary, and without any line break before or after. The JSON must be clean and follow this exact structure: { \"document_type\": \"receipt\" ' \"invoice\" ' \"purchase_order\", \"date\": \"MM-DD-YYYY\", \"vendor\": \"Merchant or company name\", \"invoice_number\": \"text or null\", \"currency\": \"EUR\" ' \"USD\" ' \"other\", \"total_incl_tax\": float or null, \"total_excl_tax\": float or null, \"tax\": float or null, \"items\": [ { \"name\": \"string\", \"quantity\": number or null, \"unit_price\": float or null, \"total_price\": float or null } ] } Remember: no sentences, tags, or text should surround or precede the JSON. Just the pure JSON object, that’s all."
var $result := $client.chat.vision.create($picture).prompt($prompt).choice.message.content
var $parsedJSON : Object
$parsedJSON := JSON Parse($result)
return $parsedJSON
Avantages : Du papier à la base de données en quelques secondes
Cette solution est idéale pour :
- Les employés qui soumettent leurs notes de frais rapidement et facilement
- Les équipes financières qui souhaitent réduire les saisies manuelles et les erreurs
- Les applications mobiles offrant des fonctionnalités de numérisation de documents et d’automatisation.
Plus besoin de taper les totaux, les dates ou les noms des fournisseurs – AIKit se charge du gros du travail.
Pourquoi cette fonctionnalité est-elle importante ?
Cette fonctionnalité combine le meilleur de trois mondes :
- Vision AI : pour lire et interpréter les documents imprimés.
- Modèles de langage : pour extraire intelligemment des données structurées.
- Intégration 4D : pour connecter le tout de manière transparente à votre logique d’application et à votre base de données.
Essayez-le vous-même
Tout ce dont vous avez besoin est
- Une entrée d’image (appareil photo, scanner ou téléchargement).
- Une clé API OpenAI valide.
- Le composant 4D AIKit dans votre projet.
Laissez l’IA s’occuper du reste : propre, structuré et prêt pour la production.
À venir…
Et ce n’est que le début. Nous partagerons d’autres cas d’utilisation d’AIKit axés sur les entreprises dans les prochains articles. Si vous avez déjà un scénario en tête, nous serions ravis de le connaître – il pourrait même faire l’objet d’un prochain article.
