dw.order
Class PaymentCard
Object
dw.object.PersistentObject
dw.object.ExtensibleObject
dw.order.PaymentCard
Represents payment cards and provides methods to access the payment card attributes and status.

Note: this class handles sensitive financial and card holder data. Pay special attention to PCI DSS v3. requirements 1, 3, 7, and 9.

Properties
active  :  boolean  (Read Only)
Returns 'true' if payment card is active (enabled), otherwise 'false' is returned.
cardType  :  String  (Read Only)
The unique card type of the payment card.
description  :  MarkupText  (Read Only)
The description of the payment card.
image  :  MediaFile  (Read Only)
The reference to the payment card image.
name  :  String  (Read Only)
The name of the payment card.
Constructor Summary
This class does not have a constructor, so you cannot create it directly.
Method Summary
getCardType() : String
Returns the unique card type of the payment card.
getDescription() : MarkupText
Returns the description of the payment card.
getImage() : MediaFile
Returns the reference to the payment card image.
getName() : String
Returns the name of the payment card.
isActive() : boolean
Returns 'true' if payment card is active (enabled), otherwise 'false' is returned.
isApplicable(customer : Customer, countryCode : String, paymentAmount : Number) : boolean
Returns 'true' if this payment card is applicable for the specified customer, country and payment amount and the session currency.
verify(expiresMonth : Number, expiresYear : Number, cardNumber : String) : Status
Verify the card against the provided values.
verify(expiresMonth : Number, expiresYear : Number, cardNumber : String, csc : String) : Status
Verify the card against the provided values.
Methods inherited from class ExtensibleObject
Methods inherited from class PersistentObject
Methods inherited from class Object
Method Detail
getCardType
getCardType() : String
Returns the unique card type of the payment card.
Returns:
cardType of the payment card.

getDescription
getDescription() : MarkupText
Returns the description of the payment card.
Returns:
Description of the payment card.

getImage
getImage() : MediaFile
Returns the reference to the payment card image.
Returns:
Image of the payment card.

getName
getName() : String
Returns the name of the payment card.
Returns:
Name of the payment card.

isActive
isActive() : boolean
Returns 'true' if payment card is active (enabled), otherwise 'false' is returned.
Returns:
true if payment card is active, otherwise false.

isApplicable
isApplicable(customer : Customer, countryCode : String, paymentAmount : Number) : boolean
Returns 'true' if this payment card is applicable for the specified customer, country and payment amount and the session currency.

The payment card is applicable if

  • the card is restricted by customer group, and at least one of the groups of the specified customer is assigned to the card
  • the card is restricted by billing country, and the specified country code is assigned to the card
  • the method is restricted by payment amount for the session currency, and the specified payment amount is within the limits of the min/max payment amount defined for the method and the session currency
  • the method is restricted by session currency, and the session currency code is assigned to the method
All parameters are optional, and if not specified, the respective restriction won't be validated. For example, if a card is restricted by billing country, but no country code is specified, this card will be returned, unless it is filtered out by customer group or payment amount.
Parameters:
customer - Customer or null
countryCode - Billing country code or null
paymentAmount - Payment amount or null
Returns:
true if payment card is applicable, false otherwise

verify
verify(expiresMonth : Number, expiresYear : Number, cardNumber : String) : Status
Verify the card against the provided values. This method is equivalent to verify(Number, Number, String, String) but omits verification of the card security code. If the verification fails the resulting Status will hold up to 2 error items each with a code:
Parameters:
expiresMonth - expiration month as integer, 1 (January) to 12 (December)
expiresYear - expiration year as integer, e.g. 2025
cardNumber - card number, a string containing digital characters
Returns:
status indicating result

verify
verify(expiresMonth : Number, expiresYear : Number, cardNumber : String, csc : String) : Status
Verify the card against the provided values. If the verification fails the resulting Status will hold up to 3 error items with these codes:
Parameters:
expiresMonth - expiration month as integer, 1 (January) to 12 (December)
expiresYear - expiration year as integer, e.g. 2025
cardNumber - card number, a string containing digital characters
csc - card security code, a string containing digital characters
Returns:
status indicating result