QRISMPM class

A class representing a QRIS Merchant Presented Mode (MPM) QR code data with functionalities for decoding and encoding QRIS data. This class decodes the QRIS data string into TLV format and provides access to various QRIS tags, merchant information, and transaction details.

Parameters:

  • qrData: The raw QRIS data string that represents the QR code data.
  • validateMandatoryTAGs: Whether to validate mandatory tags in the QRIS data.
Mixed-in types
Available extensions

Constructors

QRISMPM.new(String qrData, {bool validateMandatoryTAGs = false})
Constructs a QRISMPM instance by initializing the QRIS data and decoding it into TLV format.

Properties

additionalData AdditionalData
Additional data parsed from the QRIS data.
no setter
crc String
Calculates the CRC value for the given QR code data using the Crc16Ibm3740 algorithm.
no setterinherited
currency ISO4217Currency
The currency used in the transaction, extracted from Tag "53".
no setter
hashCode int
The hash code for this object.
no setterinherited
mcc MCC

Available on QRISMPM, provided by the MCCParser extension

Retrieves the MCC data by the provided MCC code.
no setter
merchant Merchant
The merchant information parsed from the QRIS data.
no setter
merchantPrincipalMastercard String
The merchant's principal Mastercard information from Tag "03".
no setter
merchantPrincipalVisa String
The merchant's principal VISA information from Tag "02".
no setter
payloadFormatIndicator String
The payload format indicator from Tag "00".
no setter
pointOfInitiationMethod PointOfInitiationMethod
The point of initiation method from Tag "01".
no setter
qrData String
The raw QRIS data string that represents the QR code data.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
tlv List<TLV>
List of TLV objects that represent the decoded QRIS data.
latefinal
transaction Transaction
The transaction details including any tips.
no setter
validateMandatoryTAGs bool
Whether to validate mandatory tags in the QRIS data.
final

Methods

isValidCRC() bool
Validates whether the CRC value in the QR code data matches the calculated CRC value.
inherited
isValidCRCAsync() Future<bool>
inherited
isValidTag(String tag) bool
Checks if the tag is a valid number.
inherited
logDebugingCRC() → void
inherited
mapToListTLV(Map<String, dynamic> map) List<TLV>
Converts a map representation of QRIS data into a list of TLV objects.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
tlvDecode(String data) List<TLV>
Decodes a TLV encoded string into a list of TLV objects.
inherited
tlvEncode(List<TLV> tlvList) String
Encodes a list of TLV objects into a TLV encoded string.
inherited
tlvtoMap(dynamic tlv) Map<String, dynamic>
Converts the TLV data into a map representation.
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited