Documents AI-fotocapturinterface. Veldextractie is gepland.
Documents AI-fotocapturinterface. Veldextractie is gepland.
← Alle native gidsen

Xodera Plugins · Bubble Native

Xodera Documents AI Native

Zet een bon of leveringsfoto om in een conceptformulier. Laat AI de datum, het totaal en andere gevraagde velden voorstellen, en laat vervolgens een persoon ze beoordelen voordat ze worden opgeslagen.

Public beta guides · Haptics instructions are in its Bubble listing

Public beta offer: free Bubble install · 7-day card trial, then US$1.50/month per plugin/project.

Documentatie beoordeeld 6 november 2026

Praktische voorbeelden

Vul een onkostennotitie vooraf in vanuit een bonfoto

Herhaaldelijk typen van handelaar, datum en totaal vertraagt het invoeren van onkosten; geëxtraheerde velden kunnen een te beoordelen concept zijn.

`fields_json = ["merchant","date","total","currency"]`; de gebruiker maakt een bonafbeelding vast en geeft afzonderlijk toestemming voor verwerking. Gebruik alleen voorbeeldbonnen tijdens het testen.

Gepland: `analysis_requested` → Analyze Captured Document met de begrensde geëxporteerde bytes/MIME/veld namen/toestemming/verzoek‑ID → toon de geretourneerde velden in uw bewerkbare onkostenvormulier.

De actie retourneert `status`, `operation_id`, `fields_json` en `review_required`. Uw gebruiker corrigeert de velden of keurt ze goed voordat uw workflow een onkost maakt.

Bij een onzeker resultaat, Read Analysis met dezelfde `operation_id`; voer geen automatische extra analyse uit. Het intrekken van toestemming wist vastgelegde/exportgegevens; bewaar nooit ruwe base64 in een openbaar object of logbestanden.

Gepland. Een persoon moet elke voorgestelde waarde beoordelen voordat deze wordt opgeslagen.

Lees een leveringsbonreferentie voor een beoordelingsformulier voor personeel

Een magazijngebruiker moet een voorgestelde referentie/datum kunnen beoordelen in plaats van deze in te typen vanaf een gefotografeerde papieren slip.

`fields_json = ["delivery_reference","supplier","delivery_date"]`; leg de relevante zijde van een voorbeeldleveringsbon vast tijdens het testen.

Na afzonderlijke vastlegging-/verwerkingstoestemming stelt Analyze Captured Document de geselecteerde velden voor. Toon de foto naast bewerkbare velden en vraag het personeel de overeenkomende leveringsrecord te bevestigen.

Bewaar de geretourneerde `operation_id` om het resultaat opnieuw te controleren en `fields_json` als voorstel. Uw workflow voert de daadwerkelijke leveringsopzoeking/-update pas uit na beoordeling door het personeel.

Ontbrekende, dubbelzinnige of onjuiste velden vereisen handmatige correctie. Een providerfout laat de oorspronkelijke Levering ongewijzigd; Read Analysis controleer het resultaat van een onzekere bewerking.

Gepland. Een persoon moet elke voorgestelde waarde beoordelen voordat deze wordt opgeslagen.

Stel een serienummer van apparatuur voor op basis van een labelfoto

Een onderhoudsformulier kan een te beoordelen model/serienummer suggestie bieden wanneer een assetlabel lastig in te typen is.

`fields_json = ["manufacturer","model","serial_number"]`; maak een voorbeeldafbeelding van een apparatuurlabel; kies uw AI-provider in de projectinstellingen.

De geplande Analyze Captured Document-actie retourneert voorgestelde strings. Toon ze naast de foto; laat de gebruiker ze corrigeren vóór uw Asset-zoekopdracht of onderhoudsworkflow.

Gebruik de geretourneerde `fields_json`, `review_required` en `operation_id`. Behandel identifiers als tekst zodat uw app voorloopnullen behoudt.

Als de afbeelding onleesbaar is of het model een verkeerde string voorstelt, sta handmatige invoer toe. Lees dezelfde bewerking na een onzekere respons in plaats van een extra inferentie te kosten.

Gepland. Een persoon moet elke voorgestelde waarde beoordelen voordat deze wordt opgeslagen.

Wat nu werkt

Privé‑bèta. Fotocaptatie is beschikbaar voor testen. Het extraheren van velden uit de foto is gepland en nog niet klaar voor gebruik in uw app.

Bouw de workflow

Gepland

Gepland workflow. Nog niet beschikbaar in de huidige bèta.

Deze voorbeelden gebruiken app‑records zoals Lesson, Message en Order. Vervang ze door uw eigen gegevenstypen en elementnamen. Voorbeeld‑mediapaden moeten worden vervangen door uw eigen bestanden.

  1. Gepland: kies de velden die uw formulier nodig heeft, bijvoorbeeld fields_json=["title","date","total"]. Schakel enable_analysis_export in en stel analysis_context in op het geselecteerde account of record. Deze analyse‑instellingen zijn niet beschikbaar in de huidige vastleggingsversie.

  2. Laat de gebruiker een foto maken en afzonderlijk toestemming geven voor verwerking. Op analysis_requested voert u Analyze Captured Document uit met behulp van de analysis_image_base64, analysis_mime_type, analysis_fields_json en analysis_consent van dit element. Gebruik analysis_request_id als idempotency_key.

  3. Sla de geretourneerde operation_id, request_id en status op. Als de status ‘processing’ is, gebruik dan Read Analysis met die operation_id om later het resultaat op te halen.

  4. Toon de geretourneerde fields_json in een bewerkbaar beoordelingsformulier. Sla goedgekeurde waarden pas op nadat de gebruiker ze heeft gecontroleerd en op Bevestigen heeft geklikt. Bewaar het oorspronkelijke record tot die bevestiging.

Workflow‑diagram — geen appscreenshot

Eenmalig configureren

Maak of kies uw Bubble app‑project in BestPlugins → Dashboard → Plugins. Kies Xodera Documents AI Native, kopieer de sleutel, open vervolgens Bubble → Plugins → Xodera Documents AI Native en plak deze in project_api_key. Sla één keer op; gebruik daarna de acties hieronder. Elke plug‑in in elk project heeft zijn eigen sleutel.

Vraag om cameratoestemming en leg uit waarom de foto nodig is. Verwerking vereist een aparte gebruikersovereenkomst. Kies uw AI‑provider in de projectinstellingen; het gebruik wordt door die provider gefactureerd.

Eenmalig configureren
  1. Maak of kies uw Bubble app‑project op BestPlugins → Dashboard → Plugins.
  2. Kies deze plug‑in en kopieer de projectsleutel.
  3. Open Bubble → Plugins → Xodera Documents AI Native; plak de sleutel in project_api_key en sla op.
  4. Voeg het element toe, kies uw app‑gegevens en bouw de workflow hieronder.
  5. Privé‑bèta‑toegang voorlopig alleen. Publieke installatie en betaalde activering zijn nog niet beschikbaar.
Installatie en abonnement

For Audio Player, Video Player, Photo Editor, Audio Recorder, Files Kit and Haptics: free Bubble installation, a 7-day trial with a card, then US$1.50 per month per plugin and app project. Development and production are included, with no operation cap. File-size and feature limits still apply. Review billing and cancellation before confirming. Other plugins remain unavailable for purchase.

Sla het resultaat op in je app

Voorbeeld ExpenseDraft: eigenaar, operation_id, request_id, status en proposed_fields_json. Na beoordeling slaat u de goedgekeurde datum, het totaal en andere velden op, plus reviewed_by en reviewed_at. Koppel alleen de velden die uw formulier heeft aangevraagd. Plaats de volledige afbeeldingsinhoud niet in logboeken of gewone tekstrecords.

Fout, annulering en herstel

Als het resultaat vertraagd is, behoud dan dezelfde aanvraag en gebruik Read Analysis voor de bekende operation_id. Maak geen nieuwe foto of automatisch een nieuwe aanvraag aan. Als de gebruiker toestemming intrekt, verwijder dan de foto en stop met het aanbieden van het resultaat; dit kan een reeds verzonden of opgeslagen kopie niet terugroepen.

Mogelijkheden en limieten

Geplande afbeeldinginvoer: PNG, JPEG of WebP, tot 5 MiB; vraag 1–32 afzonderlijke veldnamen aan. Controleer altijd de geëxtraheerde waarden. Dit is geen identiteitsverificatie, geen controle van de authenticiteit van documenten of een medisch beslissingsinstrument. Kosten van AI-provider zijn afzonderlijk.

Instellingen, acties en resultaten

Gebruik deze namen in Bubble. Geplande functies worden apart gemarkeerd.

Beschikbare bètainstellingen

Elementinstellingen

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

Statussen

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

Evenementen

capture_startedcapture_succeededcapture_cancelledpermission_deniedcapture_erroranalysis_startedanalysis_readyanalysis_pendinganalysis_error

Acties en hun invoer

Elementinstellingen · 12

Gepland workflow. Nog niet beschikbaar in de huidige bèta.

document_sidetext · Standaard: "front"
Voorbeeldwaardefront
Voorbeeld Bubble-expressieCapture Side Dropdown's value
Gebruik de waarde van het huidige bedrijfsrecord; valideer deze tegen de onderstaande limieten.
button_labeltext · Standaard: ""
Voorbeeldwaarde""
Voorbeeld Bubble-expressieApp Texts' capture_label
Zichtbare app‑tekst; leeg laat ingebouwde gelokaliseerde tekst gebruiken waar ondersteund. Geen inloggegevens.
consent_texttext · Standaard: ""
VoorbeeldwaardeI agree to capture this non-sensitive receipt.
Voorbeeld Bubble-expressieApp Texts' capture_consent
Leg het specifieke doel van de capture/verwerking en de ontvanger uit. Intrekking van toestemming wist bewaarde bytes, niet eerdere app-kopieën.
disabledyes/no · Standaard: false
Voorbeeldwaardeno
Voorbeeld Bubble-expressieGuideHost's is_busy (your yes/no custom state)
Schakel het element uit terwijl uw app bezig is of deze actie niet beschikbaar is.
processing_consent_texttext · Standaard: ""
VoorbeeldwaardeI agree to send this image to the configured AI provider for draft fields.
Voorbeeld Bubble-expressieApp Texts' processing_consent
Leg het specifieke doel van de capture/verwerking en de ontvanger uit. Intrekking van toestemming wist bewaarde bytes, niet eerdere app-kopieën.
analyze_button_labeltext · Standaard: ""
Voorbeeldwaarde""
Voorbeeld Bubble-expressieApp Texts' analyze_label
Zichtbare app‑tekst; leeg laat ingebouwde gelokaliseerde tekst gebruiken waar ondersteund. Geen inloggegevens.
languagetext · Standaard: "auto"
Voorbeeldwaardeuk
Voorbeeld Bubble-expressieCurrent User's preferred_language
Stel language=auto in om een ondersteund apparaat of browsertaal te volgen. Voer een ondersteunde taalcodes in om deze expliciet te kiezen.
ui_text_jsontext · Standaard: ""
Voorbeeldwaarde{}
Voorbeeld Bubble-expressieApp Settings' player_labels_json (supported keys only)
Optionele JSON met ondersteunde knoplabels. Laat leeg om de ingebouwde tekst te gebruiken.
enable_analysis_exportyes/no · Standaard: false
Voorbeeldwaardeyes
Voorbeeld Bubble-expressieApp Settings' enable_reviewed_extraction
Gepland: sta de analyse-actie toe de foto te gebruiken na beide gebruikersovereenkomsten. Standaard uitgeschakeld.
analysis_contexttext · Standaard: ""
Voorbeeldwaarde<current-user-id>
Voorbeeld Bubble-expressieCurrent User's unique id
Stabiele waarde voor dit account of record. Wijziging wist de vorige foto.
is_activeyes/no · Standaard: true
Voorbeeldwaardeyes
Voorbeeld Bubble-expressieGuideHost's view_is_active (your yes/no custom state)
Stel ja in zolang dit overzicht geopend is. Stel nee in bij verlaten, zodat afspelen of huidig werk kan stoppen.
fields_jsontext · Standaard: "[\"title\",\"date\",\"total\"]"
Voorbeeldwaarde["title","date","total"]
Voorbeeld Bubble-expressieExpense Settings' extraction_fields_json
JSON array van gevraagde extractieveldnamen; de output is voorgestelde gegevens voor menselijke beoordeling.
Acties en hun invoer · 2

Gepland workflow. Nog niet beschikbaar in de huidige bèta.

Analyze Captured Document
image_base64text · Standaard: —
Voorbeeldwaarde<canonical bytes from consented export>
Voorbeeld Bubble-expressieDocument Capture's analysis_image_base64
Gebruik de waarde van het huidige bedrijfsrecord; valideer deze tegen de onderstaande limieten.
mime_typetext · Standaard: —
Voorbeeldwaardeimage/jpeg
Voorbeeld Bubble-expressieDocument Capture's analysis_mime_type
Gebruik de waarde van het huidige bedrijfsrecord; valideer deze tegen de onderstaande limieten.
fields_jsontext · Standaard: —
Voorbeeldwaarde["title","date","total"]
Voorbeeld Bubble-expressieDocument Capture's analysis_fields_json
JSON array van gevraagde extractieveldnamen; de output is voorgestelde gegevens voor menselijke beoordeling.
consentyes/no · Standaard: —
Voorbeeldwaardeyes — current processing consent
Voorbeeld Bubble-expressieDocument Capture's analysis_consent
Gebruik de waarde van het huidige bedrijfsrecord; valideer deze tegen de onderstaande limieten.
idempotency_keytext · Standaard: —
Voorbeeldwaarde<unchanged analysis_request_id>
Voorbeeld Bubble-expressieDocument Capture's analysis_request_id
Gebruik de waarde van het huidige bedrijfsrecord; valideer deze tegen de onderstaande limieten.
environmenttext · Standaard: —
Voorbeeldwaardedevelopment
Voorbeeld Bubble-expressieApp Settings' selected_environment
Gebruik de waarde van het huidige bedrijfsrecord; valideer deze tegen de onderstaande limieten.

Retouren

ok · yes/nostatus · textoperation_id · textrequest_id · textfields_json · texterror_code · textreview_required · yes/no
Read Analysis
operation_idtext · Standaard: —
Voorbeeldwaarde<returned operation_id>
Voorbeeld Bubble-expressieCurrent ExpenseDraft's operation_id
Gebruik de waarde van het huidige bedrijfsrecord; valideer deze tegen de onderstaande limieten.
environmenttext · Standaard: —
Voorbeeldwaardedevelopment
Voorbeeld Bubble-expressieApp Settings' selected_environment
Gebruik de waarde van het huidige bedrijfsrecord; valideer deze tegen de onderstaande limieten.

Retouren

ok · yes/nostatus · textoperation_id · textrequest_id · textfields_json · texterror_code · textreview_required · yes/no
Statussen en gebeurtenissen

Gepland workflow. Nog niet beschikbaar in de huidige bèta.

Statussen

capture_status · text

Huidig resultaat van deze actie. Gebruik het bijpassende voltooiings‑event vóór het opslaan van succes.

local_uri · text

Bestandslocatie op dit apparaat. Sla het bestand apart op of upload het als het online bewaard moet blijven.

mime_type · text

Huidige waarde voor het geselecteerde item. Lees deze na het gerelateerde event.

document_side · text

Huidige waarde voor het geselecteerde item. Lees deze na het gerelateerde event.

image_width · number

Huidige waarde voor het geselecteerde item. Lees deze na het gerelateerde event.

image_height · number

Huidige waarde voor het geselecteerde item. Lees deze na het gerelateerde event.

error_code · text

Foutinformatie voor de laatste actie. Toon een nuttig bericht en bied de relevante herpoging aan.

is_capturing · yes/no

Huidige waarde voor het geselecteerde item. Lees deze na het gerelateerde event.

analysis_image_base64 · text

Huidige waarde voor het geselecteerde item. Lees deze na het gerelateerde event.

analysis_mime_type · text

Huidige waarde voor het geselecteerde item. Lees deze na het gerelateerde event.

analysis_fields_json · text

Voorgestelde waarden voor de gevraagde velden. Toon ze ter beoordeling vóór het opslaan.

analysis_request_id · text

Identificatie voor dit item of deze actie. Bewaar deze bij het bijbehorende app‑record. Gebruik dezelfde verzoek‑identificatie bij het opnieuw proberen van een onzeker resultaat.

analysis_consent · yes/no

Huidige waarde voor het geselecteerde item. Lees deze na het gerelateerde event.

analysis_export_status · text

Huidig resultaat van deze actie. Gebruik het bijpassende voltooiings‑event vóór het opslaan van succes.

analysis_export_error · text

Foutinformatie voor de laatste actie. Toon een nuttig bericht en bied de relevante herpoging aan.

analysis_image_bytes · number

Huidige waarde voor het geselecteerde item. Lees deze na het gerelateerde event.

Evenementen

capture_started

Wanneer dit evenement plaatsvindt, lees dan de gerelateerde toestanden van hetzelfde element.

capture_succeeded

Wanneer dit evenement plaatsvindt, lees dan de gerelateerde toestanden van hetzelfde element.

capture_cancelled

Wanneer dit evenement plaatsvindt, lees dan de gerelateerde toestanden van hetzelfde element.

permission_denied

Wanneer dit evenement plaatsvindt, lees dan de gerelateerde toestanden van hetzelfde element.

capture_error

Wanneer dit evenement plaatsvindt, lees dan de gerelateerde toestanden van hetzelfde element.

analysis_requested

Wanneer dit evenement plaatsvindt, lees dan de gerelateerde toestanden van hetzelfde element.

analysis_export_error

Wanneer dit evenement plaatsvindt, lees dan de gerelateerde toestanden van hetzelfde element.

analysis_cleared

Wanneer dit evenement plaatsvindt, lees dan de gerelateerde toestanden van hetzelfde element.

Vragen die ontwikkelaars stellen

Verifieert het identiteit of documenten?

Nee. Het stelt tekstvelden voor ter beoordeling. Een vastgelegde documentafbeelding stelt geen identiteit, authenticiteit of een medische/financiële conclusie vast.

Hoe werkt het abonnement?

Geplande prijsstelling: het installeren van de plugin in Bubble is gratis. BestPlugins-toegang is een afzonderlijk abonnement voor elke plugin in elk Bubble app‑project: 7 dagen gratis, daarna US$1.50 per maand. Development en Live zijn inbegrepen. Er is geen vaste limiet op het aantal bewerkingen; bestands‑grootte‑ en functielimieten blijven gelden. Afrekenen is nog niet geopend. Het activeringsscherm toont de eerste factuurdatum en annuleringsvoorwaarden.

Gerelateerde handleidingen

Marketplace release in afwachting

Forumgids niet geplaatst

Voor hulp, vertel ons welke plugin en welk apparaat u gebruikt, welke actie u probeerde en wat er gebeurde. Gebruik een voorbeeld zonder persoonlijke gegevens. Deel nooit uw sleutel of privé‑bestanden.