3.1 Sub-elements and Attributes

This section describes the message sub-elements and attributes, listed below in alphabetical order.

 

ACCNO

EXPDATE

PRODUCTID

ACCTYPE

ID

PROGRAMID

BANKACC

LINKEDTOKEN

SORTCODE

CRDACCNO

PAN

STATCODE

CRDCURRCODE

PAYMENT

VIRTUAL

CRDPRODUCT

PRIMARY

 

CUSTCODE

PRIMARYTOKEN

 

3.1.1 ACCNO

The ACCNO element is used to describe the account number in the ACCOUNT element. This number is the 16-19 digit Thredd public token of the created card, and is generated by Thredd. It uses the ACCNO data type.

Description

Base Data Type

Constraints / Permitted Values

The 16-19 digit Thredd public token of the created card generated by Thredd.

xs:string

Numeric, 16-19 characters.

Example

Copy
<ACCNO>5432160123456789</ACCNO>

3.1.2 ACCTYPE

The ACCTYPE element is used to indicate the type of card account. 

Description

Base Data Type

Constraints / Permitted Values

Account card type.

xs:string

Numeric string

Valid values are:

00 = Domestic Maestro

01 = Mastercard

02 = Visa

07 = Discover

Example

Copy
<ACCTYPE>00</ACCTYPE>

3.1.3 BANKACC

The BANKACC element indicates the agency banking account number assigned to the cardholder's account. 

Description

Base Data Type

Constraints / Permitted Values

Virtual agency bank account number assigned to the cardholder’s account.

xs:string

Numeric, 8 characters.

Example

Copy
<BANKACC>12345678</BANKACC>

3.1.4 CRDACCNO

The CRDACCNO is used to describe the account number in the CARD element. It uses the CRDACCNO data type.

Description

Base Data Type

Constraints / Permitted Values

Card Account Number.

Xs:string

Numeric, 16-19 characters

Example

Copy
<CRDACCNO>5432160123456789</CRDACCNO

3.1.5 CRDCURRCODE

  • The CURRCODE element indicates the currency the ACCOUNT operates.

  • The CRDCURRCODE indicates the currency the CARD operates.

Both elements are based on the CRDCURRCODE data type. 

Description

Base Data Type

Constraints / Permitted Values

Currency code (ISO 3 digit).

xs:string

Alphanumeric, maximum 3 characters.

Example

Copy
<CURRCODE>GBP</CURRCODE>
<CRDCURRCODE>GBP</CRDCURRCODE>

3.1.6 CRDPRODUCT

The CRDPRODUCT element is used to indicate the card network, which is either Visa (VISA) or Mastercard (MCRD). 

Description

Base Data Type

Constraints / Permitted Values

The Card Scheme (payment network), which is either Visa (VISA) or Mastercard (MCRD).Mastercard (MCRD), Visa (VISA), or Discover (DGN).

xs:string

Alphanumeric, maximum 4 characters.

Example

Copy
<CRDPRODUCT>MCRD</CRDPRODUCT>

3.1.7 CUSTCODE

This may be left blank or populated with the last 8 digits of the PAN. 

Description

Base Data Type

Constraints / Permitted Values

This may be left blank or populated with the last 8 digits of the PAN.

xs:string

Numeric, maximum 8 characters.

Example

Copy
<CUSTCODE>12345678</CUSTCODE>

3.1.8 EXPDATE

The EXPDATE element indicates the expiry date of the card as specified when the card is created. 

Description

Base Data Type

Constraints / Permitted Values

The expiry date assigned when the card is created. This is either the date you specified when creating the card, or, if a date was not specified, it is based on the default Card Scheme (payment network) validity period in months (e.g., 36 months from the date of card creation). This date is embossed on the card.

xs:string

Alphanumeric, maximum 10 characters, in the format:

YYYY-MM-DD.

Example

Copy
<EXPIRYDATE>2021-01-31</EXPIRYDATE>

3.1.9 GPSEXPDATE

The GPSEXPDATE element indicates the expiry date of the card as specified when the card is activated. 

Description

Base Data Type

Constraints / Permitted Values

The expiry date you specified on activation of the card or on card activation and load. If no expiry date is specified, this date is based on the Thredd validity period in days configured at product level (e.g., 1095 days from the date of card activation).

Note: If there is an unknown card without an expiry date (primarily found in the event of a BIN attackClosed A BIN attack is a type of BIN scamming in which a fraudster takes the first six numbers and runs software to generate the rest of the numbers. After the fraudster identifies a full account number, they will test it via credit card testing.) Thredd will convert the null Thredd Expiry Date to an empty string.

xs:string

Alphanumeric, maximum 10 characters, in the format:

YYYY-MM-DD.

Example

Copy
<GPSEXPIRYDATE>2021-01-31</GPSEXPIRYDATE>

3.1.10 ID

