Skip to main content

In-Person Payments

EncryptionOptions.hpp

Last updated: 17-Jul-2024

namespace verifone_sdk

Enums

enum class EncryptionOptions : unsigned

Values:

enumerator NONE

  • Default value. There is no “all” option because some options are incompatible.

enumerator DATA_PADDING_00

  • Encryption Options bit mapped flags passed as hex strings: Data padding with 0x00: XX XX XX XX 00 00 00 00

enumerator DATA_PADDING_FF

  • Data padding with 0xff: XX XX XX XX ff ff ff ff

enumerator TRUNCATE_PAN

  • Truncate PAN (TLV tag 5A): 123456789FFFF => 123456789F

enumerator ADD_EMPTY_TAGS

  • Add empty tags (with length 0) to result

enumerator TRUNCATE

  • Truncate values if data exceeds the fixed length

enumerator VALUE_ONLY

  • Use the associated value only, without tag or length information. Not allowed if requesting more than one tag and one or more tags are requested as variable length.

enumerator TRACK2_EMV

  • Format MSR Track 2 (TLV tag 57) according to the EMV Track 2 Equivalent Data spec. For CT and CTLS, this has no effect as they are already in the expected EMV format. When not used with MSR, Track2 will contain start and end sentinels and LRC.

enumerator CVV_ASCII

  • Format CVV as an ASCII string with no padding and no null terminator. When not used, CVV will be in BCD, with trailing F for odd length values

enumerator PAN_ASCII

  • Format PAN as an ASCII string with no padding and no null terminator. When not used, PAN will be in BCD, with trailing F for odd length values

enumerator TRACK2_ASCII

  • Format Track 2 as an ASCII string with no padding and no null terminator. When not used, Track2 will be in BCD, with trailing F for odd length values

enumerator EXPIRY_ASCII

  • Format Expiry Date (TLV tag 5F24) as an ASCII string with no padding

enumerator TRACK2_ASCII_MSR

  • Format Track 2 as an ASCII string according to MSR spec with start ‘;’ and end ‘?’ sentinels but with no LRC or padding

enumerator TRACK1_EMV

  • Format Track1 equivalent data (TLV tag 56) according the EMV Track 1 Equivalent Data spec. For CT and CTLS, this has no effect as they are already in the expected EMV format. When not used with MSR, Track1 will contain start and end sentinels and LRC.

Functions

constexpr EncryptionOptions operator|(EncryptionOptions lhs, EncryptionOptions rhs) noexcept
inline EncryptionOptions &operator|=(EncryptionOptions &lhs, EncryptionOptions rhs) noexcept
constexpr EncryptionOptions operator&(EncryptionOptions lhs, EncryptionOptions rhs) noexcept
inline EncryptionOptions &operator&=(EncryptionOptions &lhs, EncryptionOptions rhs) noexcept
constexpr EncryptionOptions operator^(EncryptionOptions lhs, EncryptionOptions rhs) noexcept
inline EncryptionOptions &operator^=(EncryptionOptions &lhs, EncryptionOptions rhs) noexcept
constexpr EncryptionOptions operator~(EncryptionOptions x) noexcept
constexpr std::string_view toString(const EncryptionOptions &arg)

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