
Xodera Plugins · Bubble Native
Xodera QR Passes Native
Izradite jednorazne karte, potvrde preuzimanja ili kupone. Osoblje skenira kod, provjerava rezultat, pregledava narudžbu i potvrđuje upotrebu tek kada je spremno.
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.
Dokumentacija pregledana 6 novembar 2026
Praktični primjeri
Jednokratni ulaz za događaj istog dana
Snimak ekrana obične QR vrijednosti može se inače ponovno koristiti na više od jednog ulaza.
Vaša aplikacija pohranjuje zapis o Prijemu i stabilni izdavanje `request_id`; koristite uređeni `label=event` i `ttl_seconds` unutar 1–86400‑sekundnog ugovora.
Ovlašteni izdavač pokreće Issue QR pass i privatno isporučuje vraćeni QR. Osoblje skenira → Check QR pass → potvrđuje samo ako su `ok=yes` i `status=available` → Confirm QR redemption uz pohranjeni stabilni ID zahtjeva.
Samo `status=redeemed` plus `receipt_id` autoriziraju priznanicu prijema vaše aplikacije. Pohranite referencu propusnice/priznanice na Prijemu; ne otkrivajte sadržaj QR analitici.
Za `outcome_unknown`, oporavite isti zahtjev s identičnim korisnikom/okruženjem/propusnicom; nikada ne generišite novi ID potvrde. Obradite expired, revoked i već korištene stanje kao odvojene ishode.
Planirano. Skeniranje i provjera ne koriste propusnicu; koristi je samo eksplicitna potvrda.
Iskoristite kratkotrajnu pogodnost jednokratno na šalteru partnera
Partner treba potvrđen rezultat korišteno/neiskorišteno umjesto da vjeruje QR slici ili animaciji na ekranu.
`label=coupon`; zapis o Benefit-u aplikacije definira podobnost i kratko razdoblje valjanosti prije ovlaštene akcije izdavanja.
Izdajte propusnicu tek nakon provjere podobnosti vaše aplikacije. Na šalteru, Check QR pass prikazuje dostupnost bez potrošnje. Nakon što član osoblja potvrdi isporuku benefita, pokrenite Confirm QR redemption.
Vaš zapis o Benefit-u može pohraniti `receipt_id` i potvrđeno vrijeme iskorištenja nakon `status=redeemed`. Dodatak upravlja stanjem propusnice; vaša aplikacija upravlja benefitom i odnosom s kupcima.
Ako se benefit otkaže prije upotrebe, isti ovlašteni izdavač može Revoke QR pass koristeći svoj `pass_id`. Ne najavljujte povrat novca ili uspješno iskorištenje samo na osnovi `ok=yes`.
Planirano. Skeniranje i provjera ne koriste propusnicu; koristi je samo eksplicitna potvrda.
Potvrdite preuzimanje opreme ili narudžbe istog dana
Radni tok osoblja treba razlikovati skeniranje reference za preuzimanje od stvarnog predavanja predmeta.
Vaš zapis o vlasničkoj Kolekciji aplikacije čuva autorizaciju, namijenjenu stavku i odvojene stabilne ID‑ove zahtjeva za izdavanje/iskorištenje; koristite kratkotrajnu `label=access` propusnicu.
Nakon što vaša aplikacija odobri preuzimanje, Issue QR pass. Osoblje skenira i provjerava, pregledava odgovarajuću kolekciju u vašoj aplikaciji, zatim izričito potvrđuje predaju i Confirm QR redemption.
Tek nakon potvrđenog iskorištenja s potvrdom `redeemed` vaš radni tok treba označiti zapis Kolekcije kao predan. Zadržite `receipt_id` kao vezu do rezultata propusnice.
Ponovljeni sken može vratiti already_used; prikažite postojeći zapis aplikacije umjesto da predajete još jedan predmet. Povratite neizvjesnu potvrdu s istim ID‑om i unosima.
Planirano. Skeniranje i provjera ne koriste propusnicu; koristi je samo eksplicitna potvrda.
Šta trenutno radi
Privatna beta. Trenutni skener ima kontrolu kamere i dozvola. Izrada, provjera i potvrda jednoraznih propusnica je planirana i još nije spremna za upotrebu u vašoj aplikaciji.
Izradite radni tok
Planirano
Planirani radni tok. Još nije dostupan u trenutnoj beta verziji.
Ovi primjeri koriste zapise aplikacije poput Lesson, Message i Order. Zamijenite ih svojim tipovima podataka i nazivima elemenata. Primjer adresa medija mora biti zamijenjen vašim vlastitim datotekama.
Planirano: ovlašteni zaposlenik koristi Issue QR pass za ulaz ili Order. Primjer: label=event, ttl_seconds=900, environment=development. Zadržite stabilni request_id za to izdavanje propusnice i spremite pass_id uz zapis.
Prikažite vraćeni QR njegovom namijenjenom vlasniku. Osoblje ga skenira. U planiranom radnom toku propusnice, koristite workflow_mode=yes i pročitajte scanned_pass_token nakon pass_scanned. Ove postavke radnog toka propusnice nisu dostupne u trenutnom skeneru.
Pokrenite Check QR pass sa pass_token = QR Scanner's scanned_pass_token. Provjerava bez korištenja propusnice. Za status=available, prikažite odgovarajuće detalje narudžbe ili unosa kako bi osoblje moglo pregledati.
Samo zasebno dugme Potvrdi pokreće Confirm QR redemption s istim pass_token, stabilnim request_id i confirm=yes. Na status=redeemed, spremite receipt_id i označite tu narudžbu ili unos kao dovršenu.
already_used, expired, revoked ili invalid znači da ne smijete dozvoliti ulazak niti predati narudžbu. Samo skeniranje ili uspješna provjera nikada ne dovršavaju transakciju.
Jednom konfigurirajte
Kreirajte ili odaberite vaš Bubble projekt aplikacije u BestPlugins → Dashboard → Plugins. Odaberite Xodera QR Passes Native, kopirajte njegov ključ, zatim otvorite Bubble → Plugins → Xodera QR Passes Native i zalijepite ga u project_api_key. Sačuvajte jednom; zatim koristite radnje ispod. Svaki dodatak u svakom projektu ima svoj ključ.
Skeniranje zahtijeva dozvolu za kameru. Za jednokratne propusnice odlučite ko može kreirati propusnice i ko ih može provjeriti na vratima ili mjestu preuzimanja. Obični kupci ne trebaju nijednu ulogu osoblja.
qr_issuer_permission_field
qr_pass_issuer · Naziv korisničkog da/ne polja koje označava zaposlenike kojima je dozvoljeno kreirati ili opozvati propusnice. Primjer/pretpostavka: qr_pass_issuer. Ovdje unesite naziv polja, a ne da ili ne. Samo ovlašteni administrator treba promijeniti to dopuštenje za korisnika.
qr_staff_permission_field
qr_staff · Naziv korisničkog da/ne polja koje označava osoblje kojem je dozvoljeno provjeriti i potvrditi korištenje. Primjer/pretpostavka: qr_staff. Vlasnik karte ne treba ovo dopuštenje. Izostavite ga iz javnih obrazaca za registraciju i profile.
Jednom konfigurirajte
- Kreirajte ili odaberite vaš Bubble projekt aplikacije na BestPlugins → Dashboard → Plugins.
- Odaberite ovaj dodatak i kopirajte njegov ključ projekta.
- Otvorite Bubble → Plugins → Xodera QR Passes Native; zalijepite ključ u project_api_key i sačuvajte.
- Dodajte element, odaberite svoje podatke aplikacije i izgradite radni tok ispod.
- Privatan beta pristup samo za sada. Javna instalacija i plaćena aktivacija još nisu otvorene.
Instalacija i pretplata
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.
Sačuvajte rezultat u vašoj aplikaciji
Primjer ulaza ili preuzimanja: spremite povezanu narudžbu/događaj, pass_id, expires_at i issue_request_id. Nakon potvrđene upotrebe, dodajte receipt_id, redeemed_at i zaposlenika koji je potvrdio. Nemojte označiti zapis kao dovršen kada je kod samo skeniran ili provjeren. QR kod ne verificira identitet osobe.
Neuspjeh, otkazivanje i oporavak
Ako outcome_unknown=yes, zadržite istu propusnicu, request_id i unose prilikom ponovne provjere rezultata. Nemojte kreirati novu potvrdu. already_used, expired i revoked su konačni poslovni rezultati. Ako je dozvola odbijena, zatražite od ovlaštenog administratora da pregleda ulogu zaposlenika. Clear session resetuje skener; ne može poništiti dovršenu upotrebu.
Mogućnosti i ograničenja
Planirane propusnice su jednokratne, s trajanjem od 1–86400 sekundi; podrazumijevano 900. Tipovi propusnica: access, event, coupon i membership. Provjera ne rezerviše propusnicu. Potrebna je internet veza za korištenje propusnice. Nema obrade plaćanja, provjere identiteta niti ponovne upotrebe dugoročnog članskog kartice. Čitanje obične QR vrijednosti je odvojeno od provjere propusnice.
Postavke, radnje i rezultati
Koristite ova imena u Bubble. Planirane funkcije su označene odvojeno.
Dostupna beta podešavanja
Postavke elementa
disabled · yes/nois_active · yes/noui_text_json · textlanguage · textStanja
scanner_status · textserver_status · textpass_id · textpass_label · textreceipt_id · texterror_code · textis_busy · yes/nois_scanning · yes/notorch_enabled · yes/noscan_source · textpending_redemption · yes/noDogađaji
scanner_startedscanner_pausedscanner_cancelledpermission_deniedpass_scannedvalidation_startedvalidation_completedredemption_startedpass_redeemedredemption_rejectedredemption_pendingfixture_decodedqr_errorRadnje i njihovi ulazi
Clear sessionPostavke elementa · 5
Planirani radni tok. Još nije dostupan u trenutnoj beta verziji.
disabledyes/no · Podrazumevano: false- Primjer vrijednosti
no - Primjer Bubble izraza
GuideHost's is_busy (your yes/no custom state) - Onemogućite element dok je aplikacija zauzeta ili je ova radnja nedostupna.
is_activeyes/no · Podrazumevano: true- Primjer vrijednosti
yes - Primjer Bubble izraza
GuideHost's view_is_active (your yes/no custom state) - Postavite da dok je ovaj prikaz otvoren. Postavite ne pri napuštanju, kako reprodukcija ili trenutni rad mogu stati.
ui_text_jsontext · Podrazumevano: "{}"- Primjer vrijednosti
{} - Primjer Bubble izraza
App Settings' player_labels_json (supported keys only) - Opcionalni JSON s podržanim oznakama dugmadi. Ostavite prazno da koristite ugrađeni tekst.
languagetext · Podrazumevano: "auto"- Primjer vrijednosti
uk - Primjer Bubble izraza
Current User's preferred_language - Postavite language=auto da prati podržani uređaj ili jezik preglednika. Unesite podržani kod jezika da ga izričito odaberete.
workflow_modeyes/no · Podrazumevano: false- Primjer vrijednosti
yes - Primjer Bubble izraza
App Settings' use_qr_business_actions - Planirano: omogućiti da skenirana QR vrijednost bude korištena od strane Check QR pass. Samo skeniranje ne potvrđuje ulazak ili preuzimanje.
Radnje i njihovi ulazi · 5
Planirani radni tok. Još nije dostupan u trenutnoj beta verziji.
Clear session
Nema parametara akcije
Issue QR pass
environmenttext · Podrazumevano: "development"- Primjer vrijednosti
development - Primjer Bubble izraza
App Settings' selected_environment - Koristite vrijednost trenutnog poslovnog zapisa; provjerite je prema donjim ograničenjima.
request_idtext · Podrazumevano: —- Primjer vrijednosti
pickup-123-issue-v1 - Primjer Bubble izraza
Current Admission's stable_request_id - Koristite vrijednost trenutnog poslovnog zapisa; provjerite je prema donjim ograničenjima.
labeltext · Podrazumevano: "access"- Primjer vrijednosti
event - Primjer Bubble izraza
Selected Admission's pass_label - Koristite vrijednost trenutnog poslovnog zapisa; provjerite je prema donjim ograničenjima.
ttl_secondsnumber · Podrazumevano: 900- Primjer vrijednosti
900 - Primjer Bubble izraza
Event Settings' pass_ttl_seconds - Koristite vrijednost trenutnog poslovnog zapisa; provjerite je prema donjim ograničenjima.
Povrati
pass_id · textpass_token · textpass_label · textexpires_at · textqr_png_data_uri · textreused · yes/noCheck QR pass
environmenttext · Podrazumevano: "development"- Primjer vrijednosti
development - Primjer Bubble izraza
App Settings' selected_environment - Koristite vrijednost trenutnog poslovnog zapisa; provjerite je prema donjim ograničenjima.
pass_tokentext · Podrazumevano: —- Primjer vrijednosti
<opaque token returned by Issue / camera scan> - Primjer Bubble izraza
QR Pass Scanner's scanned_pass_token (capture before Check) - Koristite vrijednost trenutnog poslovnog zapisa; provjerite je prema donjim ograničenjima.
Povrati
pass_label · textexpires_at · textConfirm QR redemption
environmenttext · Podrazumevano: "development"- Primjer vrijednosti
development - Primjer Bubble izraza
App Settings' selected_environment - Koristite vrijednost trenutnog poslovnog zapisa; provjerite je prema donjim ograničenjima.
pass_tokentext · Podrazumevano: —- Primjer vrijednosti
<opaque token returned by Issue / camera scan> - Primjer Bubble izraza
QR Pass Scanner's scanned_pass_token (capture before Check) - Koristite vrijednost trenutnog poslovnog zapisa; provjerite je prema donjim ograničenjima.
request_idtext · Podrazumevano: —- Primjer vrijednosti
pickup-123-redeem-v1 - Primjer Bubble izraza
Current Admission's stable_redemption_request_id - Koristite vrijednost trenutnog poslovnog zapisa; provjerite je prema donjim ograničenjima.
confirmyes/no · Podrazumevano: false- Primjer vrijednosti
yes — explicit confirmation only - Primjer Bubble izraza
Confirm Checkbox is checked - Koristite vrijednost trenutnog poslovnog zapisa; provjerite je prema donjim ograničenjima.
Povrati
pass_id · textpass_label · textreceipt_id · textredeemed_at · textreused · yes/noRevoke QR pass
environmenttext · Podrazumevano: "development"- Primjer vrijednosti
development - Primjer Bubble izraza
App Settings' selected_environment - Koristite vrijednost trenutnog poslovnog zapisa; provjerite je prema donjim ograničenjima.
pass_idtext · Podrazumevano: —- Primjer vrijednosti
<pass_id returned by Issue> - Primjer Bubble izraza
Selected Admission's pass_id - Koristite vrijednost trenutnog poslovnog zapisa; provjerite je prema donjim ograničenjima.
Povrati
pass_id · textrevoked · yes/noStanja i događaji
Planirani radni tok. Još nije dostupan u trenutnoj beta verziji.
Stanja
scanner_status · textTrenutni rezultat ove radnje. Koristite odgovarajući događaj završetka prije spremanja uspjeha. idle,requesting_permission,permission_denied,scanning,paused,scanned,validating,available,redeeming,redeemed,unavailable,unknown,error,cancelled,decoding_fixture,fixture_decoded
server_status · textTrenutni rezultat ove radnje. Koristite odgovarajući događaj završetka prije spremanja uspjeha. empty,available,redeemed,already_used,expired,revoked
pass_id · textIdentifikator za ovu stavku ili radnju. Sačuvajte ga uz odgovarajući zapis aplikacije. Koristite isti identifikator zahtjeva pri ponovnom pokušaju neizvjesnog rezultata.
pass_label · textTrenutna vrijednost odabranog elementa. Pročitajte je nakon povezane događaja. empty,access,event,coupon,membership
receipt_id · textIdentifikator za ovu stavku ili radnju. Sačuvajte ga uz odgovarajući zapis aplikacije. Koristite isti identifikator zahtjeva pri ponovnom pokušaju neizvjesnog rezultata.
error_code · textInformacije o grešci za posljednju radnju. Prikažite korisnu poruku i ponudite odgovarajući pokušaj ponovo.
is_busy · yes/noRad je još u toku. Sačekajte prije nego što započnete drugu radnju.
is_scanning · yes/noTrenutna vrijednost odabranog elementa. Pročitajte je nakon povezanog događaja.
torch_enabled · yes/noTrenutna vrijednost odabranog elementa. Pročitajte je nakon povezanog događaja.
scan_source · textTrenutna vrijednost odabranog elementa. Pročitajte je nakon povezane događaja. empty,camera,fixture
pending_redemption · yes/noTrenutna vrijednost odabranog elementa. Pročitajte je nakon povezanog događaja.
scanned_pass_token · textTrenutna vrijednost odabranog elementa. Pročitajte je nakon povezanog događaja.
Događaji
scanner_startedKada se ovaj događaj dogodi, pročitajte povezana stanja iz istog elementa.
scanner_pausedKada se ovaj događaj dogodi, pročitajte povezana stanja iz istog elementa.
scanner_cancelledKada se ovaj događaj dogodi, pročitajte povezana stanja iz istog elementa.
permission_deniedKada se ovaj događaj dogodi, pročitajte povezana stanja iz istog elementa.
pass_scannedKada se ovaj događaj dogodi, pročitajte povezana stanja iz istog elementa.
validation_startedKada se ovaj događaj dogodi, pročitajte povezana stanja iz istog elementa.
validation_completedKada se ovaj događaj dogodi, pročitajte povezana stanja iz istog elementa.
redemption_startedKada se ovaj događaj dogodi, pročitajte povezana stanja iz istog elementa.
pass_redeemedKada se ovaj događaj dogodi, pročitajte povezana stanja iz istog elementa.
redemption_rejectedKada se ovaj događaj dogodi, pročitajte povezana stanja iz istog elementa.
redemption_pendingKada se ovaj događaj dogodi, pročitajte povezana stanja iz istog elementa.
fixture_decodedKada se ovaj događaj dogodi, pročitajte povezana stanja iz istog elementa.
qr_errorKada se ovaj događaj dogodi, pročitajte povezana stanja iz istog elementa.
Pitanja koja programeri postavljaju
Šta znače dvije postavke dozvola?
Naziv polja korisnika da/ne koje označava zaposlenike kojima je dozvoljeno kreirati ili opozvati propusnice. Primjer/podrazumevano: qr_pass_issuer. Ovdje unesite naziv polja, a ne da ili ne. Samo ovlašteni administrator treba promijeniti tu dozvolu za korisnika. Naziv polja korisnika da/ne koje označava osoblje kojem je dozvoljeno provjeriti i potvrditi upotrebu. Primjer/podrazumevano: qr_staff. Vlasnik karte ne treba ovu dozvolu. Izostavite je iz javnih obrazaca za registraciju i profile.
Može li isti zaposlenik kreirati i provjeravati propusnice?
Da, ako ovlašteni administrator tom zaposleniku dodijeli obje dozvole. Ovo ne zahtijeva dodatni projektni ključ. Kupci obično ne trebaju nijednu od dozvola. Nemojte dozvoliti korisnicima da sami sebi dodjeljuju ove dozvole.
Zašto koristiti Provjeru nakon Skeniranja?
Skeniranje čita kod. Provjera pita da li je propusnica dostupna bez korištenja. Osoblje može prvo pregledati narudžbu. Samo zasebna radnja Confirm QR redemption koristi propusnicu jednom.
Kako funkcionira pretplata?
Planirana cijena: instalacija plugina u Bubble je besplatna. Pristup BestPlugins je zasebna pretplata za svaki plugin u svakom Bubble projektu aplikacije: 7 dana besplatno, zatim US$1.50 mjesečno. Development i Live su uključeni. Nema fiksnog ograničenja broja operacija; i dalje vrijede ograničenja veličine datoteka i funkcionalnosti. Plaćanje još nije otvoreno. Aktivacijski ekran će prikazati prvi datum naplate i uvjete otkazivanja.
Povezani vodiči
Marketplace izdanje na čekanju
Vodič foruma nije objavljen
Za pomoć, recite nam koji plugin i uređaj koristite, koju radnju ste pokušali i šta se dogodilo. Koristite primjer bez ličnih podataka. Nikada ne dijelite svoj ključ ili privatne datoteke.