Skip to main content

SCA Functional Specification

OPEN_TAB

Last updated: 09-Dec-2024

This command opens a customer tab by performing a pre-authorization to PWC and returning the transaction IDs to the server. The message specification for Open Tab is identical to Authorize.

Device UI Required: Yes

Request Packet
Field Rule Type Minimum Maximum Value(s) Description
FUNCTION_TYPE Required Static value     PAYMENT Type of function
COMMAND Required Static     OPEN_TAB Command name
TRANS_AMOUNT Required Floating point number 1(2) 6(2) Ex: 5.00 Transaction amount
PAYMENT_TYPE Optional List     CREDIT
GIFT
PRIV_LBL
When present, will bypass the consumer payment selection screen. Note:
  • Required for Vantiv Direct (GIFT only).
  • Point Classic supports AUTH for Credit card only.
  • PAYMENT_TYPE field is mandatory for card token based transactions.
AUTH_CODE Conditional Character 1 16 Ex: TA12605
When present, the authorization is performed offline as a VOICE_AUTH.
  •   

    Note

    • Credit card only
    • Not supported by First Data Rapid Connect in Point Classic implementation
MANUAL_ENTRY Optional Boolean     TRUE
FALSE
Instructs Point to collect the account information through the keypad on the device. Any value other than TRUE is FALSE.
CUSTOMER_STREET Optional Character 1 20   Applicable when MANUAL_ENTRY = TRUE. Merchants should send this field only when required by the processor. Not required for customers using Point Gateway services.
CUSTOMER_ZIP Optional Character   9   Applicable when MANUAL_ENTRY = TRUE. Merchants should send this field only when required by the processor. Not required for customers using Point Gateway services.
MANUAL_PROMPT_OPTIONS Optional Character 1 50 NOEXP
Applicable when MANUAL_ENTRY = TRUE with VOICE_AUTH or OPEN_TAB. When this is present, SCA will not prompt for expiration.
  •   

    Note

    CREDIT or GIFT

RECURRING Optional Boolean N/A N/A Yes or No This is used when Payment Type is Credit. This field denotes Recurring Billing Flag to indicate the transaction is recurring. Example: This is applicable to UGP only.
BILLPAY Optional Boolean N/A N/A TRUE or False This is for UGP and Vantiv Direct. This is used to indicate a bill payment.
FORCE_FLAG Conditional Boolean N/A N/A TRUE or FALSE Used to override duplicate checking for the transaction.
CAPTURECARD_EARLYRETURN Optional Boolean N/A N/A TRUE or FALSE
If TRUE, return card data to POS before processing. PCI BIN checking in place to return full PAN or masked PAN BIN range level. See example response below.
  •   

    Note

    SCA will cache data from the swipe, but will only use in immediately subsequent CAPTURE request containing explicit tender type.

ENCRYPT Conditional Boolean N/A N/A TRUE or FALSE
This field is required to encrypt the PAN details before passing it on to processor/gateway. In case of P2PE encryption, this field needs to be set to TRUE as value.
  •   

    Note

    If this field is not present, then the application will internally treat this field as a value TRUE when the device encryption is ADE/VSD.

SCMCI_INDICATOR Optional Numeric     2 This field denotes the Stored Credential Transaction Indicator. The acceptable value for this field as of this publication is 2 which signifies that it is a cardholder initiated transaction.
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       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
level 2
Field Rule Type Minimum Maximum Value(s) Description
TAX_AMOUNT Conditional Floating point number 1(2) 6(2)   Tax amount. Example: 5.00
TAX_IND Conditional List    
  • 0 – Tax not provided
  • 2 - Tax amount equals 0.00
  • 1 - Tax amount not equal to 0.00
Tax indicator
CMRCL_FLAG Conditional List    
  • B - Business
  • C - Corporate
  • P - Purchasing
Commercial flag
Keyed Account Information for Gift Card and Credit Card Payment Types Only
Field Rule Type Minimum Maximum Value(s) Description
ACCT_NUM Optional Numeric 1 25 Ex: 67823456781313
This field is used to enter the account number manually. For this MANUAL_ENTRY must be set to TRUE.
  

Note

Pre-swipe data will not be honored.

CARD_EXP_MONTH Optional Numeric 2 2   Card expiry month. Example: 12
CARD_EXP_YEAR Optional Numeric 2 2   Card expiry year. Example: 49
BARCODE Optional Character 1 100   Barcode scanning option.
PIN_CODE Optional Numeric 1 10   PIN code.
CVV2 Optional Numeric 1 10   Card Verification Value 2.
Processor-Based Token (Conditional)
  

Note

For use with host based processors supporting card based token implementations.

