What is a PoS (Point of Sale) machine – and how to test for best performance

When we use credit or debit cards to make payments in retail shops, this process is carried out using by using a PoS (or Point of Sale) machine.

Testing PoS Machines

The most sophisticated PoS machine is a desktop computer that is connected to a printer, debit/credit card reader, barcode scanner and a cash drawer. The whole system should be successfully integrated with the store server. Let’s find out more.

How does a PoS machine works?

In retail shops where PoS is used, a barcode tag with sales details (price, stock code etc) will be attached to the merchandise. At the sales counter, these merchandise details will be scanned using a barcode scanner. The desktop computer will collect, tally these sales details and will prompt for the payment. Payment will then be made using a card reader, which will connect to the bank, validate the card details and on authorization from the bank, payment will be approved for the sale amount. Once payment has been completed, it will be marked against the sold merchandise, stock inventory will be decremented for the sold items and the sale will be recorded in the store ledger.

How to test a PoS machine?

A common question that a tester will come across is – “How do I test this?” Yes, testing a PoS machine can be challenging as it deals with several integrated systems, so ensuring a flawless interoperability is a wee bit hard. Devising a comprehensive test plan is crucial to eventually determine how successful you assess the quality of a PoS machine to be. Some common test scenarios are explained below:

Cashier action

The starting point is to test the cashier’s activities. The items purchased by the customer should be tallied and properly entered into the system. These are mainly:

  • Test the entry of items purchased is correct
  • Test the total applied is correct
  • Test discount coupons/cards are valid
  • Test if petty cash management works
  • Test if totals and closing match
  • Test compatibility of devices used such as barcode scanner and card reader.

Sale and Payment Process

This is the vital part of testing. There can be so many test cases for this category, but a few are:

  • Test if the price of the items purchased is correct
  • Test if the quantity of the item purchased reflects in total value
  • Test if the merchandise and its price can be entered manually in case barcode data is corrupt.
  • Test if customer information is recorded for a new customer and a loyalty plan is created for him if desired.
  • Test if the discounts are applied in the total value.
  • Test if appropriate quantity from stock inventory gets decremented for the items purchased.
  • Test if loyalty points are applied for a returning customer.
  • Test is sales are possible using debit/credit/prepaid/gift card/petty cash
  • Test if payment using different types of cards such as magnetic, NFC, Chip and PIN is possible.
  • Test payment of different card vendors such as Visa, Mastercard etc.
  • Test for Null transaction.
  • Test for the validity of the card used.
  • Test the transaction receipts printed for approved as well as declined transactions.
  • Test the payment process for wired as well as wireless connectivity. Wireless connectivity includes Wifi as well as 3G/4G connections.
  • Test stock inventory if entering wrong inventory item.
  • Test the validity of coupons/promotions.
  • Test transaction of negative values.
  • Test if customer’s purchase history is recorded.

Return and Exchanges

In good customer-retail shop relations, the return and exchange of items are very important. This too must be thoroughly tested.

  • Test the exchange of items for different payment methods such as cash/card/wallet etc.
  • Test if the historical data can be retrieved from the store server using the customer name, mobile number, customer ID, invoice number etc.
  • Test if the sold items are sent back to inventory and the store quantity for the item incremented.
  • Test the return of the items with and without receipt
  • Test if cashback is possible via the payment method used for the purchase, as well as virtual money/gift card that the user can re-use for purchase.
  • Test the system entering wrong invoice/customer name/mobile number
  • Test the return of discounted items

Security and Compliance

Security and compliance of the devices used in PoS are also important factors as all of these deal with customers’ confidential information such as address, mobile number, card details etc. So a flawless, secure system will be considered the best PoS available in the market.

So you may start this test plan by testing:

  • The PoS system meets globally accepted security standards such as PCI compliance.
  • Different access levels of the system. For example, the sales manager should have different permissions to the systems as compared to a sales executive.
  • Put the system under regular vulnerability checks.

Performance

Last but not the least, who would want to wait long hours at the sales counter just to get his bill paid? So make sure you test the performance aspects inside and out, mainly:

  • Check the system’s response times for every request sent.

Challenges with PoS testing

Since so many peripherals are integrated together we need to keep in-house PoS testing labs. Maintenance of such labs is expensive.

  • Configuring and reconfiguring the whole system can be complex and time consuming.
  • To keep the system PCI compliant can also be expensive.
  • Technology changes everyday. Individual components need to be upgraded frequently which is another issue to face.

Key points

Please keep in mind the below points as you plan to test a PoS machine:

  • Correctness of data – In retail “the customer is the king”, so accept his or her data, validate and securely store it in the server.
  • Using PCI compliant machines – Electronic payment is the key aspect of PoS so using globally accepted standards such as PCI compliance is crucial.
  • Performance – A slow and unresponsive PoS system will make the business less efficient. So make sure the performance is of the highest caliber.
  • Security – Every program that works over the internet is susceptible to cyber attacks. So running penetration tests every now and then would make the system less prone to these attacks.
  • Resilience – Failures are unacceptable in retail, so test the system on all negative scenarios and under extreme conditions to ensure that the system won’t fail against any unacceptable condition.