DELETE_TAB
Last updated: 09-Dec-2024
This command is used to delete an existing Tab by voiding or reversing the original transaction.
Device UI Required: Yes - Conditional (Required for some PAYMENT_TYPES for some processors.)
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 | DELETE_TAB | Command name |
PAYMENT_TYPE | Required | List | N/A | N/A | CREDIT DEBIT GIFT EBT (Vantiv Direct only – see Appendix C) CHECK (for Check Processing) |
Payment types. |
CTROUTD | Required | Numeric | 1 | 16 | This is the transaction ID from the previous transaction that is being voided. CTROUTD is a sequence number for PAYMENT transactions (always enabled) that is generated per Client ID. Each Client ID has its own CTROUTD sequence counter. Example: 45 |
|
CDD_DATA | Optional | Character | 1 | 30 | Customer Defined Data. This field is optional and the datatype is String. It is a pass through field and it is passed in the host request if this field is present in the POS request and also returned in POS response. This field is applicable for all payment transactions. Example: “<CDD_DATA>INV200471</CDD_DATA>” |
|
COL_3, COL_4, COL_5, COL_6, COL_7, COL_8, COL_9, COL_10 | Optional | Character | 1 | 255 | These fields represent Column 3 to Column 10. These fields are expected for the Merchants internal POS System, which will record any additional data and link those to the PWC CLIENT_ID and CTROUTD. When a value for COL_n is passed in, that same value will be returned in the response. These COL_n values are not indexed, or searchable in any command report. These fields are not sent to any payment processor. Example: Merchant defined data | |
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 | N/A | N/A | N/A | 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>PAYMENT</FUNCTION_TYPE>
<COMMAND>DELETE_TAB</COMMAND>
<COUNTER>1</COUNTER>
<MAC> … </MAC>
<MAC_LABEL>REG2</MAC_LABEL>
<PAYMENT_TYPE>CREDIT</PAYMENT_TYPE>
<CTROUTD>97060</CTROUTD>
</TRANSACTION>
Response Packet
Field | Type | Value | Description |
---|---|---|---|
RESPONSE_TEXT | Character | Processor response text. Example: VOIDED | |
RESULT | Character | Commonly VOIDED or DECLINED. Example: VOIDED | |
RESULT_CODE | Numeric | Expected result code: 6, 7 | This indicates the result code. |
RESPONSE_CODE | Character | Expected response code: A, E | Response code data will be returned to POS, same as received from the Host if this is present in Host response. Example: “<RESPONSE_CODE>E</RESPONSE_CODE>.” |
TERMINATION_STATUS | Character | SUCCESS and 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 | |
MERCHID | Numeric | Merchant ID. Example: 900000000123 | |
TERMID | Numeric | Merchant ID. Example: 001 | |
TRANS_SEQ_NUM | Numeric |
|
|
INTRN_SEQ_NUM | Numeric | PWC transaction ID. | |
TRACE_NUM | Numeric | This field is sent from the Host Response. This field contains the Interac Sequence number from the host. Example: 1400040000000004001951 | |
TROUTD | Numeric | Transaction routing ID (this will match the TROUTD of the original transaction that is voided). Example: 123456789 | |
CTROUTD | Numeric |
|
|
APPROVED_AMOUNT | Floating point number (decimal) | Amount approved. Example: 5.02 | |
AVAILABLE_BALANCE | Floating point number | Available balance on the card used for transaction. This field will be returned to POS, when the Host returns the Available Balance data. SCA application sends <BALANCE_ENQ> as Host request field and based on the processor, it returns the Available Balance, and SCA will send it back to POS. Example: 1.00 | |
PAYMENT_MEDIA | Character | Medium of payment. Commonly VISA/MC/DISC/AMEX/DEBIT | |
PAYMENT_TYPE | Character | Payment type returned. Example: CREDIT | |
ACCOUNT_TYPE | Character | Indicates the type of debit account based on the selection of the customer. Example: CHECKING/SAVINGS. | |
AUTH_RESP_CODE | Character | S | Returned by some processors when the transaction is declined. Maximum of 19 bytes. Example: 0131. |
RECEIPT_DATA | Character | Receipt Data | |
TRANS_DATE | Character | Transaction date returned. Example: 2016.09.20 | |
TRANS_TIME | Character | Transaction time returned. Example: 09:16:25 | |
TRAINING_MODE | Character | ON or OFF | Conditionally returned when session is in Training Mode. |
VSP_CODE | Numeric | If present, returns the VSP code. Example: 910 | |
VSP_RESULTDESC | Character | If present, returns the VSP result description. Example: VSP NOT APPLICABLE | |
VSP_TRXID | Numeric | If present, returns the VSP transaction ID. Example: 0 | |
TRAN_LANG_CODE | Character | “en” – English and “fr” – French | This field contains the language code for the current transaction which is finalized based on the configured language on terminal and language preference from the card. This field will be returned only whenever the Card data is captured from cardholder during transaction flow. If Language code is not available from card, then terminal language will be returned. This field needs to be added for the below transaction flows. |
CDD_DATA | Character | Customer Defined Data field is returned in POS response when it is present in the POS request and passed in the host request. Example: “<CDD_DATA>INV200471</CDD_DATA>” | |
AUTH_REF_NUMBER | Character | Example: 123456789012345, Or It can be empty | This tag returns in the host response with the value for the particular transaction. This is used by some merchants to refer to the transaction at the host side. Currently this is applicable only for Worldpay processor. |
COL_3, COL_4, COL_5, COL_6, COL_7, COL_8, COL_9, COL_10 | Character | Column 3 to Column 10 fields value will be echoed in POS response. These fields are not sent to any payment processor. |
Processor-Based Token (Conditional)
NOTE: For use with host based processors supporting card based token implementations.
Field | Type | Value | Description |
---|---|---|---|
CARD_TOKEN | Character | Card token. Example: 7987654321098765 | |
TOKEN_SOURCE | Character | Source of token. Example: PWC |
Example
Following is an example of response packet
<RESPONSE>
<AUTH_CODE>125463</AUTH_CODE>
<CTROUTD>97060</CTROUTD>
<INTRN_SEQ_NUM>34552</INTRN_SEQ_NUM>
<PAYMENT_MEDIA>VISA</PAYMENT_MEDIA>
<PAYMENT_TYPE>CREDIT</PAYMENT_TYPE>
<ACCOUNT_TYPE>SAVINGS</ACCOUNT_TYPE>
<RESPONSE_TEXT>CAPTURED</RESPONSE_TEXT>
<RESULT>VOIDED</RESULT>
<RESULT_CODE>7</RESULT_CODE>
<TERMINATION_STATUS>SUCCESS</TERMINATION_STATUS>
<TRANS_SEQ_NUM>17</TRANS_SEQ_NUM>
<TRACE_NUM>1400040000000004001951</TRACE_NUM>
<TROUTD>24552</TROUTD>
<TRAN_LANG_CODE>en</TRAN_LANG_CODE>
</RESPONSE>
Rate this article: