Interface de capture photo Documents AI. L'extraction de champs est prévue.
Interface de capture photo Documents AI. L'extraction de champs est prévue.
← Tous les guides natifs

Xodera Plugins · Bubble Native

Xodera Documents AI Native

Transformez une photo de reçu ou de livraison en formulaire prérempli. L’IA propose la date, le total et les champs demandés ; une personne les vérifie avant enregistrement.

Guides bêta publics · instructions Haptics dans sa fiche Bubble

Offre bêta publique : installation Bubble gratuite · essai de 7 jours avec carte, puis 1,50 USD/mois par plugin/projet.

Documentation révisée 6 novembre 2026

Exemples pratiques

Préremplir une note de frais depuis une photo de reçu

Ressaisir le commerçant, la date et le total ralentit la saisie ; l’extraction peut fournir un brouillon à vérifier.

`fields_json = ["merchant","date","total","currency"]` ; l’utilisateur photographie le reçu et consent séparément au traitement. Pendant la validation, utilisez uniquement des reçus synthétiques.

Prévu : `analysis_requested` → Analyze Captured Document avec octets bornés, MIME, noms de champs, consentement et ID de demande → champs retournés dans votre formulaire de Dépense modifiable.

L’action retourne `status`, `operation_id`, `fields_json` et `review_required`. L’utilisateur corrige et valide avant que votre workflow ne crée la Dépense.

Si le résultat est incertain, appelez Read Analysis avec le même `operation_id`, sans relancer automatiquement une analyse. Le retrait du consentement efface capture et export conservés. Pas de base64 brut dans un Thing public ou les logs.

Prévu. Une personne doit vérifier chaque valeur proposée avant enregistrement.

Lire la référence d’un bon de livraison pour un contrôle humain

En entrepôt, une référence et une date proposées peuvent éviter une ressaisie depuis le document photographié.

`fields_json = ["delivery_reference","supplier","delivery_date"]` ; pendant la QA, capturez la face utile d’un bon synthétique.

Après consentements distincts pour capture et traitement, Analyze Captured Document propose les champs. Affichez la photo et les champs modifiables, puis demandez au personnel de confirmer la Livraison correspondante.

Conservez `operation_id` pour la suivi du résultat ; `fields_json` reste une proposition. Votre workflow recherche ou met à jour la Livraison après contrôle humain uniquement.

Un champ absent, ambigu ou incorrect demande une correction manuelle. Une erreur fournisseur laisse la Livraison intacte ; Read Analysis réconcilie une opération incertaine.

Prévu. Une personne doit vérifier chaque valeur proposée avant enregistrement.

Proposer le numéro de série d’une étiquette d’équipement

Un formulaire de maintenance peut proposer modèle et numéro de série lorsque la saisie de l’étiquette est difficile.

`fields_json = ["manufacturer","model","serial_number"]` ; photographiez une étiquette synthétique ; choisissez un preset DeepInfra ou OpenAI disponible et enregistrez votre clé fournisseur en privé dans BestPlugins.

L’action prévue Analyze Captured Document propose les valeurs du fabricant, du modèle et du numéro de série. Affichez-les près de la photo et laissez l’utilisateur les corriger avant de chercher ou modifier la fiche de l’équipement.

Utilisez `fields_json`, `review_required` et `operation_id`. Traitez les identifiants comme du texte pour préserver les zéros initiaux.

Si la photo est illisible ou la proposition erronée, autorisez la saisie manuelle. Après une réponse incertaine, relisez la même opération plutôt que de payer une nouvelle inférence.

Prévu. Une personne doit vérifier chaque valeur proposée avant enregistrement.

Ce qui fonctionne maintenant

Bêta privée. La prise de photo est disponible pour les essais. L’extraction des champs est prévue et n’est pas encore utilisable dans votre app.

Construire le workflow

Prévu

Parcours prévu. Pas encore disponible dans la bêta actuelle.

Les exemples utilisent des fiches comme Lesson, Message et Order. Remplacez-les par vos types de données et noms d’éléments. Utilisez vos propres fichiers à la place des adresses d’exemple.

  1. Prévu : choisissez les champs utiles, par exemple fields_json=["title","date","total"]. Activez enable_analysis_export et renseignez analysis_context pour le compte ou la fiche. Ces réglages ne sont pas disponibles dans la version de capture actuelle.

  2. L’utilisateur prend une photo et accepte séparément son traitement. À analysis_requested, lancez Analyze Captured Document avec analysis_image_base64, analysis_mime_type, analysis_fields_json et analysis_consent de cet élément. analysis_request_id devient idempotency_key.

  3. Gardez operation_id, request_id et status. Si status est processing, utilisez Read Analysis avec cet operation_id pour récupérer le résultat.

  4. Affichez fields_json dans un formulaire modifiable. Enregistrez seulement les valeurs vérifiées après le bouton Confirmer. Gardez la fiche initiale jusque-là.

Diagramme de flux — pas une capture d’écran d’application · SVG

Configurer une fois

Créez ou choisissez votre projet Bubble dans BestPlugins → Dashboard → Plugins. Choisissez Xodera Documents AI Native, copiez sa clé, puis ouvrez Bubble → Plugins → Xodera Documents AI Native et collez-la dans project_api_key. Enregistrez une fois, puis utilisez les actions ci-dessous. Chaque plugin de chaque projet possède sa propre clé.

Demandez la caméra et expliquez l’usage de la photo. Le traitement demande un accord distinct. Choisissez votre fournisseur d’IA dans les réglages du projet ; son usage est facturé séparément.

Configurer une fois
  1. Créez ou choisissez votre projet Bubble dans BestPlugins → Dashboard → Plugins.
  2. Choisissez ce plugin et copiez sa clé de projet.
  3. Ouvrez Bubble → Plugins → Xodera Documents AI Native ; collez la clé dans project_api_key et enregistrez.
  4. Ajoutez l’élément, choisissez vos données et construisez le workflow ci-dessous.
  5. Accès bêta privée uniquement pour le moment. Installation publique et activation payante non ouvertes.
Installation et abonnement

Pour Audio Player, Video Player, Photo Editor, Audio Recorder, Files Kit et Haptics : installation Bubble gratuite, essai de 7 jours avec carte, puis 1,50 USD par mois, par plugin et projet. Développement et production inclus, sans plafond d’opérations. Les limites de fichier et de fonction restent applicables. Vérifiez facturation et annulation avant confirmation. Les autres plugins ne sont pas ouverts à l’achat.

Enregistrer le résultat dans votre app

Exemple ExpenseDraft : owner, operation_id, request_id, status et proposed_fields_json. Après vérification, enregistrez les valeurs approuvées, reviewed_by et reviewed_at. Utilisez seulement les champs demandés par votre formulaire. Ne placez pas le contenu complet de l’image dans les journaux ou fiches texte.

Échec, annulation et reprise

Si le résultat tarde, gardez la même demande et utilisez Read Analysis avec operation_id. Ne prenez pas une nouvelle photo et ne créez pas une autre demande automatiquement. En cas de retrait du consentement, effacez la photo et ne proposez plus le résultat ; une copie déjà envoyée ou enregistrée ne peut pas être rappelée.

Fonctions et limites

Entrée d'image prévue : PNG, JPEG ou WebP, jusqu'à 5 MiB ; demandez des noms de champs distincts 1–32. Examinez toujours les valeurs extraites. Il ne s'agit pas d'une vérification d'identité, d'un contrôle d'authenticité de document ou d'un outil de décision médicale. Les frais du fournisseur d'IA sont séparés.

Réglages, actions et résultats

Utilisez ces noms dans Bubble. Les fonctionnalités prévues sont marquées séparément.

Paramètres bêta disponibles

Réglages de l’élément

document_side · textbutton_label · textconsent_text · textdisabled · yes/nofields_json · textprocessing_consent_text · textanalyze_button_label · textcheck_button_label · textlanguage · textui_text_json · text

États

capture_status · textlocal_uri · textmime_type · textdocument_side · textimage_width · numberimage_height · numbererror_code · textis_capturing · yes/noanalysis_status · textanalysis_operation_id · textanalysis_fields_json · textanalysis_error_code · textreview_required · yes/nois_analyzing · yes/no

Événements

capture_startedcapture_succeededcapture_cancelledpermission_deniedcapture_erroranalysis_startedanalysis_readyanalysis_pendinganalysis_error

Actions et paramètres

Réglages de l’élément · 12

Parcours prévu. Pas encore disponible dans la bêta actuelle.

document_sidetext · Défaut: "front"
Valeur exemplefront
Expression Bubble exempleCapture Side Dropdown's value
Utilisez la valeur de la fiche courante et les limites ci-dessous.
button_labeltext · Défaut: ""
Valeur exemple""
Expression Bubble exempleApp Texts' capture_label
Texte visible ; vide utilise le texte localisé prévu. Aucun identifiant secret.
consent_texttext · Défaut: ""
Valeur exempleI agree to capture this non-sensitive receipt.
Expression Bubble exempleApp Texts' capture_consent
Expliquez but et destinataire précis. Le retrait efface les octets retenus, pas les copies déjà transmises.
disabledyes/no · Défaut: false
Valeur exempleno
Expression Bubble exempleGuideHost's is_busy (your yes/no custom state)
Désactivez l’élément si l’app est occupée ou l’action indisponible.
processing_consent_texttext · Défaut: ""
Valeur exempleI agree to send this image to the configured AI provider for draft fields.
Expression Bubble exempleApp Texts' processing_consent
Expliquez but et destinataire précis. Le retrait efface les octets retenus, pas les copies déjà transmises.
analyze_button_labeltext · Défaut: ""
Valeur exemple""
Expression Bubble exempleApp Texts' analyze_label
Texte visible ; vide utilise le texte localisé prévu. Aucun identifiant secret.
languagetext · Défaut: "auto"
Valeur exempleuk
Expression Bubble exempleCurrent User's preferred_language
Utilisez language=auto pour suivre une langue prise en charge sur l’appareil ou dans le navigateur. Saisissez un code de langue pris en charge pour la choisir explicitement.
ui_text_jsontext · Défaut: ""
Valeur exemple{}
Expression Bubble exempleApp Settings' player_labels_json (supported keys only)
JSON facultatif avec les libellés de boutons pris en charge. Laissez vide pour les textes intégrés.
enable_analysis_exportyes/no · Défaut: false
Valeur exempleyes
Expression Bubble exempleApp Settings' enable_reviewed_extraction
Prévu : permettre l’analyse de la photo après les deux accords de l’utilisateur. Désactivé par défaut.
analysis_contexttext · Défaut: ""
Valeur exemple<current-user-id>
Expression Bubble exempleCurrent User's unique id
Valeur stable pour ce compte ou cette fiche. La changer efface la photo précédente.
is_activeyes/no · Défaut: true
Valeur exempleyes
Expression Bubble exempleGuideHost's view_is_active (your yes/no custom state)
yes tant que cette vue est ouverte ; no en la quittant pour arrêter la lecture ou l’action en cours.
fields_jsontext · Défaut: "[\"title\",\"date\",\"total\"]"
Valeur exemple["title","date","total"]
Expression Bubble exempleExpense Settings' extraction_fields_json
Tableau JSON des noms de champs demandés ; les valeurs restent à relire.
Actions et paramètres · 2

Parcours prévu. Pas encore disponible dans la bêta actuelle.

Analyze Captured Document
image_base64text · Défaut: —
Valeur exemple<canonical bytes from consented export>
Expression Bubble exempleDocument Capture's analysis_image_base64
Utilisez la valeur de la fiche courante et les limites ci-dessous.
mime_typetext · Défaut: —
Valeur exempleimage/jpeg
Expression Bubble exempleDocument Capture's analysis_mime_type
Utilisez la valeur de la fiche courante et les limites ci-dessous.
fields_jsontext · Défaut: —
Valeur exemple["title","date","total"]
Expression Bubble exempleDocument Capture's analysis_fields_json
Tableau JSON des noms de champs demandés ; les valeurs restent à relire.
consentyes/no · Défaut: —
Valeur exempleyes — current processing consent
Expression Bubble exempleDocument Capture's analysis_consent
Utilisez la valeur de la fiche courante et les limites ci-dessous.
idempotency_keytext · Défaut: —
Valeur exemple<unchanged analysis_request_id>
Expression Bubble exempleDocument Capture's analysis_request_id
Utilisez la valeur de la fiche courante et les limites ci-dessous.
environmenttext · Défaut: —
Valeur exempledevelopment
Expression Bubble exempleApp Settings' selected_environment
Utilisez la valeur de la fiche courante et les limites ci-dessous.

Retours

ok · yes/nostatus · textoperation_id · textrequest_id · textfields_json · texterror_code · textreview_required · yes/no
Read Analysis
operation_idtext · Défaut: —
Valeur exemple<returned operation_id>
Expression Bubble exempleCurrent ExpenseDraft's operation_id
Utilisez la valeur de la fiche courante et les limites ci-dessous.
environmenttext · Défaut: —
Valeur exempledevelopment
Expression Bubble exempleApp Settings' selected_environment
Utilisez la valeur de la fiche courante et les limites ci-dessous.

Retours

ok · yes/nostatus · textoperation_id · textrequest_id · textfields_json · texterror_code · textreview_required · yes/no
États et événements

Parcours prévu. Pas encore disponible dans la bêta actuelle.

États

capture_status · text

Résultat actuel de l’action. Attendez l’événement de fin correspondant avant de valider la réussite.

local_uri · text

Emplacement du fichier sur cet appareil. Sauvegardez ou envoyez-le séparément pour le conserver en ligne.

mime_type · text

Valeur actuelle de l’élément choisi. Lisez-la après l’événement correspondant.

document_side · text

Valeur actuelle de l’élément choisi. Lisez-la après l’événement correspondant.

image_width · number

Valeur actuelle de l’élément choisi. Lisez-la après l’événement correspondant.

image_height · number

Valeur actuelle de l’élément choisi. Lisez-la après l’événement correspondant.

error_code · text

Information sur l’erreur de la dernière action. Affichez un message utile et proposez la bonne nouvelle tentative.

is_capturing · yes/no

Valeur actuelle de l’élément choisi. Lisez-la après l’événement correspondant.

analysis_image_base64 · text

Valeur actuelle de l’élément choisi. Lisez-la après l’événement correspondant.

analysis_mime_type · text

Valeur actuelle de l’élément choisi. Lisez-la après l’événement correspondant.

analysis_fields_json · text

Valeurs proposées pour les champs demandés. Faites-les vérifier avant enregistrement.

analysis_request_id · text

Identifiant de cet élément ou de cette action. Gardez-le avec la fiche correspondante. Réutilisez le même identifiant de demande si le résultat est incertain.

analysis_consent · yes/no

Valeur actuelle de l’élément choisi. Lisez-la après l’événement correspondant.

analysis_export_status · text

Résultat actuel de l’action. Attendez l’événement de fin correspondant avant de valider la réussite.

analysis_export_error · text

Information sur l’erreur de la dernière action. Affichez un message utile et proposez la bonne nouvelle tentative.

analysis_image_bytes · number

Valeur actuelle de l’élément choisi. Lisez-la après l’événement correspondant.

Événements

capture_started

À cet événement, lisez les états correspondants du même élément.

capture_succeeded

À cet événement, lisez les états correspondants du même élément.

capture_cancelled

À cet événement, lisez les états correspondants du même élément.

permission_denied

À cet événement, lisez les états correspondants du même élément.

capture_error

À cet événement, lisez les états correspondants du même élément.

analysis_requested

À cet événement, lisez les états correspondants du même élément.

analysis_export_error

À cet événement, lisez les états correspondants du même élément.

analysis_cleared

À cet événement, lisez les états correspondants du même élément.

Questions des développeurs

Vérifie-t-il identité ou documents ?

Non. Il propose des valeurs à relire, sans établir identité, authenticité ou conclusion médicale/financière.

Comment fonctionne l’abonnement ?

Tarification prévue : l'installation du plugin dans Bubble est gratuite. L'accès BestPlugins est un abonnement séparé pour chaque plugin dans chaque projet d'application Bubble : 7 jours gratuits, puis US$1.50 par mois. Development et Live sont inclus. Il n'y a pas de limite fixe au nombre d'opérations ; les limites de taille de fichier et de fonctionnalités restent applicables. Le paiement n'est pas encore ouvert. L'écran d'activation affichera la première date de facturation et les conditions d'annulation.

Autres exemples du produit
Xodera Documents AI Native — Exemple antérieur du produit ; l’apparence peut différer dans la bêta actuelle.
Exemple antérieur du produit ; l’apparence peut différer dans la bêta actuelle.

Guides associés

Marketplace publication en attente

Guide du forum non publié

Pour obtenir de l’aide, indiquez le plugin, l’appareil, l’action essayée et le résultat. Utilisez un exemple sans données personnelles. Ne partagez jamais votre clé ni vos fichiers privés.