Friday, March 27, 2015

BlueBox ePOS Integration with PaymentExpress PDQ/Chip-n-pin

BlueBox ePOS integrates with 3rd party PDQ/Chip-n-pin card payment solutions on a customer-requirement basis. However, we have standard plugins developed for Verifone and PaymentExpress. In this article we will run through installation and management of the PaymentExpress solution:

To enable taking card payments with PaymentExpress your till/s must have the setting for 'ccard merchantid' and 'ccard terminalid' set to 'paymentexpress'. Remember that this setting is cached when you load up BlueBox ePOS, so if you change it you will need to re-load the till-data in your current open session to get the setting loaded on the till.

You will also need to have the PaymentExpress terminal plugged in via USB into your till PC, and the PaymentExpress PC-client software installed and running as a service/tray application on the till PC.

Finally, you will need the BlueBox Websocket application installed on the till PC. This provides a vital bridge between the browser (BlueBox ePOS) and the PaymentExpress PC-client software and PDQ terminal. This can be donwloaded here and needs to be extracted into the folder c://bluebox_websocket_server (important). Once extracted into this folder follow the readme.txt file instructions to install it as a service on the till PC.

Once the above items are in place you will be ready to test out your integration with the PaymentExpress terminal.

To see whether BlueBox ePOS has detected the PaymentExpress setting as 'enabled' you can go to 'extra' > 'system' and, if enabled, a green 'Card Terminal' button will be displayed as follows:


To test the WebSocket connection click on 'Card Terminal' and you will see the card-payment interface/widget:


If the widget is gray/disabled as shown above, click on the 'Connect' button to send an 'open' message to the PaymentExpress client sofware.




If you don't get a response (spinner just spins) then your BlueBox Websocket is probably not running or has stopped. To check this you can view the Services listing on your PC to see if it is listed as 'BlueBox_Websocket_Server' - if you don't see it there then you'll need to go through the troubleshooting steps in the readme.txt file found in the folder for the websocket. If you do see it, and you still cannot connect to the PaymentExpress client software, you may need to restart/remove and re-install it.

Once you get a 'connected' message from your widget you will know that the connection is made and the two systems are talking to eachother.


Card payments and refunds are handled once you have an active sale loaded. You can capture a card payment by simply clicking on the 'Card' button while a sale is loaded, or by clicking on the Payment button and entering an amount to pay by card.

Similarly, with refunds, you simply load a 'refund sale' into the till and then click on 'Card' or 'Payment' (as described above) to make the refund onto the card.



Tuesday, March 24, 2015

Offline Data Management in BlueBox ePOS

BlueBox ePOS stores data offline to speed up sale processing and allow operating in non-connected times of the day.

Here is an overview of the process:
  • BlueBox ePOS is a web-page which uses Javascript and an offline flat-file database to process sales without interacting with the server.
  • When the ePOS page is loaded by FireFox, it checks for an offline flat-file database and if not found, tries to create a blank database.
  • It then connects with the server (through a series of page refreshes) and establishes which till it is representing and which till-session it is currently running.
  • If it does not find an open session it will challenge the user for an opening float and open up a new session by redirecting back to the server.
  • Once a session is found and a blank offline database is created it will then start downloading the category and product info from the server and storing this offline. This is done in the background in 'pages' of 500 products and can be seen in the bottom right hand corner of the screen. (An optional optimisation setting restricts the number of products downloaded to only include the commonly sold items).
  • If, while the product catalogue is downloading, a product is scanned or requested which has not yet been downloaded, the system will fall-back to searching the server for the sku_code. This also happens during the day if a sku_code is requested which cannot be found offline, perhaps because it did not qualify as a commonly sold item etc.
  • As sales are made they are stored offline first, and then immeditely added to the sync-to-server queue. The queue is 'pushed' after each sale and will attempt to send the oldest transactions first. A number indicating the number of un-synced transactions is displayed just above the num/key-pad on the screen.
  • If an error occurs while syncing the queue a small red counter will display just above the num/key-pad on the screen. The queue should automatically keep itself syncronised, but if for some reason ( ie data corruption of a sale etc) it gets blocked then there is a manual 'force sync' setting in the 'Sales History' section of the menu.

Tuesday, March 17, 2015

New Bluebox Tag 'item_data'

BlueBox ERP has a new tag for template development:

<!--:item_data:lookup_table|field_to_show:-->

for example

<!--:item_data:bb_inventory_stock_minimum_levels|minimum_levelNUM:-->

It can be used to call any lookup table where the key identifier fields are:

itemISbb_item_dataID
option1ISbb_item_data_options1ID
option2ISbb_item_data_options2ID
option3ISbb_item_data_options3ID

... so any table which stores item_data related information.

Monday, March 16, 2015

Generating Barcodes in BlueBox (Barcode Tag Generator)

BlueBox ERP uses various libraries to generate barcodes. We have now added a useful barcode 'tag generator' into the system to assist in choosing the optimal settings for a specific barcode application.

To find the tag generator simply surf to /?bb_barcode in your BlueBox System:


Replenishment Automation in BlueBox

BlueBox ERP has had a Replenishment Module for many years, which effectively acts as a MRP tool with min/max levels and purchase order generation.

We have now added an automation function to this module which can be set to automatically order the required items from a specific supplier on a daily/weekly/monthly basis.

This new feature effectively runs the Replenishment Report and automatically orders any items which are deemed to be required at that time. It generates a Purchase Order and this can be set to be emailed to the supplier in PDF format and also with an attached CSV output file of the items required in an importable format for the supplier.

Linking Items to the Supplier:

This function relies on the items in the system being attached directly to the supplier, either via the 'default supplier' field in the Item Data entry, or via the 'Associated Item Category' in the Supplier User File.


Setting Up Automation Entries:

Automation entries are added by running the filter for a 'Linked Supplier' in the Replenishment Report and switching 'Automate PO for this Supplier' on.

You have some options at this stage:
  • If you 'name' the automation it means that you can 'edit' it by simply using the same name in future and over-riding the saved automation with the same name. If you leave the name option blank the Automations is named as per the Supplier Name - so any future 'blank named' automations for this supplier will over-ride this one.
  • Automations will run whenever loaded, but only once per day, and optionally only on specific days of the week (ie Mon,Wed,Fri) by entering these into the specified field.
  • You can choose to have an email sent to the Supplier by selecting 'send PDF' or 'send CSV', if neither of these is selected no email will be sent when the PO is created.
  • The email that is generated will use the 'company procurement' details in the Supplier User File by default (ie email and name) and if these are not entered for the specific Ssupplier then the user-email and first/last names are used. This can be optionally over-ridden by entering an email and/or BCC email (comma sep. for more than one) in the fields provided.
  • Note: the CSV that is produced embed the Supplier code for client company. This code is stored in the 'Cgic' field of the Supplier User Data.
Viewing Automation Entries:

Once you have added an Automation Entry you can view it by clicking on 'Automation' in the top-menu of the Replenishment Report.


Entries are listed showing their last run-time:


You can run entries manually by clicking on the button provided or add the script to your server's cronjob queue as specified.

If you click on an Automation Script to view it you will be able to see the history of logged run-scripts that have been stored against it: