Develop an App for myPOS Smart Devices
This guide walks you through creating, integrating, and publishing an Android business app for myPOS Smart terminals using the myPOS Smart SDK.
1. Create a New Project
Developing apps for myPOS Smart devices is similar to building standard Android applications. You’ll use Android Studio and the myPOS Smart SDK alongside standard Android APIs.
- Recommended IDE: Android Studio
- Programming Language: Java (C/C++ possible via Android NDK)
You’re free to use any development environment you're comfortable with, but Android Studio offers the best compatibility with SDK tools.
2. Choose Your App Type
You can develop apps for a wide range of industries and use cases:
- Taxi and Transportation
- Restaurants and F&B
- Retail
- Hotels and Booking
- Leisure
- Professional Services
- ...and more!
Compliance Limitations
- The Android Settings menu is locked on myPOS Smart devices.
- All production apps must be signed with the manufacturer’s PCI Certification Key to be installed on non-test devices.
3. Integrate the myPOS Smart SDK
The myPOS Smart SDK enables direct communication with the terminal's hardware and services to process card payments and interact with secure components.
Key Features:
- Process payments with support for Visa, Mastercard, UnionPay, JCB, Bancontact, and others
- Initiate refunds, voids, and pre-authorizations
- Handle Payment Requests
- Access POS info and terminal components
- Operate SAM Modules
- Print last transaction receipts and custom receipts with images (e.g., QR codes)
Security-first: The SDK ensures all payment data is encrypted and never passes through your app.
Built-in SDK Functionalities
With the SDK integrated, your app can:
- Receive POS info
- Process checkout payments
- Issue refunds
- Send payment requests
- Void transactions
- Control SAM modules
- Print receipts (last transaction & custom)
4. Finish Your Project – Build the APK
Use Gradle in Android Studio to build and package your app. Android Studio automates builds and allows for advanced configuration via build.gradle.
Refer to:
📘 Official Build Guide
Manifest File Example
Set your SDK levels and versioning:
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
android:versionCode="1"
android:versionName="1.0.1"
package="name.of.your.app">
<uses-sdk
android:minSdkVersion="19"
android:targetSdkVersion="27" />
<!-- Your application declaration and activities go here -->
</manifest>
Versioning
Each new version must increment:
android:versionCode="2"
android:versionName="1.0.2"
The package name must stay the same for the app to be recognized as an update.
SDK Compatibility
| Device Type | Min SDK Version | Android Version |
|---|---|---|
| myPOS Smart | 19 | Android 4.4.2 (KitKat) |
| myPOS Smart N5 | 22 | Android 5.1 (Lollipop) |
| myPOS Hub & Kiosk | 23 | Android 6.0 (Marshmallow) |
| myPOS Carbon | 28 | Android 9.0 (Pie) |
App Label
The name shown on the terminal comes from the android:label property in your manifest—not the AppMarket listing.
Launcher Type Apps Not Allowed Do not include this in your activity:
<category android:name="android.intent.category.HOME" />
Signing Your App
Follow the official guide to generate and use a developer signing key:
🔑 Android App Signing Guide
Sign all versions with the same key to enable seamless app updates. Changing the key will prevent upgrades.