import { Payment } from './Payment'; import { Telephone } from './Telephone'; import { PaymentProperties } from './Payment'; export declare class CreditCard extends Payment { /** * The \'card_type\' field value is an enum value which is associated with the payment method of the specific payment instrument. For credit card payment method ensure attributes mentioned in dictionary below are set to corresponding values only. Ensure to comply with the naming standards provided in below dictionary. For example, some Payment processors use “Japan Credit Bureau” but “JCB” should be used when calling Fraud API. Incorrect `card_type` - `brand` combination will result in data quality issues and result in degraded risk recommendation. \'card_type\' is an enum value with the following mapping with Payment `brand` attribute: * card_type : brand * -------------------------------------------------------- * `AMERICAN_EXPRESS` : `AMERICAN_EXPRESS` * `DINERS_CLUB` : `DINERS_CLUB_INTERNATIONAL` * `DINERS_CLUB` : `BC_CARD` * `DISCOVER` : `DISCOVER` * `DISCOVER` : `BC_CARD` * `DISCOVER` : `DINERS_CLUB_INTERNATIONAL` * `DISCOVER` : `JCB` * `JCB` : `JCB` * `MASTER_CARD` : `MASTER_CARD` * `MASTER_CARD` : `MAESTRO` * `MASTER_CARD` : `POSTEPAY_MASTERCARD` * `SOLO` : `SOLO` * `SWITCH` : `SWITCH` * `MAESTRO` : `MAESTRO` * `CHINA_UNION_PAY` : `CHINA_UNION_PAY` * `UATP` : `UATP` * `UATP` : `UATP_SUPPLY` * `UATP` : `AIR_PLUS` * `UATP` : `UA_PASS_PLUS` * `VISA` : `VISA` * `VISA` : `VISA_DELTA` * `VISA` : `VISA_ELECTRON` * `VISA` : `CARTA_SI` * `VISA` : `CARTE_BLEUE` * `VISA` : `VISA_DANKORT` * `VISA` : `POSTEPAY_VISA_ELECTRON` */ cardType: CreditCardCardTypeEnum; /** * All the digits (unencrypted) of the credit card number associated with the payment. */ cardNumber: string; /** * Expiration date of the credit card used for payment, in ISO-8601 date and time format `yyyy-MM-ddTHH:mm:ss.SSSZ`. */ expiryDate: Date; /** * Electronic Commerce Indicator, a two or three digit number usually returned by a 3rd party payment processor in regards to the authentication used when gathering the cardholder\'s payment credentials. */ electronicCommerceIndicator?: string; /** * A flag to indicate that the bank card being used for the charge is a virtual credit card. */ virtualCreditCardFlag?: boolean; /** * If a virtual/digital form of payment was used, the type of digital wallet should be specified here. Possible `wallet_type`\'s include: `Google` or `ApplePay`. */ walletType?: string; /** * A field used to confirm if the address provided at the time of purchase matches what the bank has on file for the Credit Card. */ cardAvsResponse?: string; /** * A field used to confirm the Card Verification Value on the Credit Card matches the Credit Card used at the time of purchase. */ cardCvvResponse?: string; /** * Telephone(s) associated with card holder and credit card. */ telephones: Array; /** * Reference code passed to acquiring bank at the time of payment. This code is the key ID that ties back to payments data at the payment level. */ merchantOrderCode?: string; /** * Total authentication failure count for given card. */ cardAuthenticationFailureCount?: number; readonly method = "CREDIT_CARD"; constructor(creditCard: CreditCardProperties); } export type CreditCardCardTypeEnum = 'AMERICAN_EXPRESS' | 'DINERS_CLUB' | 'DISCOVER' | 'JCB' | 'MASTER_CARD' | 'SOLO' | 'SWITCH' | 'MAESTRO' | 'CHINA_UNION_PAY' | 'UATP' | 'VISA'; export interface CreditCardProperties extends PaymentProperties { cardType: CreditCardCardTypeEnum; cardNumber: string; expiryDate: Date; electronicCommerceIndicator?: string; virtualCreditCardFlag?: boolean; walletType?: string; cardAvsResponse?: string; cardCvvResponse?: string; telephones: Array; merchantOrderCode?: string; cardAuthenticationFailureCount?: number; }