Managing Cash Sales of Items When Paying with Gift Certificates

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 with a gift certificate.

Outcome

A cash payment is entered in the point of sale system and, if money remains on the gift certificate, it is repaid to the customer as a credit note or in cash. 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:

  • Sales ticket input file-OPSALE
  • Stock balance files-MITTRA, MITBAL and MITSTA
  • Sales statistics file-OSBSTD
  • General ledger file-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, 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.
  • An accounting exception must be defined for transaction type 1100 (gift certificate) when you use accounting event OP20 and accounting type 120certificate. Instead of accounting the payment to a sales account (such as 3010), it must be accounted to a liability account (such as 2420). A liability account is a balance account and it affects the balance sheet. A sales account is a profit/loss account and it affects the statement of income. In addition, the gift certificate's reference ID (OPREFE) and expiration date (OPDUDT) can be selected as values in the accounting string.
  • An accounting exception must be defined for the bank operation code (CTBOPC) used when a gift certificate or a credit note is used as a payment method, and when you use accounting event OP20 and transaction type 101 (cash payment). Instead of accounting the payment to a cash account (1910), it must be accounted to a liability account (2420). The gift certificate's reference ID (OPREFE) and expiration date (OPDUDT) can be selected as values in the accounting string.

Follow these steps

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

  2. 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. The customer is identified and checked 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 used only for known customers.

  4. The payments are entered together with gift certificate information, such as the reference ID and the expiration date. If a sum of money still remains on the gift certificate, then the customer is repaid in the form of a credit note or cash. A 1990 transaction is created.

    Note: This only applies when the customer receives change when paying with a gift certificate.
    Receipt No. 123456

    Item No.

    Quantity

    U/M

    Amount

    Item A 1 Pce 99.95
    Subtotal 99.95
    To pay 100.00
    Gift certificate 500.00
    Change back 400.00
    VAT 25% VAT 19.99
  5. 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 gift certificate's reference ID and expiration date are added to transaction type 1990. A 1990 transaction is also created for a credit note or repaid cash. The gift certificate's ID number is updated in the Reference field in OPSALE. (See the table that follows.)

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

    The sales ticket input file OPSALE is updated as described below:

    Trans-action type Item No. Qty U/M Ref. Expiry date Payment method VAT Amount
    1000 Item A 1 Pcs 19.99 79.96
    1990 1002 20131231 Gift Cert. (GC) 500.00
    1990 Cash (CSH) –400.00
    1990 Rounding off (RND) –0.05
  6. 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 Ref. Expiry date Bank operation
    OP20 101 (cash payment) 500.00 1002 20131231 48 (Gift certificate)
    OP20 101 (cash payment) –400.00 45 (Cash)
    OP20 101 (cash payment) –00.05 46 (Rounding off)
    OP20 111 (VAT) –19.99
    OP20 120 (revenue) –79.96

    The bank operation is retrieved from the selected payment method.

    The bank operation code is used to determine the account used in the general ledger. The reference ID and expiration date from the gift certificate that was used for the payment can be used in the accounting string. The gift certificate's reference ID is balanced against the accounted liability, which was created in account 2420 when the gift certificate was bought. Refer to Managing Cash Sales of Gift Certificates for more information.

    Accounting string:

    Accounting dimension 1 2420 (Account)
    Accounting dimension 2 1002 (Gift certificate number)
    Accounting dimension 3 20131231 (Expiration date)
    Amount 500.00