The ID attribute identifies the scheme to which the Balance XML data belongs. 

Description

Base Data Type

Constraints / Permitted Values

Scheme to which the balance XML belongs. This is typically blank.

xs:string

Alphanumeric, maximum 3 characters.

Example

Copy
<SCHEME ID="ABC">

3.1.11 LINKEDTOKEN

If the card is linked to another card with a different account, then this field holds the Thredd public token of the linked card. 

Description

Base Data Type

Constraints / Permitted Values

This field is populated when the card is linked to another card on a different account. If the card is not linked then this element may be omitted (i.e. not presented at all).

xs:string

Thredd full length public token.

Numeric, 16 to 19 digits length.

Example

Copy
<LINKEDTOKEN>6543210123456789</LINKEDTOKEN>
Copy
<MASKEDPAN>556752******6789</MASKEDPAN>

3.1.12 PAN

The PAN element is used to indicate the Primary Account Number of a CARD element.  If you are not PCI DSS Compliant then will contain the Thredd 16-digit public token.

Description

Base Data Type

Constraints / Permitted Values

Primary Account Number.

xs:string

Numeric, 14 to 19 characters.

Example

Copy
<PAN>1234567812345678</PAN>

Thredd 16-digit public token

The format of the 16-digit Thredd public token is as follows:

xxxYYYYYYYYYzzzz

where:

  • xxx — is the 3 digits derived from the Thredd internal scheme ID

  • YYYYYYYYY — is the 9-digit Thredd public token

  • zzzz — is the last 4 digits of the card's PAN

3.1.13 PAYMENT

The PAYMENT element describes additional payment options selected by the card account holder. 

Description

Base Data Type

Constraints / Permitted Values

Additional payment options activated by the card account holder. The code is a combination of the code for activated receipt options and the code for activated payment options.

xs:string

Alphanumeric string of 4 characters.

Valid receipt values are:

 

Value

Description

R0

No Receipt Options

R1

BACS Receipts Only

R2

Faster Payment Receipts Only

R5

Both Receipt Options

 

Valid payment values are:

 

Value

Description

P0

No Outbound Options

P1

Outbound Faster Payments Only

P2

Direct Debit Payments Only

P5

Both Outbound Payments Option

 

Example

Copy
<PAYMENT>R5P1</PAYMENT>

3.1.14 PRIMARY

The PRIMARY element indicates whether or not the card is the Primary card on the account. There can only be one Primary card on a given account. 

Description

Base Data Type

Constraints / Permitted Values

Primary Account flag.

xs:string

Valid values:

Y = Yes

N= No

Example

Copy
<PRIMARY>Y</PRIMARY>

3.1.15 PRIMARYTOKEN

Provides the full Primary Account Number (PAN) of the card.

This field is only available if you receive the full, unencrypted PAN; if you do not receive the full PAN, then this field will not appear.

Description

Base Data Type

Constraints / Permitted Values

Provides the full Primary Account Number (PAN) of the card.

  • If the card is a primary card, then this field will display the PAN of the primary card

  • If the card is a secondary card, then this field will display the PAN of the linked primary card

xs:string

Thredd full length PAN.

Numeric, 16 to 19 digits length.

Example

Copy
<PRIMARYTOKEN>234321042355666</PRIMARYTOKEN>

3.1.16 PRODUCTID

The PRODUCTID element indicates the ID of product associated with the card.

Description

Base Data Type

Constraints / Permitted Values

The ID of the product associated with the card.

xs:string

Numeric, 5 maximum.

Example

Copy
<PRODUCTID>1234</PRODUCTID>

3.1.17 PROGRAMID

The PROGRAMID element indicates the program to which the card is linked. 

Description

Base Data Type

Constraints / Permitted Values

Program Identifier, the Co-Brand (i.e. Sub-Scheme) that the Programme Manager operates.

xs:string

Alphanumeric, maximum 6 characters.

Example

Copy
<PROGRAMID>FEDCBA</PROGRAMID>

3.1.18 SORTCODE

The SORTCODE element indicates the agency banking sort code assigned to the card program. 

Description

Base Data Type

Constraints / Permitted Values

Agency banking sort code applicable to the card program.

xs:string

Numeric, 6 characters.

Example

Copy
<SORTCODE>123456</SORTCODE>

3.1.19 STATCODE

The STATCODE element indicates the card status. 

Description

Base Data Type

Constraints / Permitted Values

The card status.

xs:string

Numeric, maximum 2 characters,

see Card Status Codes.

Example

Copy
<STATCODE>00</STATCODE>

3.1.20 VIRTUAL

The VIRTUAL element indicates whether the card is a physical or a virtual card. 

Description

Base Data Type

Constraints / Permitted Values

Physical or virtual card flag.

xs:string

Valid values:

Y = Virtual card

N = Physical card

Example

Copy
<VIRTUAL>Y</VIRTUAL>