Synqpay Driver
Overview
The Synqpay Driver is a lightweight client library for connecting a host application directly to a Synqpay payment terminal over the network or serial link. It handles the connection (TCP, SSL, or UART) and the JSON-RPC transport underneath, so your application can focus on sending requests and reacting to responses.
The driver ships as a single C++ core with matching bindings for Java (desktop and Android) and C# (.NET), so the same API is available regardless of which platform your application targets.
Why Choose Synqpay Driver?
- Lightweight & Dependency-Free: no external dependencies pulled into your application.
- One API, Every Platform: the same client shape across C++, Java, and C#.
- Simple Threading Model: safe to call from your UI thread; the SDK manages its own connection thread internally.
- Multiple Transports: TCP, SSL, or UART, selected at client creation.
Key Features
- Simple Request API: send a JSON-RPC request and receive its response through a callback, without managing sockets or framing yourself.
- Connection Lifecycle Management: start/stop and connect/disconnect are safe to call repeatedly.
- Live Transaction Notifications: receive asynchronous status updates while a transaction is in progress.
- No File Dependencies (Java / C#): the native library is bundled inside the jar / NuGet package and loaded automatically — no manual
java.library.pathsetup or copying.so/.dllfiles yourself.
Getting Started
Adding the Driver to Your Project
See Setup for Maven, Gradle, and NuGet coordinates for each supported platform.
Synqpay Driver in 3 Simple Steps
Step 1: Build a client
Step 2: Start and connect
Step 3: Send requests
Warning
Always check the return value of sendRequest. It reports SDK/transport-level failures (e.g. not connected) that happen before the request is even sent, so the response callback will never fire for them.
For the full method reference, see API. For the request/response protocol itself (methods, params, transaction notifications), see the API reference.
Notes
- The driver is a transport layer: it gets your JSON-RPC requests to the terminal and the responses back. The payment protocol itself (methods, parameters, error codes) is documented separately in the API reference.
- Continue to Key Concepts for the full client lifecycle, threading, error handling, and logging.