getBankAccountDriversLicense()
:
String
Returns the driver's license number associated with the bank account if the calling context meets the following criteria:
- If the instance is a CustomerPaymentInstrument, and we are in the context of a storefront request, and the current customer is registered and authenticated, and the payment instrument is associated to the profile of the current customer, and the current protocol is HTTPS
- If the instance is a OrderPaymentInstrumentInfo, and we are in the context of a storefront request, and the current customer is identical to the customer related to the basket, and the current protocol is HTTPS
- If the instance is a OrderPaymentInstrumentInfo, and we are in the context of a business manager request, and the current user has the permission MANAGE_ORDERS
- If the instance is a OrderPaymentInstrumentInfo, and the account information has not been masked as a result of the data retention security policy for the site
Otherwise, the method returns the masked driver's license number.
getBankAccountNumber()
:
String
Returns the bank account number if the calling context meets the following criteria:
- If the instance is a CustomerPaymentInstrument, and we are in the context of a storefront request, and the current customer is registered and authenticated, and the payment instrument is associated to the profile of the current customer, and the current protocol is HTTPS
- If the instance is a OrderPaymentInstrumentInfo, and we are in the context of a storefront request, and the current customer is identical to the customer related to the basket, and the current protocol is HTTPS
- If the instance is a OrderPaymentInstrumentInfo, and we are in the context of a business manager request, and the current user has the permission MANAGE_ORDERS
- If the instance is a OrderPaymentInstrumentInfo, and the account information has not been masked as a result of the data retention security policy for the site
Otherwise, the method returns the masked bank account number.
getCreditCardNumber()
:
String
Returns the decrypted credit card number if the calling context meets the following criteria:
- If the instance is a CustomerPaymentInstrument, and we are in the context of a storefront request, and the current customer is registered and authenticated, and the payment instrument is associated to the profile of the current customer, and the current protocol is HTTPS
- If the instance is a OrderPaymentInstrument in the context of a storefront request, and the current authenticated customer is referenced by the basket or order, and the current protocol is HTTPS.
getCreditCardToken()
:
String
Secure credit card data can be replaced by a token by utilizing a tokenization provider, which securely stores the credit card data using the token as a key.
getPaymentMethod()
:
String
Returns the identifier of the payment method represented by this payment instrument.
isCreditCardExpired()
:
boolean
Returns true if this payment instrument represents an expired credit card.
isPermanentlyMasked()
:
boolean
Returns true
if the account information for this Payment Instrument has been permanently masked as a result of the data retention security policy for the site or a creditcard tokenization, and false
otherwise.
setCreditCardToken(token
:
String)
:
void
Secure credit card data can be replaced by a token by utilizing a tokenization provider, which securely stores the credit card data using the token as a key.
getBankAccountDriversLicense
getBankAccountDriversLicense()
:
String
Returns the driver's license number associated with the bank account if the
calling context meets the following criteria:
-
If the instance is a CustomerPaymentInstrument, and
we are in the context of a storefront request, and the current customer
is registered and authenticated, and the payment instrument is associated
to the profile of the current customer, and the current protocol is HTTPS
-
If the instance is a OrderPaymentInstrumentInfo, and we are in
the context of a storefront request, and the current customer is identical
to the customer related to the basket, and the current protocol is HTTPS
-
If the instance is a OrderPaymentInstrumentInfo, and we are in
the context of a business manager request, and the current user has the
permission MANAGE_ORDERS
-
If the instance is a OrderPaymentInstrumentInfo, and the account information
has not been masked as a result of the data retention security policy
for the site
Otherwise, the method returns the masked driver's license number. If a basket is reopened with
OrderMgr.failOrder(Order, Boolean), it always masks sensitive information
because during order creation, basket payment information is permanently masked.
Returns:
the driver's license number if the calling context meets the necessary criteria.
getBankAccountDriversLicenseLastDigits
getBankAccountDriversLicenseLastDigits()
:
String
Returns the last 4 characters of the decrypted driver's license number of
the bank account associated with this PaymentInstrument.
If the number is empty or null
it will be returned without an exception.
Returns:
the last 4 characters of the de-crypted driver's license number.
getBankAccountDriversLicenseLastDigits
getBankAccountDriversLicenseLastDigits(count
:
Number)
:
String
Returns the last specified number of characters of the decrypted driver's license number of
the bank account associated with this PaymentInstrument.
If the number is empty (i.e. "" or null),
it will be returned without an exception.
Note that count
is limited to 4 in an unsecure environment,
and if account information for this payment instrument has been masked
due to the data retention security policy for the site.
Parameters:
count
-
number of characters to be returned.
Returns:
the last specified number of characters of the decrypted driver's license number.
getBankAccountDriversLicenseStateCode
getBankAccountDriversLicenseStateCode()
:
String
Returns the driver's license state code associated with a bank account payment instrument.
Returns null for other payment methods.
Returns:
the state in which the bank account driver's license was issued.
getBankAccountHolder
getBankAccountHolder()
:
String
Returns the full name of the holder of a bank account payment instrument.
Returns null for other payment methods.
Returns:
the bank account holder's full name.
getBankAccountNumber
getBankAccountNumber()
:
String
Returns the bank account number if the calling context meets
the following criteria:
-
If the instance is a CustomerPaymentInstrument, and
we are in the context of a storefront request, and the current customer
is registered and authenticated, and the payment instrument is associated
to the profile of the current customer, and the current protocol is HTTPS
-
If the instance is a OrderPaymentInstrumentInfo, and we are in
the context of a storefront request, and the current customer is identical
to the customer related to the basket, and the current protocol is HTTPS
-
If the instance is a OrderPaymentInstrumentInfo, and we are in
the context of a business manager request, and the current user has the
permission MANAGE_ORDERS
-
If the instance is a OrderPaymentInstrumentInfo, and the account information
has not been masked as a result of the data retention security policy
for the site
Otherwise, the method returns the masked bank account number. If a basket is reopened with
OrderMgr.failOrder(Order, Boolean), it always masks sensitive information
because during order creation, basket payment information is permanently masked.
Returns:
the bank account number if the calling context meets the necessary criteria.
getBankAccountNumberLastDigits
getBankAccountNumberLastDigits()
:
String
Returns the last 4 characters of the decrypted bank account number.
If the number is empty or null,
it will be returned without an exception.
Returns:
the last 4 characters of the decrypted bank account number.
getBankAccountNumberLastDigits
Returns the last specified number of characters of the decrypted bank account card number.
If the number is empty (i.e. "" or null),
it will be returned without an exception.
Note that count
is limited to 4 in an unsecure environment,
and if account information for this payment instrument has been masked
due to the data retention security policy for the site.
Parameters:
count
-
number of characters to be returned.
Returns:
the last specified characters of the decrypted bank account number.
getBankRoutingNumber
getBankRoutingNumber()
:
String
Returns the bank routing number of a bank account payment instrument.
Returns null for other payment methods.
If account information has been masked due to the data retention security
policy for the site, the return value is fully masked.
Returns:
the bank account rounting number.
getCreditCardExpirationMonth
getCreditCardExpirationMonth()
:
Number
Returns the month of the year in which the credit card
expires (1-12).
Returns:
the month of the year in which the credit card expires (1-12).
getCreditCardExpirationYear
getCreditCardExpirationYear()
:
Number
Returns the year in which the credit card
expires, such as '2004'.
Returns:
the year in which the credit card expires.
getCreditCardHolder
getCreditCardHolder()
:
String
Returns the name of the credit card owner.
Returns:
the name of the credit card owner.
getCreditCardIssueNumber
getCreditCardIssueNumber()
:
String
Returns the credit card issue number. This attribute is only used by
specific credit/debit card processors such as Solo and Switch in the UK.
Returns:
the credit card issue number
getCreditCardNumber
getCreditCardNumber()
:
String
Returns the decrypted credit card number if the calling context meets
the following criteria:
-
If the instance is a CustomerPaymentInstrument, and
we are in the context of a storefront request, and the current customer
is registered and authenticated, and the payment instrument is associated
to the profile of the current customer, and the current protocol is HTTPS
-
If the instance is a OrderPaymentInstrument in the context of a storefront request, and
the current authenticated customer is referenced by the basket or order, and
the current protocol is HTTPS.
-
If the customer is anonymous, and the customer is referenced by the order, and the protocol is secure and
the order status is CREATED.
-
If the instance is a OrderPaymentInstrument, and we are in
the context of a business manager request, and the current user has the
permission MANAGE_ORDERS
-
If the instance is a OrderPaymentInstrument, and the account information
has not been masked as a result of the data retention security policy
for the site
Otherwise, the method returns the masked credit card number. If a basket is reopened with
OrderMgr.failOrder(Order, Boolean), it always masks sensitive information
because during order creation, basket payment information is permanently masked.
Returns:
the decrypted credit card number if the calling context meets the necessary criteria.
getCreditCardNumberLastDigits
getCreditCardNumberLastDigits()
:
String
Returns the last 4 characters of the decrypted credit card number.
If the number is empty or null
it will be returned without an exception.
Returns:
the last 4 characters of the de-crypted credit card number.
getCreditCardNumberLastDigits
Returns the last specified number of characters of the decrypted credit card number.
If the number is empty (i.e. "" or null),
it will be returned without an exception.
Note that count
is limited to 4 in an unsecure environment,
and if account information for this payment instrument has been masked
due to the data retention security policy for the site.
Parameters:
count
-
number of characters to be returned.
Returns:
the last specified number of characters of the decrypted credit card number.
getCreditCardToken
Secure credit card data can be replaced by a token by utilizing a
tokenization provider, which securely stores the credit card data using
the token as a key. The stored data can later reused by including the
token in a request. In this way credit card processes such as
authorization and capture can be implemented without being responsible
for persisting the credit card data.
getCreditCardType
Returns the type of the credit card.
Returns:
the type of the credit card.
getCreditCardValidFromMonth
getCreditCardValidFromMonth()
:
Number
Returns the month of the year in which the credit card became
valid (1-12). This attribute is not used by all credit card types.
Returns:
the month of the year in which the credit card became valid (1-12).
getCreditCardValidFromYear
getCreditCardValidFromYear()
:
Number
Returns the year in which the credit card became valid, such as '2001'.
This attribute is not used by all credit card types.
Returns:
the year in which the credit card became valid
getEncryptedBankAccountDriversLicense
Encrypts the driver's license number of the bank account of this object with the given algorithm and the given
public key. Returned is the Base64 encoded representation of the result.
See also Cipher.encrypt(String, String, String, String, Number) on how to generate RSA key
pairs.
If account information has been masked due to the data retention security policy for the site, the returned value
is the Base64 encoded representation of the encrypted form of the masked number.
Parameters:
algorithm
-
The algorithm to be used for the encryption of this credit card number. Must be a valid, non-null algorithm. Currently, only the following algorithms are supported:
publicKey
-
A Base64 encoded form of the public key to be used to encrypt this bank account driver's license number. Must be a valid, non-blank key.
Returns:
the Base64 encoded representation of the bank account driver's license.
Throws:
IllegalArgumentException
-
If algorithm
is not a valid known algorithm.
IllegalArgumentException
-
If publicKey
is a null, empty or blank string.
getEncryptedBankAccountNumber
Encrypts the bank account number of this object with the given algorithm and the given public key. Returned is
the Base64 encoded representation of the result.
If account information has been masked due to the data retention security policy for the site, the returned value
is the Base64 encoded representation of the encrypted form of the masked number.
Parameters:
algorithm
-
The algorithm to be used for the encryption of this credit card number. Must be a valid, non-null algorithm. Currently, only the following algorithms are supported:
publicKey
-
A Base64 encoded form of the public key to be used to encrypt this credit card number. Must be a valid, non-blank key.
Returns:
the Base64 encoded representation of the bank account number.
Throws:
IllegalArgumentException
-
If algorithm
is not a valid known algorithm.
IllegalArgumentException
-
If publicKey
is a null, empty or blank string.
getEncryptedCreditCardNumber
Encrypts the credit card number of this object with the given algorithm and the given public key. Returned is the
Base64 encoded representation of the result.
See also Cipher.encrypt(String, String, String, String, Number) on how to generate RSA key
pairs.
If account information has been masked due to the data retention security policy for the site, the returned value
is the Base64 encoded representation of the encrypted form of the masked number.
Parameters:
algorithm
-
The algorithm to be used for the encryption of this credit card number. Must be a valid, non-null algorithm. Currently, only the following algorithms are supported:
publicKey
-
A Base64 encoded form of the public key to be used to encrypt this credit card number. Must be a valid, non-blank key.
Returns:
the Base64 encoded representation of the credit card number.
Throws:
IllegalArgumentException
-
If algorithm
is not a valid known algorithm.
IllegalArgumentException
-
If publicKey
is a null, empty or blank string.
getEncryptedCreditCardNumber
Encrypts the credit card number of this object with the given algorithm and the public key taken from a
certificate in the keystore. Returned is the Base64 encoded representation of the result.
See also Cipher.encrypt(String, CertificateRef, String, String, Number) on how to generate RSA
key pairs.
If account information has been masked due to the data retention security policy for the site, the returned value
is the Base64 encoded representation of the encrypted form of the masked number.
Parameters:
algorithm
-
The algorithm to be used for the encryption of this credit card number. Must be a valid, non-null algorithm. Currently, only the following algorithms are supported:
certificateRef
-
A reference to a trusted certificate entry containing the public key in the keystore. Must be non-null.
Returns:
the Base64 encoded representation of the credit card number.
Throws:
IllegalArgumentException
-
If algorithm
is not a valid known algorithm.
IllegalArgumentException
-
If certificateRef
is null
or could not be found.
getGiftCertificateCode
getGiftCertificateCode()
:
String
Returns the Gift Certificate code for this Payment Instrument.
Returns:
the Gift Certificate code or null if not set.
getGiftCertificateID
getGiftCertificateID()
:
String
Returns the Gift Certificate ID for this Payment Instrument.
Returns:
the Gift Certificate ID or null if not set.
getMaskedBankAccountDriversLicense
getMaskedBankAccountDriversLicense()
:
String
Returns the decrypted driver's license number of the bank account with
all but the last 4 characters replaced with a '*' character.
If the driver's license number is empty,
it will be returned without an exception.
Returns:
the decrypted driver's license number with all but the last 4 characters replaced with a '*' character.
getMaskedBankAccountDriversLicense
getMaskedBankAccountDriversLicense(ignore
:
Number)
:
String
Returns the decrypted driver's license number of the bank account with
all but the specified number characters replaced with a '*' character.
If the driver's license number is empty (i.e. "" or null),
it will be returned without an exception.
Note that ignore
is limited to 4 in an unsecure environment,
and if account information for this payment instrument has been masked
due to the data retention security policy for the site.
Parameters:
ignore
-
the number of characters to leave unmasked.
Returns:
the decrypted driver's license number with all but the specified number characters replaced with a '*' character.
getMaskedBankAccountNumber
getMaskedBankAccountNumber()
:
String
Returns the decrypted bank account number with
all but the last 4 characters replaced with a '*' character.
If the number is empty (i.e. "" or null),
it will be returned without an exception.
Returns:
the decrypted bank account number with all but the last 4 characters replaced with a '*' character.
getMaskedBankAccountNumber
Returns the decrypted bank account number with
all but the specified number characters replaced with a '*' character.
If the card number is empty (i.e. "" or null),
it will be returned without an exception.
Note that ignore
is limited to 4 in an unsecure environment,
and if account information for this payment instrument has been masked
due to the data retention security policy for the site.
Parameters:
ignore
-
the number of characters to leave unmasked
Returns:
the decrypted bank account number with all but the specified number of characters replaced with a '*' character.
getMaskedCreditCardNumber
getMaskedCreditCardNumber()
:
String
Returns the decrypted credit card number with
all but the last 4 characters replaced with a '*' character.
If the number is empty,
it will be returned without an exception.
Returns:
the decrypted credit card number with all but the last 4 characters replaced with a '*' character.
getMaskedCreditCardNumber
Returns the decrypted credit card number with
all but the specified number characters replaced with a '*' character.
If the card number is empty (i.e. "" or null),
it will be returned without an exception.
Note that ignore
is limited to 4 in an unsecure environment,
and if account information for this payment instrument has been masked
due to the data retention security policy for the site.
Parameters:
ignore
-
the number of characters to leave unmasked.
Returns:
the decrypted credit card number with all but the specified number characters replaced with a '*' character.
getMaskedGiftCertificateCode
getMaskedGiftCertificateCode()
:
String
Returns the masked gift certificate code with
all but the last 4 characters replaced with a '*' character.
Returns:
the masked gift certificate code.
getMaskedGiftCertificateCode
Returns the masked gift certificate code with
all but the specified number of characters replaced with a '*' character.
Parameters:
ignore
-
the number of characters to leave unmasked.
Returns:
the masked gift certificate code.
Throws:
IllegalArgumentException
-
if ignore is negative.
getPaymentMethod
Returns the identifier of the payment method represented by this
payment instrument.
Returns:
the identifier of the payment method represented by this payment instrument.
isCreditCardExpired
isCreditCardExpired()
:
boolean
Returns true if this payment instrument represents an expired credit
card. This check is only logical if the credit card expiration month and
year are set. If either of these attributes are not set, then this method
always returns false.
Returns:
true if this payment instrument represents an expired credit card, false otherwise
isPermanentlyMasked
isPermanentlyMasked()
:
boolean
Returns true
if the account information for this Payment Instrument
has been permanently masked as a result of the data retention security policy
for the site or a creditcard tokenization, and false
otherwise.
When account information is masked only the last 4 digits of the credit card
or bank account number are recoverable. The bank account driver's license number
and bank routing number are completely masked.
Returns:
whether or not the account information has been masked
setBankAccountDriversLicense
setBankAccountDriversLicense(license
:
String)
:
void
Set the driver's license number associated with a bank account payment instrument.
Parameters:
license
-
the bank account holder driver's license.
setBankAccountDriversLicenseStateCode
setBankAccountDriversLicenseStateCode(stateCode
:
String)
:
void
Set the driver's license state code associated with a bank account payment instrument.
Parameters:
stateCode
-
the state in which the bank account driver's license was issued.
setBankAccountHolder
setBankAccountHolder(holder
:
String)
:
void
Set the full name of the holder of a bank account payment instrument.
Parameters:
holder
-
the bank account holder's full name.
setBankAccountNumber
setBankAccountNumber(accountNumber
:
String)
:
void
Set the bank account number of a bank account payment instrument.
Parameters:
accountNumber
-
the bank account number.
setBankRoutingNumber
setBankRoutingNumber(routingNumber
:
String)
:
void
Set the bank routing number of a bank account payment instrument.
Parameters:
routingNumber
-
the bank account rounting number.
setCreditCardExpirationMonth
setCreditCardExpirationMonth(aValue
:
Number)
:
void
Sets the month of the year in which the credit card
expires. Permissible values are from 1 to 12.
Parameters:
aValue
-
the month of the year in which the credit card expires. Permissible values are from 1 to 12.
setCreditCardExpirationYear
setCreditCardExpirationYear(aValue
:
Number)
:
void
Sets the year in which the credit card
expires, such as '2004'.
Parameters:
aValue
-
the year in which the credit card expires.
setCreditCardHolder
setCreditCardHolder(aValue
:
String)
:
void
Sets the name of the credit card owner.
Parameters:
aValue
-
the name of the credit card owner.
setCreditCardIssueNumber
setCreditCardIssueNumber(aValue
:
String)
:
void
Set the credit card issue number. This attribute is only used by
specific credit/debit card processors such as Solo and Switch in the UK.
Parameters:
aValue
-
the credit card issue number
setCreditCardNumber
setCreditCardNumber(aValue
:
String)
:
void
Sets the credit card number for this payment.
Parameters:
aValue
-
the new value of the credit card number.
setCreditCardToken
setCreditCardToken(token
:
String)
:
void
Secure credit card data can be replaced by a token by utilizing a
tokenization provider, which securely stores the credit card data using
the token as a key. The stored data can later reused by including the
token in a request. In this way credit card processes such as
authorization and capture can be implemented without being responsible
for persisting the credit card data.
An Exception will be thrown when the token is null or blank.
When setting a credit card token, the account information (including the
creditcard number) is masked and all creditcard attributes are frozen and
an attempt to change will be result in an exception.
Parameters:
token
-
the token
setCreditCardType
setCreditCardType(aValue
:
String)
:
void
Sets the type of the credit card.
Parameters:
aValue
-
the type of the credit card.
setCreditCardValidFromMonth
setCreditCardValidFromMonth(aValue
:
Number)
:
void
Sets the month of the year in which the credit card became valid (1-12).
This attribute is not used by all credit card types
Parameters:
aValue
-
the month of the year in which the credit card became valid (1-12).
setCreditCardValidFromYear
setCreditCardValidFromYear(aValue
:
Number)
:
void
Sets the year in which the credit card became valid, such as '2001'.
This attribute is not used by all credit card types.
Parameters:
aValue
-
the year in which the credit card became valid
setGiftCertificateCode
setGiftCertificateCode(giftCertificateCode
:
String)
:
void
Sets the Gift Certificate code for this Payment Instrument.
Parameters:
giftCertificateCode
-
the Gift Certificate code.
setGiftCertificateID
setGiftCertificateID(giftCertificateID
:
String)
:
void
Sets the Gift Certificate ID for this Payment Instrument.
Parameters:
giftCertificateID
-
the Gift Certificate ID.