Pultra user guide
This guide walks through the whole app: where things are, what each setting does, and what to watch for while working. No sign-in is needed, and anyone can open it.
What you see on screen depends on your permissions. If something is described here but missing for you, your role does not allow it — a manager or the owner can change that (see Roles).
Getting started
Pultra is a till and kitchen system for restaurants, foodtrucks, event stands and kiosks. One business can run several places, each with its own menu, stock and tills.
Pultra does not issue the official receipt. The legal receipt still comes from your certified cash register; Pultra handles the order, the kitchen, stock and reports.
A new business gets going like this:
- Sign in with the owner account (Signing in).
- Open Menu and add a few products (Menu).
- On the Till screen, open the day and start selling (Opening and closing the day).
Everything else — stock, the kitchen display, discounts, more places — can wait until you need it.
Signing in
Signing in takes three things:
- Business ID — your business's short identifier. The owner finds it under Settings → Company as Login identifier.
- Username and Password — set by the manager who created the user.
You do not name the device when signing in: the app names it for you (for example "Samsung SM-T220" or "Chrome · Windows"). If a manager wants something clearer ("Counter 1", "Bar tablet"), anyone can rename the device they are using under Settings → This device (below). The device — a browser too — remembers itself, so it stays the same device at every sign-in.
Remember me: when on, the app does not ask for a password at launch. If you have a PIN, it asks for that instead.
If a manager set a temporary password for you, you have to choose your own at the next sign-in. That is on purpose: a password somebody else knows proves nothing about who used it.
After too many wrong passwords (10) it is not the whole account that locks, only the source the attempts came from: that device or, for an unknown device, that network. The lock lasts 15 minutes, and twice as long each time it happens again (up to a day). So if someone somewhere else is guessing your password, you can still sign in on your own till.
If a very large number of wrong attempts arrive from unknown places altogether, the account locks for every unknown place for a while — your known devices still get in.
Unlocking: a manager can unlock it straight away under People (Unlock now). If the owner locked themselves out and nobody else can unlock them, whoever runs the server can lift it with a command.
Signing in to another business is only possible when this till has no unsent sales. Switching business removes the sign-ins and PINs stored on the till.
PIN, lock and switching user
The More menu (on a phone) or the Account icon (on a tablet, at the bottom of the side bar) is available to every user, whatever their role. It holds:
- Lock — locks the screen without signing anyone out. Your PIN brings you back. For breaks and short absences.
- Set a PIN — a short number to get back into this till quickly. It can only be set after a full sign-in with a password, and needs your password too, so nobody can set a PIN for you from an unattended screen. PINs that are too easy (runs, repeats, years) are refused.
- Switch user — somebody else signs in on the same till. Your PIN stays on this till, so you can get back quickly later.
- Sign out.
Settings → Account also has Change your password; a new password signs every other device out of the account.
On the lock screen you first pick who you are, then enter your PIN. The PIN keypad vibrates on every press (phones and tablets), and harder on a wrong PIN. Where there is a real keyboard — a browser, or a till with one attached — the PIN can simply be typed: digits type, Backspace deletes, Enter confirms.
After 5 wrong PINs the PIN is deleted: sign in with your password and set a new one. A manager can Clear PIN for a user under People at any time; that person then signs in with their password and can set a new PIN.
Browsers have lock and PIN too, when the page is opened over https. The browser gets its own key that cannot be read out; the server checks the PIN, and accepts it only in a browser where that person has already signed in with their password. Locking ends the browser's session, so reloading the page does not get around the lock. A browser cannot unlock with a PIN without internet. Over an unencrypted (http) connection, lock and PIN are not available.
Till
Where you sell. The screen shows the place's menu: categories (folders) and products.
- Tap a product to add it to the cart. If the product has ingredients, the ingredient picker opens first (Ingredients).
- Tap a category to go into it. Go back with the Back arrow at the top left or your phone's back button.
- Long-press a product to mark it Sold out (if you are allowed). A sold-out product is greyed out; long-press again to bring it back.
- The cart is at the side (tablet) or at the bottom (phone). Tap a line to change the quantity, the ingredients or the discount.
- Clear — empties the cart.
- Pay — goes on to payment (Payment).
The sync indicator at the top right shows whether sales are reaching the server (Working offline).
If the menu is empty and you are allowed to add products, the Add product button in the middle of the screen adds one right there.
Opening and closing the day
Pultra counts in business days. You can only sell while a day is open.
- Open the day — on the Till screen while the till is closed. If you are not allowed, the app says that a manager opens the day.
- Close the day — the clock icon in the Till header. Closing produces the day's summary (Z report).
If the day was left open (say, in the morning you find last night's day still open), the app asks whether to Start a new day or Keep it open.
If some orders have not synced when you close, the app warns you: closing anyway makes the report provisional, and its figures may still change when the missing sales arrive.
A closed day can be opened again (you closed after lunch and open again for the evening); the earlier report is then discarded and made again at the next close.
When a day ends is set by Settings → Company → Day rollover: a sale at 2 a.m. still belongs to the previous day.
Closing the day moves any orders still open on the kitchen display to Collected, so they do not sit there for days.
Payment
After Pay, pick the payment type: Cash, Card, Transfer or Other. Only the types the place accepts are shown (Settings). If the place accepts just one, the screen does not ask.
For cash, enter the amount tendered and the app works out the change.
Rounding: cash totals are rounded by the 5-forint rule. The rounding is shown on its own line and never changes the VAT — VAT is always worked out from the exact amount before rounding. Card and transfer are not rounded.
After Record payment the order gets a number (for example A-14). The letter is the till's own permanent prefix, so a number always tells you which till took the order.
Discounts
There are several kinds of discount. The cart shows every discount together with where it came from.
- Line discount — on one line, at the till. Needs a permission.
- Basket discount — on the whole cart, at the till. Needs a permission.
- Discount buttons — preset percentages (say 10%, 20%) for cashiers to pick from. This needs less: cashiers cannot type any percentage they like, only choose the ones a manager set up. Edit them under Settings → Discount buttons.
- Place promotion — applies to every sale at the place while it is valid (with a start and an end). Settings → Place-wide discount.
- Product promotion — on one product, with a start and an end. In the product editor, under Product discount.
If a place-wide discount and a product's own discount overlap, the app asks on saving which one takes precedence.
The server checks discounts too: a discount given without permission (by a modified app, say) gets the sale refused.
Ingredients
A product can have ingredients (a hot dog: sausage, mustard, ketchup, onion). Each has a name, can have an extra price, and can be included by default.
When an ingredient that is included by default has an extra price, Its price is in the product price decides what the till shows. On (the default), the tile shows the product with that extra — exactly what a plain tap charges. Off, the tile shows the plain price and the extra is added in the cart, which suits "from 1 200 Ft" pricing.
At the till, tapping the product opens the ingredient picker: All, None, Usual, or switch them one by one. Extra prices are added to the price.
With Always list in the cart on, the ingredients show under the line even on a plain tap, and can be struck off in one move (Take out / Put back).
History
Orders taken on this till. Works without internet.
Tap an order to see its lines, its payment, and whether it is Synced or Not synced yet.
Each day's header shows that day's takings: voided orders do not count, and anything refunded is subtracted. It therefore agrees with Reports.
- Void — cancels the whole order, for example when it was rung up by mistake. The order is not deleted: it stays, marked Voided, and leaves the takings. Its stock comes back. Only while the day is open, and a reason is required.
- Refund — gives money back on a paid order. It creates a new order with its own number and a negative amount, so the customer gets a document and reports stay right. It can be partial (some lines or quantities only). You choose how the money goes back.
Both need a reason: somebody will read it weeks from now.
Kitchen
The kitchen display. Every sale shows up here straight away, and the kitchen marks how far along it is.
Orders are shown in columns (tablet) or sections (phone): New, Preparing, Ready. Each ticket shows the order number, the lines and how long it has been waiting.
The buttons follow the place's kitchen steps (Settings → Kitchen steps):
- Start, ready, collected — a restaurant where food is handed out and picked up.
- Start and ready, Start and collected, Ready only, Collected only — for simpler counters; a bar might mark a drink handed over with a single press.
This setting applies to every kitchen display at the place, not just the one where it was changed.
- Recall — takes an order marked ready back to preparing. Needs its own permission.
- The Live / No connection badge and "Updated N s ago" in the header show whether the display really is current. If it stops updating, check the internet.
Several stations: if the place has more than one kitchen station (a bar and a grill, say), the filter icon in the header (Stations on this screen) picks which stations' orders this display shows — one, several, or All stations. The device remembers the choice: the bar tablet shows the bar, whoever signs in on it. Stations are added under Settings → Kitchen stations (Kitchen stations).
If the till is offline, the kitchen only gets the order once the till reaches the server again. The till says so ("Kitchen not notified — you are offline").
Menu
Where you arrange what the till shows, and where products are edited.
- Add button: Add a product or Add a category.
- Tap a category to go in; leave with the header arrow or your phone's back button.
- Long-press and drag rows to reorder them (needs a connection).
- A row's Actions menu: Rename (category), Edit the product, Move to a category, Remove from the menu.
Removing only takes the product off the till; the product itself and every past receipt stay. A category can only be removed once it is empty.
Arranging the menu and editing products are two separate permissions. Somebody who may only arrange categories does not see product editing, and the other way round.
Creating and editing a product
A new product and an existing one use the same form:
- Name and Price — required. The price is gross: what the customer pays.
- VAT rate — when the business has more than one (Settings).
- Kitchen station — when the place has at least two stations: where orders for this product go.
- Track stock — puts the product on the Stock screen and warns when it runs low. It never blocks a sale.
- Product discount — with a start and an end (Discounts).
- Ingredients (Ingredients).
- Photo — take one or choose one. Remove the one a product has with the X on the corner of the picture.
Which parts you see depends on your permissions — the same when creating as when editing.
For a new product, everything is saved together with Save. The product itself is created in one step, the discount and ingredients right after. If one of those fails, the app says what was left out — edit the product to add it.
Stock
Stock for products with Track stock on. Alerts come first, then products: negative ones, then those running low, then the rest.
Tap a product for:
- Receive — goods delivered.
- Waste — thrown away or spoiled.
- Count — enter the quantity you counted. The app records the difference, so count discrepancies stay traceable.
- Transfer — move goods to another place (below).
- Low-stock level — below this the product shows Running low and an alert is raised.
Every movement is its own entry and nothing is overwritten: you can always find out who moved what, and when.
Stock can go negative. If two offline tills sell the same last item, both sales stand — the money was taken. An Oversold alert is raised, listing the orders, tills and cashiers involved.
Alerts: Oversold, Low stock, Action could not be saved, Not syncing, Clock is wrong. Resolve closes them. Seeing alerts and resolving them are two separate permissions.
Transferring between places
Only shown when you can work at two or more places. Pick the Destination and the quantity. The goods leave one place and arrive at the other in a single step, so there is never a moment when they are in both places, or in neither.
Only products that are also on the destination's menu can be moved.
Reports
Takings for today, the last 7 or 30 days, a chosen day, or a whole month.
- Gross takings, Orders, Refunds, Average order.
- VAT breakdown — by rate. Totals are summed from order lines, so they match the documents exactly. Needs its own permission.
- Payment types — cash rounding shown separately.
- By day (for more than one day), Top products.
- Cashiers — who sold how much. Needs its own permission: this is individual performance data.
While any till still holds unsent sales, the report says it is provisional: the figures may still change.
People
Everyone in the business. Add person takes a full name, a username (what they type at sign-in), optionally a temporary password, and their roles.
Tap a person for:
- Roles — a role applies at every place, or only at the places you pick.
- Set a temporary password — they have to choose their own at the next sign-in.
- Clear PIN — they sign in with their password again and can set a new PIN.
- Unlock now — after too many wrong passwords, without waiting.
- Deactivate / Reactivate — they cannot sign in, but their past orders stay.
- Delete — permanent; confirm with your own password. The person's sales and log entries stay.
You cannot deactivate or delete your own account.
Roles
A role is a named set of permissions (Cashier, Kitchen, Manager, …). The Owner role can do everything and cannot be edited — so a business can never lock itself out.
In the editor, permissions are grouped into categories. Each shows its short name and its technical key. Select all on a category ticks everything in it.
A role can only be deleted when nobody holds it and it is not built in.
Permission changes take effect straight away: once a manager grants a permission, the user can use it on their next action without signing in again. Menus and buttons catch up on the next refresh.
The full permission list is at the end of this guide.
Places
The business's places. Each has a name, a type (restaurant, foodtruck, event stand, kiosk) and the payment types accepted.
- Deactivate — nobody can sell here, but the history stays. A place with an open day cannot be deactivated: close the till first. If you closed (or opened) a day since this list loaded, pull the list down to refresh it.
- Delete — permanent; confirm with your own password. The last place cannot be deleted.
Switching place: if you can work at several places, switch under Settings → Place. If the till is still open, the app asks whether to close it first or leave it open.
Tills
Every device anyone has signed in on — tills, kitchen displays, the manager's laptop too. Each till has a permanent prefix (A, B, C…) that starts its order numbers.
A device gets its prefix the first time somebody who may sell signs in on it. A kitchen display or a machine used only for admin does not use up a letter; the list shows "–" for them.
Rename — with the pencil icon. Anyone can rename the device they are using; other devices need the Rename devices permission.
Revoke — when a till was stolen, lost or replaced. A reason is required. The till stops working, and its prefix is retired so nobody gets it again. Sales it already took stay: the money was taken, and revoking does not change that. You cannot revoke the till you are using.
Settings
The place's and the business's settings, in cards. Pull down to refresh.
- The till — whether a day is open.
- Accepted payment types — at least one must remain.
- VAT rates — add and edit rates. A rate's percentage can only change until it has been used in a sale; after that, add a new rate. One rate is the default for new products.
- Place-wide discount and Discount buttons (Discounts).
- Kitchen steps (Kitchen).
- Kitchen stations (below).
- Place — switch place.
- Company (below).
- This device — the device's name and prefix (below).
- Account — language, PIN, lock, switch user, sign out.
Kitchen stations
Each station is a separate kitchen screen: the bar, the grill, the pass. There is always one default station, where every line with no station of its own lands.
- Add station, Rename, Make it the default.
- Switch off / Switch on — the default station cannot be switched off.
- Delete — only a station that has never received an order. Stations that have worked can be switched off, so their history stays.
Each station shows how many tickets it has had.
Products are assigned to a station in the product editor (Product); each kitchen display picks which stations it shows (Kitchen).
This device
About the device you are using right now:
- Device name — the name a manager sees in the Tills list. Rename it with the pencil icon; no permission needed.
- Device prefix — the letter on its order numbers. "None yet" until somebody who may sell signs in on it.
Company
- Business name, Timezone, Day rollover (see Opening and closing the day), Default language.
- Login identifier and Currency are read-only: every till signs in with the identifier, and every past amount is already recorded in the currency.
Working offline
The till keeps selling without internet. Sales are stored on the till and sent automatically as soon as the connection is back. You do not have to do anything.
The sync indicator shows the state:
- Synced — all good.
- Offline · N queued — no connection, N sales waiting to be sent.
- Not syncing for N min — if it goes on, check the internet.
- No sync for 24 hours — refunds are disabled.
- This device is locked — a till that has not reached the server for too long stops selling. Sales it already took are kept and sent when the connection returns.
What needs a connection: editing the menu and settings, managing people and roles, reports, clearing a PIN, voids and refunds, stock movements, and moving a ticket on the kitchen display. All of them change what somebody else is looking at right now, so they are not queued for later: the app says when one did not go through.
What is queued and sent by itself: sales, and the Sold out mark.
The web version does not keep unsent sales: a shared browser is not a trustworthy place for them.
Permissions
Every permission, by category — the same way they appear in the Roles editor. This list is generated from the app's own permission list, so it is always accurate.
Catalog & menu
| Permission | Key | Given by default to |
|---|---|---|
| Edit products | catalog.product.write | Manager |
| Mark product sold out | catalog.product.availability | Manager, Cashier |
| View product templates For a later feature: changes nothing yet. | catalog.template.read | Manager |
| Edit product templates For a later feature: changes nothing yet. | catalog.template.write | Manager |
| View products | catalog.product.read | Manager, Cashier |
| View menu tree | catalog.menu.read | Manager, Cashier |
| Edit menu tree | catalog.menu.write | Manager |
| Upload images | catalog.image.upload | Manager |
| Delete images | catalog.image.delete | Manager |
| View VAT rates | catalog.tax.read | Manager, Cashier |
| Edit VAT rates | catalog.tax.write | Manager |
| Edit product discounts | catalog.discount.write | Manager |
Orders
| Permission | Key | Given by default to |
|---|---|---|
| Take an order | order.create | Manager, Cashier |
| Void order | order.void | Manager |
| Refund order | order.refund | Manager |
| Discount a single line | order.discount.line | Manager |
| Discount the whole basket | order.discount.cart | Manager |
| Apply a preset discount | order.discount.preset | Manager, Cashier |
| View own order history | order.history.read | Manager, Cashier |
| Reprint order slip For a later feature: changes nothing yet. | order.reprint | Manager, Cashier |
Stock
| Permission | Key | Given by default to |
|---|---|---|
| View stock | stock.read | Manager, Cashier |
| Adjust stock | stock.adjust | Manager |
| Receive stock | stock.receive | Manager |
| Stock count | stock.count | Manager |
| Record waste | stock.waste | Manager |
| Transfer stock between places | stock.transfer | Manager |
| View alerts | alert.read | Manager |
| Resolve an alert | alert.resolve | Manager |
Kitchen display
| Permission | Key | Given by default to |
|---|---|---|
| View kitchen tickets | kds.ticket.read | Manager, Kitchen, Cashier |
| Advance ticket state | kds.ticket.advance | Manager, Kitchen |
| Recall a ticket | kds.ticket.recall | Manager, Kitchen |
| Manage kitchen stations | kds.station.write | Manager |
Reports
| Permission | Key | Given by default to |
|---|---|---|
| Sales report | report.sales.read | Manager |
| VAT report | report.vat.read | Manager |
| Staff performance | report.staff.read | Manager |
Business day
| Permission | Key | Given by default to |
|---|---|---|
| Open business day | session.open | Manager, Cashier |
| Close business day (Z-report) | session.close | Manager |
Devices
| Permission | Key | Given by default to |
|---|---|---|
| View devices | device.read | Manager |
| Revoke a device | device.revoke | Manager |
| Rename devices | device.rename | Manager |
Users
| Permission | Key | Given by default to |
|---|---|---|
| View users | user.read | Manager |
| Manage users | user.write | Manager |
| Delete a user permanently | user.delete | owner only |
| Reset a PIN | user.pin.reset | Manager |
| Assign roles | user.role.assign | Manager |
| View roles | role.read | Manager |
| Edit roles | role.write | owner only |
Settings
| Permission | Key | Given by default to |
|---|---|---|
| View place settings | settings.place.read | Manager |
| Edit place settings | settings.place.write | Manager |
| Delete a place permanently | settings.place.delete | owner only |
| Create a place | settings.place.create | Manager |
| View tenant settings | settings.tenant.read | Manager |
| Edit tenant settings and feature flags | settings.tenant.write | owner only |
| Configure printer For a later feature: changes nothing yet. | settings.printer.write | Manager, Cashier |
| Edit place-wide discounts | settings.discount.write | Manager |
| Edit the discount presets | settings.discount.preset | Manager |
The Owner role holds every permission.