Interfejs przechwytywania zdjęć Documents AI. Planowane jest wyodrębnianie pól.
Interfejs przechwytywania zdjęć Documents AI. Planowane jest wyodrębnianie pól.
← Wszystkie natywne przewodniki

Xodera Plugins · Bubble Native

Xodera Documents AI Native

Przekształć zdjęcie paragonu lub dostawy w formularz szkicu. Pozwól AI zasugerować datę, sumę i inne wymagane pola, a następnie niech osoba je sprawdzi przed zapisaniem.

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.

Dokumentacja przeglądnięta 6 listopad 2026

Praktyczne przykłady

Wstępnie wypełnij szkic wydatku ze zdjęcia paragonu

Powtarzające się wpisywanie sprzedawcy, daty i sumy spowalnia wprowadzanie wydatków; wyodrębnione pola mogą być szkicem do przeglądu.

`fields_json = ["merchant","date","total","currency"]`; użytkownik rejestruje obraz paragonu i osobno wyraża zgodę na przetwarzanie. Używaj tylko przykładowych paragonów podczas testów.

Planowane: `analysis_requested` → Analyze Captured Document przy użyciu ograniczonych wyeksportowanych bajtów/MIME/nazw pól/zgody/identyfikatora żądania → pokaż zwrócone pola w edytowalnym formularzu Wydatku.

Akcja zwraca `status`, `operation_id`, `fields_json` i `review_required`. Użytkownik koryguje/akceptuje pola przed tym, jak Twój przepływ pracy utworzy Wydatki.

W przypadku niepewnego wyniku, Read Analysis z tym samym `operation_id`; nie uruchamiaj automatycznie kolejnej analizy. Cofnięcie zgody usuwa zachowane przechwycenie/eksport; nigdy nie przechowuj surowego base64 w publicznym obiekcie ani w logach.

Planowane. Osoba musi przejrzeć każdą proponowaną wartość przed zapisaniem.

Odczytaj odniesienie do dowodu dostawy dla formularza przeglądu pracownika

Użytkownik magazynu powinien móc przeglądać proponowane odniesienie/datę zamiast wpisywać je z sfotografowanego papierowego dowodu.

`fields_json = ["delivery_reference","supplier","delivery_date"]`; zarejestruj odpowiednią stronę przykładowego dowodu dostawy podczas testów.

Po osobnej zgodzie na przechwycenie/przetwarzanie, Analyze Captured Document proponuje wybrane pola. Pokaż fotografię obok edytowalnych pól i poproś personel o potwierdzenie pasującego rekordu Dostawy.

Zachowaj zwrócony `operation_id`, aby ponownie sprawdzić wynik, oraz `fields_json` jako propozycję. Twój przepływ pracy wykonuje rzeczywiste wyszukiwanie/aktualizację Dostawy dopiero po przeglądzie przez personel.

Brakujące, niejednoznaczne lub nieprawidłowe pola wymagają ręcznej korekty. Błąd dostawcy pozostawia oryginalną Dostawę niezmienioną; Read Analysis sprawdź wynik niepewnej operacji.

Planowane. Osoba musi przejrzeć każdą proponowaną wartość przed zapisaniem.

Zaproponuj numer seryjny sprzętu ze zdjęcia etykiety

Formularz konserwacji może oferować przeglądalną sugestię modelu/seryjnego, gdy etykieta zasobu jest trudna do wpisania.

`fields_json = ["manufacturer","model","serial_number"]`; zarejestruj przykładowy obraz etykiety sprzętu; wybierz swojego dostawcę AI w ustawieniach projektu.

Planowana akcja Analyze Captured Document zwraca proponowane ciągi znaków. Wyświetl je obok zdjęcia; pozwól użytkownikowi je poprawić przed wyszukiwaniem zasobu lub przepływem konserwacji.

Użyj zwróconych `fields_json`, `review_required` i `operation_id`. Traktuj identyfikatory jako tekst, aby aplikacja zachowała wiodące zera.

Jeśli obraz jest nieczytelny lub model proponuje błędny ciąg, zezwól na ręczne wprowadzenie. Odczytaj wynik tej samej operacji po niepewnej odpowiedzi, zamiast naliczać kolejną inferencję.

Planowane. Osoba musi przejrzeć każdą proponowaną wartość przed zapisaniem.

Co działa teraz

Prywatna beta. Przechwytywanie zdjęć jest dostępne do testów. Wyodrębnianie pól ze zdjęcia jest planowane i nie jest jeszcze gotowe do użycia w Twojej aplikacji.

Zbuduj przepływ pracy

Zaplanowane

Planowany przepływ pracy. Nie jest jeszcze dostępny w bieżącej wersji beta.

Te przykłady używają rekordów aplikacji, takich jak Lesson, Message i Order. Zastąp je własnymi typami danych i nazwami elementów. Przykładowe adresy mediów należy zastąpić własnymi plikami.

  1. Planowane: wybierz pola potrzebne w formularzu, np. fields_json=["title","date","total"]. Włącz enable_analysis_export i ustaw analysis_context na wybrane konto lub rekord. Te ustawienia analizy nie są dostępne w bieżącej wersji przechwytywania.

  2. Pozwól użytkownikowi zrobić zdjęcie i oddzielnie wyrazić zgodę na przetwarzanie. W analysis_requested uruchom Analyze Captured Document używając elementu analysis_image_base64, analysis_mime_type, analysis_fields_json i analysis_consent. Użyj analysis_request_id jako idempotency_key.

  3. Zapisz zwrócone operation_id, request_id oraz status. Jeśli status to processing, użyj Read Analysis z tym operation_id, aby później pobrać wynik.

  4. Pokaż zwrócone fields_json w edytowalnym formularzu przeglądu. Zapisz zatwierdzone wartości dopiero po sprawdzeniu ich przez użytkownika i naciśnięciu Potwierdź. Zachowaj oryginalny rekord do momentu potwierdzenia.

Diagram przepływu pracy — nie zrzut ekranu aplikacji

Skonfiguruj raz

Utwórz lub wybierz swój projekt aplikacji Bubble w BestPlugins → Dashboard → Plugins. Wybierz Xodera Documents AI Native, skopiuj jego klucz, a następnie otwórz Bubble → Plugins → Xodera Documents AI Native i wklej go do project_api_key. Zapisz raz; potem użyj poniższych akcji. Każda wtyczka w każdym projekcie ma własny klucz.

Poproś o zezwolenie na dostęp do kamery i wyjaśnij, dlaczego zdjęcie jest potrzebne. Przetwarzanie wymaga odrębnej zgody użytkownika. Wybierz dostawcę AI w ustawieniach projektu; jego użycie jest rozliczane przez tego dostawcę.

Skonfiguruj raz
  1. Utwórz lub wybierz swój projekt aplikacji Bubble w BestPlugins → Dashboard → Plugins.
  2. Wybierz tę wtyczkę i skopiuj jej klucz projektu.
  3. Otwórz Bubble → Plugins → Xodera Documents AI Native; wklej klucz do project_api_key i zapisz.
  4. Dodaj element, wybierz dane aplikacji i zbuduj poniższy przepływ pracy.
  5. Dostęp do prywatnej bety tylko na razie. Publiczna instalacja i płatna aktywacja nie są jeszcze dostępne.
Instalacja i subskrypcja

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.

Zapisz wynik w swojej aplikacji

Przykład ExpenseDraft: właściciel, operation_id, request_id, status i proposed_fields_json. Po przeglądzie zapisz zatwierdzoną datę, sumę i inne pola, plus reviewed_by oraz reviewed_at. Mapuj tylko pola wymagane przez Twój formularz. Nie umieszczaj pełnej zawartości obrazu w logach ani zwykłych rekordach tekstowych.

Błąd, anulowanie i odzyskiwanie

Jeśli wynik jest opóźniony, zachowaj to samo żądanie i użyj Read Analysis dla znanego operation_id. Nie rób nowego zdjęcia ani nie twórz automatycznie nowego żądania. Jeśli użytkownik wycofa zgodę, usuń zdjęcie i przestań oferować wynik; nie można cofnąć już wysłanej lub zapisanej kopii.

Możliwości i ograniczenia

Planowane wejście obrazu: PNG, JPEG lub WebP, do 5 MiB; żądaj nazw pól 1–32. Zawsze przeglądaj wyodrębnione wartości. To nie jest weryfikacja tożsamości, sprawdzanie autentyczności dokumentu ani narzędzie decyzyjne w medycynie. Opłaty dostawcy AI są oddzielne.

Ustawienia, akcje i wyniki

Użyj tych nazw w Bubble. Planowane funkcje są oznaczone osobno.

Dostępne ustawienia beta

Ustawienia elementu

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

Stany

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

Zdarzenia

capture_startedcapture_succeededcapture_cancelledpermission_deniedcapture_erroranalysis_startedanalysis_readyanalysis_pendinganalysis_error

Akcje i ich wejścia

Ustawienia elementu · 12

Planowany przepływ pracy. Nie jest jeszcze dostępny w bieżącej wersji beta.

document_sidetext · Domyślne: "front"
Przykładowa wartośćfront
Przykładowe wyrażenie BubbleCapture Side Dropdown's value
Użyj wartości bieżącego rekordu biznesowego; zweryfikuj ją względem poniższych limitów.
button_labeltext · Domyślne: ""
Przykładowa wartość""
Przykładowe wyrażenie BubbleApp Texts' capture_label
Widoczny tekst aplikacji; puste używa wbudowanej zlokalizowanej wersji, jeśli jest dostępna. Brak danych uwierzytelniających.
consent_texttext · Domyślne: ""
Przykładowa wartośćI agree to capture this non-sensitive receipt.
Przykładowe wyrażenie BubbleApp Texts' capture_consent
Wyjaśnij konkretny cel przechwytywania/przetwarzania oraz odbiorcę. Cofnięcie zgody usuwa zachowane bajty, ale nie usuwa wcześniejszych kopii aplikacji.
disabledyes/no · Domyślne: false
Przykładowa wartośćno
Przykładowe wyrażenie BubbleGuideHost's is_busy (your yes/no custom state)
Wyłącz element, gdy aplikacja jest zajęta lub akcja jest niedostępna.
processing_consent_texttext · Domyślne: ""
Przykładowa wartośćI agree to send this image to the configured AI provider for draft fields.
Przykładowe wyrażenie BubbleApp Texts' processing_consent
Wyjaśnij konkretny cel przechwytywania/przetwarzania oraz odbiorcę. Cofnięcie zgody usuwa zachowane bajty, ale nie usuwa wcześniejszych kopii aplikacji.
analyze_button_labeltext · Domyślne: ""
Przykładowa wartość""
Przykładowe wyrażenie BubbleApp Texts' analyze_label
Widoczny tekst aplikacji; puste używa wbudowanej zlokalizowanej wersji, jeśli jest dostępna. Brak danych uwierzytelniających.
languagetext · Domyślne: "auto"
Przykładowa wartośćuk
Przykładowe wyrażenie BubbleCurrent User's preferred_language
Ustaw language=auto, aby podążał za obsługiwanym językiem urządzenia lub przeglądarki. Wprowadź obsługiwany kod języka, aby wybrać go explicite.
ui_text_jsontext · Domyślne: ""
Przykładowa wartość{}
Przykładowe wyrażenie BubbleApp Settings' player_labels_json (supported keys only)
Opcjonalny JSON z obsługiwanymi etykietami przycisków. Pozostaw puste, aby użyć wbudowanego tekstu.
enable_analysis_exportyes/no · Domyślne: false
Przykładowa wartośćyes
Przykładowe wyrażenie BubbleApp Settings' enable_reviewed_extraction
Planowane: zezwolić akcji analizy na użycie zdjęcia po uzyskaniu obu zgód użytkownika. Domyślnie wyłączone.
analysis_contexttext · Domyślne: ""
Przykładowa wartość<current-user-id>
Przykładowe wyrażenie BubbleCurrent User's unique id
Stała wartość dla tego konta lub rekordu. Zmiana powoduje usunięcie poprzedniego zdjęcia.
is_activeyes/no · Domyślne: true
Przykładowa wartośćyes
Przykładowe wyrażenie BubbleGuideHost's view_is_active (your yes/no custom state)
Ustaw tak, gdy ten widok jest otwarty. Ustaw nie przy zamykaniu, aby odtwarzanie lub bieżąca praca mogły się zatrzymać.
fields_jsontext · Domyślne: "[\"title\",\"date\",\"total\"]"
Przykładowa wartość["title","date","total"]
Przykładowe wyrażenie BubbleExpense Settings' extraction_fields_json
JSON tablica żądanych nazw pól ekstrakcji; wynik to proponowane dane do przeglądu przez człowieka.
Akcje i ich wejścia · 2

Planowany przepływ pracy. Nie jest jeszcze dostępny w bieżącej wersji beta.

Analyze Captured Document
image_base64text · Domyślne: —
Przykładowa wartość<canonical bytes from consented export>
Przykładowe wyrażenie BubbleDocument Capture's analysis_image_base64
Użyj wartości bieżącego rekordu biznesowego; zweryfikuj ją względem poniższych limitów.
mime_typetext · Domyślne: —
Przykładowa wartośćimage/jpeg
Przykładowe wyrażenie BubbleDocument Capture's analysis_mime_type
Użyj wartości bieżącego rekordu biznesowego; zweryfikuj ją względem poniższych limitów.
fields_jsontext · Domyślne: —
Przykładowa wartość["title","date","total"]
Przykładowe wyrażenie BubbleDocument Capture's analysis_fields_json
JSON tablica żądanych nazw pól ekstrakcji; wynik to proponowane dane do przeglądu przez człowieka.
consentyes/no · Domyślne: —
Przykładowa wartośćyes — current processing consent
Przykładowe wyrażenie BubbleDocument Capture's analysis_consent
Użyj wartości bieżącego rekordu biznesowego; zweryfikuj ją względem poniższych limitów.
idempotency_keytext · Domyślne: —
Przykładowa wartość<unchanged analysis_request_id>
Przykładowe wyrażenie BubbleDocument Capture's analysis_request_id
Użyj wartości bieżącego rekordu biznesowego; zweryfikuj ją względem poniższych limitów.
environmenttext · Domyślne: —
Przykładowa wartośćdevelopment
Przykładowe wyrażenie BubbleApp Settings' selected_environment
Użyj wartości bieżącego rekordu biznesowego; zweryfikuj ją względem poniższych limitów.

Zwroty

ok · yes/nostatus · textoperation_id · textrequest_id · textfields_json · texterror_code · textreview_required · yes/no
Read Analysis
operation_idtext · Domyślne: —
Przykładowa wartość<returned operation_id>
Przykładowe wyrażenie BubbleCurrent ExpenseDraft's operation_id
Użyj wartości bieżącego rekordu biznesowego; zweryfikuj ją względem poniższych limitów.
environmenttext · Domyślne: —
Przykładowa wartośćdevelopment
Przykładowe wyrażenie BubbleApp Settings' selected_environment
Użyj wartości bieżącego rekordu biznesowego; zweryfikuj ją względem poniższych limitów.

Zwroty

ok · yes/nostatus · textoperation_id · textrequest_id · textfields_json · texterror_code · textreview_required · yes/no
Stany i zdarzenia

Planowany przepływ pracy. Nie jest jeszcze dostępny w bieżącej wersji beta.

Stany

capture_status · text

Aktualny wynik tej akcji. Użyj pasującego zdarzenia zakończenia przed zapisaniem sukcesu.

local_uri · text

Lokalizacja pliku na tym urządzeniu. Zapisz lub prześlij plik osobno, jeśli musi być przechowywany online.

mime_type · text

Aktualna wartość wybranego elementu. Odczytaj ją po powiązanym zdarzeniu.

document_side · text

Aktualna wartość wybranego elementu. Odczytaj ją po powiązanym zdarzeniu.

image_width · number

Aktualna wartość wybranego elementu. Odczytaj ją po powiązanym zdarzeniu.

image_height · number

Aktualna wartość wybranego elementu. Odczytaj ją po powiązanym zdarzeniu.

error_code · text

Informacje o błędzie ostatniej akcji. Wyświetl pomocną wiadomość i zaoferuj odpowiednią ponowną próbę.

is_capturing · yes/no

Aktualna wartość wybranego elementu. Odczytaj ją po powiązanym zdarzeniu.

analysis_image_base64 · text

Aktualna wartość wybranego elementu. Odczytaj ją po powiązanym zdarzeniu.

analysis_mime_type · text

Aktualna wartość wybranego elementu. Odczytaj ją po powiązanym zdarzeniu.

analysis_fields_json · text

Sugerowane wartości dla żądanych pól. Pokaż je do przeglądu przed zapisaniem.

analysis_request_id · text

Identyfikator tego elementu lub akcji. Przechowuj go wraz z odpowiadającym rekordem aplikacji. Użyj tego samego identyfikatora żądania przy ponawianiu niepewnego wyniku.

analysis_consent · yes/no

Aktualna wartość wybranego elementu. Odczytaj ją po powiązanym zdarzeniu.

analysis_export_status · text

Aktualny wynik tej akcji. Użyj pasującego zdarzenia zakończenia przed zapisaniem sukcesu.

analysis_export_error · text

Informacje o błędzie ostatniej akcji. Wyświetl pomocną wiadomość i zaoferuj odpowiednią ponowną próbę.

analysis_image_bytes · number

Aktualna wartość wybranego elementu. Odczytaj ją po powiązanym zdarzeniu.

Zdarzenia

capture_started

Gdy to zdarzenie wystąpi, odczytaj powiązane stany z tego samego elementu.

capture_succeeded

Gdy to zdarzenie wystąpi, odczytaj powiązane stany z tego samego elementu.

capture_cancelled

Gdy to zdarzenie wystąpi, odczytaj powiązane stany z tego samego elementu.

permission_denied

Gdy to zdarzenie wystąpi, odczytaj powiązane stany z tego samego elementu.

capture_error

Gdy to zdarzenie wystąpi, odczytaj powiązane stany z tego samego elementu.

analysis_requested

Gdy to zdarzenie wystąpi, odczytaj powiązane stany z tego samego elementu.

analysis_export_error

Gdy to zdarzenie wystąpi, odczytaj powiązane stany z tego samego elementu.

analysis_cleared

Gdy to zdarzenie wystąpi, odczytaj powiązane stany z tego samego elementu.

Pytania, które zadają programiści

Czy weryfikuje to tożsamość lub dokumenty?

Nie. Proponuje pola tekstowe do przeglądu. Zarejestrowany obraz dokumentu nie ustala tożsamości, autentyczności ani wniosku medycznego/finansowego.

Jak działa subskrypcja?

Planowane ceny: instalacja wtyczki w Bubble jest darmowa. Dostęp do BestPlugins to osobna subskrypcja dla każdej wtyczki w każdym projekcie aplikacji Bubble: 7 dni darmowo, potem US$1.50 miesięcznie. Development i Live są wliczone. Nie ma stałego limitu liczby operacji; nadal obowiązują limity rozmiaru pliku i funkcji. Kasa nie jest jeszcze otwarta. Ekran aktywacji pokaże pierwszą datę rozliczenia i warunki anulowania.

Powiązane przewodniki

Marketplace wydanie w toku

Przewodnik forum nieopublikowany

Aby uzyskać pomoc, podaj, której wtyczki i urządzenia używasz, jaką akcję podjąłeś i co się stało. Użyj przykładu bez danych osobowych. Nigdy nie udostępniaj swojego klucza ani prywatnych plików.