InstrumentInfo

public final class InstrumentInfo extends Object
implements Parcelable

Parcelable representing more detailed information about a payment instrument.

Nested Class Summary

@interface InstrumentInfo.CardClass Card class indicates whether it is a credit, debit or prepaid card. 

Constant Summary

int CARD_CLASS_CREDIT
int CARD_CLASS_DEBIT
int CARD_CLASS_PREPAID
int CARD_CLASS_UNKNOWN

Inherited Constant Summary

Field Summary

public static final Creator<InstrumentInfo> CREATOR

Public Method Summary

int
getCardClass()
Class of a card that is either credit, debit or prepaid.
String
getInstrumentDetails()
Details of an instrument that has a finite set of formats.
String
getInstrumentType()
Type of an instrument that has a finite set of values.
void
writeToParcel(Parcel out, int flags)

Inherited Method Summary

Constants

public static final int CARD_CLASS_CREDIT

Constant Value: 1

public static final int CARD_CLASS_DEBIT

Constant Value: 2

public static final int CARD_CLASS_PREPAID

Constant Value: 3

public static final int CARD_CLASS_UNKNOWN

Constant Value: 0

Fields

public static final Creator<InstrumentInfo> CREATOR

Public Methods

public int getCardClass ()

Class of a card that is either credit, debit or prepaid. See InstrumentInfo.CardClass for the expected card class values. This class should not be displayed to the user, but can be used when the details of a user's instrument are needed. An example would be selecting a processor that gives better interchange rates for certain card classes or applying a discount based on the card class.

Note that class unknown may be returned if it can not be determined. Also, class will only be populated for the cards with InstrumentType VISA, MASTERCARD, DISCOVER, AMEX (See getInstrumentType() for all expected InstrumentType).

Returns

public String getInstrumentDetails ()

Details of an instrument that has a finite set of formats. These details should not be displayed to the user, but can be used when the details of a user's instrument are needed. An example would be a customer support call when the user only knows that one of their credit cards were charged.

You can rely on the format of instrument details not changing once it is defined for a given form of payment in a transaction (i.e. Instrument details of a credit card are always the last four digits of the card). However, you should be able to handle new formats that could be introduced in the future (i.e. when support is added for a new form of payment where last four credit card digits has no meaning and other information is returned).

Current expected formats for elements of this array are:

  • Credit cards return the last four digits of the card selected
Returns
  • instrument details that will not be null, but can be the empty string

public String getInstrumentType ()

Type of an instrument that has a finite set of values. This type should not be displayed to the user, but can be used when the details of a user's instrument are needed. An example would be a customer support call when the user only knows that one of their credit cards were charged.

You can rely on an instrument type not changing once it is defined for a given instrument in a transaction (i.e. purchasing with a single Visa card will always return VISA). However, you should be able to handle elements that are not defined in the expected list below (i.e. when support is added for a new form of payment not listed below).

Current expected values for elements of this array are:

  • VISA
  • MASTERCARD
  • DISCOVER
  • AMEX
Returns
  • an instrument type that will be non-empty

public void writeToParcel (Parcel out, int flags)