Rewards App Support

I need help designing my Rewards App to enable offer claims and redemptions without QR codes. Please see below for my required flow:

  1. When a user clicks “Claim Offer,” generate a unique 4-digit code and send it instantly to their email and SMS.
  2. The user gives this code to the business in person.
  3. The business enters the code into a text input (only visible to their business) and clicks a “Code Redeemed” button (unique to their business).
  4. If the code matches an active claim for their business, mark the code as redeemed and increment a redemption tally for that business.

No QR codes should be used at any step. Please guide me on the simplest, most robust way to achieve this using Glide, including any best-practice workflows or integrations you recommend.

1 Like

Hey NEFA, and Welcome to Glide!


Step 1: Claim Offer

  • Create a “Claims” table with columns like: User Email, Business ID, Offer ID, 4-digit Code, Status (Active/Redeemed), Timestamp.
  • When a user taps “Claim Offer,” generate a random 4-digit code (1000–9999), save it to the Claims table.
  • Use Make.com (or Zapier) to send that code by email and SMS. Twilio is great for SMS.

Step 2: In-Person Code Sharing

  • The user shows the code from the SMS, email, or a “My Claims” screen in the app.

Step 3: Code Redemption by Business

  • Businesses have a screen with a code input and a “Redeem” button, only visible to their role.
  • The button checks the Claims table for a matching active code linked to that business.

Step 4: Validation and Tracking

  • If the code is valid:
    • Mark it as “Redeemed”
    • Add a timestamp
    • Use a rollup column to count redemptions per business

Best practices:

  • Use row owners to keep data secure
  • Add logic for expired codes if needed
  • Give businesses feedback if the code is invalid or already redeemed

I also invite you to read this post to make sure you understand how Glide security works:

1 Like

You can also use the native email/Twilio integrations.

1 Like

Forgot about that.