Managing Credit Sales of Items and Immediate Invoicing to Print Invoice in Shop

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

Outcome

The item is sold and the credit sale transaction is entered in the point of sale system. Sales information is uploaded to M3 via the POS sales tickets interface (OPS270MI). A customer order is created via the customer order interface (OIS100MI), and the stock level and sales statistics are updated. The customer order is immediately invoiced and the invoice is printed and given to the customer. The general ledger is updated on a later occasion when you process invoices.

The following files are updated:

  • Sales ticket input-OPSALE
  • Stock balance-MITTRA, MITBAL and MITSTA
  • Sales statistics-OSBSTD
  • General ledger-FGLEDG

Before you start

  • At the shop, it has been decided that stock levels should be updated immediately after sales information is uploaded and validated into M3. The update is started from the external POS system when it communicates with M3 through the sales tickets application programming interface (OPS270MI). The 'Stock update' field must be selected and the 'BchPrcRound' (Batch Process Round Number) API transaction must be used to initiate the process in M3.
  • The POS system controls the upload frequency of sales information to M3. The upload frequency is usually determined either by a constant number of sales tickets to be sent each time or by a time interval.
  • If customer-specific prices are required at the point of sale, then the POS system must be interfaced with the application programming interface Price and discount inquiry interface (OIS320MI) where the 'GetPriceLine' (Get item price for an order line) transaction must be used.
  • The 'Separate accounting' parameter in 'POS Settings' (OPS700) must be selected if you want the discounts to be accounted for separately in the general ledger (FGLEDG). If the 'Separate accounting' parameter is selected, then sales are accounted as gross sales.

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 into the point of sale system

    The item is entered and/or scanned into 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 identified at the point of sale and a credit check is done. A check is also done to verify whether the customer should have any additional discounts or customer-specific prices. The customer receives a delivery note, including the 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 used only for known customers.

  4. Upload sales information to M3 and create a customer order and an invoice

    If a sale transaction to be invoiced to the customer is entered in the point of sales system, it is uploaded to M3 through the customer order application programming interface 'Customer order interface' (OIS100MI) and a customer order is created through the batch order entry 'Batch Order. Open' (OIS275).

    Transaction types 1500 – 1520 are user-defined transaction types and can be used to find the sale transaction in the OPSALE file. These transaction types are not further processed beyond the OPSALE file.

  5. Post-process invoices and update general ledger

    The invoicing is completed except for updating the general ledger. The general ledger is updated through post-processing of invoices in 'CO Invoice. Post-Process' (OIS196). A POS transaction is created in order to maintain an unbroken sales tickets number series.

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

    Accounting event Accounting type Amount Bank operation
    OI20 101 (Cash Payment) 100.00 48 (Credit)
    OI20 101 (Cash Payment) –00.05 46 (Rounding off)
    OI20 111 (Vat Payable) –19.99
    OI20 120 (Revenues) –79.96
    Note: A bank operation is retrieved from the selected payment method.