Managing Cash Sales of Items in a Point of Sale System Integrated to M3

This document explains what happens in the point of sale (POS) system and in M3 when a customer wants to buy an item and pay in cash.


The item is sold and a cash payment is entered into the point of sale system. Sales information is uploaded to M3 via a point of sale interface and the stock level is updated directly. The general ledger and sales statistics are usually updated on a later occasion.

The following files are updated:

Before you start

Follow these steps

  1. The customer picks up the item in the shop

    The customer picks up the required item in the shop and takes it to a point of sale.

  2. Enter/Scan the item in the point of sale system

    The item is entered and/or scanned in the point of sale system and possible prices and discounts are displayed. General price lists from the point of sale system are used.

  3. Identify the customer

    The customer is checked and identified to verify whether the customer should have any additional discounts or customer-specific prices. Customer-specific prices for an item are retrieved by using 'Price and Discount Inquiry Interface' (OIS320MI) and the 'GetPriceLine' (get item price for an order line) transaction. Note that only line discounts can be used.

    This activity is optional and is used only for known customers.

  4. Enter payment and get a receipt

    A payment is entered. It is possible to have many different payment methods per receipt; that is, multiple 1990 transactions (payments). For example, a payment can be made in cash, with a check or by credit card. Furthermore, if the customer receives money back or the amount is rounded off according to standard practices, then a 1990 transaction is created.

    Receipt No. 123456

    Item No.




    Item A 1 Pce 99.95
        Subtotal 99.95
        To pay 100.00
        Master Card 500.00
        Change back 400.00
    VAT 25%   VAT 19.99
  5. Upload sales information to M3 and update stock levels

    After the payment is entered, it is uploaded to M3 through the point of sale application programming interface 'POS Sales Tickets Interface' (OPS270MI). Two different transaction types are used:

    • Transaction type 1000=Sale of items
    • Transaction type 1990=Payments.

    The stock level is updated directly and can be displayed in both 'Balance Identity. Open Toolbox (MWS060)' and 'Stock Transaction. Display History' (MWS070).

    The sales ticket input file OPSALE is updated as described in the table:

    Transaction type Item No. Quantity U/M Payment method VAT Amount
    1000 Item A 1 Pcs   19.99 79.96
    1990       Master Card (MC)   500.00
    1990       Cash (CSH)   –400.00
    1990       Rounding off (RND   –0.05
    Note: Transaction type 1990 in the OPSALE file corresponds to accounting type 101 in the general ledger, and transaction type 1000 corresponds to accounting type 120.
  6. Update general ledger and sales statistics

    Sales statistics (OSBSTD) and general ledger (FGLEDG) are updated in batch through 'POS Sales Ticket. Update' (OPS280). The 'Sales statistics interface' and 'Financial interface' parameters in (OPS280) must be selected before the batch is run. Note that you should also select the 'Inventory accounting interface' parameter. This means that the stock is updated by sales tickets that have been validated in 'POS Sales Ticket Toolbox' (OPS275) or 'POS Sales Ticket. Transfer' (OPS270).

    For the general ledger, the following accounting events and types are created:

    Accounting event Accounting type Amount Bank operation
    OP20 101 (Cash payment) 500.00 47 (Master Card)
    OP20 101 (Cash payment) –400.00 45 (Cash)
    OP20 101 (Cash payment) –00.05 46 (Rounding off)
    OP20 111 (VAT payable) –19.99  
    OP20 120 (Revenues) –79.96  
    Note: The bank operation is retrieved from the selected payment method.
Related topics