BARCODE START (Multi-Scan)
Last updated: 04-Dec-2024
This command is used to start the Barcode scanning or Barcode reading in asynchronous way and POS has to send POS_IP and POS_PORT fields in order to receive the Barcode data. In this command Multiple barcode can be scanned without turning off the scan function.
- This command leverages the POS port to enable unsolicited scan results back to the POS.
- SCA application has been enhanced to send CANCEL command (from Secondary Port) to cancel the scanning if the user requires to cancel.
- User can also cancel the scanning by pressing Cancel button on e280s device and by pressing hard key cancel on M440 and M424 devices and sending an unsolicited response to POS.
Note
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 | BARCODEASYNC_START | Command name |
POS_IP | Required | Character | POS IP listening address. This is a required field for both active session and outside sesion. This is also conditionally used to receive Consumer Unsolicited Responses to POS. Example: 192.168.31.100 | |||
POS_PORT | Required | Numeric | 4 | 4 | POS listening port. This is a required field for both active session and outside sesion. This is also conditionally used to receive Consumer Unsolicited Responses to POS. Example: 5016 | |
BCSCAN_ENCODE | Optional | List | N/A | N/A |
|
Encodes barcode scan. |
BCSCAN_MESSAGE | Optional | Character | 30 | This field is sent to customize the message on UI display. This field is applicable, if BCCFG_DISPLAY_UI is set to 1 (enable) and then the message will be displayed on the UI screen. Example: <BCSCAN_MESSAGE>SCAN HERE</BCSCAN> . If this field is sent without any message (empty value), then the UI screen will display the default message as “Please Scan Barcode”. This is applicable to e280s, M440 and M424 devices. |
||
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: 2 | |
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>BARCODEASYNC_START</COMMAND>
<POS_IP>192.168.31.100</POS_IP>
<POS_PORT>5016</POS_PORT>
<BCSCAN_ENCODE>2</BCSCAN_ENCODE>
</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. |
These fields will be sent to POS port via unsolicited response upon scanning, not via primary port
Field | Type | Value | Description |
---|---|---|---|
BARCODE_DATA | Character | Base64 encoded. Example: AAgEATY4OTU0NDA4MTY2MQ== | |
BARCODE_CODEID | Character | Returns unencoded. Example: 01 | |
BARCODE_AIMID | Character | Returns unencoded. Example: 04 | |
BARCODE_SYMBOLOGY | Character | Returns encoded. Returns only if BCSCAN_ENCODE = 0. Example: 0008 | |
COUNTER | Numeric | Echoes counter sent in the request. Example: 2 |
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>
</RESPONSE>
Following is an example of Unsolicited Scan Notification Response
<RESPONSE>
<RESPONSE_TEXT>Barcode data size 29</RESPONSE_TEXT>
<RESULT>OK</RESULT>
<RESULT_CODE>-1</RESULT_CODE>
<TERMINATION_STATUS>SUCCESS</TERMINATION_STATUS>
<BARCODE_DATA>QR Code is a matrix symbology</BARCODE_DATA>
<BARCODE_CODEID>16</BARCODE_CODEID>
<BARCODE_AIMID>0D</BARCODE_AIMID>
<BARCODE_SYMBOLOGY>0018</BARCODE_SYMBOLOGY>
</RESPONSE>
Rate this article: