QR skaitytuvo sąsaja. Planuojamos vienkartinės prieigos veiksmai.
QR skaitytuvo sąsaja. Planuojamos vienkartinės prieigos veiksmai.
← Visi savųjų programėlių vadovai

Xodera Plugins · Bubble Native

Xodera QR Passes Native

Sukurkite vienkartines bilietus, atsiėmimo patvirtinimus arba kuponus. Personalas nuskenuoja kodą, tikrina rezultatą, peržiūri užsakymą ir patvirtina naudojimą tik kai pasiruošę.

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 peržiūrėta 6 lapkričio 2026

Praktiniai pavyzdžiai

Vienkartinis įėjimas į tą pačią dieną vykstantį renginį

Įprastos QR reikšmės ekrano nuotrauka gali būti pakartotinai naudojama daugiau nei viename įėjime.

Jūsų programėlė saugo Admission įrašą ir stabilų išdavimo užklausos `request_id`; naudokite iš anksto nustatytą `label=event` ir `ttl_seconds` reikšmę, atitinkančią 1–86400 sekundžių ribas.

Įgaliotas išdavėjas paleidžia Issue QR pass ir grąžintą QR kodą perduoda privačiai. Darbuotojai nuskenuoja → Check QR pass → patvirtina tik jei `ok=yes` ir `status=available` → Confirm QR redemption su išsaugotu stabiliu užklausos ID.

Tik `status=redeemed` kartu su `receipt_id` suteikia jūsų programos įėjimo kvito įgaliojimą. Saugokite leidimo/kvito nuorodą Įėjime; neatskleiskite QR turinio analitikai.

`outcome_unknown` atveju atkurkite tą pačią užklausą su identišku vartotoju/aplinka/leidimu; niekada nesukurkite naujo patvirtinimo ID. Tvarkykite expired, revoked ir jau naudotas būsenas kaip atskirus rezultatus.

Planuojama. Nuskenavus ar patikrinus leidimą jis nelaikomas panaudotu; leidimas panaudojamas tik aiškiai patvirtinus.

Įvykdyti trumpalaikę naudą vieną kartą partnerio kasoje

Partneris reikia patvirtinto naudojimo/nenaudojimo rezultato, o ne pasikliauti QR vaizdu arba ekrano animacija.

`label=coupon`; programos Naudos įrašas apibrėžia tinkamumą ir trumpą galiojimo laikotarpį prieš įgaliotą išdavimo veiksmą.

Išduokite leidimą tik po programos tinkamumo patikrinimo. Kasoje Check QR pass rodo prieinamumą nesunaudojant. Po to, kai darbuotojas patvirtina naudos pristatymą, vykdykite Confirm QR redemption.

Jūsų Benefit įraše galima išsaugoti `receipt_id` ir patvirtintą leidimo panaudojimo laiką, kai gaunama `status=redeemed`. Įskiepis valdo leidimo būseną, o jūsų programėlė – naudą ir santykius su klientu.

Jei nauda atšaukiama dar nepanaudojus leidimo, tas pats įgaliotas išdavėjas gali paleisti Revoke QR pass su to leidimo `pass_id`. Vien `ok=yes` nepakanka skelbti apie pinigų grąžinimą ar sėkmingą leidimo panaudojimą.

Planuojama. Nuskenavus ar patikrinus leidimą jis nelaikomas panaudotu; leidimas panaudojamas tik aiškiai patvirtinus.

Patvirtinkite tos pačios dienos įrangos arba užsakymo atsiėmimą

Darbuotojų darbo eigoje reikia atskirti atsiėmimo nuorodos nuskenavimą nuo faktinio daikto perdavimo.

Jūsų programėlei priklausantis Collection įrašas saugo leidimą atsiimti daiktą, numatytą daiktą ir atskirus stabilius išdavimo bei panaudojimo patvirtinimo užklausų ID; naudokite trumpalaikį `label=access` leidimą.

Kai jūsų programėlė leidžia atsiimti daiktą, paleiskite Issue QR pass. Darbuotojai nuskenuoja ir paleidžia Check, programėlėje peržiūri atitinkamą Collection įrašą, tada aiškiai patvirtina daikto perdavimą ir paleidžia Confirm QR redemption.

Tik gavus patvirtintą `redeemed` kvitą jūsų darbo eiga turėtų pažymėti Collection įrašą kaip perduotą. Išsaugokite `receipt_id` kaip nuorodą į leidimo panaudojimo rezultatą.

Pakartotinis nuskaitymas gali grąžinti already_used; rodyti esamą programos įrašą vietoje kito elemento perdavimo. Atkurti neaiškią patvirtinimą su tuo pačiu ID ir įvestimis.

Planuojama. Nuskenavus ar patikrinus leidimą jis nelaikomas panaudotu; leidimas panaudojamas tik aiškiai patvirtinus.

Kas veikia dabar

Privati beta versija. Dabartinis skaitytuvas turi kameros ir leidimų valdymą. Vienkartinių leidimų kūrimas, tikrinimas ir patvirtinimas yra planuojamas ir dar nėra pasiruošęs naudoti jūsų programoje.

Sukurkite darbo srautą

Planuojama

Planuojamas darbo srautas. Šiuo metu beta versijoje dar neprieinama.

Šie pavyzdžiai naudoja programos įrašus, tokius kaip Lesson, Message ir Order. Pakeiskite juos savo duomenų tipais ir elementų pavadinimais. Pavyzdiniai medijos adresai turi būti pakeisti jūsų failais.

  1. Planuojama: įgaliotas darbuotojas naudoja Issue QR pass atitinkamam Admission arba Order įrašui. Pavyzdys: label=event, ttl_seconds=900, environment=development. Šiai išdavimo užklausai išlaikykite stabilų request_id ir kartu su įrašu išsaugokite pass_id.

  2. Rodykite grąžintą QR jo numatytam savininkui. Personalas jį nuskenuoja. Planuojamo leidimo darbo eigoje naudokite workflow_mode=yes ir perskaitykite scanned_pass_token po pass_scanned. Šie leidimo darbo eigos nustatymai nėra prieinami dabartiniame skaitytuve.

  3. Vykdykite Check QR pass su pass_token = QR Scanner's scanned_pass_token. Tai tikrina be leidimo naudojimo. status=available atveju parodykite atitinkamos užsakymo arba įrašo detales, kad personalas galėtų jas peržiūrėti.

  4. Tik atskiras Patvirtinti mygtukas vykdo Confirm QR redemption su tuo pačiu pass_token, stabiliu request_id ir confirm=yes. status=redeemed metu įrašykite receipt_id ir pažymėkite, kad užsakymas arba įrašas baigtas.

  5. already_used, expired, revoked arba invalid reiškia, kad negalima leisti įeiti ar perduoti užsakymo. Vienas nuskaitymas arba sėkmingas patikrinimas niekada nebaigia operacijos.

Darbo eigos diagrama – ne programos ekrano nuotrauka

Konfigūruokite vieną kartą

Sukurkite arba pasirinkite savo Bubble programos projektą BestPlugins → Dashboard → Plugins. Pasirinkite Xodera QR Passes Native, nukopijuokite jo raktą, tada atidarykite Bubble → Plugins → Xodera QR Passes Native ir įklijuokite jį į project_api_key. Išsaugokite vieną kartą; tada naudokite žemiau esančius veiksmus. Kiekvienas įskiepis kiekviename projekte turi savo raktą.

Skenavimui reikalingas kameros leidimas. Vienkartiniams leidimams nuspręskite, kas gali juos kurti ir kas gali juos tikrinti prie įėjimo ar atsiėmimo taško. Įprasti klientai neprivalo turėti personalo rolės.

qr_issuer_permission_field

qr_pass_issuer · Vartotojo taip/ne lauko pavadinimas, kuris žymi darbuotojus, turinčius teisę kurti arba atšaukti leidimus. Pavyzdys/numatyta reikšmė: qr_pass_issuer. Įrašykite čia lauko pavadinimą, o ne taip arba ne. Tik įgaliotas administratorius turėtų keisti šį leidimą vartotojui.

qr_staff_permission_field

qr_staff · Vartotojo taip/ne lauko pavadinimas, kuris žymi darbuotojus, turinčius teisę patikrinti ir patvirtinti naudojimą. Pavyzdys/numatyta reikšmė: qr_staff. Bilieto turėtojas šio leidimo neturi. Laikykite jį išskirtą iš viešų registracijos ir profilio formų.

Konfigūruokite vieną kartą
  1. Sukurkite arba pasirinkite savo Bubble programos projektą BestPlugins → Dashboard → Plugins.
  2. Pasirinkite šį įskiepį ir nukopijuokite jo projekto raktą.
  3. Atidarykite Bubble → Plugins → Xodera QR Passes Native; įklijuokite raktą į project_api_key ir išsaugokite.
  4. Pridėkite elementą, pasirinkite savo programos duomenis ir sukurkite žemiau esantį darbo srautą.
  5. Privati beta prieiga tik dabar. Vieša įdiegimas ir mokama aktyvacija dar neprieinama.
Įdiegimas ir prenumerata

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.

Išsaugokite rezultatą savo programoje

Pavyzdys Įėjimui arba atsiėmimui: išsaugokite susijusį užsakymą/įvykį, pass_id, expires_at ir issue_request_id. Po patvirtinto naudojimo pridėkite receipt_id, redeemed_at ir patvirtinusią darbuotoją. Nežymėkite įrašo kaip baigto, kai kodas tik nuskenuojamas arba tikrinamas. QR kodas nepatvirtina asmens tapatybės.

Gedimas, atšaukimas ir atkūrimas

Jei outcome_unknown=yes, išlaikykite tą patį leidimą, request_id ir įvestis, kai vėl tikrinate rezultatą. Nesukurkite naujo patvirtinimo. already_used, expired ir revoked yra galutiniai verslo rezultatai. Jei leidimas atmestas, paprašykite įgalioto administratoriaus peržiūrėti darbuotojo rolę. Clear session išvalo skaitytuvą; jo negalima atšaukti atlikto naudojimo.

Galimybės ir apribojimai

Planuojami leidimai yra vienkartiniai, galiojimo laikas – 1–86400 sekundžių; numatyta 900. Leidimo tipai: access, event, coupon ir membership. Tikrinimas nerezervuoja leidimo. Leidimo naudojimui reikalingas interneto ryšys. Nėra mokėjimo apdorojimo, tapatybės patikrinimo ar pakartotinės ilgalaikės narystės kortelės. Įprastos QR reikšmės skaitymas yra atskiras nuo leidimo tikrinimo.

Nustatymai, veiksmai ir rezultatai

Naudokite šiuos pavadinimus Bubble. Planuojamos funkcijos pažymėtos atskirai.

Prieinami beta nustatymai

Elemento nustatymai

disabled · yes/nois_active · yes/noui_text_json · textlanguage · text

Būsenos

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/no

Įvykiai

scanner_startedscanner_pausedscanner_cancelledpermission_deniedpass_scannedvalidation_startedvalidation_completedredemption_startedpass_redeemedredemption_rejectedredemption_pendingfixture_decodedqr_error

Veiksmai ir jų įvestys

Clear session
Elemento nustatymai · 5

Planuojamas darbo srautas. Šiuo metu beta versijoje dar neprieinama.

disabledyes/no · Numatytasis: false
Pavyzdinė reikšmėno
Pavyzdinis Bubble išraiškaGuideHost's is_busy (your yes/no custom state)
Išjunkite elementą, kai programa užimta arba šis veiksmas neprieinamas.
is_activeyes/no · Numatytasis: true
Pavyzdinė reikšmėyes
Pavyzdinis Bubble išraiškaGuideHost's view_is_active (your yes/no custom state)
Nustatykite taip, kai šis vaizdas atvertas. Nustatykite ne, kai išeinate, kad atkūrimas arba dabartinis darbas galėtų sustoti.
ui_text_jsontext · Numatytasis: "{}"
Pavyzdinė reikšmė{}
Pavyzdinis Bubble išraiškaApp Settings' player_labels_json (supported keys only)
Pasirenkamas JSON su palaikomais mygtukų etiketėmis. Palikite tuščią, kad naudotumėte įdiegtą tekstą.
languagetext · Numatytasis: "auto"
Pavyzdinė reikšmėuk
Pavyzdinis Bubble išraiškaCurrent User's preferred_language
Nustatykite language=auto sekti palaikomą įrenginį arba naršyklės kalbą. Įveskite palaikomą kalbos kodą, kad pasirinktumėte ją tiesiogiai.
workflow_modeyes/no · Numatytasis: false
Pavyzdinė reikšmėyes
Pavyzdinis Bubble išraiškaApp Settings' use_qr_business_actions
Planuojama: leisti, kad nuskaityta QR reikšmė būtų naudojama Check QR pass. Vienas nuskaitymas nepatvirtina įėjimo ar paėmimo.
Veiksmai ir jų įvestys · 5

Planuojamas darbo srautas. Šiuo metu beta versijoje dar neprieinama.

Clear session

Nėra veiksmų parametrų

Issue QR pass
environmenttext · Numatytasis: "development"
Pavyzdinė reikšmėdevelopment
Pavyzdinis Bubble išraiškaApp Settings' selected_environment
Naudokite dabartinio verslo įrašo reikšmę; patikrinkite ją pagal žemiau pateiktas ribas.
request_idtext · Numatytasis: —
Pavyzdinė reikšmėpickup-123-issue-v1
Pavyzdinis Bubble išraiškaCurrent Admission's stable_request_id
Naudokite dabartinio verslo įrašo reikšmę; patikrinkite ją pagal žemiau pateiktas ribas.
labeltext · Numatytasis: "access"
Pavyzdinė reikšmėevent
Pavyzdinis Bubble išraiškaSelected Admission's pass_label
Naudokite dabartinio verslo įrašo reikšmę; patikrinkite ją pagal žemiau pateiktas ribas.
ttl_secondsnumber · Numatytasis: 900
Pavyzdinė reikšmė900
Pavyzdinis Bubble išraiškaEvent Settings' pass_ttl_seconds
Naudokite dabartinio verslo įrašo reikšmę; patikrinkite ją pagal žemiau pateiktas ribas.

Grąžinamos reikšmės

pass_id · textpass_token · textpass_label · textexpires_at · textqr_png_data_uri · textreused · yes/no
Check QR pass
environmenttext · Numatytasis: "development"
Pavyzdinė reikšmėdevelopment
Pavyzdinis Bubble išraiškaApp Settings' selected_environment
Naudokite dabartinio verslo įrašo reikšmę; patikrinkite ją pagal žemiau pateiktas ribas.
pass_tokentext · Numatytasis: —
Pavyzdinė reikšmė<opaque token returned by Issue / camera scan>
Pavyzdinis Bubble išraiškaQR Pass Scanner's scanned_pass_token (capture before Check)
Naudokite dabartinio verslo įrašo reikšmę; patikrinkite ją pagal žemiau pateiktas ribas.

Grąžinamos reikšmės

