> For the complete documentation index, see [llms.txt](https://developer.magtek.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.magtek.com/sdks-and-tools/universal-sdk-documentation/android.md).

# Android

### Universal SDK Documentation (Android)

The Android edition of the MagTek Universal SDK (MTUSDK), which brings MagTek SCRA and PIN Pad SCRA devices — including the DynaFlex family — into a single AAR library for Android apps. Use the sections below to set up the SDK, connect to and control a device through the Core API, subscribe to device events, and look up classes, enumerations, and reference appendices.

### In This Section

<table data-header-hidden><thead><tr><th valign="middle"></th><th></th></tr></thead><tbody><tr><td valign="middle"><strong>Reference Section</strong></td><td><strong>Information Available</strong></td></tr><tr><td valign="middle"><a href="https://developer.magtek.com/sdks-and-tools/universal-sdk-documentation/android/introduction"><mark style="color:red;"><strong>Introduction</strong></mark></a></td><td>Overview of the SDK and the MagTek devices it supports, with system requirements and how to install the certificate chain for connecting to a DynaFlex II PED over WLAN.</td></tr><tr><td valign="middle"><a href="https://developer.magtek.com/sdks-and-tools/universal-sdk-documentation/android/how-to-set-up-the-sdk"><mark style="color:red;"><strong>How to Set Up the SDK</strong></mark></a></td><td>Instructions for adding the MTUSDK AAR library to an Android Studio project and preparing it for first use.</td></tr><tr><td valign="middle"><a href="https://developer.magtek.com/sdks-and-tools/universal-sdk-documentation/android/coreapi"><mark style="color:red;"><strong>Core API</strong></mark></a></td><td>The SDK's main entry point — how to create and work with a device instance and reach the interfaces used to operate it.</td></tr><tr><td valign="middle"><a href="https://developer.magtek.com/sdks-and-tools/universal-sdk-documentation/android/idevice"><mark style="color:red;"><strong>IDevice</strong></mark></a></td><td>The primary device interface for opening and closing a connection and sending commands to a MagTek device.</td></tr><tr><td valign="middle"><a href="https://developer.magtek.com/sdks-and-tools/universal-sdk-documentation/android/idevicecapabilities"><mark style="color:red;"><strong>IDeviceCapabilities</strong></mark></a></td><td>Methods for querying which features and capabilities a connected device supports.</td></tr><tr><td valign="middle"><a href="https://developer.magtek.com/sdks-and-tools/universal-sdk-documentation/android/idevicecontrol"><mark style="color:red;"><strong>IDeviceControl</strong></mark></a></td><td>Operations for controlling a connected device and driving its command set.</td></tr><tr><td valign="middle"><a href="https://developer.magtek.com/sdks-and-tools/universal-sdk-documentation/android/connectioninfo"><mark style="color:red;"><strong>ConnectionInfo</strong></mark></a></td><td>The connection parameters used to locate and connect to a device (transport, address, and related settings).</td></tr><tr><td valign="middle"><a href="https://developer.magtek.com/sdks-and-tools/universal-sdk-documentation/android/deviceinfo"><mark style="color:red;"><strong>DeviceInfo</strong></mark></a></td><td>Identifying details reported by a connected device, such as model, serial number, and firmware version.</td></tr><tr><td valign="middle"><a href="https://developer.magtek.com/sdks-and-tools/universal-sdk-documentation/android/ideviceconfiguration"><mark style="color:red;"><strong>iDeviceConfiguration</strong></mark></a></td><td>Settings used to read and apply a device's configuration.</td></tr><tr><td valign="middle"><a href="https://developer.magtek.com/sdks-and-tools/universal-sdk-documentation/android/classes"><mark style="color:red;"><strong>Classes</strong></mark></a></td><td>Alphabetical reference for the SDK's data and result classes (Classes A–I and N–Z).</td></tr><tr><td valign="middle"><a href="https://developer.magtek.com/sdks-and-tools/universal-sdk-documentation/android/ieventsubscriber-delegates"><mark style="color:red;"><strong>IEventSubscriber Delegates</strong></mark></a></td><td>Callback delegates for subscribing to asynchronous device events, such as connection changes and transaction progress.</td></tr><tr><td valign="middle"><a href="https://developer.magtek.com/sdks-and-tools/universal-sdk-documentation/android/iconfigurationcallback-delegates"><mark style="color:red;"><strong>IConfigurationCallback Delegates</strong></mark></a></td><td>Callback delegates that report the results of device configuration operations.</td></tr><tr><td valign="middle"><a href="https://developer.magtek.com/sdks-and-tools/universal-sdk-documentation/android/imqttdevicestatuscallback-delegates"><mark style="color:red;"><strong>IMQTTDeviceStatusCallback Delegates</strong></mark></a></td><td>Callback delegates for receiving device status updates delivered over MQTT.</td></tr><tr><td valign="middle"><a href="https://developer.magtek.com/sdks-and-tools/universal-sdk-documentation/android/isystemstatuscallback-delegates"><mark style="color:red;"><strong>ISystemStatusCallback Delegates</strong></mark></a></td><td>Callback delegates for receiving system-level status updates from the SDK.</td></tr><tr><td valign="middle"><a href="https://developer.magtek.com/sdks-and-tools/universal-sdk-documentation/android/enumerations"><mark style="color:red;"><strong>Enumerations</strong></mark></a></td><td>Reference for the SDK's enumerated types (device and transaction states, card types, option flags).</td></tr><tr><td valign="middle"><a href="https://developer.magtek.com/sdks-and-tools/universal-sdk-documentation/android/appendices"><mark style="color:red;"><strong>Appendices</strong></mark></a></td><td>Supporting reference — status codes, an API walk-through, EMV transaction flow, and Apple/Google mobile-wallet VAS.</td></tr></tbody></table>

### Need More Help

{% hint style="info" %}
**Need Help?**

For additional support, please contact MagTek Support:

**Technical Support:**

* 📧 **Email:** [support@magtek.com](mailto:support@magtek.com?subject=Support%20Request)
* 📞 **Phone:** 1-562-546-6800 (US)
* 🕐 **Hours:** Monday-Friday, 5:30 AM - 5:00 PM PST

**Online Resources:**

* 🌐 **Support Portal:** developer.magtek.com

**Documentation Feedback:**

Help us improve this documentation! [feedback@magtek.com](mailto:feedback@magtek.com?subject=Feedback)
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://developer.magtek.com/sdks-and-tools/universal-sdk-documentation/android.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
