Card Generation Interface Specification 12.7
Card Generation Interface Specification 12.7
Specification
Version: 12.7
30 June 2023
Publication number: CGIS-12.7-6/30/2023
© Thredd 2023
Copyright
© Thredd 2023
The material contained in this guide is copyrighted and owned by Thredd Ltd together with any other intellectual property in such
material.
Except for personal and non‐commercial use, no part of this guide may be copied, republished, performed in public, broadcast, uploaded,
transmitted, distributed, modified or dealt with in any manner at all, without the prior written permission of Thredd Ltd., and, then, only in
such a way that the source and intellectual property rights are acknowledged.
To the maximum extent permitted by law, Thredd Ltd shall not be liable to any person or organisation, in any manner whatsoever from the
use, construction or interpretation of, or the reliance upon, all or any of the information or materials contained in this guide.
The information in these materials is subject to change without notice and Thredd Ltd. assumes no responsibility for any errors.
What’s Changed?
If you want to find out what's changed since the previous release, see the Document History section.
Related Documents
Refer to the table below for other documents which should be used in conjunction with this guide.
Document Description
Web Services Guide Describes how to use the Thredd web services API to make agency banking requests.
EHI Guide Provides details of the Thredd External Host Interface (EHI).
Smart Client Guide Describes Smart Client, which is an administration application that can be used to view and manage
cards and transactions in your program.
Tip: For the latest technical documentation, see the Documentation Portal.
Document Description
ISO 4217 Specification Specifies currency codes (but note that Thredd may differ slightly, in cases where Visa/Mastercard differ
from the ISO specification).
1.1.3 Example
CLI_PRODUCT1_124_1571_P1.xml
Note: The production environment variable is relevant to customers in one of our AWS Cloud-based production environments (P1 and P2)
and does not apply to existing customers in our UK data centre production environment (P0). For details of which production environment
applies to your programme, please check with your Thredd implementation manager or account manager.
Note: For examples of full and cut-down formats, see Example Files. For more information on the fields included with each file format, see File
Format and File Versions.
Nulls
XMLTAG Type Length Description
Allowed
<UID> Varchar 20 Unique identifier to identify the record. You can use No
this in error tracking.
<LANG> Char 2 Defines the language of the carrier product, if it is not Yes
already defined by the <CARRIER_TYPE> elements.
Uses ISO 639-1 language code.
Examples:
English is “en”, French is “fr”
<TRACK1> Varchar 76 Track 1 data for magnetic stripe, excluding the Start No
Sentinel, End Sentinel and LRC characters.
Track Layout
MASTERCARD:
B + PAN + ^ + Name + ^ + Expiry date in “yyMM”
format + Service Code + 00000 + CVV1 + 0000000
VISA:
B + PAN + ^ + Name + ^ + Expiry in "yyMM" format +
Service Code + 00 + CVV1 + 000000
<TRACK2> Varchar 37 Track 2 data for the magnetic stripe, excluding Start No
Sentinel, End Sentinel and LRC characters.
MASTERCARD:
PAN + = + Expiry date in "yyMM" format + Service Code
+ 000000 + Validity in months + CVV1 + PAN Sequence
No
VISA:
PAN + = + Expiry Date in "yyMM" format + Service Code
+ CVV1 + 00000
<TRACK3> Varchar 104 Track 3 data for the magnetic stripe, excluding Start Yes
Sentinel, End Sentinel and LRC characters.
this element.
<EMBOSS_NAME> varchar 27 Embossed card name. Actual maximum length will Yes
depend on the card design.
<EMBOSS_LINE4> Varchar 27 Embossed card line 4. Actual maximum length will Yes
depend on the card design.
<IMAGE_ID> Varchar 20 Identifies the image file that will be printed on the Yes
face of the card.
<LOGO_FRONT_ID> Varchar 30 Identifies the logo file that will be printed on the face Yes
of the card.
<LOGO_BACK_ID> Varchar 30 Identifies the image file that will be printed on the Yes
back of the card, if supported.
<QRCODE> Varchar 100 Identifies the QR code that will be printed on the Yes
card, if supported. You can add separate values to
each card using Thredd Web Services.
<PINBLOCK> Hexade 16 Optional. Will only be present if the card is Mag Yes
cimal stripe and the card requester requires online PIN.
Used for PIN mailers.
<PAN> Integer 16-19 Primary Account Number ISO 8583 bit 2 Yes
<PAN_SEQ> Integer 2 PAN Sequence number. ISO 8583 bit 23. Yes
<CHIP_TRACK_1> varchar 76 This is the entire chip track 1 for EMV transactions. Yes
It permits the derivation of EMV tag hex 9F1F (track
1 discretionary data as defined in ISO 7813) which is
part of this.
MASTERCARD:
B + PAN + ^ + Name + ^ + Expiry date in “yyMM”
format + Service Code + 00000 + iCVV + 0000000
VISA:
B + PAN + ^ + Name + ^ + Expiry Date in "yyMM"
format + Service Code + 00 + iCVV + 000000
<CHIP_TRACK_2> varchar 38 This is the EMV Track 2 equivalent data, for EMV tag Yes
hex 57. It is for EMV-based (including qVSDC)
transactions (both contact and contactless)
MASTERCARD:
PAN + D + Expiry in "yyMM" format + Service Code +
000000 + Validity in months + iCVV + PAN
Sequence No (If the length of CHIP_TRACK_2 is
odd then will add “F” at the end)
VISA:
PAN + D + Expiry Date in "yyMM" format + Service
Code + iCVV + 00000 (If the length of CHIP_
TRACK_2 is odd then will add “F” at the end)
<CHIP_TRACK_1_MSD_CL> Varchar 76 Optional. This element will only be present if the Yes
product type supports Contactless Magnetic Stripe
Transactions.
It is the base Track 1 for Contactless Magnetic Stripe
(which is not EMV) transactions.
MASTERCARD:
For Mastercard, this is for tag hex 56 (PayPass
Magstripe Track 1 Data.) (See Mastercard “PayPass
MagStripe Technical Specifications v3.2 Oct 2006”.)
VISA:
For Visa, if there is a separate data item on the ICC
for the Track 1 exclusively for Magnetic Stripe Data
(not EMV or qVSDC) then use this for it.
<CHIP_TRACK_2_MSD_CL> Varchar 37 Optional. This element will only be present if the Yes
product type supports Contactless Magnetic Stripe
transactions.
It is the base Track 2 for contactless Magnetic Stripe
(which is not EMV) transactions.
MASTERCARD:
For Mastercard, this is for tag hex 9F6B (PayPass
Magstripe Track 2 Data.) (See Mastercard “PayPass
MagStripe Technical Specifications v3.2 Oct 2006”.)
VISA:
For Visa, if there is a separate data item on the ICC
for the Track 2 exclusively for Magnetic Stripe Data
(not EMV or qVSDC) then use this for it.
<PINBLOCK> Hexade 16 Holds the encrypted PIN to be placed on the chip Yes
cimal card.
Format is ISO 9564-1 Format 0 (same as ANSI X9.8
Format 0), triple DES encrypted with the double-
length Zone PIN Key, expressed as 16 hex digits
(with 2 hex digits representing 1 binary byte.)
Example:
PAN = 5299887766554439
PIN = 223344
Zone PIN Key =
3B6870987613107CFB1F4C6EC17F3483
So PINBLOCK is 7553DAA289620533
< <
> >
& &
' '
" "
Included in
Included in Full Null Values
XMLTAG V10 V11 V12 Customer Cut-
File? Allowed?
down File ? **
<TRACK1> Yes No No
<TRACK2> Yes No No
<PASSCODE> No No Yes
<EMBOSS_ Yes No No
CVC2>
DATE>
* Conditional - depends on the card type whether present. Will not be present for Magstripe only cards.
** Cut-down file - sent on request to the Program Manager, excludes fields containing cardholder sensitive data. This file may contain an
additional <CUST_ACCNO > field.
Thredd Ltd.
Support Email: [email protected]
Support Phone: +442037409682
Technical Publications
If you want to contact our technical publications team directly, for queries or feedback related to this guide, you can email us at:
[email protected].
07/01/2023 Added new Example Files of both cut-down and full file formats, and a WS
12.6 new File Format and File Versions section with details of fields included
with each file format and data format version.
12.5 12/10/2022 Added details of the file naming conventions for both cloud and on- WS
premise Thredd solutions. See File Naming Conventions.
28/09/2022 Clarified customer file and data format options; updates to TYPE and AL
CARRIER_TYPE elements.
12.4 12/08/2022 New guide layout and HTML version now available PC
12.3 11/08/2022 The values in the QRCode field can now be updated using Web Services. WS
Field size updated from 50 to 100 characters.
12.0 13/05/2021 New Guide template and layout. Added section on XML reserved WS
markup characters.
11.01 17/12/2020 Clarification of usage of BULK_ADD fields and DELV_CODE (bulk address IF
and delivery code)
No change to file layout.
11.00 10/03/2020 Added MOBILE to CARRIER section. Only appears for version 11.00 IF
and higher.
10.02 10/03/2020 Updated description of TRACK2 and CHIP_TRACK_2 for VISA. Added IF
00000 to each.
10.01 16/01/2020 Clarified descriptions of all CHIP Track data fields, to aid understanding MD
of the usage of them:
CHIP_TRACK_1, CHIP_TRACK_2, CHIP_TRACK_1_MSD_CL, CHIP_TRACK_2_
MSD_CL
Corrected the description of the PINBLOCK field, and an example is
supplied.
Clarified COUNTRY and BULK_COUNTRY code values.
Clarified SERVICE_CODE values.
Added description for PAN and PAN_SEQ values.
Table headings now repeated on each page and prevent rows from
breaking across pages if possible.
9.01 18/01/2016 Added documentation about PIN block format, no change to file layout. IF
4.01 10/09/2012 Replaced <ADD5> with <CITY> in the <CARRIER> element. Clarified IF
Country ISO code.
Added XML closing tags for clarity.
4.0 28/02/2012 Added new fields to support Bulk Delivery, Simplex Line 4, Currency, IF
Thermal Lines 1 & 2, Front & Logo images.
Defined maximum field sizes that were not already defined.