EMEmvAdditionalDataFieldTemplate Protocol Reference

Conforms to EMEmvTemplate
Declared in EMEmvAdditionalDataFieldTemplate.h

Overview

Holds additional data fields that could be present in the QR code. It provides a simple interface to retrieve value of such fields.

– billNumber required method

Returns the invoice number or bill number, that could be provided by the merchant or could be an indication for the mobile application to prompt the consumer to input a Bill Number.

For example, the Bill Number may be present when the QR Code is used for bill payment.

This parameter is optional.

- (EMEmvOptional<NSString*> *)billNumber

Return Value

Returns bill number as string wrapped in {@link EMEmvOptional}.

Declared In

EMEmvAdditionalDataFieldTemplate.h

– mobileNumber required method

Returns the mobile number, that could be provided by the merchant or could be an indication for the mobile application to prompt the consumer to input a Mobile Number.

For example, the Mobile Number to be used for multiple use cases, such as mobile top-up and bill payment.

This parameter is optional.

- (EMEmvOptional<NSString*> *)mobileNumber

Return Value

Returns mobile number as string wrapped in {@link EMEmvOptional}.

Declared In

EMEmvAdditionalDataFieldTemplate.h

– storeLabel required method

Returns a distinctive value associated to a store. This value could be provided by the merchant or could be an indication for the mobile application to prompt the consumer to input a Store Label.

For example, the Store Label may be displayed to the consumer on the mobile application identifying a specific store.

This parameter is optional.

- (EMEmvOptional<NSString*> *)storeLabel

Return Value

Returns store label as string wrapped in {@link EMEmvOptional}.

Declared In

EMEmvAdditionalDataFieldTemplate.h

– loyaltyNumber required method

Returns a loyalty card number. This number could be provided by the merchant, if known, or could be an indication for the mobile application to prompt the consumer to input their Loyalty Number.

This parameter is optional.

- (EMEmvOptional<NSString*> *)loyaltyNumber

Return Value

Returns Loyalty number as string wrapped in {@link EMEmvOptional}.

Declared In

EMEmvAdditionalDataFieldTemplate.h

– referenceLabel required method

Returns transaction identification value. This value could be provided by the merchant or could be an indication for the mobile app to prompt the consumer to input a transaction Reference Label.

For example, the Reference Label may be used by the consumer mobile application for transaction logging or receipt display.

This parameter is optional.

- (EMEmvOptional<NSString*> *)referenceLabel

Return Value

Returns reference label as string wrapped in {@link EMEmvOptional}.

Declared In

EMEmvAdditionalDataFieldTemplate.h

– customerLabel required method

Returns value identifying a specific consumer. This value could be provided by the merchant (if known), or could be an indication for the mobile application to prompt the consumer to input their Customer Label.

For example, the Customer Label may be a subscriber ID for subscription services, a student enrolment number, etc.

This parameter is optional.

- (EMEmvOptional<NSString*> *)customerLabel

Return Value

Returns customer label as string wrapped in {@link EMEmvOptional}.

Declared In

EMEmvAdditionalDataFieldTemplate.h

– terminalLabel required method

Returns a distinctive value associated to a terminal in the store. This value could be provided by the merchant or could be an indication for the mobile application to prompt the consumer to input a Terminal Label.

For example, the Terminal Label may be displayed to the consumer on the mobile application identifying a specific terminal.

This parameter is optional.

- (EMEmvOptional<NSString*> *)terminalLabel

Return Value

Returns Terminal label as string wrapped in {@link EMEmvOptional}.

Declared In

EMEmvAdditionalDataFieldTemplate.h

– purposeOfTransaction required method

Returns value defining the purpose of the transaction. This value could be provided by the merchant or could be an indication for the mobile application to prompt the consumer to input a value describing the purpose of the transaction.

For example, the Purpose of Transaction may have the value “International Data Package” for display on the mobile application.

This parameter is optional.

- (EMEmvOptional<NSString*> *)purposeOfTransaction

Return Value

Returns purpose of transaction as string wrapped in {@link EMEmvOptional}.

Declared In

EMEmvAdditionalDataFieldTemplate.h

– additionalConsumerDataRequest required method

Contains indications that the mobile application is to provide the requested information in order to complete the transaction. The information requested should be provided by the mobile application in the authorization without unnecessarily prompting the consumer.

For example, the Additional Consumer Data Request may indicate that the consumer mobile number is required to complete the transaction, in which case the mobile application should be able to provide this number (that the mobile application has previously stored) without unnecessarily prompting the consumer.

This parameter is optional.

- (EMEmvOptional<NSString*> *)additionalConsumerDataRequest

Return Value

Returns additional consumer data request as string wrapped in {@link EMEmvOptional}.

Declared In

EMEmvAdditionalDataFieldTemplate.h

– emvRfuDataObjects required method

Provides list of data objects reserved for future use of EMV

- (NSArray<id<EMEmvDataObject> > *)emvRfuDataObjects

Return Value

Returns list of {@link EMEmvDataObject} or empty list if none are present in the QR code. Note: It is advised to use {@link EMEmvDataObject#type} method to check concrete type and safely cast the list members.

Declared In

EMEmvAdditionalDataFieldTemplate.h

– paymentSystemSpecificTemplates required method

Provides list of Payment System specific templates.

- (NSArray<id<EMEmvDataObject> > *)paymentSystemSpecificTemplates

Return Value

Returns list of {@link EMEmvDataObject} or empty list if none are present in the QR code. Note: It is advised to use {@link EMEmvDataObject#type} method to check concrete type and safely cast the list members.

Declared In

EMEmvAdditionalDataFieldTemplate.h