pass_label · textexpires_at · text
Confirm QR redemption
environmenttext · Numatytasis: "development"
Pavyzdinė reikšmėdevelopment
Pavyzdinis Bubble išraiškaApp Settings' selected_environment
Naudokite dabartinio verslo įrašo reikšmę; patikrinkite ją pagal žemiau pateiktas ribas.
pass_tokentext · Numatytasis: —
Pavyzdinė reikšmė<opaque token returned by Issue / camera scan>
Pavyzdinis Bubble išraiškaQR Pass Scanner's scanned_pass_token (capture before Check)
Naudokite dabartinio verslo įrašo reikšmę; patikrinkite ją pagal žemiau pateiktas ribas.
request_idtext · Numatytasis: —
Pavyzdinė reikšmėpickup-123-redeem-v1
Pavyzdinis Bubble išraiškaCurrent Admission's stable_redemption_request_id
Naudokite dabartinio verslo įrašo reikšmę; patikrinkite ją pagal žemiau pateiktas ribas.
confirmyes/no · Numatytasis: false
Pavyzdinė reikšmėyes — explicit confirmation only
Pavyzdinis Bubble išraiškaConfirm Checkbox is checked
Naudokite dabartinio verslo įrašo reikšmę; patikrinkite ją pagal žemiau pateiktas ribas.

Grąžinamos reikšmės

pass_id · textpass_label · textreceipt_id · textredeemed_at · textreused · yes/no
Revoke QR pass
environmenttext · Numatytasis: "development"
Pavyzdinė reikšmėdevelopment
Pavyzdinis Bubble išraiškaApp Settings' selected_environment
Naudokite dabartinio verslo įrašo reikšmę; patikrinkite ją pagal žemiau pateiktas ribas.
pass_idtext · Numatytasis: —
Pavyzdinė reikšmė<pass_id returned by Issue>
Pavyzdinis Bubble išraiškaSelected Admission's pass_id
Naudokite dabartinio verslo įrašo reikšmę; patikrinkite ją pagal žemiau pateiktas ribas.

Grąžinamos reikšmės

pass_id · textrevoked · yes/no
Būsenos ir įvykiai

Planuojamas darbo srautas. Šiuo metu beta versijoje dar neprieinama.

Būsenos

scanner_status · text

Dabartinis šio veiksmo rezultatas. Naudokite atitinkamą užbaigimo įvykį prieš išsaugant sėkmę. idle,requesting_permission,permission_denied,scanning,paused,scanned,validating,available,redeeming,redeemed,unavailable,unknown,error,cancelled,decoding_fixture,fixture_decoded

server_status · text

Dabartinis šio veiksmo rezultatas. Naudokite atitinkamą užbaigimo įvykį prieš išsaugant sėkmę. empty,available,redeemed,already_used,expired,revoked

pass_id · text

Identifikatorius šiam elementui arba veiksmui. Laikykite jį kartu su atitinkamu programos įrašu. Naudokite tą patį užklausos identifikatorių, kai kartojate neaiškų rezultatą.

pass_label · text

Dabartinė pasirinkto elemento reikšmė. Perskaitykite ją po susijusio įvykio. empty,access,event,coupon,membership

receipt_id · text

Identifikatorius šiam elementui arba veiksmui. Laikykite jį kartu su atitinkamu programos įrašu. Naudokite tą patį užklausos identifikatorių, kai kartojate neaiškų rezultatą.

error_code · text

Paskutinio veiksmo klaidos informacija. Rodykite naudingą pranešimą ir pasiūlykite atitinkamą pakartojimą.

is_busy · yes/no

Darbas vis dar vykdomas. Palaukite prieš pradėdami kitą veiksmą.

is_scanning · yes/no

Dabartinė pasirinkto elemento reikšmė. Perskaitykite ją po susijusio įvykio.

torch_enabled · yes/no

Dabartinė pasirinkto elemento reikšmė. Perskaitykite ją po susijusio įvykio.

scan_source · text

Dabartinė pasirinkto elemento reikšmė. Perskaitykite ją po susijusio įvykio. empty,camera,fixture

pending_redemption · yes/no

Dabartinė pasirinkto elemento reikšmė. Perskaitykite ją po susijusio įvykio.

scanned_pass_token · text

Dabartinė pasirinkto elemento reikšmė. Perskaitykite ją po susijusio įvykio.

Įvykiai

scanner_started

