Passer au contenu principal
ABBYY FlexiCapture for Invoices Cloud inclut une application prête à l’emploi conçue spécifiquement pour le traitement des factures. Cette application vous permet de reconnaître et d’extraire tous les champs de données nécessaires dans la plupart des documents, sans configuration supplémentaire. Pour obtenir une liste détaillée des champs extraits des factures par défaut, veuillez consulter la section Spécification. Suivez les étapes ci-dessous pour traiter les factures :
  1. Récupérez l’en-tête Authorization à l’aide des identifiants de l’une de vos applications. Pour plus de détails sur l’obtention de l’en-tête Authorization, veuillez consulter la section Authentification.
  2. Téléversez sur le serveur un fichier dans un format d’entrée valide à l’aide de la méthode File.Upload. En réponse, vous obtiendrez l’identifiant et le jeton du fichier, à utiliser dans toutes les requêtes ultérieures concernant ce fichier.
curl -X POST —header “Accept: application/json” —header “Authorization: Basic QWxhZGRpbjpPcGVuU2VzYW1l” “https://api-eu.flexicapture.com/v2/file” —form “file=@/path/to/file/US_1.png”
{“id”: “5eeb762149c6470fdc65a84c”,“token”: “4B5A1A00E7A82C2AF31E20CADE7284DDA43DED30”,“name”: “US_1.png”,“extension”: “.png”,“hash”: “E75133BA4FC50B7197C2842D7A8A8AE615C37E38714C7773B1F8E2904EC62537A199129CD3B737673FBAB1DE63CBD5D428705443ADD2E1BA6223B7DD60070FDA”,“size”: 369090,“mime”: “image/png”,“is_recognizable”: true,“account”: “5dae591d3c66a51ae8be9896”,“application”: “5dae591e91375010bcd78362”,“email”: “user@abbyy.com”,“created”: “2020-02-02T14:11:45.5338461Z”,“expiring”: “2020-03-03T14:11:45.5338254Z”}
  1. Démarrez une tâche de traitement pour lancer l’extraction de données à l’aide de la méthode Task.Run. Vous pouvez spécifier plusieurs fichiers dans cette requête. La requête peut contenir les paramètres facultatifs suivants : la région des factures, le type de vérification et le format d’export des résultats.
La réponse contiendra un identifiant de tâche dont vous aurez besoin dans les étapes suivantes.
curl -X POST —header “Content-Type: application/json” —header “Accept: application/json” —header “Authorization: Basic QWxhZGRpbjpPcGVuU2VzYW1l” -d ”{“properties”: {“region”: “US”,“export_format”: “Xls”,“verification_type”: “NoVerification”,},“files”: [{“id”: “5eeb762149c6470fdc65a84c”,“token”: “4B5A1A00E7A82C2AF31E20CADE7284DDA43DED30”}]}” “https://api-eu.flexicapture.com/v2/task/capture/invoices
{“id”: “5eeb7bf728613d1e04a70782”,“number”: “1126563”,“batch_id”: 0,“type”: “ic”,“is_realtime_enabled”: false,“processing_priority”: “Normal”,“is_demo”: false,“properties”: {“region”: “US”,“export_format”: “Xls”,“verification_type”: “NoVerification”},“account”: “5dae591d3c66a51ae8be9896”,“email”: “user@abbyy.com”,“application”: “5dae591e91375010bcd78362”,“created”: “2020-02-02T14:36:39.441Z”,“progress”: 0,“status”: “Submitted”,“is_deleted”: false,“is_billed”: false,“documents”: [{“files”: {“source”: {“id”: “5eeb762149c6470fdc65a84c”,“token”: “4B5A1A00E7A82C2AF31E20CADE7284DDA43DED30”,“name”: “US_1.png”}},“data”: {},“is_moved”: false}],“is_extra_error”: false}
  1. Le traitement de la tâche prendra un certain temps ; les données extraites ne seront donc pas disponibles immédiatement. Vous pouvez vérifier le statut de la tâche à l’aide de l’identifiant reçu lors du lancement de la tâche. Attendez que le statut passe à Done. Pour vérifier le statut de la tâche, utilisez la méthode Task.Get.
curl -X GET —header “Accept: application/json” —header “Authorization: Basic QWxhZGRpbjpPcGVuU2VzYW1l” “https://api-eu.flexicapture.com/v2/task/5eeb7bf728613d1e04a70782
{“id”: “5eeb7bf728613d1e04a70782”,“number”: “1126563”,“batch_id”: 2640691,“type”: “ic”,“is_realtime_enabled”: false,“processing_priority”: “Normal”,“is_demo”: false,“properties”: {“region”: “US”,“export_format”: “Xls”,“verification_type”: “NoVerification”},“account”: “5dae591d3c66a51ae8be9896”,“email”: “user@abbyy.com”,“application”: “5dae591e91375010bcd78362”,“created”: “2020-02-02T14:36:39.441Z”,“started”: “2020-02-02T14:36:50.308Z”,“billed”: “2020-02-02T14:37:14.35Z”,“delivered”: “2020-02-02T14:37:14.328Z”,“progress”: 100,“status”: “Done”,“is_deleted”: false,“is_billed”: true,“documents_count”: 1,“pages_count”: 1,“documents”: [{“files”: {“source”: {“id”: “5eeb762149c6470fdc65a84c”,“token”: “4B5A1A00E7A82C2AF31E20CADE7284DDA43DED30”,“name”: “US_1.png”},“target”: {“id”: “5eeb7c1963ee5a1268123b96”,“token”: “A01EFC05BBB787DC6825F08E51B56CF3E066210E”,“name”: “Data_00000001.xls”},“verification_layer_page_0”: {“id”: “5eeb7c1a63ee5a1268123b97”,“token”: “18921FFB4C944056CB3ED00768F90724ADF0CB69”,“name”: “verification_layer_page_2.xml”}},“data”: {“region”: “us”,“export_format”: “xls”,“verification_type”: “noverification”,“vendor_id”: “1”,“vendor_name”: “AA APPAREL”,“total”: “20208”,“currency”: “USD”},“is_moved”: false}],“is_extra_error”: false}
  1. Une fois le status passé à Done, vous pouvez télécharger les fichiers de sortie à l’aide de leurs identifiants et jetons (informations sur les fichiers target dans la réponse de l’étape précédente). Pour ce faire, utilisez la méthode File.Download. Cette requête peut être répétée pour chaque fichier d’entrée de la requête de tâche.
curl -X GET —header “Accept: application/json” —header “Authorization: Basic QWxhZGRpbjpPcGVuU2VzYW1l=” “https://api-eu.flexicapture.com/v2/file/5eeb7c1963ee5a1268123b96/A01EFC05BBB787DC6825F08E51B56CF3E066210E
En cas de succès, le serveur renvoie un code de statut HTTP 200 OK et le contenu du fichier.
  1. Après avoir téléchargé les données de sortie, supprimez la tâche afin de supprimer tous les fichiers d’entrée et de sortie. Pour ce faire, utilisez la méthode Task.Delete et indiquez l’identifiant de la tâche.
curl -X DELETE —header “Accept: application/json” —header “Authorization: Basic QWxhZGRpbjpPcGVuU2VzYW1l=” “https://api-eu.flexicapture.com/v2/task/5eeb7bf728613d1e04a70782
En cas de succès, le serveur renvoie un code de statut HTTP 204 OK. S’il y a des erreurs dans la requête, le serveur renvoie l’un des codes de réponse HTTP pour indiquer le motif de l’échec. Pour plus de détails, consultez la section sur les erreurs de requête.