POSOpenDay

Open the day (or cashier's shift) in POS.

To open the day, cashier needs to count the amount of cash at the register.

Day must later be closed with POSCloseDay. Both the opening and closing (and the amount of cash counted at opening time and closing time) will be recorded on the Z Report.

A log of POS openings and closings can be retrieved with getDayClosings.

Input parameters

Parameter name Description Possible value Required
pointOfSaleID Point of sale ID integer yes
employeeID Employee opening the day. If omitted, Erply assumes day was opened by the user who sent the API call. integer
openedSum Total amount of cash in register at opening time number yes
openedUnixTime Opening timestamp.

NB! If the record already exists (if there is a day opening at the same register, with the same timestamp), InventoryAPI just updates it.
integer Unix timestamp. yes
queryOpenDay Check feature, if set to 1 no any changes will be applied, used to check if the day is opened. If set to 1 parameters "openedUnixTime" and "openedSum" are not required, and will be even ignored. Integer (1 or 0)
currencyCode

Specify the currency in which you want to open the day in the register.

Note: by default, this field should not be used. In a default configuration, Erply allows to count the cash in the register only in the default currency. The cashier should just set aside any cash received in foreign currencies, and remove it from the register at the end of the day. From back office, it is possible to manually print a Z Report that lists transactions made in a different currency, but the counted amount cannot be recorded in POS, neither when opening nor when closing the day.

Therefore, in the default setup, it is not possible to use the "currencyCode" field. API will return error code 1028 if you attempt to set it.

However, customer support can enable an extra module, "POS multicurrency". With this extra module, it becomes possible to count other currencies and record the counts.

In that configuration, a separate "POSOpenDay" call must be sent for each currency. If the shop accepts EUR, USD and JPY, three "POSOpenDay" calls must be made in the morning and three corresponding "POSCloseDay" calls in the evening, to store the end-of-day counts.

At the end of the day, it is possible to print three Z Reports, one for each currency. Each report will list the transactions, amount of cash in the beginning and at the end of the day, and overage/shortage.

Accepted value: for example "EUR" or "USD". The currency must be defined on your Erply account, in the "Currencies" module.

String (3)

Response

Field name Type Description
pointOfSaleID integer Point of sale ID
openedUnixTime integer Unix timestamp. The time when POS was opened.
dayID integer ID of the POS day (or in other words, the cashier's shift).

NB! To later close the day with API call POSCloseDay, you need to provide EITHER dayID or openedUnixTime, so make sure to store one of these parameters.
warningDayAlreadyOpen Boolean If the exact same day opening — same register, same timestamp — has already been recorded, InventoryAPI sets this flag to true. This is for information only.

USAGE NOTE: While POS records are being synchronised, it may temporarily happen that two days of the same register are concurrently open. This is not an error. InventoryAPI requires that each close-day event must include the original open-day timestamp as well, so matching up day openings and closings is not a problem. In that case, no flags are raised.