Staff apps for venues: what changes on the floor and desk
A staff app sends each signal, such as an arriving guest, a new lead or a car due back, to the person who can act on it, so the shift stops depending on group chats and memory.
A staff app changes who learns what, and when. An alert about an arriving guest or a new lead goes to the person who can act on it, and the shift stops relying on a group chat and someone's memory. Most of the gain sits in small routines: the list of tomorrow's handovers, the photo taken before a car leaves, the lock screen that keeps owner numbers away from a waiter.
I built two of these apps for clients in Dubai. Pushka POS is for the staff of a lounge and is in TestFlight. Lucent Staff is for a supercar rental and is in TestFlight, ready for release. Below I go through what each screen does on a working day and what to ask before you commission your own.
Start from the shift, then pick features
Write down one real shift hour by hour before you talk to a developer. For each hour, note what someone needs to know, who that person is, and how fast they need to know it.
Hypothetical example: a lounge on a Friday at 21:00. A regular texts the manager on WhatsApp that he is 15 minutes away. The manager is on a break, the message sits unread, and the host gives his usual table to a walk-in. Nobody did anything wrong. The information reached the wrong phone at the wrong time.
A staff app closes gaps like this one. For every role, answer these four questions:
- What event should reach this person? (guest arriving, new lead, car due back)
- How fast? (seconds, within the hour, by tomorrow morning)
- On which device? (personal iPhone, shared tablet at the bar)
- What should this person never see? (revenue, client documents, other staff notes)
The answers become your feature list. A specification written this way is shorter, and it is easier to price.
Alerts that reach people near the venue
The Pushka guest app has an "On my way" button, so the shift knows when a guest is about to arrive. The guest app is currently submitted to App Review. On the staff side, Pushka POS turns signals like this into two things: an APNs push and a Live Activity card in the Dynamic Island.
A geofence filter works in the app. It sends alerts and the "guest is coming" card only to cashiers and waiters within about 1 km of the venue. A waiter at home on a day off is outside that radius and gets nothing at 23:00.
When a phone buzzes for every event, people learn to ignore it. Ask your developer two things: which roles get which push, and whether alerts can be limited by distance from the venue.
The same logic applies to orders. A guest who taps an item at the table sends a request to the floor. The app takes no payment, and the bill is closed at the register. Your staff app should show a request clearly to the right person and should not compete with the till.
One screen for today
Lucent Staff opens on a Today screen with three numbers: cars on rent, drop-offs today and new leads. Below them is a list of handovers and returns for today and tomorrow.
The tomorrow list makes evening prep possible. Hypothetical example: a car leaves at 9:00 and has to be washed, fuelled and checked first. If the screen shows only today, that prep starts in a morning rush.
For a café or clinic the same screen might show reservations, VIP arrivals or appointments. Pick three numbers at most. Every extra number makes the screen harder to read at a glance.
Leads and messages in one inbox
The rental site I built has a CRM with a unified inbox: site chat, WhatsApp and Telegram, with Instagram supported in the code. Lucent Staff brings that inbox to the phone. Every thread shows a channel icon and an unread counter, and staff reply from inside the thread.
Leads have status filters (New, Confirmed, Paid, Active, Done) and search by name or phone. The lead card lets a manager:
- change the status;
- assign the lead with a "Take it" button;
- add notes;
- copy or share a payment link;
- call or open WhatsApp in one tap.
"Take it" settles the question of who answers. Without it, two managers reply to the same client or, more often, nobody does. A push arrives for each new lead and each new message, so nobody has to keep the app open. If you are deciding how WhatsApp should connect to all this, see WhatsApp Business API: do you need it.
Handover photos and client documents
When a car goes out or comes back, Lucent Staff shows a checklist of angles to photograph. Photos upload one by one, with a retry for each. Hypothetical example: a driver shoots eight angles in a basement car park with weak signal. If all eight go in one batch and photo seven fails, the whole set may need to be shot again. With separate uploads, the driver retries photo seven only.
Client documents come in four types, each with an expiry date. An expired document shows in red. Staff scan documents with VisionKit, and the images stay in the app's memory only. Staff cannot share or save them.
A passport copy sitting in an employee's camera roll stays there after that employee leaves. Ask your developer two questions. Where do document images live after the scan? What happens if upload seven of eight fails? Confirm your handling of personal data with a lawyer under UAE data protection rules.
Trip mode for the driver
The driver who takes a car to a client follows a fixed sequence in trip mode:
- "En route" when the driver sets off.
- "Arrived" at the client's address.
- "Handed over" when the car goes out, or "Collected" when it comes back.
The screen also has directions, a mini map and an option to edit the drop-off time. If a client moves the time, the driver changes it in the app instead of phoning the office from behind the wheel.
When you commission a trip mode, ask who sees each status change and whether the manager gets a push or has to open the screen.
Fleet and fines without extra hardware
The Fleet screen shows which cars are out, on a dark MapKit map. The cars carry no GPS trackers, so you need no hardware installed in the fleet. If you need live positions, budget for trackers and an integration separately.
Fines get their own screen: the car, the plate and the client, with a paid or unpaid flag. A manager can add a fine by hand, and the app finds the matching booking by date. On the server, the rental system checks RTA fines once a day by plate number through ums.rta.ae.
Hypothetical example: a speeding fine dated 14 March appears for a plate. The booking that covers 14 March shows who had the car, so the manager knows which client to contact.
Who sees money and how the phone locks
Decide screen access by role before any design work. In these two apps it looks like this:
| Screen or protection | Who | App |
|---|---|---|
| Money: five summary figures and payments | Owner only | Lucent Staff |
| Cars: prices, availability, plates, colours, badges, hidden cars | Fleet management | Lucent Staff |
| Face ID lock screen on opening | Every staff phone | Pushka POS |
| Crash reports through MetricKit | Developer and owner | Pushka POS |
Staff phones get left on bar counters, and a locked app keeps guest data private when that happens. MetricKit reports show that a screen fails on one iPhone model before a waiter tells you the app "doesn't work".
Test with your own staff in TestFlight
Both apps are in TestFlight. That is a normal way to run a staff app. Apple's TestFlight lets you invite your staff to a testing group without a public listing. Builds expire after 90 days, so plan who uploads new builds and how often.
My suggestion for a first test:
- One shift, one week.
- One person collects every complaint in a single note, with a screenshot.
- Fix the top three issues, ship a new build, repeat.
Choose the interface language based on who holds the phone. Lucent Staff is in English because the rental staff in Dubai work in English. If you later want a public release, read what Apple checks in review and a venue app from idea to App Store.
Questions to ask the developer
Before you sign anything for an app, ask these:
- Which events send a push, and to which roles?
- Can alerts be limited to staff near the venue?
- Which system holds the truth about money: the app, the POS or the CRM?
- Where do document images go after a scan?
- What happens to an upload when the signal drops?
- Which screens can staff see, and which only the owner?
- How will I know the app crashed before staff tell me?
- Who uploads TestFlight builds after 90 days, and at what cost?
If a developer has no clear answer to question 3, expect duplicated or missing bills later.
What not to do
- Sending every alert to every employee. People mute the app.
- Building a second till. If the register closes bills, the app should send requests and show status.
- Letting staff save client documents to their photo library.
- Showing revenue on a screen every waiter opens.
- Shipping one long form for handover photos. Upload each photo separately with a retry.
- Skipping a test week with a real shift. A demo on the developer's desk misses most floor problems.
- Writing the interface in the owner's language when the staff work in another.
Checklist
| Problem on the floor | Feature that handles it | Where I built it |
|---|---|---|
| Staff miss an arriving guest | Push plus Live Activity card, geofence of about 1 km | Pushka POS |
| Phone left on the counter | Face ID lock screen | Pushka POS |
| Crashes found too late | MetricKit crash reports | Pushka POS |
| Morning prep in a rush | Today screen with tomorrow's handovers | Lucent Staff |
| Two managers answer one client | "Take it" on the lead card | Lucent Staff |
| Messages spread across apps | Inbox with channel icons and unread counts | Lucent Staff |
| Damage disputes on return | Photo checklist by angle, upload one by one | Lucent Staff |
| Passports on personal phones | Documents in memory only, no share or save | Lucent Staff |
| Office calls the driver | Trip mode statuses and editable drop-off time | Lucent Staff |
| Fines reach the wrong renter | Fines matched to bookings by date, daily RTA check | Lucent Staff and rental CRM |
| Staff see revenue | Money screen for owner only | Lucent Staff |
Run your own shift notes against this table. Every row you can't tick is a line in your specification.
Questions and answers
Does a staff app have to be published in the App Store?
No. You can run it with your own staff through TestFlight while you test. TestFlight builds expire after 90 days, so for permanent use you need a plan for new builds or a proper release.
Will a staff app replace my POS or cash register?
It does not have to. In Pushka the bill is closed at the venue's register, and the apps handle alerts, requests and status. Decide early which system stays the source of truth for money.
How much does a custom staff app cost?
My apps start from AED 35,000 (Special offer). The final price depends on the number of roles, channels and integrations with the systems you already use.
Can staff see client passports and payment data on their phones?
Only if you allow it. Lucent Staff keeps document images in memory only, with no share or save option, and the Money screen is visible only to the owner. Check your data handling with a lawyer under UAE data protection rules.