Skip to main content

In-Person Payments

PsdkDeviceInformation.hpp

Last updated: 25-Jul-2024

namespace verifone_sdk

struct PsdkDeviceInformation

  • User-displayable information about the connected device and the SDK. Some values may not be available depending on the connection type and the messages that have been sent up to this point.

Public Functions

inline PsdkDeviceInformation(std::string connectionType_, std::string address_, std::string macAddress_, std::string addressType_, std::string serialNumber_, std::string model_, std::optional<bool> hasNavigator_, std::string paymentProtocol_, std::string paymentAppName_, std::string paymentAppVersion_, std::string logicalDeviceId_, PaymentDeviceState state_, bool isListening_, std::vector<Merchant> merchantConfig_, std::string pciRebootTimestamp_, std::optional<std::vector<AllowedPendingSAFAmount>> allowedPendingSAFAmount_, std::optional<int32_t> allowedPendingSAFTransactionCount_, std::optional<int32_t> activeConnections_, std::optional<int32_t> allowedConnections_, std::string friendlyName_, std::string port_)

Public Members

std::string connectionType

  • Connection type, e.g., TCP/IP, Bluetooth or USB.

std::string address

  • The address used for the connection, e.g. IP Address for network connections, MAC address for Bluetooth, or COM port for USB.

std::string macAddress

  • The mac address value.

std::string addressType

  • The type of the address value.

std::string serialNumber

  • The serial number or hardware device ID associated with the device.

std::string model

  • The model of the device, e.g., M440.

std::optional<bool> hasNavigator

  • Whether or not Navigator is available on the current device. If Navigator is not available, any related operations will return with the NAVIGATOR_NOT_AVAILABLE status code.

std::string paymentProtocol

  • The Payment Protocol in use for payment operations.

std::string paymentAppName

  • The name of the payment app, generally specific to the region.

std::string paymentAppVersion

  • The version of the payment app, generally specific to the region, and may or may not follow a normal versioning convention.

std::string logicalDeviceId

  • The device ID assigned by the terminal management system or some similar system. Useful for support.

PaymentDeviceState state

  • The current or most recently known state of the payment device

bool isListening

  • Set to false if the device connects to us, or true if we connect to it. If this is false, then it is equivalent to setting TransactionManager::DEVICE_LISTEN_KEY to the ENABLED_VALUE, because if this is false, then the PSDK must listen for the device.

std::vector<Merchant> merchantConfig

  • List of Merchants supported by the terminal

std::string pciRebootTimestamp

  • The PCI reboot time.

std::optional<std::vector<AllowedPendingSAFAmount>> allowedPendingSAFAmount

  • Allowed pending SAF Amounts on the Terminal per currency, if terminal reports this

std::optional<int32_t> allowedPendingSAFTransactionCount

  • Allowed Pending SAF Transaction count, if terminal reports this

std::optional<int32_t> activeConnections

  • Number of active connections on the advertised port.

std::optional<int32_t> allowedConnections

  • Number of allowed connections on the advertised port.

std::string friendlyName

  • Customer visible label representing service.

std::string port

  • The port number used for the connection.

Public Static Attributes

static std::string const ACCEPT_ANY_DEVICE_VALUE

  • When this is the value of the DEVICE_LOGICAL_ID_KEY, any successful connection to a terminal is accepted, regardless of the device’s ID.

static std::string const DEVICE_CONNECTION_TYPE_KEY

  • The key to store connection type of the saved device.

static std::string const DEVICE_SERIAL_NUMBER_KEY

  • The key to store serial number of the saved device.

static std::string const DEVICE_MODEL_KEY

  • The key to store device model of the saved device.

static std::string const DEVICE_HAS_NAVIGATOR_KEY

  • The key to store if has navigator support of the saved device.

static std::string const DEVICE_LOGICAL_ID_KEY

  • The key to store logical id of the saved device.

static std::string const DEVICE_ADDRESS_KEY

  • The key to store device address of the saved device. Used during initialization to select a specific device at a specific address.

static std::string const DEVICE_MAC_ADDRESS_KEY

  • The key to store device mac address of the saved device.

static std::string const UNSOLICITED_PORT_KEY

  • The key to store the unsolicited messages listener port

static std::string const DEVICE_ADDRESS_TYPE_KEY

  • The key to store device address type

static std::string const DEVICE_ADDRESS_TYPE_BTPAN

  • The device address type BTPAN.

static std::string const HOTSPOT_ADDRESS_KEY

  • The key to store the tethered (hotspot) network ip address

static std::string const DEVICE_STATE_KEY

  • The key to store the state of the device

static std::string const PCI_REBOOT_TIMESTAMP

  • The key to store the pci reboot datetime

Need help?

Do you have a question? If you didn’t find the answer you are looking for in our documentation, you can contact our Support teams for more information. If you have a technical issue or question, please contact us. We are happy to help.

Not yet a Verifone customer?

We’ll help you choose the right payment solution for your business, wherever you want to sell, in-person or online. Our team of experts will happily discuss your needs.

Verifone logo