Desktop SDKs
NamiPay provides desktop SDK libraries for Windows environments. These libraries enable direct integration between merchant POS applications and the Nami payment terminal.
Available Desktop SDKs
- Java ECR SDK — JNI wrapper for Java SE desktop environments (requires JDK 8+)
- .NET SDK — P/Invoke calls to native
ECR.dll(requires .NET Framework 4.7.2+ or .NET 6+) - C/C++ SDK — Low‑level headers (
SBCoreECR.h/EcrApi.h) for embedded or native Windows apps
Common Requirements
All desktop SDKs require:
- Windows 10 or later
- Nami payment terminal connected via:
- TCP/IP (LAN/Wi‑Fi) — Recommended
- Serial (USB/COM port) — Supported for legacy ECR integrations
- Bluetooth — ⚠️ Limited support; restrictions disclosed separately
Native ECR library (.dll or .h files) placed in the correct directory
⚠️ Bluetooth Limitations
- Supported only on Windows 10 and later
- Requires successful device pairing before SDK connection
- Only one terminal can be paired per workstation at a time
- Sessions may drop under poor signal conditions; TCP/IP is recommended for production
- Advanced flows (refunds, reversals) are not supported over Bluetooth
- Some terminals require updated firmware for stable Bluetooth sessions
Legacy vs Adapter Separation
- Legacy ECR integrations require:
- Register Terminal (
txnType = 17) - Start Session (
txnType = 18)
- Register Terminal (
- Adapter / Middleware integrations (Local REST API, Cloud REST API) do not require registration or session steps.
Important: Confirm with your POS provider whether your system uses legacy ECR or adapter/middleware before following integration steps.
Request and Response Details
When performing a transaction, include:
- Date (
ddMMyyHHmmss) - ECR Reference Number (String)
- Amount (Integer in halalas, e.g.,
100 = SAR 1.00)
Responses return:
- Response Code (Approved/Failed)
- Approval Code
- Receipt Data
Updated 10 days ago
