Class 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.

Property Summary 

PropertyDescription
active: Boolean (read-only)Returns ‘true’ if payment card is active (enabled), otherwise ‘false’ is returned.
cardType: String (read-only)Returns the unique card type of the payment card.
description: MarkupText (read-only)Returns the description of the payment card.
image: MediaFile (read-only)Returns the reference to the payment card image.
name: String (read-only)Returns the name of the payment card.

Constructor Summary 

This class does not have a constructor, so you cannot create it directly.

Method Summary 

MethodDescription
getCardType()Returns the unique card type of the payment card.
getDescription()Returns the description of the payment card.
getImage()Returns the reference to the payment card image.
getName()Returns the name of the payment card.
isActive()Returns ‘true’ if payment card is active (enabled), otherwise ‘false’ is returned.
isApplicable(Customer, String, Number)Returns ‘true’ if this payment card is applicable for the specified customer, country and payment amount and the session currency.
verify(Number, Number, String)Verify the card against the provided values.
verify(Number, Number, String, String)Verify the card against the provided values.

Methods inherited from class ExtensibleObject 

describe, getCustom

Methods inherited from class PersistentObject 

getCreationDate, getLastModified, getUUID

Methods inherited from class Object 

assign, create, create, defineProperties, defineProperty, entries, freeze, fromEntries, getOwnPropertyDescriptor, getOwnPropertyNames, getOwnPropertySymbols, getPrototypeOf, hasOwnProperty, is, isExtensible, isFrozen, isPrototypeOf, isSealed, keys, preventExtensions, propertyIsEnumerable, seal, setPrototypeOf, toLocaleString, toString, valueOf, values

Property Details 

active 

active: Boolean (read-only)

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


cardType 

cardType: String (read-only)

Returns the unique card type of the payment card.


description 

description: MarkupText (read-only)

Returns the description of the payment card.


image 

image: MediaFile (read-only)

Returns the reference to the payment card image.


name 

name: String (read-only)

Returns the name of the payment card.


Method Details 

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(Customer, String, Number) 

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(Number, Number, String) 

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(Number, Number, String, String) 

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