Package com.gemalto.mfs.mwsdk.payment
Class CustomConfiguration.Builder
- java.lang.Object
-
- com.gemalto.mfs.mwsdk.payment.CustomConfiguration.Builder
-
- Enclosing class:
- CustomConfiguration
public static class CustomConfiguration.Builder extends java.lang.Object
-
-
Constructor Summary
Constructors Constructor Description Builder()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CustomConfiguration
build()
CustomConfiguration.Builder
domesticCurrencyCode(int currencyCode)
Warning: It is not advised to change this value as there are side effects for Low-Value-Payment (LVT) accumulation.CustomConfiguration.Builder
keyValidityPeriod(int keyValidityPeriod)
Warning: Value shall not be changed if your have enrolled the card and setup device CVM throughDeviceCVMManager.initialize(CHVerificationMethod)
.CustomConfiguration.Builder
maxConsecutivePaymentsForLVT(int maxConsecutivePayments)
CustomConfiguration.Builder
maxCumulativeAmountForLVT(long maxCumulativeAmountForLVT)
CustomConfiguration.Builder
selectCvmOnlinePINPriority()
Change the cvm processing priority for VISA to Online PIN priority.CustomConfiguration.Builder
singleTransactionAmountLimitForLVT(long singleTransactionAmountLimitForLVT)
CustomConfiguration.Builder
supportTransitWithoutCDCVM(boolean supportTransitWithoutCDCVM)
-
-
-
Method Detail
-
keyValidityPeriod
public CustomConfiguration.Builder keyValidityPeriod(int 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.Builder
for building other property- Since:
- 6.4.0
-
domesticCurrencyCode
public CustomConfiguration.Builder domesticCurrencyCode(int currencyCode)
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.Builder
for building other property- Since:
- 6.4.0
-
supportTransitWithoutCDCVM
public CustomConfiguration.Builder supportTransitWithoutCDCVM(boolean supportTransitWithoutCDCVM)
- Parameters:
supportTransitWithoutCDCVM
- if transit transaction can be performed without authentication. By default authentication is required.- Returns:
CustomConfiguration.Builder
for building other property- Since:
- 6.5.0
-
maxConsecutivePaymentsForLVT
public CustomConfiguration.Builder maxConsecutivePaymentsForLVT(int maxConsecutivePayments)
- 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.Builder
for 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.Builder
for building other property- Since:
- 6.7.0
-
maxCumulativeAmountForLVT
public CustomConfiguration.Builder maxCumulativeAmountForLVT(long 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.Builder
for building other property- Since:
- 6.7.0
-
selectCvmOnlinePINPriority
public CustomConfiguration.Builder 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.Builder
for building other property- Since:
- 6.5.0
-
build
public CustomConfiguration build()
- Returns:
CustomConfiguration
to be provided inSDKInitializer.initialize(Context, SDKControllerListener, Notification, CustomConfiguration)
- Since:
- 6.4.0
-
-