QR Code Scanner Testing?

Hi everyone, I’m new to the community. First of all I wanted to wish everyone a happy Christmas and happy holidays with your loved ones.

I had been looking for the possibility of inserting a QR Scanner into my future app for a while. Finally I found Adalo, I saw that it has the appropriate addon that also allows you to create a record of what it has just scanned (Perfect!).
I immediately entered the addon and the logics, but I realized that it is impossible to test the app from a device (which is not native).

How can I release my app without knowing how things will go? Also I have seen that a lot of the forum documentation always points to the release guidelines. But I don’t understand how I can release a trial version, without ever having released a native version 1.0?
It’s possibile?

I need to do some tests first … I hope you understand me. Where can I find TEST release guidelines (example Testflight on iOS)?

Also I take advantage of it, is it possible to insert a logic that if the scanned qr code is already present in the record archive, a pop up is shown? as what I would like to create is an app for merchants who will have to scan some qr code (coupon), but which are valid only once. Do you have any advice?

Thanks to much to all.

1 Like

Hi @miticobeppe, you should try connecting your Adalo account to your Apple Developer account. Once your app is published from the Adalo Editor, you can then use Apple Testflight for testing your app natively. At this phase, you can continue to modify the app on Adalo and every time you make a revision and publish through the editor, it will update the Testflight revision.

Publishing your app from Adalo to your Apple Dev account does not automatically submit your app to the store for public view. It is basically another staging area to test and add app details before final submission.

Once your app is ready and everything is tested, you can then submit your app from your Apple Developer account for approval.

Regarding your QR Coupon, I think I would solve this by having the merchant scan the QR code which opens up a screen that has the unique coupon and a validate button (redeem) and cancel button. The coupon collection should have a True/False property and the redeem button should validate only if the coupon is set to either false or true (however you want to set that logic).

To create less friction, the screen that opens should be publicly displayed with no visibility conditions for the merchant. Alternatively, the merchant needs to be logged in to redeem the coupon.


Thanks a lot for the answer. Is it very easy to publish to test on testflight? Or does it take a long time? (realtime or no?) I wonder as I have never made it to this step and am trying to gather more information.

As for the merchant scanning the QR code, I understand what you mean. But is it possible after scanning to perform an automatic check (based on the ver / false if it already exists), which denies the confirmation of the coupon code, on the next screen?

First scan coupon code -> Opening new screen with “confirm?” -> YES -> Record inserted (true)

Second scan (Same) coupon code -> Opening new screen with “confirm?” , but here the confirm button is not enabled and the message “The code has already used” will appear.

Perhaps this is clearer, as each user will have their own coupon code and the merchant will have to scan it for each one (but only once it will be valid), the check must be done at the base.


Hi @hobokencloud! Thank you for this comprehensive reply! It helped me as well with the same problem with the QR code scanning. Could you please clarify what you mean by “coupon collection”?
I am working with a case where the users of the app actually have coupons for each different business/shop/merchant, and in order to earn discounts at these shops, they present the QR to the salesperson, and through their separate login in the app, the salesperson can scan the QR to see whether it is valid.
Currently, each time the QR button is pressed by the user, a random QR code is generated, and this code also gets updated in the merchant’s database (so you could set it to something like “if the code in the QR is equal to the code in the database, validate it”.)
But how would you actually validate it? What do you need to do so that the system tells you whether it is valid or not? Then after it shows them if it is/not valid, they can either cancel or redeem, which is easier.
Thank you so much for your help!

I believe the setup to configure Adalo and Apple Dev account took about 45-60 minutes (including Testflight). It took maybe another hour or so to get my app approved for TestFlight. After that, publishing new revisions through the editor takes a few minutes depending on how busy Adalo services are at the time.

All in all, you can get started within a day or so.

Back to Coupons

Using your example, to get the “The code has already used” to appear, you can place a text component on the screen and set a condition to display Only If coupon code confirm is set to True. In addition, have a third button with a grey color and some text like, “Redeemed”, with the same display condition.

To make the right button appear at the right time, set a condition for the confirmation(redeem) button to display only if the coupon confirm is set to False. So these buttons only appear depending if the coupon has been confirmed by the user or not.

As a recap, you will have three buttons on the screen (stacked) and a text component.

Text (Display if True)

Redeem (Display if False)
Redeemed (Display if True)

Please note, visibility condition rules might be one of the best ways to achieve this right now. However, once the “States” feature is released (maybe Q1-Q3 2020), you may be able to set style variations of buttons or text for any component depending if something is true or not. It will open up another level of possibilities.

The “coupon collection” in the previous example is really where the coupon codes are being stored (assuming this is how it was set up). Basically a database table just for codes that are related to the user.

When you say validate, are you wanting to have the system check to see if it exist? Or expire (set to an inactive state)? What do you consider an invalid QR code is?

It may be that you may need to add additional properties to determine different outcomes but would need to know more specifics on what is consider valid and not valid.

Not sure if this will help you directly due to how your database is set up but may be something to consider so just want to mention it.

Still testing, however, there is a complete alternative way to process coupons/offers. The flow is much like following and unfollowing users explain in this video by Patrick Ford or accepting a friend request in this video.

The idea is, you have your collections set for either scenario that best matches your case (follow or friend request), but instead, using coupons as an item that is moved from a True column to False column, vice versa, on your User Collection. Columns being relationships between User Collections and Coupon Collection. Using the QR scanner to update current scan coupon to the right column.

Email Address Name Saved Coupons Redeemed Coupons
user@email.com Name Name Coupon2, Coupon3, Coupon1,

This would mean that a merchant could create a new coupon just once, and various users can save or redeem the coupon as it moves from a valid column to an invalid column, or True column to False Column, or Unused Column to Used Column.

If you can imagine, there would be a list of coupons from different merchants. A user can redeem by tapping on a redeem button that opens current coupon QR code. A merchant then scans the QR code that updates the coupon for the logged in user to a redeemed column.

You can then add additional validation properties on the Coupon Collection that are managed by the merchant globally like, expiration date, quantity, inactive status and such.

Hi Sir,

This would be a very effective method due to tha ability to update each coupon as “redeemed” for each specific user, considering that I would like to set a limit of how many coupons a user can spend per day, and potentially even reward clients who spend many coupons in a certain shop repeatedly.

An invalid QR code could be an expired one, or one that does not belong to the business it is trying to be redeemed in, however, I have not figured out how to set a way for codes to expire and whether I would like to have codes expire.
The important thing is for users to not abuse with the system by, say, screenshotting a QR and presenting that to the merchant without using the app. They are not spending any units or “coins” of any kind to obtain those discounts, but the important thing is that they only use the app to obtain them.

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.