Cutting Box X and Z point of sale system (php mysql)

0

Previously my cash flow systems ( Revenues - Expenses ) handled it daily, but the problem now is to accommodate a system for shift tellers and the establishment works 24 hours a day. Turn day (8am - 8pm). Night shift (8pm - 8am). I have researched a lot about cuts X and Cortes Z and I go to this community to present my problem perhaps someone went through the same.

  • when I cut X , I take the sales since I opened the box and I update a field Session_box with the one of the shift.
  • I keep in the table session_session (id, opening date, closing date, opening amount, closing amount, shift, difference, cashier, box).

Doubts

  • What document should the system issue when the administrator comes and the money is taken from the box.
  • If the cash cut Z is daily and add all the X cuts, at what time this is done, if the administrator controls the cash only 2 times a day 8am and 8pm, then it no longer returns to the establishment and Only the workers are left. I do not think they are authorized to make this cut.
  • Which fields could you add to the session_session table that controls the turns and if in this same table you could implement the cut Z .
  • asked by normalito1212 30.11.2017 в 06:33
    source

    2 answers

    0

    The X cut is a partial cut of the day, this is done when there is a shift change. While the Z cut is a cut of the day . Let's give an example:

      

    The company employs 4 employees, two in the shift from 8:00 a.m. to 8:00 p.m. (morning shift) and the others from 8:00 p.m. to 8:00 p.m. These employees are obviously not authorized to make the cuts, because they can "cheat" (so to speak) when making the cuts. If one day there is a shortage of money in the cashier and that employee reports the cut as settled, he would throw the next shift cashier into trouble. Now we must remember that in a company or business the box can never be empty, for reasons of change available for the next shift and all that (Well in most cases, it depends a lot on the company's turn), then at At the moment of making a cut as well as verifying the difference between the balance that should be in the box and the one that actually exists, you can also put a field with the initial amount with the that the box started.

    From this I could help you with these points:

    • As the administrator is responsible for the establishment's money, only he can make a cashier's cut so leave that option only for a user account with those privileges, and ask for the password every time is going to make a cut.
    • If there are two shifts per day, only one X cut and one Z cut will be made, the first (X cut) a will be made at 8:00 PM and the cut of the day (Z cut) at 8:00 the next day. This is because, for reasons of date and time, most sales are made between the day shift and the first part of the night shift, and in case of any claim or refund, there will be the possibility of modifying it at the latest. day after before 8:00.
    • I show you a suggestion of how your table might look:

    Turn table

    idturno int(4)
    idcajero int(3)
    numcaja int(2)
    fecha date
    turno varchar(5)
    montoinicial int(5)
    montofinal int(5)
    ventasturno int(5)
    diferencia int(5)
    
    • idturno: is a unique identifier, the most basic. You could occupy the identifier as the date of the shift, however when there are two There may be confusion.
    • idcajero: the person who was in charge of the money in that shift, therefore the person responsible for missing or leaving money.
    • numcaja: (optional) This field would be used if there is more than one cashier in the establishment.
    • date: date of work, as I explained above, the date would begin one day at 8:00, covering the day shift (until the 20:00) and ending until the next day at 8:00 including the night shift, this due to sales.
    • shift: shift you are working on, it can only be day or ** night
    • Initial amount: Amount the previous cashier left in the box
    • montofinal: final amount with which the shift ends, of that amount you have to discount the initial amount and the amount that will leave in the box in this way we get the following field the turn sales
    • ventasturno: total sales of shift.
    • difference: amount that there is difference between the sales registered in the system and what is in the box. It can be positive or negative.

    Fields with amounts are defined with int(5) , but must be adjusted according to the sales of the establishment. In case you wonder why I got so worked up, it's because I worked in a pharmacy for 6 years, so I paid for my career: P I hope you serve

        
    answered by 30.11.2017 в 07:29
    0
  • What document should the system issue when the administrator comes and takes the money from the cashier?

    • This is something that should be clarified in the requirements of the system with the final company. Usually in the systems of this type in which I have worked, it is the cashier who must open a box with its specific user and it is the cashier who closes the box with its user, usually in the closing a document or ticket is printed with a count, start amount, total (start amount + sales), uncheck if there were, start and end date, cashier data, money left in cash, etc ... this document is delivered signed with the money to the administrator or manager for your collateral and accounting. When there is a box closure, the box should be empty.
  • If the cut of box Z is daily and it adds all the X cuts, at what time this is done, if the administrator controls the box only twice a day at 8am and 8pm, then it does not return by the establishment and only the workers are left. I do not think they are authorized to make this cut.

    • I do not think there should be a general cashier cut (Z cut) that groups the boxes, because if the system is for sale 24h, it does not matter what time it is made that there could be boxes with sales in different cuts Z and for accounting purposes this is unnecessary. For accounting purposes, the sales, to which headquarters it belongs and the date (and time), the amount, etc ... so any system of this type must provide this type of data and it can filter between dates, locations, employee of the sale, etc ... but I see no need or sense to create a box of boxes.
  • What fields could I add to the session_session table that controls the turns and if in this same table I could implement the Z cut?

    • This is quite subjective and will depend on the requirements of the system. But at first sight the fields that the table of boxes should have could be: idCaja, idSede, idUserApertura, dateOpen, amountHome, idUserCierre, dateClose, amountClose.
  • answered by 30.11.2017 в 14:18