Power Apps Mobile Canvas App + Power Automate + QR Code API
Developed a mobile canvas app designed to expedite processing of unused phone returns. The solution involves users completing a return form via Microsoft Forms that triggers a Power Automate flow leveraging a QR code generator API endpoint. The automated flow encodes the QR code generated by the API with the primary key associated with the record created when the form is submitted. Users affix the QR code to their device and mail it to the appropriate team who scans the QR code, filtering a gallery with the associated phone record via its primary key value, and logs it as “Returned.” The canvas app also has backup methods of logging phone returns by creating a record from scratch, reversing the log to “Pending”, and editing key details of the record all from their mobile device. The process produces a table listing all returned devices, which can then be used to run an append query in the Microsoft Access smartphone database. In this way, the solution expands the functionality of the existing legacy system without necessitating a full rebuild.
My Role
I served as the sole designer and developer for this project, responsible for the full lifecycle from requirements analysis to testing.
Requirements
- Asset returns must require minimal input from end users processing smartphone returns for secure destruction
- The solution must use a QR code for quickly scanning assets
- Internal data must not be exposed via API calls to generate the QR code and no paid connectors should be used for QR code functionality
- End users must be able to search for assets manually using IMEI and Phone number as a secondary method of asset logging should QR scanning fail.
- End users must be able to view pending returns, received assets, and all assets in a gallery of records.
- Users must be able to manually add asset information should asset senders fail to follow procedures.
Architecture
Data Model
Power Automate Flow Overview
QR Code API Documentation
- The QR code is only encoded with the Primary Key value which is an AutoNumber value from the SharePoint List.
- The Power Automate Raw Inputs confirms the only data passed to the API endpoint is a static value via “data=61” where “61” represents the ID value of a SharePoint List Item
Full Power Automate Flow
Challenges
I challenged myself to implement a glassmorphic effect of the popup components. I used the HTML control using a gradient and a blur option with rounded corners at the top
Result