An Android-based mobile application developed using Flutter and Firebase for the purpose of improving the contactless shopping experience in grocery shopping.
DartAGPL-3.0
Self-Checkout Mobile Application
Using Flutter and Firebase
Features
Developement is based on Flutter.
Supports on Android.
Barcode/QR Code scanning.
Integrated for Stripe API.
Libraries
Find and use packages to build Dart and Flutter apps from pub.dev. flutter_barcode_scanner, flutter_credit_card, flutter_spinkit, stripe_payment, http, cloud_firestore, firebase_auth, shared_preferences, google_fonts, progress_dialog
API
Firebase API
Create a Firebase project and add your own Firebase google-services.json file to project root folder (App uses Firestore to save login details).
Stripe API
Stripe (free plan) was used to do payments from the mobile app.
Replace the payment_services.dart file with your own SECRET KEY and PUBLIC KEY from your Stripe account.
Hardware requirements
Smartphone enabled with camera.
How the application works
Scan barcodes/QR codes of products to add them to cart.
The payments can be done only upon an equal total weight of the products brought were verified by scanning a equally weighted QR code.
Payments are enabled by the test version of Stripe.
Installation
Add your Firebase google-services.json to the project
Add your Stripe API SECRET KEY and PUBLIC KEY in payment_services.dart