Package com.gemalto.mfs.mwsdk.payment
Class CustomConfiguration.Builder
java.lang.Object
com.gemalto.mfs.mwsdk.payment.CustomConfiguration.Builder
- Enclosing class:
- CustomConfiguration
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbuild()domesticCurrencyCode(int currencyCode) Warning: It is not advised to change this value as there are side effects for Low-Value-Payment (LVT) accumulation.keyValidityPeriod(int keyValidityPeriod) Warning: Value shall not be changed if your have enrolled the card and setup device CVM throughDeviceCVMManager.initialize(CHVerificationMethod).maxConsecutivePaymentsForLVT(int maxConsecutivePayments) maxCumulativeAmountForLVT(long maxCumulativeAmountForLVT) Change the cvm processing priority for VISA to Online PIN priority.singleTransactionAmountLimitForLVT(long singleTransactionAmountLimitForLVT) supportTransitWithoutCDCVM(boolean supportTransitWithoutCDCVM)
-
Constructor Details
-
Builder
public Builder()
-
-
Method Details
-
keyValidityPeriod
Warning: Value shall not be changed if your have enrolled the card and setup device CVM throughDeviceCVMManager.initialize(CHVerificationMethod). The underlying keystore is already created with the given key validity and new configuration will not be taken. If you wish to have a different keyValidityPeriod, the application has to wipe and re-enroll the entire wallet.- Parameters:
keyValidityPeriod- in Seconds the wait period between user authentication and tap to POS during a transaction. Must be between 0 to 300. Default value is 45.- Returns:
CustomConfiguration.Builderfor building other property- Since:
- 6.4.0
-
domesticCurrencyCode
Warning: It is not advised to change this value as there are side effects for Low-Value-Payment (LVT) accumulation. During a LVT, it accumulates the amount and triggers an authentication when it exceeds maximum allowed amount set bymaxCumulativeAmountForLVT(long). Only transaction that matches the given currency will be subject to accumulation. When currency is changed, existing accumulation is under a different currency. SDK simply accumulates on top of existing value without currency conversion. It might impact the accuracy of your accumulation.- Parameters:
currencyCode- domestic currencyCode(ISO-4217 Standard) used for local transactions. Default currencyCode used is "978"(euro)- Returns:
CustomConfiguration.Builderfor building other property- Since:
- 6.4.0
-
supportTransitWithoutCDCVM
- Parameters:
supportTransitWithoutCDCVM- if transit transaction can be performed without authentication. By default authentication is required.- Returns:
CustomConfiguration.Builderfor building other property- Since:
- 6.5.0
-
maxConsecutivePaymentsForLVT
- Parameters:
maxConsecutivePayments- maximum allowed consecutive low value transactions before CDCVM asked. Maximum allowed value is 50. Default value is 0 so LVT behavior is disabled.- Returns:
CustomConfiguration.Builderfor building other property- Since:
- 6.5.0
-
singleTransactionAmountLimitForLVT
public CustomConfiguration.Builder singleTransactionAmountLimitForLVT(long singleTransactionAmountLimitForLVT) - Parameters:
singleTransactionAmountLimitForLVT- Amount with supported 'long' data type Threshold amount value for LVT. Even if the terminal decides it is a LVT, if the transaction amount exceeds this limit, it will be treated as a HVT transaction and CDCVM will be asked. Default value is 0 so LVT behavior is disabled.
For example:
If Currency is 'SouthKoreanWon - KRW' and decimal is 0, amount to be set with
10 => 10 KRW
100 => 100 KRW
1000 => 1000 KRW
If Currency is 'Euro' and decimal is 2, amount to be set with
1 => 0.01 EUR
10 => 0.10 EUR
100 => 1.00 EUR
1000 => 10.00 EUR
If Currency is 'JOD' and decimal is 3, amount to be set with
1 => 0.001 JOD
10 => 0.010 JOD
100 => 0.100 JOD
1000 => 1.000 JOD- Returns:
CustomConfiguration.Builderfor building other property- Since:
- 6.7.0
-
maxCumulativeAmountForLVT
- Parameters:
maxCumulativeAmountForLVT- Amount with supported 'long' data type. Accumulated amount of all low value consecutive transactions is more than this value, SDK will trigger CDCVM authentication. If set to 0 all transactions will require CDCVM authentication from user. Default value is 0 so LVT behavior is disabled.
For example:
If Currency is 'SouthKoreanWon - KRW' and decimal is 0, amount to be set with
10 => 10 KRW
100 => 100 KRW
1000 => 1000 KRW
If Currency is 'Euro' and decimal is 2, amount to be set with
1 => 0.01 EUR
10 => 0.10 EUR
100 => 1.00 EUR
1000 => 10.00 EUR
If Currency is 'JOD' and decimal is 3, amount to be set with
1 => 0.001 JOD
10 => 0.010 JOD
100 => 0.100 JOD
1000 => 1.000 JOD- Returns:
CustomConfiguration.Builderfor building other property- Since:
- 6.7.0
-
selectCvmOnlinePINPriority
Change the cvm processing priority for VISA to Online PIN priority. The SDK is default to CDCVM priority. For VISA payment, 'Priority' is used when 'CAP (Card Additional Process)' in the card profile, and 'TTQ (Terminal Transaction Qualifier)' sent by terminal has indicated more than 1 common cvm supported on both side. The priority will determine the order of matching on supported cvm.- CDCVM priority, check in the order of: Device CVM, Online PIN, Online Signature
- CDCVM priority, check in the order of: Online PIN, Device CVM, Online Signature
- Returns:
CustomConfiguration.Builderfor building other property- Since:
- 6.5.0
-
build
- Returns:
CustomConfigurationto be provided inSDKInitializer.initialize(Context, SDKControllerListener, Notification, CustomConfiguration)- Since:
- 6.4.0
-