
Xodera Plugins · Bubble Native
Xodera QR Passes Native
Construïtz de bilhets d’usatge unic, de confirmacions de retirada o de cupons. Lo personal escaneja lo còdi, verifica lo resultat, previsualiza la comanda e confirma l’utilizacion solament quand es prèst.
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.
Documentacion revisada 6 novèmber 2026
Exemples practics
Admissió d'una sola utilizacion per un eveniment del meteis jorn
Una captura d'ecran d'una valor QR ordinària pòt, al contrari, èsser reutilizada a mai d'una entrada.
Vòstra aplicacion emmagazina un registre d'Admission e una emissió estable `request_id` ; utilizatz `label=event` curat e un `ttl_seconds` dins lo contracte de 1‑86400 segondas.
Un emetor autorizat executa Issue QR pass e entrega privatament lo QR retornat. Lo personal escaneja → Check QR pass → confirma solament se `ok=yes` e `status=available` → Confirm QR redemption amb un ID de demanda estable emmagazinat.
Solament `status=redeemed` e `receipt_id` autorizan lo recebut d'admission de vòstra aplicacion. Emmagazinez la referéncia del pass/recebut sus l'Admission ; exponètz pas lo contengut de QR a l'analisi.
Per `outcome_unknown`, recuperatz la meteissa demanda amb lo meteis utilizaire, environament e pass; generatz pas jamai un ID de confirmacion novèl. Tractatz los estats expired, revoked e ja utilizat coma de resultats distints.
Planificat. L'escaneament e la verificacion utilizan pas lo pass ; solament la confirmacion explicita lo fa.
Utilizatz un avantatge de corta durada un còp al comptador de servici d'un partenari
Un partener a besonh d’un resultat confirmat utilizat/non utilizat al luòc de se fisar d’una imatge QR o d’una animacion d’ecran.
`label=coupon` ; lo registre de Benefici de l’aplicacion definís l’eligibilitat e una fenèstra de validesa curta abans una accion d’emission autorizada.
Emètz un pass solament aprèp la verificacion d’eligibilitat de vòstra aplicacion. Al comptador, Check QR pass indica la disponibilitat sens lo consumar. Un còp que lo personal confirma la entrega del benefici, executatz Confirm QR redemption.
Vòstre registre Benefit pòt gardar `receipt_id` e lo moment d'utilizacion confirmada aprèp `status=redeemed`. Lo plugin gerís l'estat del pass; vòstra aplicacion gerís l'avantatge e la relacion amb lo client.
Se un benefici es anullat abans son utilizacion, lo meteis emetor autorizat pòt Revoke QR pass amb son `pass_id`. Anunciez pas un remborsament o una redencion capitada solament a partir de `ok=yes`.
Planificat. L'escaneament e la verificacion utilizan pas lo pass ; solament la confirmacion explicita lo fa.
Confirmar una retirada d’equipament o de comanda lo meteis jorn
Lo flux de trabalh del personal deu distinguir l'escanejament d'una referéncia de retirada e la remesa efectiva d'un article.
Lo registre Collection de vòstra aplicacion garda l'autorizacion, l'article previst e d'ID de demanda estables e separats per l'emission e l'utilizacion; utilizatz un pass `label=access` de corta durada.
Aprèp que vòstra aplicacion a autorizat la retirada, executatz Issue QR pass. Lo personal escaneja e utiliza Check, verifica lo Collection correspondent dins vòstra aplicacion, puèi confirma explicitament la remesa e executa Confirm QR redemption.
Sonque aprèp una confirmacion d'utilizacion `redeemed`, vòstre flux de trabalh deu marcar lo Collection coma remés. Gardatz `receipt_id` coma ligam amb lo resultat del pass.
Un escanejament repetit pòt tornar already_used ; afichatz lo registre existent de l’aplicacion al luòc de entregar un autre article. Recuperatz una confirmacion incerta amb lo meteis ID e las meteissas entradas.
Planificat. L'escaneament e la verificacion utilizan pas lo pass ; solament la confirmacion explicita lo fa.
Qué fonciona ara
Beta privada. Lo scanner actual disposa de contraròtles de camèra e de permissions. La creacion, la verificacion e la confirmacion de passes d’usatge unic son planificadas e son pas encara prèstas per èsser utilizadas dins vòstra aplicacion.
Crear lo flux de trabalh
Planificat
Flux de trabalh previst. Pas encara disponible dins la beta actuala.
Aquestes exemples utilizan de registres d’aplicacion tals coma Lesson, Message e Order. Remplaçatz-los per vòstres pròpris tipes de donadas e noms d’elements. Las adreças de mèdias d’exemple devon èsser remplaçadas per vòstres pròpris fichièrs.
Previst: un emplegat autorizat utiliza Issue QR pass per un Admission o Order. Exemple: label=event, ttl_seconds=900, environment=development. Gardatz un request_id estable per aquela emission e enregistratz pass_id amb lo registre.
Afichatz lo QR tornat al destinatari previst. Lo personal lo escaneja. Dins lo flux de trabalh del pass planificat, utilizatz workflow_mode=yes e legissètz scanned_pass_token aprèp pass_scanned. Aquestas configuracions del flux de pass son pas disponiblas dins lo scanner actual.
Executatz Check QR pass amb pass_token = QR Scanner's scanned_pass_token. Verifica sens utilizar lo pass. Per status=available, afichatz los detalhs de la comanda o de l’entrada correspondenta per que lo personal los pòsca revisar.
Solament un boton Confirm separat executa Confirm QR redemption amb lo meteis pass_token, un request_id estable e confirm=yes. En status=redeemed, enregistratz receipt_id e marcatz aquela comanda o entrada coma completa.
already_used, expired, revoked o invalid significa que cal pas autorizar l'entrada ni remetre la comanda. Un escanejament o un Check capitat, tot sol, acaba pas jamai la transaccion.
Configurar un sol còp
Creatz o causissètz vòstre projècte d’aplicacion Bubble dins BestPlugins → Dashboard → Plugins. Causissètz Xodera QR Passes Native, copiatz sa clau, puèi dobrissètz Bubble → Plugins → Xodera QR Passes Native e pegatz-la dins project_api_key. Enregistratz una còp ; puèi utilizatz las accions çai-jos. Cada plugin dins cada projècte a sa pròpria clau.
Lo scan requerís la permission de la camèra. Per de passes d’un sol usatge, decidissètz qui pòt crear de passes e qui los pòt verificar a la pòrta o al punt de retirada. Los clients corrents necessitan pas cap de ròtle de personal.
qr_issuer_permission_field
qr_pass_issuer · Nom del camp User de tipe yes/no qu'indica los emplegats autorizats a crear o revocar de passes. Exemple/per defaut: qr_pass_issuer. Entratz aicí lo nom del camp, pas yes o no. Sonque un administrator autorizat deu cambiar aquela permission d'un utilizaire.
qr_staff_permission_field
qr_staff · Nom del camp User de tipe yes/no qu'indica lo personal autorizat a verificar e confirmar l'utilizacion. Exemple/per defaut: qr_staff. Lo titular d'un bilhet a pas besonh d'aquela permission. Excluissètz-la dels formularis publics d'inscripcion e de perfil.
Configurar un sol còp
- Creatz o causissètz vòstre projècte d’aplicacion Bubble a BestPlugins → Dashboard → Plugins.
- Causissètz aqueste plugin e copiatz sa clau de projècte.
- Dobrissètz Bubble → Plugins → Xodera QR Passes Native ; pegatz la clau dins project_api_key e enregistratz.
- Apondètz l’element, causissètz vòstras donadas d’aplicacion e construïtz lo flux de trabalh çai-jos.
- Accès beta privat solament per ara. L’installacion publica e l’activacion pagada son pas encara dobèrtas.
Installacion e abonament
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.
Enregistrar lo resultat dins vòstra aplicacion
Exemple d’Admissió o de Retirada : enregistratz la comanda/evèniment associat, pass_id, expires_at e issue_request_id. Après una utilizacion confirmada, apondètz receipt_id, redeemed_at e l’emplegat qu’a confirmat. Marcatz pas lo registre coma complet quand lo còdi es solament escanejat o verificat. Un còdi QR verifica pas l’identitat d’una persona.
Fracàs, anullacion e recuperacion
Se outcome_unknown=yes, mantengatz lo meteis pass, request_id e las entradas al moment de verificar tornamai lo resultat. Creatz pas una nòva confirmacion. already_used, expired e revoked son los resultats finalas de l’activitat. Se la permission es refusada, demandatz a un administrator autorizat de revisar lo ròtle de l’emplegat. Clear session reïnicializa lo scanner ; pòt pas anullar una utilizacion completada.
Capacitats e limits
Los passes planificats son d’usatge unic, amb una durada de 1–86400 segondas ; per defaut 900. Tipus de passes : access, event, coupon e membership. La verificacion reserva pas un pass. L’accès a Internet es necessari per l’utilizacion del pass. Cap de tractament de pagament, de verificacion d’identitat o de carta de membresia reutilizable a long tèrme. La lectura d’una valor QR ordinària es separada de la verificacion d’un pass.
Paramètres, accions e resultats
Utilizatz aqueles noms dins Bubble. Las foncions planificadas son marcadas separadament.
Paramètres beta disponibles
Paramètres de l’element
disabled · yes/nois_active · yes/noui_text_json · textlanguage · textEstats
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/noEveniments
scanner_startedscanner_pausedscanner_cancelledpermission_deniedpass_scannedvalidation_startedvalidation_completedredemption_startedpass_redeemedredemption_rejectedredemption_pendingfixture_decodedqr_errorAccions e lors entradas
Clear sessionParamètres de l’element · 5
Flux de trabalh previst. Pas encara disponible dins la beta actuala.
disabledyes/no · Per defaut: false- Valor d’exemple
no - Exemple d'expression Bubble
GuideHost's is_busy (your yes/no custom state) - Desactivar l’element mentre vòstra aplicacion es ocupada o aquesta accion es indisponibla.
is_activeyes/no · Per defaut: true- Valor d’exemple
yes - Exemple d'expression Bubble
GuideHost's view_is_active (your yes/no custom state) - Definissètz yes mentre aquesta vista es dobèrta. Definissètz no quand la quitatz, per que la lectura o lo trabalh en cors se pòsca arrestar.
ui_text_jsontext · Per defaut: "{}"- Valor d’exemple
{} - Exemple d'expression Bubble
App Settings' player_labels_json (supported keys only) - JSON opcional amb etiquetas de botonas suportadas. Daissatz void per utilizar lo tèxte integrat.
languagetext · Per defaut: "auto"- Valor d’exemple
uk - Exemple d'expression Bubble
Current User's preferred_language - Definissètz language=auto per seguir la lenga de l'aparelh o del navegador se aquela lenga es suportada. Entratz un còde de lenga suportat per la causir explicitament.
workflow_modeyes/no · Per defaut: false- Valor d’exemple
yes - Exemple d'expression Bubble
App Settings' use_qr_business_actions - Planificat : permetre que la valor QR escanejada siá utilizada per Check QR pass. L’escanejament solament confirma pas l’entrada o la retirada.
Accions e lors entradas · 5
Flux de trabalh previst. Pas encara disponible dins la beta actuala.
Clear session
Cap de paramètre d'accion
Issue QR pass
environmenttext · Per defaut: "development"- Valor d’exemple
development - Exemple d'expression Bubble
App Settings' selected_environment - Utilizatz la valor del registre comercial actual ; validatz-la contra los limits çai-jos.
request_idtext · Per defaut: —- Valor d’exemple
pickup-123-issue-v1 - Exemple d'expression Bubble
Current Admission's stable_request_id - Utilizatz la valor del registre comercial actual ; validatz-la contra los limits çai-jos.
labeltext · Per defaut: "access"- Valor d’exemple
event - Exemple d'expression Bubble
Selected Admission's pass_label - Utilizatz la valor del registre comercial actual ; validatz-la contra los limits çai-jos.
ttl_secondsnumber · Per defaut: 900- Valor d’exemple
900 - Exemple d'expression Bubble
Event Settings' pass_ttl_seconds - Utilizatz la valor del registre comercial actual ; validatz-la contra los limits çai-jos.
Valors retornadas
pass_id · textpass_token · textpass_label · textexpires_at · textqr_png_data_uri · textreused · yes/noCheck QR pass
environmenttext · Per defaut: "development"- Valor d’exemple
development - Exemple d'expression Bubble
App Settings' selected_environment - Utilizatz la valor del registre comercial actual ; validatz-la contra los limits çai-jos.
pass_tokentext · Per defaut: —- Valor d’exemple
<opaque token returned by Issue / camera scan> - Exemple d'expression Bubble
QR Pass Scanner's scanned_pass_token (capture before Check) - Utilizatz la valor del registre comercial actual ; validatz-la contra los limits çai-jos.
Valors retornadas
pass_label · textexpires_at · textConfirm QR redemption
environmenttext · Per defaut: "development"- Valor d’exemple
development - Exemple d'expression Bubble
App Settings' selected_environment - Utilizatz la valor del registre comercial actual ; validatz-la contra los limits çai-jos.
pass_tokentext · Per defaut: —- Valor d’exemple
<opaque token returned by Issue / camera scan> - Exemple d'expression Bubble
QR Pass Scanner's scanned_pass_token (capture before Check) - Utilizatz la valor del registre comercial actual ; validatz-la contra los limits çai-jos.
request_idtext · Per defaut: —- Valor d’exemple
pickup-123-redeem-v1 - Exemple d'expression Bubble
Current Admission's stable_redemption_request_id - Utilizatz la valor del registre comercial actual ; validatz-la contra los limits çai-jos.
confirmyes/no · Per defaut: false- Valor d’exemple
yes — explicit confirmation only - Exemple d'expression Bubble
Confirm Checkbox is checked - Utilizatz la valor del registre comercial actual ; validatz-la contra los limits çai-jos.
Valors retornadas
pass_id · textpass_label · textreceipt_id · textredeemed_at · textreused · yes/noRevoke QR pass
environmenttext · Per defaut: "development"- Valor d’exemple
development - Exemple d'expression Bubble
App Settings' selected_environment - Utilizatz la valor del registre comercial actual ; validatz-la contra los limits çai-jos.
pass_idtext · Per defaut: —- Valor d’exemple
<pass_id returned by Issue> - Exemple d'expression Bubble
Selected Admission's pass_id - Utilizatz la valor del registre comercial actual ; validatz-la contra los limits çai-jos.
Valors retornadas
pass_id · textrevoked · yes/noEstats e eveniments
Flux de trabalh previst. Pas encara disponible dins la beta actuala.
Estats
scanner_status · textResultat actual d’aquesta accion. Utilizar l’eveniment de fin correspondenta abans d’enregistrar lo succès. idle,requesting_permission,permission_denied,scanning,paused,scanned,validating,available,redeeming,redeemed,unavailable,unknown,error,cancelled,decoding_fixture,fixture_decoded
server_status · textResultat actual d’aquesta accion. Utilizar l’eveniment de fin correspondenta abans d’enregistrar lo succès. empty,available,redeemed,already_used,expired,revoked
pass_id · textIdentificant per aqueste element o accion. Conservar-lo amb l’enregistrament d’aplicacion correspondent. Utiliza lo meteis identificant de demanda al moment de tornar ensajar un resultat incert.
pass_label · textValor actual per l’element seleccionat. Lo legir aprèp l’eveniment associat. empty,access,event,coupon,membership
receipt_id · textIdentificant per aqueste element o accion. Conservar-lo amb l’enregistrament d’aplicacion correspondent. Utiliza lo meteis identificant de demanda al moment de tornar ensajar un resultat incert.
error_code · textInformacions d'error per la darrièra accion. Afichatz un messatge util e prepausatz de tornar ensajar l'operacion pertinenta.
is_busy · yes/noLo trabalh es encara en cors. Esperatz abans d’aviar una autra accion.
is_scanning · yes/noValor actual per l’element seleccionat. Legissètz-la aprèp l’eveniment associat.
torch_enabled · yes/noValor actual per l’element seleccionat. Legissètz-la aprèp l’eveniment associat.
scan_source · textValor actual per l’element seleccionat. Lo legir aprèp l’eveniment associat. empty,camera,fixture
pending_redemption · yes/noValor actual per l’element seleccionat. Legissètz-la aprèp l’eveniment associat.
scanned_pass_token · textValor actual per l’element seleccionat. Legissètz-la aprèp l’eveniment associat.
Eveniments
scanner_startedQuand aqueste eveniment se produtz, legissètz los estats relatius a partir del meteis element.
scanner_pausedQuand aqueste eveniment se produtz, legissètz los estats relatius a partir del meteis element.
scanner_cancelledQuand aqueste eveniment se produtz, legissètz los estats relatius a partir del meteis element.
permission_deniedQuand aqueste eveniment se produtz, legissètz los estats relatius a partir del meteis element.
pass_scannedQuand aqueste eveniment se produtz, legissètz los estats relatius a partir del meteis element.
validation_startedQuand aqueste eveniment se produtz, legissètz los estats relatius a partir del meteis element.
validation_completedQuand aqueste eveniment se produtz, legissètz los estats relatius a partir del meteis element.
redemption_startedQuand aqueste eveniment se produtz, legissètz los estats relatius a partir del meteis element.
pass_redeemedQuand aqueste eveniment se produtz, legissètz los estats relatius a partir del meteis element.
redemption_rejectedQuand aqueste eveniment se produtz, legissètz los estats relatius a partir del meteis element.
redemption_pendingQuand aqueste eveniment se produtz, legissètz los estats relatius a partir del meteis element.
fixture_decodedQuand aqueste eveniment se produtz, legissètz los estats relatius a partir del meteis element.
qr_errorQuand aqueste eveniment se produtz, legissètz los estats relatius a partir del meteis element.
Questions que los desvolopaires posan
Quin es lo sens dels dos paramètres de permission ?
Nom del camp User de tipe yes/no qu'indica los emplegats autorizats a crear o revocar de passes. Exemple/per defaut: qr_pass_issuer. Entratz aicí lo nom del camp, pas yes o no. Sonque un administrator autorizat deu cambiar aquela permission d'un utilizaire. Nom del camp User de tipe yes/no qu'indica lo personal autorizat a verificar e confirmar l'utilizacion. Exemple/per defaut: qr_staff. Lo titular d'un bilhet a pas besonh d'aquela permission. Excluissètz-la dels formularis publics d'inscripcion e de perfil.
Lo meteis emplegat pòt crear e verificar de passes ?
Òc, se un administrator autorizat dona a aquel emplegat ambdós permisos. Aquò requerís pas una clau de projècte addicionala. Los clients normalament necessitan cap d'aqueste permís. Deishatz pas los utilizaires s'assignar aqueles permisos.
Perqué utilizar Check aprèp Scan?
Scan legís lo còdi. Check verifica se lo pass es disponible sens l'utilizar. Lo personal pòt revisar la comanda d'en primièr. Sonque l'accion separada Confirm QR redemption utiliza lo pass un còp.
Cossí fonciona l’abonament ?
Preus previstos : l’installacion del plugin dins Bubble es gratuita. L’accès a BestPlugins es un abonament separat per cada plugin dins cada projècte d’aplicacion Bubble : 7 jorns gratuïts, puèi US$1.50 per mes. Development e Live son incluses. I a pas de limit fix sus lo nombre d’operacions ; los limits de talha de fichièr e de foncionalitats s’aplican encara. La pagina de pagament es pas encara dobèrta. L’ecran d’activacion mostrarà la primièra data de facturacion e las condicions d’annullacion.
Guidas ligadas
Publicacion de Marketplace en espèra
Guida del forum pas publicada
Per obténer d’ajuda, informatz-nos quin plugin e quin aparelh utilizatz, l’accion que ensajatz e çò qu’es capitat. Utilizatz un exemple sens donadas personalas. Partajatz pas jamai vòstra clau o vòstres fichièrs privats.