Kai įvyksta šis įvykis, perskaitykite susijusias būsenas iš to paties elemento.

scanner_paused

Kai įvyksta šis įvykis, perskaitykite susijusias būsenas iš to paties elemento.

scanner_cancelled

Kai įvyksta šis įvykis, perskaitykite susijusias būsenas iš to paties elemento.

permission_denied

Kai įvyksta šis įvykis, perskaitykite susijusias būsenas iš to paties elemento.

pass_scanned

Kai įvyksta šis įvykis, perskaitykite susijusias būsenas iš to paties elemento.

validation_started

Kai įvyksta šis įvykis, perskaitykite susijusias būsenas iš to paties elemento.

validation_completed

Kai įvyksta šis įvykis, perskaitykite susijusias būsenas iš to paties elemento.

redemption_started

Kai įvyksta šis įvykis, perskaitykite susijusias būsenas iš to paties elemento.

pass_redeemed

Kai įvyksta šis įvykis, perskaitykite susijusias būsenas iš to paties elemento.

redemption_rejected

Kai įvyksta šis įvykis, perskaitykite susijusias būsenas iš to paties elemento.

redemption_pending

Kai įvyksta šis įvykis, perskaitykite susijusias būsenas iš to paties elemento.

fixture_decoded

Kai įvyksta šis įvykis, perskaitykite susijusias būsenas iš to paties elemento.

qr_error

Kai įvyksta šis įvykis, perskaitykite susijusias būsenas iš to paties elemento.

Klausimai, kuriuos užduoda kūrėjai

Ką reiškia šios dvi leidimų nuostatos?

Vartotojo „taip/ne“ lauko pavadinimas, nurodantis darbuotojus, kuriems leidžiama kurti arba atšaukti leidimus. Pavyzdys/numatyta reikšmė: qr_pass_issuer. Įrašykite čia lauko pavadinimą, o ne „taip“ ar „ne“. Tik įgaliotas administratorius turėtų keisti šį leidimą vartotojui. Vartotojo „taip/ne“ lauko pavadinimas, nurodantis personalą, kuriam leidžiama tikrinti ir patvirtinti naudojimą. Pavyzdys/numatyta reikšmė: qr_staff. Bilieto turėtojui šio leidimo nereikia. Laikykite jį išskirtą iš viešų registracijos ir profilio formų.

Ar tas pats darbuotojas gali kurti ir tikrinti leidimus?

Taip, jei įgaliotas administratorius suteikia tam darbuotojui abi teises. Tai nereikalauja kito projekto rakto. Klientams paprastai nė viena teisė nėra reikalinga. Neleiskite vartotojams priskirti šių teisių sau.

Kodėl naudoti Patikrinimą po Skenavimo?

Skenavimas perskaito kodą. Patikrinimas klausia, ar leidimas yra prieinamas jo nenaudojant. Personalas gali pirmiausia peržiūrėti užsakymą. Tik atskiras Confirm QR redemption veiksmas naudoja leidimą vieną kartą.

Kaip veikia prenumerata?

Planuojama kaina: įdiegti papildinį Bubble yra nemokama. BestPlugins prieiga yra atskira prenumerata kiekvienam papildiniui kiekviename Bubble programos projekte: 7 dienų nemokamai, po to US$1.50 per mėnesį. Development ir Live yra įtraukti. Nėra fiksuoto operacijų skaičiaus limito; vis tiek galioja failų dydžio ir funkcijų apribojimai. Apmokėjimas dar neatsidaro. Aktyvavimo ekrane bus rodomi pirmasis apmokėjimo data ir atšaukimo sąlygos.

Susijusios gairės

Marketplace laida laukia

Forumo vadovas nepublikuotas

Pagalbos prašym, nurodykite, kurį papildinį ir įrenginį naudojate, kokį veiksmą bandėte ir kas įvyko. Naudokite pavyzdį be asmeninių duomenų. Niekada nesidalinkite savo raktu ar privačiais failais.