Field Rule Type Minimum Maximum Value(s) Description
CARD_TOKEN Conditional Character 1 40   Card token is processor-based or gateway-based and can represent a unique card. Example: 7987654321098765
CARD_EXP_MONTH Conditional Numeric 2 2   Card expiry month details are required when sending AUTH_CODE and CARD_TOKEN. This is applicable to Point SCA First Data Rapid Connect and Direct to Vantiv implementations only.
CARD_EXP_YEAR Conditional Numeric 2 2   Card expiry year details are required when sending AUTH_CODE and CARD_TOKEN. This is applicable to Point SCA First Data Rapid Connect and Direct to Vantiv implementations only.
BANK_USERDATA Conditional Character 1 50   Returned with CARD_TOKEN. Whatever comes back with BANK_USERDATA in the response for the token should also be sent in the request. Example: 01/00/02/Visa/
OC_INDUSTRY_CODE Conditional Character 1 1 E - eCommerce
M - Moto
Default is empty.
This is used to convert a transaction from the Merchants default industry of Retail or Restaurant to E-Commerce or MOTO. This is applicable in case of UGP host only.
Authorization Response
Field Type Value Description
RESPONSE_TEXT Character   Processor response text. Example: APPROVED: A :AP
RESULT Character   Commonly APPROVED or DECLINED
RESULT_CODE Numeric 5 - Approved (RCHI/CPHI)
6 - DECLINED
59074 - Call for Auth
This indicates the result code.
RESPONSE_CODE Character A or 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 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
TRANS_SEQ_NUM Numeric   Processor/Batch trans sequence number. Example: 5
INTRN_SEQ_NUM Numeric   PWC transaction ID. Example: 123456789
TROUTD Numeric   Transaction routing ID. Example: 123456789
CTROUTD Numeric   Client-specific Transaction routing ID. Example: 45
LPTOKEN Numeric Ex: 12357 LP Token is a non-sensitive unique number assigned to each unique card number processed with the UGP gateway. This value will automatically increment by one for each unique card number. This is a conditional field.
PAYMENT_MEDIA Character Commonly VISA/MC/DISC/AMEX/DEBIT
Mode of payment.
  

Note

Value returned by device for an offline (SAF) response may differ from online.

PAYMENT_TYPE Character   Type of payment (e.g., CREDIT, GIFT)
ACCT_NUM Numeric   Returned the masked account number. Example: 400555******0019
AUTH_CODE Character   Processor authorization number. Example: TA0156
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
APPROVED_AMOUNT Floating point   Amount approved on authorization. Example: 5.00
ORIG_TRANS_AMOUNT Floating point   Original transaction amount. Example: 5.00
CARD_ENTRY_MODE Character   Refer to Card Entry Mode for details on possible values.
CARDHOLDER Character   Returned for swiped/insert transactions. Example: MC TEST
CARD_EXP_MONTH Numeric Ex: 12 Card expiry month. Example: 12
CARD_EXP_YEAR Numeric   Card expiry year. Example: 20
AVS_CODE Character   Result of AVS check. Example: Z
CVV2_CODE Character   Result of CVV2 check.
MERCHID Numeric   Merchant ID. Example: 900000000123
TERMID Numeric   Terminal ID. Example: 001
SERVER_ID Numeric   Echoes what is sent in START request. Example: 10
CASHIER_ID Character   Echoes what is sent in START request. Example: 10
REFERENCE Character   Returned by some processors. Example: 100007265288
TRACE_CODE Character   Returned by some processors for tracking purposes. Example: 119517
MERCH_DECL Character Values return:
100-AVS MISMATCH
200-CVV MISMATCH
300-AVS/CVV MISMATCH
Merchant decline codes will return when this is configured. It returns when declined by Host due to AVS/CVV mismatch.
MERCH_REF Character AVS MISMATCH
CVV MISMATCH
Merchant reference will return when this is configured. It returns when declined by Host due to AVS/CVV mismatch.
AUTH_RESP_CODE Character   Returned by some processors when the transaction is declined. Max 19 bytes. Example: 0131
SAF_NUM Numeric   Returned instead of CTROUTD when transaction has been put in SAF. SAF number is per device. Example: 0008
RECEIPT_DATA Character   Receipt Data
TRAN_LANG_CODE Character en – English
fr – French
es – Spanish
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.
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 Ex: 100 If present, VSP response field. Example: 100
VSP_RESULTDESC Character Success or Failure If present, VSP response field.
VSP_TRXID Numeric   If present, VSP response field. Example: 987696060049091234
PPCV Character   This field is sent from the Host Response to POS Response, without any change. Example: CBCC.WSI
TRACE_NUM Numeric   This field is sent from the Host Response. This field contains the Interac Sequence number from the host. Example: 1400040000000004001951
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>
SIGNATUREDATA Base 64 encoded data   Signature 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
BANK_USERDATA Character   Bank User Data, normally returned with CARD_TOKEN. Maximum 50 alphanumeric. Example: /CustData`JANE`K`DOE`````00`
Direct to Processor Implementation Response Fields (Conditional)
  

Note

Not applicable to Point Classic implementations.

Field Type Value Description
HOST_RESPCODE Numeric   Will be sent if present in the host response
MERCHID Numeric   Merchant ID
TERMID Numeric   Terminal ID
LANE Numeric   This is returned to identify the retail lane.
Duplicate Transaction (Conditional)
Field Type Value Description
DUPLICATE_TRANSACTION Character 1 - Duplicate transaction detected A duplicate transaction is detected if the same card is swiped in the context of two consecutive cashless purchase transactions on the same PIN pad. DUPLICATECHECK parameter must be enabled on Engage device. Refer to SCA Configuration Guide for more details on DUPLICATECHECK parameter.

Need help?

Do you have a question? If you didn’t find the answer you are looking for in our documentation, you can contact our Support teams for more information. If you have a technical issue or question, please contact us. We are happy to help.

Not yet a Verifone customer?

We’ll help you choose the right payment solution for your business, wherever you want to sell, in-person or online. Our team of experts will happily discuss your needs.

Verifone logo