EZTime and Shopify POS: store hours and online orders in one picture

A store that sells online and in person has two sets of work. Time tracking shows which one is eating the hours.

In shortEZTime can connect with Shopify POS through the EZTime API (Premium plan) or a custom integration built by EZTime’s development team so in-store sales and staff hours can be compared. The extra step for Shopify stores is deciding how to treat online orders that are packed or picked up in the store.

In-store, online and pickup

Shopify records sales from the point of sale and from the online store in one place. Staff hours do not divide so neatly. The person at the till sells in person, and the person in the back packs online orders and prepares pickups. Give them separate task codes in EZTime. Then the question “what does online really cost us in labor” has a number as an answer.

The data points, direction and timing for your account are confirmed with the EZTime team during setup, so use this page to prepare your questions rather than as a technical specification.

A worked example: packing time

A homeware store, with made-up numbers, shipped 310 online orders in a month.

Online fulfilment, one month, made up
Item Value
Orders shipped 310
Hours coded to packing 62
Minutes per order 12
Online net sales $18,600
Labor cost at $17 per hour $1,054
Labor as percent of online sales 5.7%

The same arithmetic with shipping labels and packaging added gives the true cost of an online order. Without a task code for packing, the 62 hours disappear into a general store payroll.

Staff at the register

Shopify POS uses staff accounts and PINs to record who made a sale. Those permissions are not time records. A person can be logged into the register while on a break, or can work an hour without ever touching it. Use the POS data for sales by person if you wish, but use EZTime as the record of hours.

Pop-ups and markets

If you sell at events, treat each event as a location. Record the hours of set up and breakdown, and the travel time between the store and the venue. Many pop-ups look profitable on sales alone and lose money after the extra hours are counted.

Questions to settle before you start

The full cost of one online order

Labor is only one part of what an online order costs to send. Once packing hours are coded, the rest is simple arithmetic. Continuing the fictional homeware store above:

Cost to fulfil one online order (fictional)
Cost Per order Source
Packing labor $3.40 62 hours x $17 / 310 orders
Box, filler and tape $1.85 Supplier invoices / orders
Shipping label $9.10 Average from the shipping account
Returns handling $0.95 Hours coded to returns, spread over all orders
Total $15.30 Against an average order of $60

At $15.30 on a $60 order, fulfilment takes about a quarter of the revenue before the cost of the product. That figure is what you need when you decide on a free shipping threshold or a minimum order value.

Planning hours for a seasonal peak

If last year’s busiest month brought three times the usual order volume, the packing hours will follow unless the process changes. A fictional plan for a December with 900 expected orders:

  1. Start from minutes per order: 12 in a normal month.
  2. Multiply: 900 orders x 12 minutes = 180 hours of packing.
  3. Add 15 percent for returns and exchanges after the holidays: about 27 more hours, mostly in January.
  4. Spread the hours by week, with the heaviest load in the two weeks before your last shipping date.
  5. Decide how much comes from extra shifts for current staff and how much from seasonal hires, and watch weekly overtime.

Seasonal hires are employees for wage and hour purposes. They are paid at least the applicable minimum wage and earn overtime after 40 hours in a workweek under the Fair Labor Standards Act, like everyone else.

Mistakes that hide the cost of online sales

Common mistakes in a combined store and online setup
Mistake Effect
One task code for all store work Online fulfilment looks free
Returns processed by whoever is free Return costs disappear into sales floor hours
Pop-up travel time not recorded Events look more profitable than they are, and paid time may be missed
Staff logged into the register while on break Sales per person and hours do not agree

With task codes in EZTime and a monthly look at the numbers, each of these becomes visible within one cycle.

Scheduling fulfilment around the shop floor

Packing competes with customers for the same people. If online orders are packed whenever the floor is quiet, they are packed late on busy days and the shipping promise slips. Many stores do better with a fixed packing block, for example 9 to 11 a.m. before opening and a second block after the afternoon courier cut-off is known.

Put the packing block on the schedule as its own shift with its own task code, assign it in EZTime like any other shift, and let the clock-in record whether it started on time. After a month you will know whether two hours is enough or whether orders are spilling into the sales floor hours.

Questions people ask

Does EZTime work with Shopify POS?

It can, through the EZTime API (Premium plan) or a custom integration built by EZTime’s development team. The EZTime team can tell you how it is set up for your account.

Can I separate online fulfilment hours?

Yes, with task codes in EZTime. The sales side comes from Shopify.

Is the register login a time record?

No. Use EZTime for hours and Shopify for sales.

Is travel to a pop-up or market paid time?

Travel during the workday, such as from the store to the venue, is generally working time under U.S. Department of Labor rules. A normal commute from home to the usual workplace is not.

How do I work out minutes per online order?

Divide the hours coded to packing in a month by the number of orders shipped, then multiply by 60. Recheck it after any change to packaging or process.

Do seasonal workers earn overtime?

Yes. Seasonal and temporary employees are covered by the same federal overtime rule as permanent staff: time and a half after 40 hours in a workweek, unless a specific exemption applies.

Keep reading

Labor cost percentage

Wages as a share of revenue

POS and time clocks

How time clocks and registers fit

Overtime calculator

Weekly overtime math

You may also need

Talk through your Shopify POS setup

Book a demo and bring one pay period or one week of sales. We will go through what you want to see and which data is needed.

Shopify POS is a trademark of its owner. EZTime is not affiliated with or endorsed by Shopify POS. This page is general information, not legal, payroll or tax advice. Rules differ by state, city and contract, and they change. Check with a qualified professional before you act. Numbers in examples are made up.