One Terminal. Every Payment.
Accept card, WeChat, Alipay, UnionPay, EFTPOS and wallet payments from a single Android terminal.
Built for speed. Secured by design.
Accepts every major payment network
Everything you need to accept payments
Production-ready. Hardened in live deployments. Nothing on this page is a roadmap item.
Multi-Gateway Payments
Card, WeChat Pay, Alipay, UnionPay, CentraPay, EFTPOS, and cash — all from a single terminal with automatic routing.
Tap-to-Pay NFC
One-tap card detection via Sunmi PaySDK. Apple Pay, Google Pay, and contactless cards with EMV processing and tip dialogs.
Smart Payment Routing
Automatic fallback to the next available provider on failures. The router selects the best match for every transaction.
Real-Time Reports
Filterable transaction logs, per-gateway channel summaries, settlement batching, and end-of-day reconciliation.
OTA Updates
Self-updating over S3 with SHA-256 integrity verification. Mandatory and optional update modes. No app store required.
Enterprise Security
Root detection, AES-256 encrypted storage, JWT + HMAC authentication, environment segregation, and tamper-proof OTA.
How it works
Three steps from unboxing to accepting payments.
Activate
Scan the 6-digit code. Your terminal connects and configures itself automatically.
Accept Payments
Customer taps, scans, or swipes. Payment routes to the best available gateway.
Settle & Report
End-of-day batch settlement. Email receipts. Filterable reports in the admin portal.
Built for the counter
- Contactless / NFC (Apple Pay, Google Pay)
- QR code scanning + generation
- Configurable tips & surcharges
- Real-time network quality monitoring
- Multi-terminal LAN networking
Integrate in minutes
Native SDKs for Android, Web, and iOS. Same contract, three platforms.
// 1. Build the client (encrypted token storage; add a cert pin in production)
val client = OneMyPosMateClient.Builder("https://payus.co.nz", system = "pos")
.tokenStore(EncryptedSharedPrefsTokenStore(context))
.build()
// 2. Register this device once with its 6-digit activation code
client.auth.activate("123456")
// (or, for an integrator app: loginWithClientCredentials(appId, appSecret))
// 3. Discover which channels the backend enabled for this terminal
val caps = client.capabilities(configId = 123)
// 4. Take a non-card QR payment (typed — card/EFTPOS stays on the device SDK)
if (PaymentChannel.WECHAT in caps.usableChannels) {
val resp = client.payments.payNow(
channel = PaymentChannel.WECHAT,
amount = "10.00",
referenceId = "REF-${System.currentTimeMillis()}",
branchId = 17,
configId = 123,
)
// render resp.qrCode / resp.codeUrl, then poll until terminal status:
val details = client.query.getTransactionDetails("REF-…", 17, 123)
}// 1. Create the client
const client = new OneMyPosMateClient({
baseUrl: 'https://payus.co.nz',
system: 'pos',
});
// 2. Authenticate with your OAuth app credentials
await client.auth.loginWithClientCredentials(
'YOUR_APP_ID',
'YOUR_APP_SECRET'
);
// 3. Discover terminals in your branch
const terminals = await client.triggers.listSiblings(17);
// 4. Process a payment through a terminal
const resp = await client.payments.payNow({
grandTotal: '10.00',
referenceId: `REF-${Date.now()}`,
branchId: 17,
configId: terminals[0].configId,
channel: 'WECHAT',
});// 1. Create the client
let client = OneMyPosMateClient(
baseUrl: "https://payus.co.nz",
system: "pos"
)
// 2. Authenticate with your OAuth app credentials
try await client.auth.loginWithClientCredentials(
appId: "YOUR_APP_ID",
appSecret: "YOUR_APP_SECRET"
)
// 3. Discover terminals in your branch
let terminals = try await client.triggers.listSiblings(branchId: 17)
// 4. Process a payment through a terminal
let resp = try await client.payments.payNow(
PayNowRequest(
grandTotal: "10.00",
referenceId: "REF-\(Int(Date().timeIntervalSince1970))",
branchId: 17,
configId: terminals[0].configId,
channel: "WECHAT"
)
)Runs on your hardware
Tested and supported on Sunmi terminals and any Android 8+ device.
Sunmi P2
NFC + Built-in Printer
Sunmi V2
NFC + Built-in Printer
Sunmi V2 Pro
NFC + Built-in Printer
Sunmi T2
Countertop + Printer
Sunmi D2
Desktop + Printer
Android 8+ Device
Wi-Fi / Bluetooth Printers
Ready to modernise your payment stack?
Bring PayUs to your stores, or drop our SDK straight into your POS. We’ll help you pick the right path.