GET_CARD_DATA
Last updated: 04-Dec-2024
This command retrieves card data using the payment device and sends it to the POS.
Device UI Required: Yes
Request Packet
Field | Rule | Type | Minimum | Maximum | Value(s) | Description |
---|---|---|---|---|---|---|
FUNCTION_TYPE | Required | Static value | N/A | N/A | PAYMENT | Type of function |
COMMAND | Required | Static value | N/A | N/A | GET_CARD_DATA | Command name |
DISPLAY_TEXT1 | Optional | Character | 1 | 50 | Displays text line 1. Example: PLEASE SWIPE OR INSERT YOUR CREDIT CARD | |
DISPLAY_TEXT2 | Optional | Character | 1 | 50 | Displays text line 2. Example: TO LOOK UP YOUR ORDER | |
DISPLAY_TEXT3 | Optional | Character | 1 | 50 | Displays text line 3. Example: MUST BE CARD USED TO PLACE ORDER | |
CARD_INPUT_METHOD | Required | List |
|
This is the input method for card entry mode. This inputs should be pipe delimited. Example: SWIPE|INSERT | ||
POS_RECON | Optional | Character | 1 | 30 | POS reconciliation. POS Reconciliation field to be echoed back in response to POS. Example: RetailPOS1 | |
COUNTER | Required | Numeric | 1 | 10 | COUNTER is used for a given MAC label. Each COUNTER should be higher than the last one. This is used to authenticate the POS. Example: 100 | |
MAC | Required | Base64 Encoded Data | Message Authentication Code. This is used to authenticate the POS. | |||
MAC_LABEL | Required | Character | 1 | 50 | Associated label that tells the device which MAC_KEY to use to decrypt the value of MAC. This is used to authenticate the POS. Example: REG1 |
Example
Following is an example of request packet
<TRANSACTION>
<FUNCTION_TYPE>DEVICE</FUNCTION_TYPE>
<COMMAND>GET_CARD_DATA</COMMAND>
<DISPLAY_TEXT1>PLEASE SWIPE OR INSERT YOUR CREDIT CARD</DISPLAY_TEXT1>
<DISPLAY_TEXT2>TO LOOKUP YOUR ORDER</DISPLAY_TEXT2>
<DISPLAY_TEXT3>MUST BE CARD USED TO PLACE ORDER</DISPLAY_TEXT3>
<CARD_INPUT_METHOD>SWIPE|INSERT</CARD_INPUT_METHOD>
<COUNTER>1</COUNTER>
<MAC> … </MAC>
<MAC_LABEL>REG2</MAC_LABEL>
</TRANSACTION>
Response Packet
Field | Type | Value | Description |
---|---|---|---|
RESPONSE_TEXT | Character | Processor response text. Example: CARD DATA RECEIVED | |
RESULT | Character | This indicates the Result details. Example: OK | |
RESULT_CODE | Numeric | Expected result code: -1, 59001, 59006, 59040 | This indicates the result code. Refer to Result/Error Codes for details. |
TERMINATION_STATUS | Character | SUCCESS or FAILURE | This indicates the transaction termination status. This is the overall status of the transaction irrespective of approved or declined. Like, if the output is generated then the status is SUCCESS and if no output is generated then the status will be FAILURE. |
COUNTER | Numeric | Echoes counter sent in the request. Example: 100 | |
CARD_TRACK1 | Character | Returns card track 1 data. Example: T1 DATA UNFORMATTED | |
CARD_TRACK2 | Character | Returns card track 2 data. Example: T2 DATA UNFORMATTED | |
CARD_TRACK3 | Character | Returns card track 3 data. Example: T3 DATA UNFORMATTED | |
ACCT_NUM | Character | Returns the account number. PCI card data will be masked. PCI cards will not return track data fields. Example: 73439839838938398 | |
CARD_EXP_MONTH | Numeric | Card expiry month. Example: 12 | |
CARD_EXP_YEAR | Numeric | Card expiry year. Example: 19 | |
CARDHOLDER | Character | Conditionally returns for swiped cards. Example: TEST | |
CARD_ENTRY_MODE | Character | Returns card entry mode values. Refer to Card Entry Mode for details on possible values. Example: SWIPE | |
POS_RECON | Character | POS reconciliation field echoed back if sent in request. Example: RetailPOS1 |
Example
Following is an example of response packet
<RESPONSE>
<RESPONSE_TEXT>CARD DATA RECEIVED</RESPONSE_TEXT>
<RESULT>OK</RESULT>
<RESULT_CODE>-1</RESULT_CODE>
<TERMINATION_STATUS>SUCCESS</TERMINATION_STATUS>
<COUNTER>1</COUNTER>
<CARD_TRACK2> T2 DATA UNFORMATTED</CARD_TRACK2>
<ACCT_NUM>73439839838938398</ACCT_NUM>
<CARD_EXP_MONTH>12</CARD_EXP_MONTH>
<CARD_EXP_YEAR>19</CARD_EXP_YEAR>
<CARDHOLDER>TEST</CARDHOLDER>
<CARD_ENTRY_MODE>SWIPE</CARD_ENTRY_MODE>
</RESPONSE>
Rate this article: