AdditionalData
@interface AdditionalData : AbstractData
Additional Data Field: Additional information beyond basic may be required in certain cases. This information may be either presented by the merchant or acquirer or the Consumer may be prompted for entry on the app. For consumer prompt, the value field of Tag would be 3 asterisks i.e. ***.
-
Invoice number or bill number
Declaration
Objective-C
@property (readwrite, retain, atomic, nullable) NSString *billNumber;
Swift
var billNumber: String? { get set }
-
Mobile number: To be used for top-up or bill payment
Declaration
Objective-C
@property (readwrite, retain, atomic, nullable) NSString *mobileNumber;
Swift
var mobileNumber: String? { get set }
-
A distinctive number associated to a Store
Declaration
Objective-C
@property (readwrite, retain, atomic, nullable) NSString *storeId;
Swift
var storeId: String? { get set }
-
Typically a loyalty card number as provided by store or airline
Declaration
Objective-C
@property (readwrite, retain, atomic, nullable) NSString *loyaltyNumber;
Swift
var loyaltyNumber: String? { get set }
-
Any value as defined by merchant or acquirer in order to identify the transaction
Declaration
Objective-C
@property (readwrite, retain, atomic, nullable) NSString *referenceId;
Swift
var referenceId: String? { get set }
-
Typically a subscriber ID for subscription services or student enrollment number etc.
Declaration
Objective-C
@property (readwrite, retain, atomic, nullable) NSString *consumerId;
Swift
var consumerId: String? { get set }
-
A distinctive number associated to a Terminal in the store
Declaration
Objective-C
@property (readwrite, retain, atomic, nullable) NSString *terminalId;
Swift
var terminalId: String? { get set }
-
Any value as defined by the merchant or acquirer in order to define the purpose of the transaction
Declaration
Objective-C
@property (readwrite, retain, atomic, nullable) NSString *purpose;
Swift
var purpose: String? { get set }
-
Additional information to prompt consumer for; ‘A’ for Address, ‘E’ for email and ‘M’ for consumer mobile.
Declaration
Objective-C
@property (readwrite, retain, atomic, nullable) NSString *additionalConsumerDataRequest;
Swift
var additionalConsumerDataRequest: String? { get set }
-
Get Unreserved Data value for tag string. The tag are from 50 to 99.
Declaration
Objective-C
- (UnrestrictedData *_Nullable) getUnreservedDataForSubTag:(NSString *_Nonnull)tag error:(NSError *_Nullable *_Nullable)error;
Swift
func getUnreservedData(forSubTag tag: String) throws -> UnrestrictedData
Parameters
tag
NSString* tag for which to get value
Return Value
Value if found else
nil
-
Set Unreserved Data value for tag string. The tag are from 50 to 99.
Declaration
Objective-C
- (BOOL)setUnreservedData:(UnrestrictedData *_Nonnull)value forTag:(NSString *_Nonnull)tag error:(NSError *_Nullable *_Nullable)error;
Swift
func setUnreserved(_ value: UnrestrictedData, forTag tag: String) throws
Parameters
value
NSString* to set
tag
NSString* tag to set the value of
-
Store value at any empty tag in dynamically allocatable range. This function is available on additional data class of tag 62. The function will set the sub-tag 50 to 99 automatically, starting from lowest sub-tag to highest sub-tag.
Note
Throws- UnknownTagException when the tag number is invalid
- LimitException when all tags in range are already filled
Declaration
Objective-C
- (BOOL)setDynamicTag:(UnrestrictedData *_Nonnull)value error:(NSError *_Nullable *_Nullable)error;
Swift
func setDynamicTag(_ value: UnrestrictedData) throws
Parameters
value
the value to assign
Return Value
updated AdditionalData
-
Get UnrestrictedData of all available tag. The return value can then be use to get the value by calling method (getTagInfoValueForTagString:error:). The tags are from 50 to 99.
Declaration
Objective-C
- (NSArray<NSString *> *_Nullable)getAllDynamicTags;
Swift
func getAllDynamicTags() -> [String]?
Return Value
NSArray of available tag in string