1001 Freelance Projects
Latest Projects from
Freelance Marketplaces
View Project
View this project in detail
(Note: you will be redirected to external marketplace)
Project title:
Android Kiosk App for SUNMI K2
Posted by:
External project from PeoplePerHour
Started:
03-Oct-2025 10:14 GMT
Description:
Overview

Build a locked-down Android kiosk app for the SUNMI K2 (24", 1080×1920 portrait).
The app will pull content from our WooCommerce /kiosk endpoint, cache it for offline-first operation, and expose native capabilities—printer, QR/camera, USB vending controller—to the web UI via a secure JS bridge.
Payments are handled via Revolut Terminal API (semi-integrated): app initiates transactions, terminal performs PCI-scoped card flow, app receives results.

Deliverables

Production-ready APK/AAB + full source code (Git repo).

JS bridge documentation + sample /kiosk bundle.

Config guide (WooCommerce endpoints/keys, Revolut Terminal setup, supported USB VID/PIDs).

Simple USB vending serial protocol spec + (nice-to-have) bench simulator.

Test plan/results (unit, instrumented, hardware-in-the-loop) and admin cheat sheet.

Scope & Requirements

Content & Offline

Fetch /kiosk HTML/JSON/assets from WooCommerce; verify signatures; local cache.

Start from cache; background delta updates (WorkManager).

Render via WebView (file://) with a minimal, audited JS↔Native bridge.

Payments — Revolut Terminal (semi-integrated)

App sends {amount, currency, orderId} to Revolut Terminal API/device.

Handle async result (approved/declined/cancelled), update UI, print receipt, update WooCommerce order.

Idempotent flow with retries; refund/void via PIN-protected admin.

Peripherals

Printer: SUNMI SDK / ESC/POS (receipts, admin prints).

QR/Barcode: CameraX + ZXing/ML Kit; expose decoded payload to WebView.

Vending: USB CDC/serial to control up to 12 slots; commands, timeouts, retries, job queue.

(Optional) NFC: Read ISO14443/NDEF tokens for loyalty/account lookup.

Kiosk & Resilience

LockTask (pinned app), immersive full-screen, auto-start on boot.

Watchdog to recover WebView/service on crash/hang.

Branded offline page and graceful error states.

Security/Privacy

TLS + cert pinning to our APIs; signed content manifests.

Admin menu with PIN; logs export with PII redaction; GDPR-aware.

Telemetry

Local event queue → batch upload (crashes, payment outcomes, dispense results, playback metrics).

Acceptance Criteria (must pass)

Boots straight into kiosk; recovers from kill/reboot in ~5s; no system chrome.

Offline-first after initial sync.

Full flow: Revolut card payment → vending dispense → receipt print → WooCommerce order update.

100 consecutive purchase cycles without ANR/crash on SUNMI K2.

Signed bundle verification enforced; admin features behind PIN.

Tech Preferences

Kotlin + Jetpack (ViewModel, WorkManager, Room).

Android WebView with shouldInterceptRequest asset interception; addJavascriptInterface for a minimal bridge.

CameraX + ZXing/ML Kit; SUNMI SDK for printer/scanner where applicable.

USB Host (CDC/FTDI), OkHttp3 with TLS pinning, Hilt DI.

Crash/metrics (Crashlytics/Sentry); ProGuard/R8.

What We Provide

WooCommerce /kiosk endpoint + adverts and signing keys.

Revolut merchant sandbox credentials and terminal.

Test hardware access or remote test windows.

API contracts and sample UI bundles.

Experience Needed

Android kiosk/terminal apps in production.

Revolut Terminal or similar semi-integrated card workflows.

USB serial on Android + ESC/POS printing.

WooCommerce/REST integrations.

Nice-to-Haves

Prior SUNMI K2 integrations.

Hardware-in-the-loop testing experience.

Content signing/manifest verification patterns.

Screening Questions (answer briefly)

Outline your semi-integrated Revolut Terminal flow (init → async status → idempotent order update → receipt).

How will you design a safe JS↔Native bridge so WebView stays sandboxed but can print/scan/dispense/pay?

Your retry/timeout strategy for DISPENSE and payment callbacks.

How do you keep kiosk mode after crashes/reboots and ensure quick recovery?

Your approach to content signing and preventing activation of tampered bundles.

Budget & Timeline

Fixed-price: £____ (please propose)

Timeline: ____ weeks (milestones welcome)

Legal

NDA and IP assignment required.

Must provide code in a private Git repo throughout the project.
Project ID:
3452185
Project category:
Project budget:
View this project in detail
(Note: you will be redirected to external marketplace)
Last Projects / Browse Projects
  Project Started
Edgenuity Assignment Help Across Subjects
Category: Academic Writing, Content Writing, Educational Research, English Tutoring, Environmental Science, Essay Writing, Math Tutoring, Report Writing, Research Writing, Time Management
Budget: $30 - $250 USD
25 Mar 2026 23:04 GMT
PostgreSQL/Supabase Architect - Consult
Category: Data Modeling, Database Administration, Database Design, Database Development, Database Programming, MySQL, PostgreSQL, Relational Databases
Budget: $30 - $250 USD
25 Mar 2026 23:03 GMT
Website Client Onboarding Automation
Category: Customer Experience, Customer Service
Budget: $250 - $750 AUD
25 Mar 2026 23:02 GMT
Angular Application Maintenance Freelancer
Category: Angular, AngularJS, Express JS, Frontend Development, Git, HTML5, Node.js, RxJS
Budget: ₹600 - ₹1500 INR
25 Mar 2026 23:00 GMT
Media Buyer Meta ROAS -- 2
Category: A / B Testing, Facebook Ads, Google Ads, Google Adwords, Instagram Ads, Internet Marketing, Marketing, SEO
Budget: $15 - $25 USD
25 Mar 2026 22:58 GMT
Expert Graphic Designer (Arabic Speaker)
Category: Adobe Illustrator, Adobe InDesign, Photoshop, Branding, Brochure Design, Creative Design, Graphic Design, Illustration, Print Design
Budget: $30 - $250 USD
25 Mar 2026 22:58 GMT
Tree Service Grant Writer
Category: Business Development, Ghostwriting, Grant Writing, Management, Project Management, Proposal Writing, Research, Research Writing
Budget: $250 - $750 USD
25 Mar 2026 22:56 GMT
Google Ads Lead Generation Expert
Category: A / B Testing, Google Ads, Google Adwords, Internet Marketing, Keyword Research, Lead Generation, Search Engine Marketing (SEM), SEO
Budget: ₹12500 - ₹37500 INR
25 Mar 2026 22:55 GMT
Implementación integral Odoo Enterprise INDEPENDIENTE - Constructora
Category: Construction Management, CRM, Database Management, ERP, Odoo, PHP, Python, Real Estate Management, Software Architecture, Software Development
Budget: $10 - $25 USD
25 Mar 2026 22:52 GMT
Full-Stack Food Delivery Website
Category: CSS, Django, Full Stack Development, HTML5, JavaScript, Laravel, Python, Vue.js, Web Development
Budget: ₹12500 - ₹37500 INR
25 Mar 2026 22:51 GMT
Quartus Prime Logic Design
Category: Digital Design, Electrical Engineering, Electronics, Embedded Systems, FPGA, Microcontroller, Simulation, Verilog / VHDL
Budget: $30 - $250 USD
25 Mar 2026 22:49 GMT
Network Engineer for ISP - 25/03/2026 18:49 EDT
Category: Network Engineering, Technical Support, Troubleshooting, Ubiquiti
Budget: $15 - $25 USD
25 Mar 2026 22:49 GMT
Professional Educational Slides & Worksheets
Category: Google Docs, Google Slides, Powerpoint, Visual Design
Budget: $30 - $250 AUD
25 Mar 2026 22:47 GMT
Document Formatting Expert Needed
Category: Document Checking, Editing, English Spelling, Google Docs, Microsoft Word, Proofreading, Typography, Word
Budget: €750 - €1500 EUR
25 Mar 2026 22:45 GMT
Custom RGB LED Laser Tag Gun -- 2
Category: 3D CAD, 3D Design, 3D Modelling, 3D Printing, 3D Rendering, Fusion 360, Product Design, Solidworks
Budget: $10 - $30 USD
25 Mar 2026 22:43 GMT
Browse All Projects
Projects by Skills ...
android
ajax
asp
aspnet
cms
cpp
csharp
css
delphi
design
drupal
excel
facebook
flash
html
java
javascript
joomla
iphone
mysql
photoshop
php
python
ruby
seo
sql
sysadm
translate
typing
twitter
vbnet
xml
wordpress
writing
New!
Проекты на русском
(Projects in Russian)

Copyright © 2005-2025
1001 Freelance Projects