Skip to main content

SCA Functional Specification

TEST BARCODE

Last updated: 04-Dec-2024

This command is designed to test the ability of the device to scan a barcode. BCTEST initializes and sets the scanner for level trigger mode. Once the command is executed the user may press the scan button to scan a barcode.

Request Packet
Field Rule Type Minimum Maximum Value(s) Description
FUNCTION_TYPE Required Static value N/A N/A BARCODE Type of function
COMMAND Required Static value N/A N/A BCTEST Command name
BCSCAN_ENCODE Optional List N/A N/A
  • 0 – Encode both symbology and barcode data (default)
  • 1 – Encode only barcode data (removes symbology data)
  • 2 – Do not encode barcode data (removes symbology data)
Encodes barcode scan.
COUNTER Required Numeric 1 10   COUNTER is used for a given MAC label. Each COUNTER should be higher than the last one. This is sed to authenticate the POS. Example: 4
MAC Required Base64 Encoded Data 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: P_JTY065
Example

Following is an example of request packet

<TRANSACTION>
<FUNCTION_TYPE>BARCODE</FUNCTION_TYPE>
<COMMAND>BCTEST</COMMAND>
<MAC>…MAC>
<COUNTER>4</COUNTER>
<MAC_LABEL>P_JTY065</MAC_LABEL>
</TRANSACTION>
Response Packet
Field Type Value Description
RESPONSE_TEXT Character   Processor response text. Example: Command response 0
RESULT Character   This indicates the Result details. Example: SUCCESS
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.
BARCODE_DATA Character   Barcode data. Example: AAgEATA0MTQxNTMxNzYzNQ==
BARCODE_CODEID Character   Returns unencoded. Example: 02
BARCODE_AIMID Character   Returns unencoded. Example: 01
BARCODE_SYMBOLOGY Character   Returns encoded. Returns only if BCSCAN_ENCODE = 0. Example: 0001
COUNTER Numeric   Echoes counter sent in the request. Example: 4
Example

Following is an example of response packet

<RESPONSE>
<RESPONSE_TEXT>Command response 0</RESPONSE_TEXT>
<RESULT>SUCCESS</RESULT>
<RESULT_CODE>-1</RESULT_CODE>
<TERMINATION_STATUS>SUCCESS</TERMINATION_STATUS>
<BARCODE_DATA>AAgEATA0MTQxNTMxNzYzNQ==</BARCODE_DATA>
<BARCODE_CODEID>02</BARCODE_CODEID>
<BARCODE_AIMID>01</BARCODE_AIMID>
<BARCODE_SYMBOLOGY>0001</BARCODE_SYMBOLOGY>
</RESPONSE>

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