The first page that opens up when you log in to the POS is the basket page, the bread and butter of POS.
The basket is your fallback for all POS operations. POS' main purpose is sales, and the basket always represents your current order. Here is an example with some items added to the basket:
You can influence the way order lines are displayed in POS and other frontends in a variety of ways:
|Show the TotalAmount on product card.|
|Sum up all the orderlines within a bundle and use this on the parent bundle line.|
|Sum all childlines on the parentline when the parentline has a unitprice of 0.|
|Return the OriginalPrice when available.|
|Return the UnitPrice.|
|Use the net amounts for the TotalAmount values.|
|Show free discount products as 0, with an original price.|
The right pane in the basket shows your order summary. The top part shows customer information, the bottom part shows your order quantity and amounts.
If no customer has been added, a button to do so will be displayed. This button navigates you to the Customers menu, where you can search for existing customers, or create new customers and add them to your active basket. CFD can be used to ease the process of conducting a customer search.
Finally, the right pane contains a big blue button which navigates you to the Checkout when you're ready.
The top of the screen also holds several options;
This button displays a QR-code that can be scanned with our companion app to transfer your order to that device.
Normally, return orders are created based on the original sales order from which the customer would like to return certain items. If there is no record of the original order however, return orders can be created in the basket and then transformed into a return order using this button. When doing so, you need to specify a remark and the stock label to which the items should be returned.
Note that a payment flow and a refund flow are largely the same. Depending on your settings however, not every refund can be performed - or at least not by every user. If you'd like to know more about this, or refunds in general, see: Refund flows.
You can also mark items for return individually to create a split order of a return and a purchase of a product. To do that, click on the product you want to mark for return and tap Return.
To apply manual discounts to your order, use the discount button. This will only display discounts that can be applied to the entire order. Orderline discounts are only displayed when adding a discount to a specific line.
Line action type
On POS, any order lines that are added to the basket are added as Carry out by default. If no stock is available in your OU, lines will be added as Order. The Line action type button in the top bar can be used to change the line action types for the entire order.
If order type deliver is selected, and you wish to be prompted with a list of shipping methods to choose from, then the following setting is needed:
App:Checkout:AllowChangingShippingMethod set to true. This works if you have more than one shipping method configured on the current organization unit.
Using this button, orders can be paused. When pausing an order, you can choose to print a receipt for the customer. This receipt is based on the SuspendedOrder Stencil template.
Use this button to clear your basket. Baskets will not be deleted, they can always be found back under Orders.
You can modify products in your baskets by clicking on them. Here you can change the quantity of the product and much more. To modify the quantity, just use the '+' and '-*' icons. We cover a few here:
Using this menu you can create printed labels of the products you have in your basket. Clicking on the Print Label button will allow you to adjust the print location and needed quantity.
This option can help you quickly adjust the price of products in your basket. This for example can be helpful if a product is damaged, or has some wear from being used as an exhibit. To add the modified price just click on the option and modify it. To remove it, you can repeat the steps and tap on Remove correction.
Edit product bundles
If you have a product bundle in your basket, you can edit it by clicking on the bundle, and hitting the Configure bundle button again.
Edit customer address
If you added a customer to the order, you can change their address in the basket. To edit the customer address, you can use the 'Pencil' icon next to the address.
Pressing the checkout button moves you to checkout. This doesn't really change anything about your basket, it does swap out your right sidepane for the checkout sidepane.
The checkout sidepane shows your available order options and payment methods.
Order options shows a collection of tiles holding certain functionalities to modify your order. In our example, we have a very limited set of these tiles. What tiles are displayed depends on your configuration.
Fiscal ID tile
The fiscal ID tile is used to check whether a Fiscal ID / VAT number is valid or not during a checkout flow. To use the
ValidateFiscalID service, you will need to add an App setting called
App:Order:ShowFiscalID with a value true. This will present the Fiscal ID tile seen in the above screenshot under Order options.
If no customer is attached to an order, Fiscal ID validation is performed based on the CountryID of the logged in organization unit. If a customer is attached to an order, the validation is done on the CountryID of the attached customer's billing address i.e. overwriting the organization unit's CountryID if different. Worth mentioning, the shipping address has no impact on the CountryID in this regard.
Countries supported for Fiscal ID validation are:
- Great Britain
- All European countries using the VAT Information Exchange System (VIES).
The list of supported countries is updated on a regular basis.
Sold by tile
Normally each order has the SoldBy property filled with the logged-in user that's completing the sales transaction. You can however override this by means of the Sold by tile, which allows you to search and add the name of the employee who put in most of the work.
Type true in the app setting
App:AllowSoldByOverride to make the tile appear under Order options.
The flow is quite easy, and an employee name can be specified on orderline level.
The list of employees you get here will be based on your employee user setup: which users are tagged to this organization unit.
This option will show up at checkout if an order requires a signature. To enable, you must set the settings
App:Checkout:ShowSignOrder to true. Tapping the button for signature will show the customer a form on the CFD, which the customer can then sign. Once that is done, the signature will be returned to POS.
A signature can only be set once. Once it's set, tapping the Signature tile again will only display the existing signature.
When checking out, we first need to select our desired payment method. When having a payment method selected, we can choose what station to use, our default station is preselected. Additionally, we can choose the amount we want to pay using this payment method. By default, this is set to the full open amount.
By default, the total order amount is pre-filled to match the open balance on the order. This can be adjusted however, to match any amount received from the customer or to make use of partial cash payments.
When entering an amount which is higher than the order amount, you will see a modal with the recommended change to return to the customer. This will display possible denominations if
App:Checkout:DisplayReturnDenominations is true
Print or mail receipt
After payment, we are prompted with a menu where we can choose what documents we want to print or mail to the customer.
Print receipt output type
There are two settings here which you can use to influence the default/preferred output type if Print receipt is the chosen option:
Auditing:PreferReceiptPrinting: Setting its value to true (default value is false) would mean a print output of type receipt.
Auditing:PreferPaperPrinting: Setting its value to true (default value is false) would mean a print output of type paper.
This option will show up at checkout if an order requires a signature. To work, you must set the settings
true (default is
false). Taping the button for signature will show the customer a form on the CFD, which the customer can then sign.
Once that is done, the signature will be returned to POS.
With a setting called
App:Customer:AreYouSureYouWantToBeAddingThisCustomer and a value
true (default is
false), you can control whether or not users are prompted with a request to confirm customer being added and their respective required details. The flow will then be determined based on the users choice (Yes: continue as usual and customer is added to the order. No: customer is not added and the flow returns to the preceding page for action).
Here is how this would look like: