(desktop app 1.0.90+, Settings → Subscription or Link devices → «Program updates»):
Updates arrive automatically with the licence when the program's owner sends them; nothing to download.
They download in the background and install by themselves after 15 minutes with no work on the PC (a restart of a few seconds), or at the next start. The data does not change.
From 1.0.130: a PC in use all day (cashier, branch, AnyDesk open) installs the update by itself once nobody touched the program for 10 minutes, with no sale or save and no items in the cart: «Program update is ready» appears with a one-minute countdown, then it installs. «Later» puts it off two hours. PCs on 1.0.129 or older need once «Install the update now» (or quit from the icon → «Quit», or restart the PC) — after that it is all automatic.
If an update does not start, the program goes back to the previous version by itself.
To install at once: «Install the update now» on the same screen, or right-click the icon by the clock → «Install the update now». «Check now» asks for a new update.
Cashier PCs update too, with their own licence.
Versions older than 1.0.90 need 1.0.90 installed by hand once; after that every update is automatic.
«Could not download the update, will try again later»: a PC on an older installer (e.g. 1.0.102) could not take packages up to 1.0.107 — fixed from 1.0.108, it takes it by itself with the next try or «Check now». If it keeps showing: download the program from hadabpos.com and run it over the old one — data is kept.
«Install the update now» closes the program and it comes back on the same version: PCs on 1.0.124 or older could not take updates 1.0.125 and 1.0.126 — fixed from 1.0.127 (the small package reaches them directly once the owner sends it). If it still stays: download the program from hadabpos.com and run it over the old one — data is kept.
Backup and restore
(admin): take a backup, restore one, daily automatic backups on the desktop app, and reset invoices or stock (careful). The desktop app File menu also has Back up / Restore / Open data folder.
Forgot the password
Forgot password: on the login screen enter the username or email and press "Forgot password" — a new password (valid 24 hours) is emailed with the username to the user's or the administrator's email. The old one keeps working until the new one is used. The email comes from hadabpos.com — if it is not in the inbox, check the spam folder. To change a staff password: Users & rights.
The tutorial videos
on YouTube: https://www.youtube.com/@HADABPOS
First invoice in under a minute: https://youtu.be/TikLj2iXM-c (add the items, the total with VAT shows at once, then «Pay» or F8, pick the payment method and amount, the change is worked out for you, then «Complete sale»). The videos are in Arabic.
Opening and closing a shift: https://youtu.be/4422Wu5nqh8 (enter the opening cash, sell, count the drawer when closing and any difference shows, then the shift report with sales, VAT, payment methods and cash).
Adding items and importing from Excel: https://youtu.be/JZhlHtV9oHg (Products → Add: name, category and price including VAT, the price before VAT is worked out for you; or «Import Excel» with a file of name, price, English name and category, with a preview before importing).
Linking branches: https://youtu.be/GMBFUJ6SURA (on the manager device: Settings → Branches → «Make this the manager's device», then «Code for a new branch»; on the branch device enter the branch name and code and press «Link»; then all branches' sales and the unified report show on the manager device).
Branch remote control: https://youtu.be/ZIo5DmXRpmo (Settings → Branches → «Control this branch» on the branch card; a red bar means you are in the branch's system; change a price and save, it reaches the branch at once; then «Back to my PC»)
Link a branch, move stock to it, see all stock balances: https://youtu.be/n4X_vpRfJ0s (link the branch device to the manager, send the menu and recipes, move stock in Settings → Branches → «Stock transfer between branches» and receive it at the branch, then Inventory → «Full stock & buying»; subtitles in English, Turkish and Urdu from the CC button).
Contracts and progress bills (Accounting plan): https://youtu.be/JyjbVO2ShlY (new contract with its value and retention %, then «New progress bill» with the cumulative completion %: VAT, retention and net due are worked out and a tax invoice is issued; the next bill invoices only the difference; after handover «Collect retention»).
HADAB Factory: production order and QC (Factory edition): https://youtu.be/B98MIw-NIeU (new production order from the recipe, «Start» issues the materials, «Partial receipt» with accepted/rejected and a batch number, then «Scheduling & capacity», «Batch trace» and «Quality»)
Repair & warranty orders: intake to delivery: https://youtu.be/JK17FzJqIgY («Receive device» with the fault, accessories and a deposit, move the status, parts from stock and labour, WhatsApp the customer when ready, «Deliver» with an invoice that takes off the deposit, then «Warranty check» by serial)
Ladies salon: session packages, client file and day schedule: https://youtu.be/3WxTeKCo6pw (client file with allergy and colour formula, allergy alert at the POS, sell a package and use a session, day schedule per stylist, booking with home service, WhatsApp reminder, bride packages)
Tailoring: size file with pictures and the tailoring order: https://youtu.be/qNRFBt02Nuk (a size file per customer with a picture per measurement, design details, fabric by the metre from stock, deposit, due date and tailor per stage, workshop work card, WhatsApp the customer, invoice on pickup that takes off the deposit)
Installing and the blue Windows warning: https://youtu.be/sxHzXD7OL2w (download from the site, «More info» then «Run anyway», setup without admin rights)
A one-minute tour video for each edition (real program screens):
Learning centre (all videos on one page): https://hadabpos.com/learn.html
Inside the program, the «؟ Help» button next to each screen title opens that screen's video.
Any question about a step, just ask me here.
Company details
name in Arabic and English, VAT number, CR number, address and logo — they print on every invoice. The logo size on the invoice is under "Invoice template" in Printing.
On the desktop program the company name and details follow the licence register: when the provider edits the client name, English name, VAT number, CR, phone, email or address there, they reach the device within seconds of saving (on its next action, with the internet on). Your own edit in Settings stays and shows to the provider in the register.
Changing a login name
Changing a user's login name (cashier or anyone) after it was made: Settings → Users & rights → click the user → change Username → Save. The password, past invoices and reports stay the same; from now on they sign in with the new name. It must not be used by another user and has no spaces.
Running in the background
(desktop app 1.0.89+, Settings → Branches or Link devices):
Keep running when the window is closed: the close button only hides the window; the program stays as a small icon by the clock, so branch sync, sending invoices to ZATCA and serving linked cashier PCs keep going.
Start with Windows: runs in the background right after the PC starts, without opening the window.
Both are on from the start and can be turned off on the same screen or from the icon.
The icon by the clock: click it to open the program; right-click for the last branch sync, «Sync branches now», the two options and «Quit» to close fully.
If the icon is not shown: press the ^ arrow next to the clock.
The on-screen keyboard
For touch screens: turn on the on-screen keyboard in Settings → POS settings (kept per computer).
Program and receipt language
The app language (Arabic, English, Turkish, Urdu, Bengali): the language button at the top of the screen. The printed receipt language is in Settings → Printing.
The Windows warning at install
When installing the program on a PC (or a new cashier PC) Windows may show the blue «Windows protected your PC» window: click «More info» under the text, then «Run anyway». It appears for any new program on Windows and does not mean a virus; the setup needs no administrator rights.
Edge says the file «isn't commonly downloaded»: downloads list → ⋯ → Keep → Show more → Keep anyway.
The antivirus removed the file: restore it from Quarantine or allow it, then run it again.
Download only from hadabpos.com. Steps with pictures: hadabpos.com/install-help-en.html, video: https://youtu.be/sxHzXD7OL2w — the HADAB team also installs it for you remotely, free, on WhatsApp +966 56 173 9500.
A new device or a Windows reinstall
A new PC or reinstalled Windows = a new "device code". Run the program on the new PC with internet, copy the device code from Settings → Subscription and send it to your provider — they move your subscription with the remaining days and the assistant package, and the old PC stops. Move your data with a backup: Settings → Data & backup (back up on the old PC, restore on the new one).
Working offline
The desktop program works without internet for up to 45 days since it last connected (a warning shows from day 30). After that, connect once and press "Refresh" in Settings → Subscription (or on the lock screen) and it works again. Sales and printing work offline; the cloud version and the paid assistant need internet.
Subscribing after the free trial
(the trial is 14 days free):
In the last days of the trial a bar at the top shows a «Subscribe now» button; it is also in Settings → Subscription and on the lock screen once the trial is over.
Press it and pick the plan: Point of Sale (SAR 1,500 first year) or Accounting (SAR 3,000 first year), then SAR 575 a year for either. Add a note if you like (contact number, number of devices) and press «Send subscribe request».
The request reaches us directly; we contact you to complete payment and activate it on the same device — all your data stays.
Only the administrator can send it from the system; others (or with no internet) press «Chat on WhatsApp» for a ready message with the device code.
After sending it shows «We got your subscribe request and will contact you soon».
Pay online: when it is available a «Pay online now (mada / card / Apple Pay)» button shows (in the «Subscribe now» window, in Settings → Subscription for renewals, on the bar near the end date and on the lock screen). It opens the secure pay page on hadabpos.com with the device code; pick the plan or the renewal period and pay — the subscription activates on the same device automatically within a minute while it is online (or press «Check again»), and the invoice follows. No button = online payment is not switched on; send the request or WhatsApp us.
Subscribing after the trial
this device's subscription and its end date (a reminder email comes 30, 7 and 1 days before it ends), and requesting the optional "Smart Assistant package".
Prices: the POS plan is 1,500 SAR for the first year and the Accounting plan 3,000 SAR for the first year; after that, either plan is 575 SAR a year for support and use of the system. Each main PC pays its plan price (1,500 or 3,000 SAR); each sub PC (a cashier linked to the main PC) is only 575 SAR. All prices include VAT. To subscribe or renew, WhatsApp us on +966 56 173 9500.
The free assistant always works at no cost: reports, item prices and stock, customer and supplier balances, explaining any screen ("how…" / "where…"), reading files and invoice pictures, and change commands after your review.
Pay online: when it is available a «Pay online now (mada / card / Apple Pay)» button shows (in the «Subscribe now» window, in Settings → Subscription for renewals, on the bar near the end date and on the lock screen). It opens the secure pay page on hadabpos.com with the device code; pick the plan or the renewal period and pay — the subscription activates on the same device automatically within a minute while it is online (or press «Check again»), and the invoice follows. No button = online payment is not switched on; send the request or WhatsApp us.
Confirm windows
every confirmation in the program (delete, cancel, move to a driver, receive cash, post…) opens in the program's own window in the middle of the screen, not a browser pop-up, so it works on the web, the desktop program and phones.
Press «Confirm» to do it, or «Cancel» (or Esc, or a click outside the window) to leave it with no change.
If nothing changed after a delete or transfer, «Confirm» was most likely not pressed.
Search everything, favourites and the (?) button
Press Ctrl+K on any screen (the till too) or click «Search anything…» at the top of the menu: type a screen, a setting, an item, an invoice number or a customer name/phone, move with the arrows and Enter opens it (an invoice opens on its day, an item or customer opens already searched).
Nothing found? The last line «Ask the assistant» sends the same words to the assistant.
Favourites: hover any screen in the menu and click the star ☆ — it moves up into «Favourites», for you only on this device. Click it again to remove it.
The (?) button next to every screen title opens the assistant and explains that screen step by step (free).
Shop readiness
(on the Dashboard): the steps to finish before selling, with a progress %:
VAT number and company details → Settings → Company.
ZATCA e-invoicing link → E-Invoicing.
Printer test → Settings → Printing → «Test print».
Add your items → Products.
Users for the staff → Users & rights.
Daily backup → Settings → Data & backup (the PC version backs itself up daily).
Click a step to go to its place, or «Later» to skip it. When all are done the list disappears by itself (× hides it).
System colours and the «Sadu» theme
Settings → Appearance → Colours picks the look of the whole system: Hadab (green, the default), navy, burgundy… or «Sadu» or your own colours.
«Sadu» matches our website: one Sadu-red accent, square corners, no dotted background, and the woven Sadu band above the menu, under the invoice head on the sales screen and on the «Today's sales» card.
It applies at once for every user and device; printed invoices do not change. Pick «Hadab» to go back.
Dark mode and bigger text/buttons
(this device only):
The moon 🌙 button at the bottom of the menu turns the screen dark; the sun turns it back.
Or Settings → Appearance → «On this device only»: «Dark mode» and «Bigger text and buttons (touch)».
Other devices keep their look — good for a dim kitchen screen or a touch till that needs bigger buttons. The whole shop's colours and font are on the same page below.
Dark mode is designed: dark, easy-on-the-eye backgrounds with clear colours; the printed receipt stays white.
Font: Settings → Appearance → Font has 20+ Arabic fonts (each card shows text and numbers) — numbers are equal width so amounts line up in tables.
Collapse the menu: the «Collapse menu» button at the bottom of the side menu shows icons only (hover for the name); the same button opens it again.
Dashboard
the manager's first screen:
Shop readiness (new shops): the steps left before selling — gone when done.
Today panel: what needs your attention now (low stock, expiry, debts, subscription…), each with «what to do»; the gear ⚙ sets the alerts and the daily summary by email/phone.
Below: today's sales and VAT, invoice count, average invoice, the last 14 days, payment methods and best sellers.
Pick the branch at the top if you have more than one; «Point of Sale» opens the till.
The system on a phone
open hadabpos.com in the phone browser and sign in:
Tables turn into cards: each invoice, item or expense is a card with each field name next to its value — no sideways scrolling.
Bottom bar: Home, Point of Sale, Invoices and Products under your thumb, and «Menu» opens the other screens.
The assistant button sits above the bar so it does not cover it.
Point of Sale on a phone: items on top, the order and the Pay button below, and the barcode box full width. The home dashboard stacks into two columns instead of four.
Selling and customers
Occasion messages on the receipt
(both plans):
Settings → Printing → Invoice template → «Occasion messages on the receipt».
Tick the ready occasions: National Day (18–24 Sep), Founding Day (20–23 Feb), Flag Day (11 Mar), Ramadan, Eid al-Fitr (1–4 Shawwal), Eid al-Adha (9–13 Dhu al-Hijjah). Hijri dates follow Umm al-Qura.
Each can have your own text or keep the ready one; «Preview» shows it on the receipt.
Your own messages: text + from/to dates + an optional picture or logo, e.g. «20% off during Eid», up to 10.
They print in a box at the top of the receipt only on those days, then go by themselves (unlike the fixed header). Press Save.
Add-ons (Smart Assistant package, and QR ordering for restaurants)
In Settings → Subscription (admin): the «Add to package» button next to the add-on → a window with the yearly price → «Switch on now».
It works at once for a year and an invoice is issued. Pay it within 14 days (online or transfer to the provider), otherwise the add-on stops by itself until paid, and comes back on once paid.
The card shows «Add-on invoice … not paid», what is left and the stop date.
During the trial: QR ordering is free to try; the Smart Assistant package comes after subscribing.
The dashboard sometimes suggests an add-on that helps your business («An idea to grow your business») — × hides it for 30 days.
Product tile (icon) size on the till
Settings → POS settings, first item «Product tile size»: pick small / medium / large / extra large or move the slider (90–280 px) and see the preview below, then «Save» — it becomes the size on every till.
On the till itself the S / M / L / XL buttons change it on that device only (tap the button again to go back to the settings size).
Or write to me: «make the product icons bigger» / «smaller» or «product tile size 150».
Auto by category (on in Settings → POS settings «Tile size by category»): a category with few items gets bigger tiles, one with many smaller ones, all on one screen. A size the cashier picks (S / M / L) is kept for that category on that device (no save button: it is saved the moment it is pressed; L is the biggest tile, M medium, S small; pressing the selected size again goes back to auto); A goes back to auto, and «Reset all categories to auto» is in the settings.
Customer display
(a second screen facing the customer, both plans):
Shows live what the cashier rings up: logo and shop name, each item (name, qty, price), discount, VAT and a very large total. After payment: total, paid, change, the invoice QR and «Thank you for your visit», then back to the welcome screen after a few seconds.
How: plug in the second monitor (Windows: «Extend these displays») → open the POS → the screen button «Customer display» in the top bar → a window opens: drag it to the second monitor and press F11 or its full-screen button.
It follows the till's language. In the desktop program it opens in the PC's browser (Chrome/Edge) and updates live; in a browser it is a second window or tab of the same browser.
Settings: Settings → POS settings → «Customer display»: show/hide the button, show each item's price, the welcome text.
Deleting an item or raw material
In Inventory: on «Stock levels» or the «Raw materials» tab press the bin button at the end of the row. Or in Products (the delete button, or tick several → «Delete selected»).
If some is still in stock: bring it to zero first with a stock count or a write-off, so the stock value keeps agreeing with the books, then delete it.
If a raw material is in a recipe: take it out of those items' recipes first (the «In recipes» column says how many).
An item ever sold or bought is hidden from the lists and stays on past invoices and reports; one with no movement at all is deleted for good.
type each item's price on the app (empty = our price + the agreed markup) and untick items not listed there.
App prices can differ completely from the restaurant menu. «Copy the whole menu» fills the items with no app price yet at our price + the app markup (a price already typed for the app stays); «Copy from another app…» copies another app's prices.
After copying you can edit any item's price by hand, or «Change all app prices» by a percent or an amount (e.g. 10% or -2 SAR) for all items or the searched ones, then «Save». The restaurant menu does not change.
At the till, picking the app shows its menu and prices.
Or write to me: «copy the menu to Keeta» (Arabic: «انسخ المنيو إلى كيتا» / «انسخ منيو جاهز إلى كيتا»).
Notes & extras (priced or free)
in Products → Notes & extras (under Categories): a table of every note with its extra price next to it.
«Add note» adds a row: type the name (e.g. Extra cheese) and the price (e.g. 2), then «Save».
Leave the price empty for a free note (e.g. No onion).
The bin removes a note.
At the till: the «Note» button on the item opens the popup, the cashier picks from it and the price is added to the item automatically. The popup has «Add / edit», which opens the same list over the till without losing the cart (a cashier without the edit-products right can only add new ones).
Or tell the assistant: «add extra cheese for 2».
Item notes are for restaurants only: in a market, salon or factory there is no «Note» button or Notes page.
Payment: cash, card, transfer or split
In the payment window: cash (with banknote buttons and change), card, bank, split between several methods, or credit on account (needs a customer; the credit limit on the customer card applies). Your own payment methods are added in Settings → POS settings. Credit invoices are under Credit sales.
Sales returns
Sales return: open the invoice in Invoices and press Refund (or F9 in the POS), pick the items and quantities — a credit note is issued and the money is returned. If the item is damaged tick "damaged, not back to stock" so it is written off instead of going back on the shelf.
Holding a sale and till shortcuts
In the POS: F2 barcode, F4 (or the ⏸ button next to Pay) holds the current invoice and opens a new one, F6 the held list to finish them, F8 pay, F9 refund.
Order type: dine-in / takeaway / delivery
The order type (dine-in / takeaway / delivery) is picked in the payment window (F8), at the top; next to it the customer (walk-in, or pick a saved customer / B2B tax invoice) and the customer mobile (printed on the invoice) — they are no longer in the cart, whose header shows only the table or «Current»; with «Delivery» the driver choice and «pay the driver» appear. In restaurants the type is also set when starting the order from the floor plan; changing it at payment for an order already sent to the kitchen updates that order. Delivery-app orders (Jahez, HungerStation…) have their own payment window with the app order number and the customer mobile. Hold / new invoice is the ⏸ button under the order next to Pay (or F4); held invoices show as a strip above the order only when there are any — so the order list keeps the full room. In restaurants every new order starts as dine-in by default; tap takeaway or delivery in the same payment window when needed.
Workshop extras
(inside the work order, «Repairs & warranty»):
Estimate: «Print the estimate» (prices and VAT) and «Print the work card» (for the technician, no prices).
Customer link: «Customer link» → QR or WhatsApp; the customer sees the car's status and the estimate and taps «I approve», which moves the order to repairing.
Intake check: fuel level, scratch notes, up to 4 photos, the customer's signature at receiving and delivery; plus the bay and the company's order number.
Missing parts: «Missing parts» → pick the supplier → a purchase order linked to the order.
Packages and ready labour: ⚙ settings: car classes, bays, a labour list with a price per class; save lines as a package and add it in one tap.
Registration and insurance: «Cars» → the car → expiry dates; they show in «Service due» with a WhatsApp reminder.
Workshop board (by technician or bay) and workshop report (margin per order, top earning work).
Fleet accounts: the company buys on credit and its order number is kept; search its name in «Cars» to see all its cars.
Not there: OBD link, VIN parts catalogue, insurance claims.
The workshop (HADAB Car)
menu «Repairs & warranty»:
Receive a car: «Receive a car» → type the plate (a known car fills its make and owner) → tap what is wrong (oil change, brakes, A/C…) or type it → owner name, phone and the odometer → save and print the receipt.
In the order: add parts from stock and labour lines, pick the technician and hours for each labour line, move the status (checking → waiting for approval → repairing → ready), take a deposit.
Delivery: makes the invoice (ZATCA), saves the odometer and sets the next service (⚙ settings: months and km).
Cars: every car with its visit history. Service due: cars whose date has come, one tap sends the WhatsApp reminder. Technician earnings: labour per technician × the % set in ⚙ settings.
Repair & warranty orders
(both plans, menu «Repairs & warranty» in shop branches): for phone, electronics and car shops.
Receive a device: the customer (or a name and mobile for a new one), device, brand, model, serial / IMEI (the 🛡 button checks the warranty), the fault, what came with it, its condition, passcode, an estimate, the due date, the technician and an optional deposit → number RP-… and an intake receipt prints with your terms.
Statuses: received → checking → awaiting approval → repairing → ready, with a note on each and a full log. «Tell the customer» opens WhatsApp with the status text (approval with the cost, ready with what is left to pay).
Parts and labour: a stock part or a labour line with its price; tick «Warranty» to make a line free for the customer.
Delivery: «Deliver to customer» → a normal tax invoice for the paid parts and labour (ZATCA, stock out); the deposit is deducted and the rest is paid the usual ways. Warranty parts leave stock as a write-off with reason «Warranty» (in the write-off report). Nothing to charge (full warranty or not repaired) → no invoice and the deposit is paid back; a deposit above the bill gets the difference back.
Cancel: refund or forfeit the deposit (4230).
Warranty check: by serial it shows whether the piece was sold here and when its sales warranty ends, and any earlier repair still under warranty. The periods and printed terms are under the ⚙ button on the screen (default 12 months and 30 days).
Reservation with a deposit
(both plans): the customer reserves goods, pays part now and takes them later.
From the POS: add the items to the cart and pick the customer → «Reserve» → choose the customer (or type a name and mobile for a new one), the deposit (more than zero, not above the total) and how it is paid (cash / card / transfer), the pickup date and a note → a deposit receipt (RS-…) prints.
Or from the menu Reservations → «New reservation with deposit» and pick the items there.
The deposit is an advance on the customer's account: not a sale, no ZATCA invoice, and the goods stay in stock — Inventory shows them as «Reserved».
Reservations: open / overdue (past the pickup date, highlighted, with a WhatsApp reminder button) / picked up / cancelled, with search. Open one to change the date or note or add to the deposit.
Pickup: «Hand over and invoice» → a normal tax invoice for the full amount (ZATCA, stock out); the deposit is taken off and the rest is paid the usual ways. The invoice shows «Deposit already paid» and «Paid at pickup», and the customer's balance ends at zero (the credit limit never blocks the deposit).
Cancel: «Cancel reservation» → either refund the deposit (cash / card / transfer, with a payout voucher) or forfeit it as income (account 4230 forfeited deposits). Not allowed inside a locked period.
Drivers & delivery
delivery orders, drivers and what each driver collected. Delivery Apps: sales through each app, its commission, what it owes you and the payouts received. To add a driver write to me: "add driver Mohammed 0500000000".
Taking the money from a driver: next to each invoice (or for all) press «Receive cash» when they hand you cash — it goes into the drawer — or «mada» when the customer paid on the driver's mada terminal: it goes to the bank, not the drawer, and shows in the shift as «Drivers' mada (not in drawer)».
Sending the invoice on WhatsApp
The Send on WhatsApp button in the POS or in Invoices sends the invoice as a PDF: on the desktop app paste it in the chat with Ctrl+V, on a phone the share sheet opens, in a browser the file downloads. The mobile is saved on the customer list for offers later.
Invoices
search by invoice number, customer name or mobile; from there reprint, refund, send on WhatsApp, and see the ZATCA status or resend to ZATCA.
Quotationsneeds the Accounting plan
make a quotation for a customer, print it A4, edit or cancel it; "Convert to invoice" issues the invoice at the quoted prices.
Installment salesneeds the Accounting plan
sell the invoice on the customer's account (credit), then on the invoice or in Customer accounts → statement press «Installments»: down payment, number of installments, monthly / weekly / custom dates, first due date — split equally, every row editable (the total must equal what is left). No interest; the invoice and its VAT do not change. Payments are receipt vouchers («Pay installment»), each installment's status is worked out for you. Reminders (overdue, today, next 7 days) and the installment aging report are in Customer accounts → Installments, with WhatsApp or SMS after you confirm, and a printable schedule for the customer.
Reminding customers of their debts
Debt reminders: Customer accounts → WhatsApp debt reminders — a button per customer who owes opens WhatsApp with a ready message. For text messages connect your provider (Taqnyat, Msegat, Unifonic, 4jawaly) in Settings → SMS messages.
Customer accounts
each customer's balance and a detailed statement; "Record payment" for money received (prints a receipt voucher), with Excel / print. Or write to me: "received from customer Ahmed 500 cash".
Inventory → "Write-off" button
pick the reason (damaged, expired, broken, lost), date and a note, search or scan the items and quantities — a numbered, printable document (WO-000001) takes them out of stock at cost. The Write-offs tab lists them; "Cancel" puts the goods back if it was a mistake. Report: Reports → Damaged & lost. Or write: "write off 3 milk expired".
Restaurants: cooked food left at the end of the day goes in the same tab with «End-of-day leftovers» — pick the dishes and sizes and their ingredients leave stock.
POS layout for shops
(both plans):
Item buttons: categories and item tiles (the usual look).
Barcode only (supermarkets): no buttons, a big barcode field, a wide invoice and a big total, the last scanned item shown large. Typing a name lists matches with price and stock.
Split: best sellers on one side, a wide invoice on the other.
All devices: Settings → POS → «POS layout» and save.
One device: the buttons at the top of the POS (next to the tile size) — kept on that device only.
Restaurants and salons keep the buttons.
Translating notes
(like «toasted bread»):
In Products press «Translate names and notes» (translate missing): it translates item names, item and category notes and the ready notes into English, Turkish and Urdu in one go; press it again after adding new notes.
The note is saved on the order as written, and every screen shows it in the user's language: till, kitchen, customer screen; the invoice prints it in Arabic plus the second language.
A priced note («Extra cheese +3») keeps its price.
The default notes (No onion, To go…) come translated in all four languages.
An invoice with no saved products
in the till press «Free item», type the description, quantity and price (tick «price excludes VAT» if needed), add it and issue the invoice as usual. Tick «Save it as a product» to keep it in Products for next time.
Discount coupons
(both plans):
Create: Promotions → «Coupons» tab → «New coupon»: the code (e.g. RAMADAN10, unique, any case), % or amount, minimum invoice, max discount for %, start and end dates, total uses allowed and uses per customer (then the sale needs a chosen customer). Each coupon shows how many times it was used and the discount given.
At the till: the «Coupon» button under the total → type or scan the code. The discount is spread over the invoice lines so VAT and the ZATCA invoice stay right, and the receipt prints the code and the discount. No discount right needed.
The system checks the coupon again when the invoice is saved and works the discount out itself (expired, used up, below the minimum, already used by this customer…).
A full return of the invoice gives the coupon use back.
A used coupon is switched off instead of deleted.
Report: Reports → more → «Coupons & gift cards», or ask me "coupons report".
Gift cards
(both plans):
Selling: at the till, the «Sell a gift card» button at the top → the amount, optional name, phone and expiry, and how it is paid (cash / card / bank). It gets a 16-digit number and prints with a barcode and QR.
No VAT when sold (VAT is charged when goods are bought with the card): the amount is owed by the shop in 2320 Gift Cards; cash counts in the shift drawer.
Paying with it: in the payment window pick «Gift card», type or scan the number, the balance shows → pay part or all of the bill and the rest in cash or card; what is left stays on the card. A stopped, expired or short card is refused.
A return can go back on the card (up to what the card paid).
Promotions → «Gift cards» tab: all cards, balance lookup, each card's moves, stop / activate, reprint.
Or ask me "gift card balance 1234…" or "gift cards".
Promotions
make a discount as a % or an amount on a category or a product, with start and end dates and, if you want, set days and hours — it applies automatically in the POS.
Doubtful debts provision and write-offneeds the Accounting plan
Accounting → «Doubtful debts»:
Pick the date (month or year end) — customer debts are split by age (up to 30 days, 31-60, 61-90, over 90).
Set the provision rate per bucket (usually 0%, 5%, 15%, 50%) — the needed provision is compared with what is booked.
«Post provision» books only the difference (expense 5190 / provision 1139); the rates are kept for next time. «Undo last entry» cancels it.
Write off a customer who will never pay: in «Customers at risk» → «Write off», type the amount (not more than the balance). It uses the provision first, the rest is an expense, and it leaves the customer balance (shows as «Bad debt» on the statement). To undo: delete that line from the customer statement.
Customer advancesneeds the Accounting plan
(a deposit the customer pays before the sale): Accounting → «Customer advances»:
«Receive advance»: pick the customer, amount and method (cash, mada, transfer) — it is booked as liability 2330, not income.
When they owe on credit: «Settle from advance» pays their credit invoices from it (shows on their statement as «From advance»).
To give the money back: «Refund» (not more than what is left).
Each move can be deleted from «Moves». What is left per customer is in the table and on the balance sheet as a liability.
Settings → Loyalty
points per riyal and the value of a point. The customer earns points on purchases and redeems them at the till. Ask me "loyalty points" for a summary.
Settings → Currencies
add the currency and its rate, then choose it on the supplier and the purchase invoice. On payment the exchange difference is booked automatically.
The «Sale complete» window after a sale
Settings → POS settings → «Show the «Sale complete» window after a sale». Turned off, a new sale starts right after the invoice is issued and a short note at the bottom shows the invoice number and the change (if any). Automatic printing and the driver copy stay as they are; reprint or WhatsApp from the Invoices page.
Till shortcuts, quick quantity and undo
Quick quantity: type 3* in the barcode box (a «× 3» badge shows), then scan or tap the item = 3 pieces are added. Or in one go: 3*6281234567890. Esc cancels it.
Press ? (or F1) on the till for the shortcuts list: F2 barcode box, F8 pay, F4 hold, F6 held sales, F9 return, Ctrl+Z undo, Ctrl+K search everything.
Undo instead of confirm: removing an item or clearing the cart happens at once, and an «Undo» bar shows for 5 seconds (or Ctrl+Z) to bring it back.
Selling now: item buttons are ordered by what sells most at this hour (last 4 weeks) with a 🔥 «Selling now» button. Restaurants keep the category order and put best sellers first inside each. Switch it off in Settings → POS settings → Order item buttons by best sellers.
Shifts and printing
Invoice print format (A4 or 80 mm)
in Settings → Printing → Invoice template → Invoice print format, three options:
80 mm for all (receipt roll) — the default.
A4 for company invoices only: the standard tax invoice (not simplified, the buyer has a VAT number) prints on A4; simplified invoices stay on 80 mm.
A4 for all.
There is no choice at payment time; the format is used for auto print after payment, reprints, refunds and the Invoices page preview. Press Save after changing it.
Or write to me: "print company invoices on A4", "print all invoices on A4", "print on 80 mm again".
The roll width (80, 58 …) is under Print size on the same page.
Chose A4 but it prints 80 mm? A4 invoices never go to the receipt printer: pick a normal (laser / inkjet) printer in Settings → Printing → A4 invoice printer, press Test print, then Save. Left on «Ask each time», the print window opens to pick the printer (desktop app).
An A4 invoice carries everything the receipt has: the COPY mark on a reprint, the coupon discount, the order number, the driver / delivery app / amount to collect, gift card and change, and «Walk-in customer» when there is no customer — in every business type (restaurant, supermarket, salon, factory).
A4 invoice: classic, modern (colour), minimal (black & white) — and its colour.
Logo size: none, small, medium, large.
Show or hide: address, CR number, customer, cashier, payment method, English item names, thank-you line and the HADAB POS line.
Print size (by hand) when the receipt is cut off or leaves space: paper width in mm (80 / 76 / 72 / 58 or any), side margin, space at the end and text size. If both edges are cut off: raise the Side margin to 5–6 mm or pick 72 mm. If one side is cut and the other is blank: press “Cut on the right → move it left” (or the opposite) once or more, or set Print shift to −4, then Test print.
Printed texts: the header, your own thank-you line and the footer (e.g. the return policy).
Receipt designer: the live preview sits beside the settings (changes with every pick), text size small/medium/large, QR position bottom or top of the receipt, and a «Test print» button above the preview prints on the till printer.
The preview changes as you go, then press Save. Business name, VAT number, date, VAT, total and the QR code always print (ZATCA).
Or write to me, e.g. "make the receipt compact", "set paper width 58 mm", "change the thank-you line to See you soon".
Print a product barcode
in Products, next to each item's barcode (and next to the edit button) there is a printer icon 🖨️ — press it, type the number of labels, choose the printer from the «Printer» list in the same window and press Enter (or «Print»). The printer list shows in the desktop app; in a browser you pick the printer in the print window. No barcode yet? Press «Make barcode» in the same window. For many items: tick them, then «Print barcodes». Label size and printer: Settings → Printing → Barcode label printer.
The second language on the invoice
the invoice prints in Arabic plus a second language you pick in Settings → Printing → «Receipt second language» (English, Turkish, Urdu). It prints in full black, as clear as the Arabic: the labels, the item column headers, the payment method and each item’s second name under the Arabic one. To hide the items’ second names: Settings → Printing → Invoice template, switch off «Item names in the second language».
Blank sheet after an A4 quote / invoice
The A4 page was exactly one sheet tall, so a hair of printer rounding pushed a blank second sheet out. Fixed in the latest update: the paper now prints only as long as the content (half a page = one sheet).
Windows program: updates by itself when the PC is idle. Browser: reload the page (F5).
If it still happens: in the print window choose paper A4, scale 100% (or «Fit»), margins None/Default.
Settings → Printing
one receipt printer — pick it, turn on auto print after payment, choose the receipt language, then press Test print. Thermal (80 mm) or A4 is chosen under "Invoice template → Invoice print format" on the same page, with the invoice look and texts.
If nothing prints: check the printer is chosen by its exact name and works in Windows, then try the test print.
Cashier steps out without closing the cash
The cashier presses Log out with a shift open → the program asks: «Close the shift» or «Step out — keep the shift open».
Choose Step out; the manager signs in, makes the change (an item price, a setting, anything) and logs out.
The cashier signs in again and goes on with the same shift — same sales and drawer — and closes it at the end of the day as usual.
Closing the cash at log-out is now a choice, not a must.
Opening and closing the shift
Open a shift with the Shift button in the POS before selling. At the end of the day: Cash closing — count the drawer and enter the amount; you get the difference and a Z report per cashier. Closing the shift resets the order / queue number to 1; invoice numbers never reset. The cash-closing report follows the shift itself, not midnight: every sale from opening to closing is in its report even past 12 at night, and the shift is listed under Reports → Shifts on the day it was opened. Daily reports and the dashboard count each invoice on its own date (the day it was issued), as ZATCA requires. Short report to save paper: the cash-closing screen has a «Full report / Short report» choice next to the close button. Short prints totals only (sales, refunds, VAT, payment types, drawer and difference, voids / staff meals / leftovers totals) without the item and category lists. The choice is remembered on this device; the full one can still be printed from the same screen or Reports → Shifts. Open shift sales without closing: the Dashboard has a «Shifts open now» card. Per cashier: sales so far, invoices, cash and card, expected drawer, refreshed every minute. With more than one shift open, an «All open shifts total» card comes first and adds them all up (sales, invoices, cash, card, refunds, expected in the drawers), so nothing to add by hand. «Report without closing» shows and prints the shift report (full or short) marked «Interim report — shift still open»; the shift stays open. Shown to users with the reports right. The manager closes every shift with theirs: when the admin or a manager closes their own shift at the POS, the closing screen lists «n other open shifts close with it» (the admin: every open shift on the device, whatever branch or warehouse the cashier is set to; a branch manager: their branch) with each drawer's expected cash; type a drawer if counted (empty = as expected). «Close and print» closes them all and prints ONE full closing report: every user's sales from the start of their shift to its end added up (sales, VAT, payment types, items, drawer) plus a «By user» part (each cashier's sales, invoices, expected drawer, difference); «Print each user's report» prints a separate Z per user; the shift note says «أُغلقت من حساب …». With no shift of their own: Dashboard → open shifts now → «Close all open shifts». A cashier whose shift was closed sees it within half a minute and is asked to open a new shift (the cart stays); no invoice goes into a shift the manager closed.
Accountant desk
(both plans):
Menu Finance → «Accountant desk» (needs the reports or accounting right). The tills’ results without entering the POS: every shift (cashier, expected cash, counted, short or over, card, transfer…) and the day’s totals: net sales, returns, discounts, VAT and each payment method. Pick the branch and period at the top.
Alerts: cash short, cash over, many returns, high discount, voids after kitchen, a shift open too long — each with its Z report.
Each closed shift has «Reviewed» with a note. A shortage can be charged to the cashier (employee advances) or posted as an expense, an excess as income — posting needs the Accounting plan and the accounting right. «Undo» reopens the review and reverses the entry.
Start page per user: Users → edit → «Start page» (POS, accountant desk, dashboard, invoices). An accountant without the POS right opens the accountant desk by itself.
Items, stock and purchases
Sizes & colours
(clothes, shoes…):
Master data → Products → open the item (a new item: save it first, then open it).
In «Sizes & colours» press «Add an option» (up to 3: colour, size…) and type the values comma separated: Red, Blue — S, M, L.
Press «Create variants»: each combination becomes an item «Shirt - Red / M» with the main item's category, price, cost, VAT and photo and an automatic barcode.
In the grid set each one's barcode, SKU, price, cost, opening stock, active → Save.
The main item is a group: never sold, bought or counted itself; its stock is the total of its variants.
On the POS it is one tile → tap it and pick the size & colour (each one's stock shows). Scanning a variant's barcode adds it directly.
Purchases, stocktake and transfers are per variant. Sales by item report: one row per variant, or «Group by main item».
Taking a value out removes its variants (ones with history are hidden).
Purchases → Supplier returns
send goods back to the supplier — they leave stock and reduce what you owe. Damaged goods the supplier pays for: a supplier return with reason "damaged" (not a loss for you).
Purchases → Supplier prices
for each item the last price from every supplier (plus the lowest price, how many times you bought and the date); the cheapest in green and the saving if you bought from it. Search by item, pick the period (3 / 6 / 12 / 24 months) and "items with more than one supplier only", with Excel / print. When you enter a purchase or a purchase order, a hint under the line shows if another supplier sold you the same item cheaper.
Supplier statement reconciliation
Purchases → Supplier accounts → open the supplier → "Reconcile supplier statement". Open the Excel / CSV the supplier sent (date, invoice no., description, debit / credit or amount, balance) and map the columns once (saved per supplier). Each line is matched by invoice number, otherwise by the same amount within ±10 days. You get their balance, ours and the difference, plus "on theirs, not ours" (missing invoice), "on ours, not theirs", "different amount" and the matched ones, with Excel / print. Nothing is posted — you fix the differences yourself.
Purchases → Supplier accounts
what you owe each supplier and a detailed statement. "Pay supplier" records the payment and prints a payment voucher; the printer icon on a payment reprints it. Or write: "pay supplier Almarai 2000 bank".
Stocktake in a restaurant
(and salon):
An item with a recipe keeps no stock of its own: its stock is its raw materials, deducted with every sale. A menu imported from a photo or file comes in without stock tracking. So when the inventory looks empty it says «You have … items sold without stock tracking» with this explanation.
Raw materials (meat, chicken, bread, oil, boxes…): Inventory → «Raw materials» → «New raw material» with its unit (kg, litre, piece) and current quantity, then pick it in each item's recipe (Products → the item → «Recipe»). Quantities come in with a purchase bill; count them with «Raw materials count» (or print the count sheet).
Ready products you buy and sell as they are (drinks, water, ready desserts): Products → select them → «Turn on stock tracking» (or open the item and turn on «Track stock»). They then show in the inventory and the stocktake, and purchases add to them.
Full stocktake of both: Inventory → «Full stocktake» → «New stocktake», count, then «Post stocktake» (differences post an automatic entry).
End of day: «End-of-day leftovers» for food cooked but not sold (back to its raw materials or written off).
Order what's low — one purchase order per supplier in one click
Inventory → «Order what's low»:
It lists items that are out, under their reorder level or running out soon (at the sales pace; raw materials at their usage) with a suggested quantity for the cover period.
Adjust the quantity or cost, choose the supplier for any item without one (the last supplier you bought from is suggested), untick what you don't want.
Press «Create … purchase orders» → one order per supplier at once. Large ones wait for approval if the «Approval limit» is on.
From Purchases → Purchase orders send them to the supplier, and «Receive» when the goods arrive.
Daily count of the key items
(two minutes a day):
Inventory → «Full stocktake» → «Daily count items»: pick the costly or often-short items (the system suggests the most valuable items and raw materials) → save.
Every day press «Daily count» → a count with only those items opens (today's if it is still open). Count by barcode, the phone camera, or type the quantity.
«Post stocktake» → the difference shows in riyals and the stock is adjusted.
Under the list, «Items most often short» shows how often each item was short and the shortage value over the last 7 / 30 / 90 days.
Stocktake approval
(no big stock difference without the manager):
Inventory → «Full stocktake» → settings ⚙ → turn on «A count needs the manager's approval when its difference is large» and set the limit (value of the differences, over and short). 0 = any difference needs approval.
When staff post a count over the limit it becomes «Waiting for approval», the stock does not change, and the manager gets a dashboard alert.
The manager opens it, reviews the differences → «Approve & post» or «Send back» with a reason (it returns to draft and the counter sees the reason).
The right «Approve stocktakes» (Users & rights) is on for admins by default; holders post directly with no limit.
Counting with the phone camera and by carton
Linking the phone to the count: open the stocktake on the PC (Inventory → Full stocktake → open the session) and press «Count on a phone» → a barcode shows; scan it with the normal phone camera → the count opens on the phone, signed in with your account, no password (the barcode works once and ends in 5 minutes; link more phones with a new barcode each). With the Windows program the phone must be on the same shop Wi-Fi and that PC is the main one.
On the phone press the camera button 📷 «Count with the phone camera» → point it at the barcode, each read adds one (with a beep and vibration). When the phone is on the shop computer over the local Wi-Fi it works by photo: each barcode photo adds one. No scanner needed.
By carton: an item with a carton/pack size (pieces per pack in its sizes) shows a «+Carton (24)» button that adds the whole carton at once, and scanning the carton barcode adds all its pieces.
Scan an expense bill
(both plans, free, on your device):
Expenses → «Scan bill QR»: point the camera at the QR of a tax invoice and «New expense» opens filled in: seller, VAT number, date, amount before VAT and the VAT. A seller whose VAT number matches one of your suppliers is picked automatically.
«Photo of bill»: take a photo of a paper bill or pick a picture / PDF. It looks for the QR first (exact); with none it reads the words: total, VAT, date, VAT number and bill number, and you check them before saving. The bill picture is kept with the expense (📎).
A new seller? Tick «Add the seller to suppliers».
The same bill entered before (same date, amount and seller) gets a warning.
All reading is on your device: the picture is not uploaded to any server for processing, and it costs nothing.
Production ordersneeds the Accounting plan
(Accounting plan):
Production → Recipes (BOM) → «New recipe»: pick the item you make, how much one batch gives (e.g. 20 pieces), the materials one batch takes and their quantities (grams for a material kept in kg is fine), and labour and running costs per batch if any. A half-made item (with its own recipe) can be a material.
Production orders → «New production order»: the item, quantity and needed-by date; before saving you see the materials needed, what is in stock, what is short and the planned cost.
«Start (issue materials)»: the materials leave stock into Work in progress (1145). If something is short you can tick «allow starting with materials short».
«Finish into stock»: enter the really used quantities if different and the quantity made (the shortfall shows as waste), batch no. and expiry; the product enters stock at its real cost (materials + labour + running costs). A missing half-made part gets its own sub-order automatically, and cancelling returns the materials.
Material needs (MRP): every planned order opened down to the raw materials against stock and open purchase orders, then «Make purchase orders» (one per supplier). «Make for sales orders» creates production orders for what the sales orders still need.
Production cost: recipe cost against real cost, variance and waste per order and per item.
Work centers and stages: under «Work centers» define machines and lines (hours a day, worker rate and cost per hour); in the recipe add stages (mix, bake, pack…) with center and hours, an alternate material when the main one runs out, by-products (e.g. crumbs) with their value, and QC checks. Every edit saves a new recipe version.
Inside an order: «Partial receipt» (quantity, rejected, rework, QC result, inspector, batch), «Extra issue / return materials», «Log hours» per worker and stage, and «Subcontract» (supplier and fee go into the cost).
Schedule and capacity: load of each center per day and % busy. Sales forecast: how much to make for the next 30 days from sales, sales orders and safety stock. On the item set lead time and safety stock so material needs know when to order.
Quality and labour hours reports, and batch trace: enter a batch no. to see its order, materials, supplier batches and which customers and invoices it went to (for a recall).
Sales orders and delivery notesneeds the Accounting plan
(Accounting plan):
Sales → Sales orders → «New sales order»: the customer (a registered one), the delivery date asked, the customer PO number, the delivery address and the items with prices. Or on an open quotation press «Make a sales order». The order posts nothing and does not move stock.
«Deliver (delivery note)»: the quantity delivered now of each item (deliveries in parts are fine), driver, vehicle and received by; the delivery note prints for the customer to sign. Delivered quantities are held off the stock until invoiced.
«Invoice delivered»: one tax invoice (credit by default) for everything delivered and not yet invoiced; stock, cost and the entry are booked as any sale.
Status: open → partly delivered → delivered → invoiced. «Cancel the rest» closes what was not delivered.
Late orders (past the delivery date) show under «Late», and the Delivery notes tab lists every note to print or cancel.
«Down payment»: record the advance on the order (cash/card/transfer); it is deducted from its invoice automatically. Orders check the customer credit limit, an admin can allow going over.
A delivery note can carry a shipping charge (invoiced with VAT), and «Return» on the note brings the quantity back to stock and to the order.
Warehouses
(both plans):
Inventory → Branch stock → «Warehouses» → «Add a warehouse», type its name and save (needs the settings right).
Receive into it: on the purchase invoice pick «Received at» = the warehouse, so the goods go into its own stock.
Supply the branches: Inventory → Transfers → New transfer from the warehouse to a branch; if the item has batches the earliest expiry moves first with its batch no. and date.
Each item per warehouse and branch is in Branch stock, batches in Batches & expiry, and a warehouse is counted like any branch.
A warehouse does not sell: a user tied to a warehouse cannot issue a sales invoice. The main branch, or a branch with sales, cannot become a warehouse — add a new one.
Batches and expiry dates
(both plans):
On the purchase invoice each line has a batch no. (optional) and an expiry date.
Inventory → «Batches & expiry»: every batch in every branch and warehouse: received, left of it, days left, value and where it came from (purchase and supplier, or a transfer). Filter expired / expiring soon / fine / no batch; print and Excel.
The earliest expiry goes out first by itself (sale, transfer, write-off), so what stays on the shelf is the newest.
Stock already there without a batch: «Add a batch to current stock» → item, branch, batch no. and/or expiry, quantity (the stock quantity does not change). It can be removed from the same table.
A supplier return comes off the batch you write on it. Expired goods: record a write-off or return them to the supplier.
Expiry dates
On the purchase bill enter each line's expiry date (and batch, if any).
Purchases → «Expiring soon»: every batch expiring soon with the quantity left, plus a dashboard alert.
Inventory shows the nearest expiry next to the item and an «Expires within 7 days» card with the item count.
Expired stock: record it as damaged (Inventory → Damaged / lost) or return it to the supplier.
pick the branch, all items or one category, and the date → a session (ST-000001) keeps every item's quantity at that moment.
Count: scan barcodes (each scan adds 1, or the quantity in the small box; scanning again adds again) or type the count straight in the table. It autosaves as a draft, so several devices can count and finish later (the refresh button brings the other devices' counts).
Follow up: counted / not counted, each item's difference in quantity and value at cost, with filters (counted, not counted, differences). Print count sheet (no quantities) and Print result (the differences).
Post: «Post stocktake» and choose what happens to items not counted (leave unchanged, or set to zero) → all differences at once in one entry to inventory differences (5150).
Selling during the count is fine: the system keeps each item's quantity when it was counted and applies the difference to the stock then, so sales are not counted twice. A draft can be cancelled or deleted; a posted one cannot be changed or dated in a locked period.
Inventory → Stock by branch
each item's quantity per branch. Inventory → Branch transfers: move goods from one branch to another. Branches themselves are added in Settings → Branches.
Inventory → «Full stock & buying»
(manager; with branches linked to the manager's device it includes the branch devices):
For every item and raw material: Here (the manager's device), each linked branch (arrives within a minute while online, shown even with the branch off), and the total.
Used over the last 3 / 7 / 14 / 30 days on all devices: items sold, and the raw materials their recipes took (a quarter chicken = 0.25).
Lasts (days) at the same pace, and Buy = what is missing to cover the days chosen in «Cover days» (or to reach the reorder level), with the rough buying cost under the table.
«Shortages only» shows the short and negative ones; print button.
Branch items are matched by name, barcode or SKU; spaces do not matter.
Flow: the manager buys → Branch transfers to the cashier → the cashier accepts → sales take from it, and the manager sees it all here.
Full video (linking, moving stock, balances): https://youtu.be/n4X_vpRfJ0s
Increasing and adjusting stock
Adding stock: a purchase invoice in Purchases, or an adjustment in Inventory with a plus quantity. Stock count: in Inventory "Count / adjust" — enter the real quantity and the difference is booked. To count all items or a whole category by barcode, from several devices: the «Full stocktake» tab. Each item's movements are in the "Movements" tab. Or write: "set stock of milk to 24".
Inventory → Excel import
for products and quantities, with no item limit (100,000+ are sent in batches). Or send me the file here: I read it and show the cards for you to review before saving — for free. Moving products: in Products press «Copy» or «Excel» (selected or all) then paste or import them on the other PC — names, prices, barcodes, category, quantities and the preset notes («notes» column) all go along.
Products → Add
name, price incl. VAT, cost, barcode, category and kitchen printer. Categories: colour and printer. For many items: Excel import. One category at a time: above the list are the category buttons («All», «Drinks»…) with the number of items in each; press one to see only its items, the search then looks inside it, and press an item to edit it. Or write to me:
"add product Pepsi at 3"
"change the price of Pepsi to 3.5"
"raise prices drinks 5%"
"stop selling Pepsi"
Delete many products in one click
in Products press «Select all», or press the category button above the list (e.g. «Drinks») then «Select all» to tick that group only, or tick products one by one. Then in the yellow bar press «Delete selected» and confirm. A product with sales, purchases or stock moves is only hidden and stays on old invoices; the rest are deleted for good. The same bar has Excel export, copy and barcode printing.
Purchases → «Purchase orders» → «Approval limit»
set the amount (incl. VAT). An order above it stays «Waiting for approval» until the admin or a user with the right «Approve purchase orders above the limit» (Users & rights) approves it, or rejects it with a reason. It cannot be received before.
Delete a purchase invoice
in Purchases → Purchase invoices open the invoice and press «Delete», then confirm. Its quantities come off stock, the average cost goes back to what it was, its entry and amount leave the supplier's account, and a purchase order it came from is opened again. If it has landed costs delete them first inside the invoice; if it has a supplier return cancel that first in «Supplier returns». For a small mistake use «Edit» instead.
Purchases
a "Purchase invoice" adds the goods to stock at cost (cash or on the supplier's account). "Purchase orders" order goods from a supplier and print them; on receipt they become a purchase invoice. Or send me a picture or file of the supplier's invoice: I read it and prepare it for you to review — for free.
Expenses → Add
amount, VAT and the account (rent, electricity…); to put it on a supplier's account choose the supplier and "credit". Each expense prints a payment voucher. Or write: "expense electricity 500 cash".
Serial numbers
. On the purchase invoice type or scan the pieces' serials under the item (one per line); when it is sold the till asks for the serial (or «Without a serial»). To find one: Inventory → «Serial numbers»: which supplier it came from, who bought it and when (warranty, repairs); stock already on the shelf is typed there.
Moving the AI assistant button
if it covers something, hold it and drag it (mouse or finger) anywhere on the screen; the spot is kept on this device. A plain click without dragging opens the assistant.
Branches and remote control
Branches on the manager's device
(desktop 1.0.163+, after linking): Home → «Branches now»: today's sales and invoices of each branch, open shifts and orders, out / low stock and the last update (a warning after 10 minutes with nothing new); Smart sync: every 20 s while the manager has Home or the branches screen open, every 5 minutes otherwise (lower usage); «Sync now» on the card makes the branches send at once. Reports and Inventory → «Branch»: this device / one branch / all branches (combined report). «Branch profits» (Accounting plan): each branch is a cost centre with its income statement from all its journal entries (sales, cost, expenses, manual entries), next to this device and the total. The branch needs 1.0.163+ to send its journal.
The general manager signs in on any branch device
(desktop program, after linking branches):
The general manager accounts of the manager's device reach the branches with the link.
On any branch device type your manager-device login name and password → you get every right there, and «All branches — signed in as general manager» shows every branch's figures.
In Users it shows as «General manager account from the manager's device».
A branch user with the same login name keeps their own password.
Branch users from the manager's device
(desktop program, Settings → Branches):
On the branch card press «Branch users».
Add a user (name, login name, password of 6+, role), change a user's role, stop or start them, or set a new password.
It reaches the branch with the next exchange (about a minute) and the result shows under «Changes sent» (e.g. login name taken, or the branch must keep a general manager).
Stock between linked branches
(desktop program, Settings → Branches → «Stock between branches»):
New transfer: pick the branch, the items and quantities, a note → «Send» — they leave your stock at once.
The other device sees it under «Waiting for you to receive» (and an alert), counts it and presses «Receive» (added to its stock) or «Refuse» (back to the sender's stock).
A branch sends to another branch through the manager's device.
Entries at cost on both devices: stock against 1195 Linked Branches Current Account.
Pick the dates: one row per branch and this device: sales, invoices, average ticket, VAT, returns, cost of sales, gross profit, expenses, purchases, leftovers, write-offs, staff meals, kitchen voids, short shifts and cash difference, stock value now.
A totals row, best sellers across branches, and Excel.
Manager alerts about branches
(dashboard and the manager mobile /m, on the manager's device):
A branch offline for more than an hour.
Cash short at a shift close (last 24 hours).
Big kitchen voids today.
Items out of stock in the branches.
A branch on an older version — each branch card shows its version, with a yellow line when older than yours (update it at the branch: Settings → Subscription → Update).
A stock transfer waiting for you to receive.
A stock transfer you sent not received for over 2 days (call the receiving branch).
Messages to another device not sent after several tries (the device keeps retrying by itself).
Branch link health
(desktop 1.0.111):
On the manager's device each branch card shows «link healthy», or a red line with messages waiting to go out and incoming messages that could not be applied.
A message that cannot be applied is retried every minute; after 5 tries it is put aside so the rest keep flowing.
A message to one device that fails is retried later and later (1, 2, 4 … up to 60 minutes) without holding up the other branches.
The one-day code is for one branch only: make a new code for each branch.
Each device has its own key: if you see «This device no longer matches its registered key», the manager removes the branch and adds it again.
Big data is compressed (about 30× smaller) when every device has the update.
Linked tills on one network: 30 wrong link codes in 15 minutes from one address blocks it for a while, and a cashier PC no longer waits for the licence check before a sale.
Send the full menu to the branches
(manager's device, Settings → Branches → «Send an update to the branches»):
Tick «Full menu» (not ticked by default) and send.
New items are added at the branch and existing ones updated: categories, sizes, recipes and pictures (pictures follow in their own messages).
Stock, cost and printers stay as the branch has them.
Renamed an item or a category? It is updated at the branch, never duplicated, and what you deleted is removed there too (both devices on 1.0.129 or newer).
Old duplicates at the branch? With «Full menu» also tick «Make the branch menu exactly the same as the manager's» and send: every item and category you do not have is removed from the branch. A sold item stays on its invoices; an item with stock at the branch stays.
Or tell the assistant: «send the full menu to the branches».
All branch data on the manager device
(desktop program, after linking branches): each branch sends the manager device a full copy of its data: invoices with their lines, shifts, expenses, purchases, write-offs and leftovers, staff meals, kitchen voids and stock. It is kept on the manager device so it shows even when the branch computer is off, and every change at the branch arrives within a minute while it is online.
On the manager device: Settings → Branches → Link branches to the manager device → on the branch card the button «All branch data».
Pick the dates and switch between: Summary (sales, VAT, returns, payment methods, cashiers, best sellers, by day), Invoices (search by number, customer or phone; click the number for its items), Shifts, Expenses, Purchases, Write-offs, Staff meals, Kitchen voids and Stock (search, out of stock first). Excel export for each table.
The first copy takes a while depending on the branch data, with «… left» until it completes. Update the program on both the manager and the branch devices.
Needs the Reports right. Data travels encrypted and the cloud deletes each message once delivered. Unlinking a branch deletes its copy from the manager device.
ZATCA with branches
each device sends its own invoices to ZATCA with its own certificate (connect each branch from Settings → ZATCA on that branch) — the manager's device does not send for the branches.
On the manager's device (Settings → Branches → Link branches to the manager's device) each branch shows a «ZATCA» line: connected or not, how many invoices are waiting to send and since when, how many were rejected, and how many were sent today. It refreshes every 5 minutes.
If invoices are waiting or rejected: open that branch → ZATCA → «Resend pending».
Unlinking branches
(desktop program, Settings → Branches):
On the branch: «Unlink this branch» → «Confirm».
Or on the manager's device: «Remove branch» next to it, or «End branch linking» for all.
After unlinking the branch stands alone with all its data (items, invoices, users) and keeps selling; the manager's updates no longer reach it.
Moving a whole menu to another device: «Send an update to branches» changes only items the branch already has (prices, notes, promotions); it does not add new items. To move every item: Products → «Select all» → «Export Excel», then on the other device «Import products & stock» with that file, then (while linked) send the update for notes and promotions, then unlink.
Link branches to the manager's device
(desktop program — for branches in the same place or other cities):
On the manager's device: Settings → Branches → Link branches to the manager's device (or Settings → Link devices → the «Manager device» card, which opens the same screen and shows «Current» once linked) → «Start» then «Code for a branch» (the code is valid one day for entering only — once linked the branch stays linked for good, even after restarts or internet cuts; no need to link again).
On each branch: the same screen → «Link this branch» and enter the code.
The cloud only relays encrypted messages and deletes each one once delivered — nothing is kept there.
Every 5 minutes each branch sends the manager: sales today, this month and the last 14 days, payments, kitchen voids, open shifts, top items and the stock: its value at cost, number of items, how many ran out and the names of items out or running low — all branches show on that screen.
Today's sales for restaurants working past midnight: if a shift opened before midnight is still open, today counts from the start of that shift (shown as «since the shift began …»), so it does not drop to zero at 12. Once the shift closes, today starts at midnight again.
Send an update to branches: pick prices and sizes / item notes / promotions and discounts / app menus → «Send» (all branches or one). The branch matches items by SKU, then barcode, then name and applies it within a minute; auto-send can be switched on.
Or write to me on the manager's device: «send the prices and offers to the branches».
Tills in the same shop on one database are linked from «Link devices».
Second way, with the manager device code (no one-day code): on the branch → same screen → enter the manager device code (10 characters — the device code in the manager's licence bar, also shown on its Branches screen) → «Request link». The manager sees the request with a check code — compare it with the branch screen, then Accept or Refuse.
Auto-accept: when both devices belong to the same client in the licence register (same client number or same client phone) the branch is accepted automatically within minutes — the manager can turn this off on the same screen.
Or tell me on the branch: «link this branch to manager 1A2B3C4D5E», and on the manager: «accept branch link request» or «refuse branch link request».
Branch link — new options
(desktop program, 1.0.131 or newer on the manager's device and the branch):
Automatic menu and price sending: any change to items, prices or promotions on the manager's device goes to every branch about 3 minutes after the last edit. Turn it on/off in Settings → Branches → «Send menu and price changes to the branches automatically».
«Update the branch now»: when a branch runs an older version, its card shows «Update the branch now» — the branch updates as soon as its device is idle for a minute with no open cart (the cashier gets a one-minute notice with «Later»). A branch older than 1.0.131 must be updated by hand once.
Daily menu comparison: once a day each branch menu is compared with the manager's; any difference (missing item, other price or name, stopped item) shows an alert and a «Match now» button on the branch card that makes the branch menu exactly the manager's. «Compare the menu now» runs it any time.
Customers and loyalty points (optional): by default each branch keeps its own customers. To let a customer earn points at one branch and spend them at another, turn on «Customers and loyalty points shared by all branches» on the manager's device — the same mobile is the same customer everywhere; one without a mobile stays in its branch.
Send branch settings: in «Send to branches» choose «Branch settings»: receipt header/footer and language, payment methods, cashier options and loyalty points. Printers, company details, e-invoicing and the licence are never sent.
Control a branch from the manager's device
(desktop program, after linking branches; both devices need version 1.0.117 or newer):
On the manager's device: Settings → Branches → on the branch card press «Control this branch».
The branch's whole system opens on your device with a red bar «You are controlling branch …»: items and prices, settings, shifts and stopping sales, editing or voiding invoices, expenses and purchases, reports — everything is saved on the branch device itself.
To come back press «Back to my PC» in the bar.
The branch device must be on and online. The branch shows «The general manager is controlling this device now», and the activity log records your work under your name and the manager device's name.
For speed: open Settings → Branches and wait a few seconds before pressing «Control this branch» — the branches get ready and answer almost at once (from version 1.0.118).
From 1.0.129 (on both devices) you can also do remotely: backups (daily email, «send now», download), ZATCA (Fatoora) onboarding and certificate renewal, and the smart assistant works on the branch data.
Not possible remotely: subscription and licence, data reset, linking devices and branches, your own password and two-step sign-in — do those on the branch device. (Branch staff passwords can be changed remotely from «Users».)
Printing goes to your own device's printer.
Settings → Branches
to add branches. Stock per branch and transfers are in Inventory; reports and entries filter by branch.
Settings → Linked devices
(desktop app, admin): link the cashier PCs to one main PC on the shop network so they work on the same data. Every PC needs its own subscription.
On the main PC: choose «Main PC» and save; it shows the address and the link code (6 digits).
On the cashier PC: choose «Cashier PC», type the link code and press «Find the main PC» to fill the address by itself (or type it) → «Test connection» → «Save & restart».
If the main PC's address (IP) changes after a router restart: the cashier PC searches the network, finds it again within seconds and keeps the new address — it only accepts the same main PC it was linked to. For extra stability you can fix the main PC's address (static IP or a reservation in the router).
If it is not found: check the main PC is running, on the same network, and the link code is right.
A colour per branch
Settings → Branches, open the branch and pick «Branch colour» (or «None»), then save.
A bar in the branch colour shows at the top of the screen with the branch name in that colour — so the cashier and manager see at a glance which branch they are on.
Handy with several branches or when the manager device switches between them.
Staff and permissions
Sales for certain hours (e.g. lunch only)
Open Reports → Sales, Category sales or Product report.
Above the report fill From and To, e.g. 12:00 to 16:00 = lunch sales only, on every day of the period.
If the start is after the end (e.g. 22:00 → 02:00) it counts the night past midnight.
Click the X next to them for the whole day again. The filter also applies to the product and category detail.
Or ask me: «how much did we sell between 12 and 4 pm this week?».
Report start and end time (not just the date)
In every report there is a time box beside «From» and «To».
Example: from the 24th at 16:00 to the 25th at 03:00 = one whole evening past midnight in one report.
The first day counts from the start time, the last day up to the end time, the days between in full.
The time is optional: leave it empty for whole days as before; the × beside it clears it.
The period with its times prints in the header.
Invoices go by their issue time; the rest (expenses, purchases, journal entries…) by when they were entered.
Different from «From hour / To hour» in sales, which keeps the same hours of every day.
Or ask me: «how much did we sell from 4 pm yesterday to 3 am?».
Staff attendanceneeds the Accounting plan
(Accounting plan):
Employee PIN: in Payroll → Employees press the «Attendance PIN» button (fingerprint icon) next to the name and type the PIN (4–6 digits), then save — it turns green ✓ once set. Counting starts from then.
Recording: side menu Attendance: the employee taps his name, types his PIN, then Check in or Check out. The time is the server's (KSA), not the device's. Five wrong tries lock him for 5 minutes.
Cashier: the right «Attendance screen» lets him open it without seeing payroll (in Users & rights).
Manager: Payroll → Attendance tab: today's board (in, late, absent, on leave), the month sheet per employee, add / correct / delete a record with a note (in the audit log), and settings: work days (default Sunday–Thursday), start time, grace minutes, daily hours, holidays.
Payroll: a New payroll run fills «Absent days» for employees with a PIN = work days − days present − leave − holidays (unpaid leave counts as absent). The number stays editable.
From the employee's phone: in Payroll → Employees the «Phone link» button (shown once a PIN is set) → QR or send on WhatsApp. The employee opens it and types the PIN: check in / out, their days this month and their payslips. Set «the shop's place» in the attendance settings so check-ins are only accepted at the shop (on the Windows program it works over the shop's Wi-Fi only).
Overtime and lateness (off by default, in the attendance settings): «Work out overtime automatically» = hours past the daily hours × (hourly wage + 50% of the basic hourly wage); «Deduct lateness» = late minutes × the minute wage. They go into a new payroll run and stay editable.
Payroll & GOSIneeds the Accounting plan
Add employees (salary parts, GOSI type, IBAN).
A monthly "Payroll run": approve → pay → payslips.
Salary advances are recorded and deducted in the run; GOSI due and its payment are on the same screen.
The bank file (Mudad / WPS) is exported from an approved run.
End-of-service and leave are on the same screen.
The shield button at the bottom of the side menu → «Two-step sign-in»
scan the QR code with Google or Microsoft Authenticator and type the 6-digit code. Signing in then asks for the password, then the code from the app. A lost phone: the admin turns it off in Users & rights.
Employee custody — employee link and settlementneeds the Accounting plan
(accounting plan, Treasury → Custody):
Open the custody and press «Employee link»: send it on WhatsApp or let them scan the QR. They open it on their phone without a password and see what is left with them.
They photograph each receipt, type its total (with VAT or not) and send it. It reaches you awaiting approval — not posted and not taken off the balance until you approve; a dashboard alert tells you.
Press «Review»: see the picture, pick the expense account, correct the figures if needed, then Approve (posted) or Reject (deleted).
Every receipt has an Attachments button for pictures or PDFs.
«Settle custody» in one step: the rest returned in cash or to the bank and closed; or the rest deducted from their salary (an advance the next payroll deducts — custody tied to an employee) and closed; or topped back up to its amount and kept open (a standing float).
Note: on the Windows program the phone must be on the shop Wi-Fi.
Deleting a user
Settings → Users & rights → click the user → «Delete user» → confirm.
They leave the list and can no longer sign in (if signed in, they are signed out at once).
Their past invoices, shifts and reports keep their name, and the login name is free for a new employee.
You cannot delete your own account or the last active admin.
To stop someone for a while only: open them and untick «Active» instead.
Or write to me: «delete user Ahmed».
Users & rights
add a user with a login name and password, and choose the role or rights (selling, invoices, reports, settings…) and the branch.
Roles: General Manager (everything) · Branch Manager (runs the branch, no settings or users) · Shift Supervisor (sales, tables, kitchen, customers; approves returns and staff meals) · Accountant (invoices, purchases, expenses, reports, accounts, payroll) · Cashier (selling and kitchen) · Kitchen (kitchen screen only). Each role's description shows under it.
Audit log
(system admin): who saved, changed or deleted what and when, from the screens or through the assistant, with date and user filters. Ask me "who deleted this week".
Reports, accounting and tax
Product sales detail (how many sold, who sold it, when)
Open Reports → Product report and pick the dates (and branch or PC if you like).
Search the product by name or barcode and click its row.
A window shows the quantity, invoices and amount, by seller (the waiter who took the order if any, otherwise the cashier), by hour, and every sale: date and time, invoice number, seller, order type (dine-in/takeaway/delivery), table, qty, price, payment and note. Returns are in red.
Click a seller to show only their sales; the Excel button exports them.
The same detail for a whole category: in Category sales click the category row (it also shows totals per item). For a staff member: in Seller performance click their name, then «Sales detail».
Only some hours (e.g. lunch)? Use the From / To hour boxes above the report.
Or just ask me: «how many beef burgers did we sell this month and who sold them?».
A feature shows on one PC but not on the linked cashier PC?
A linked cashier PC works on the main PC's data and features, so a new feature (e.g. the leftovers box at cash closing) only shows there once the main PC is updated too.
Since 1.0.107 the cashier PC shows a red bar at the top «The main PC runs an older version (…) than this PC (…)» with how to update.
Update the main PC: Settings → Subscription → Program updates → Check now → Install the update now.
Or download the program from hadabpos.com and run it over the old one — data is kept.
After updating, the bar goes within minutes (or reopen the program on the cashier PC). ✕ hides it for 12 hours.
The «All» tab on the sales screen is optional
Settings → POS → untick «Show the «All» tab on the sales screen» and save.
«All» goes away and the screen opens on the first category, and goes back to it after each invoice.
Search and the barcode still find every item, whatever category is open.
Order the categories under Categories (the first one opens).
Your data stays on your PC
sales, customers, items and amounts are kept only on your PC (plus the backups you choose).
What leaves the PC: the licence check (device code, program version, business name) and updates.
If something breaks in the program (a screen showing "Something went wrong on this page"), the PC sends support only the error message, the screen name and the program version so we can fix it fast — no sales, customers or amounts; long numbers and emails are removed before sending.
Branch linking, QR table ordering and the paid Smart Assistant send only what they need, encrypted.
Contracts & progress billsneeds the Accounting plan
(Accounting plan):
Finance → Contracts & progress bills → «New contract»: pick the customer, enter the contract value, retention % (e.g. 10%), advance recovery % if any, and the project cost centre.
Open the contract and press «New bill»: enter the cumulative completion % or an amount and see the bill value, retention, recovery, VAT and net due before issuing.
«Issue bill» creates a tax invoice for the full amount; the retention goes to Retention receivable (1131) and off the customer balance.
When the retention is released: «Collect retention» (cash or bank) from the contract, or «Write off retention» if it is not paid.
You can cancel the last bill (its invoice and entry are cancelled) and see a summary of all contracts: work done and retention still held.
Letters of guarantee & letters of creditneeds the Accounting plan
(Accounting plan):
Finance → Guarantees & LCs, tab Guarantees or LCs, then «New»: type (bid, performance, advance payment, maintenance…), bank, number, amount, expiry and the cash margin if any (taken from the bank to LG margins 1176 or LC margins 1177). Link a guarantee to a contract or an LC to a supplier.
On a guarantee: extend (new date and fees), raise/lower the margin, release (margin back to the bank) or claim if the bank paid the beneficiary.
On an LC: settle the supplier (from the margin, the rest from the bank; the supplier balance goes down), extend or cancel.
A wrong move can be undone (the last move).
The top shows the open amounts per bank, and smart alerts warn you 30 days before expiry.
Consolidated financial statementsneeds the Accounting plan
for a group (Accounting plan):
Finance → Consolidation → «New consolidation»: pick the period.
«Add company» three ways: this company, a linked device/branch, or a file (in each subsidiary press «Export consolidation pack» and upload the JSON, or an Excel in the same template). Enter the ownership % for each.
«Elimination»: add intercompany eliminations (sales/purchases between them, parent investment vs subsidiary capital). Intercompany balances on 1195 that do not match are shown.
The Worksheet tab shows each company side by side + eliminations + consolidated; the Income and Balance sheet tabs are consolidated with non-controlling interest from the ownership %.
Export to Excel. It is a worksheet only: no entries are posted in any company's books.
Report builder
(both plans):
Reports → Report builder, pick the source: sales lines, invoices, purchases, expenses, products, customers (and journal entries on the Accounting plan).
Click the columns you want, turn on «Group» for totals per product, customer or month, and pick sum, average, count, max or min for each number.
Set the period, add filters (e.g. branch = Main, amount > 1000) and sort on any column.
«Run» shows the table with totals; export to Excel or print.
«Save» it under a name (share it with other users, star it as a favourite). Ready examples help you start.
New: time, hour and weekday fields (e.g. sales by hour, busiest weekdays), the purchase lines source (what we buy most and from whom) and shifts (cash differences per cashier), a % button beside any number for its share of the total, a chart under the table (printed too), and quick periods (today, yesterday, this week…) with a start and end time.
Manager mobile
(page /m): today, week and month per branch, alerts and open shifts on your phone; it can be added to the phone home screen.
Link by barcode (no typing): in Settings → Linked devices (main PC) or the manager-mobile card press «Show barcode» and scan it with the phone camera on the same shop Wi-Fi; it opens signed in as you. One phone per barcode, valid 5 minutes; the phone stays linked 30 days, view only.
Fixed assetsneeds the Accounting plan
record the asset (cost, purchase date, life); monthly straight-line depreciation is posted with one button; on sale or disposal the gain or loss is booked.
Prepaid expensesneeds the Accounting plan
rent, insurance or a subscription paid in advance is recorded once and charged to the expense month by month.
Zakat & withholding → Zakatneeds the Accounting plan
choose the year; the base is worked out from the books (equity, provisions and the year's profit, less net fixed assets); add adjustments if any, then «Book the zakat» (31 Dec, before closing the year) and later «Pay the zakat». Rate 2.5776% for a gregorian year or 2.5% hijri. The return itself is filed on the ZATCA portal.
Zakat & withholding → Withholding taxneeds the Accounting plan
when paying a party outside the Kingdom press «New payment to a foreign party»: payee, kind of payment (the rate fills in: 5% rent, technical services, tickets, freight…; 15% royalties; 20% management fees), amount and account. If the supplier must get the full amount choose «Borne by us». Each month's tax is paid to ZATCA by the 10th of the next month with «Pay to ZATCA».
Accounting → Cost centersneeds the Accounting plan
add the center (project, department, activity), then choose it on an expense or on a journal line. The report on the same tab shows revenue, expenses and profit per center; Reports → income statement has a cost-center filter.
Customers → «Price lists»needs the Accounting plan
create a list (e.g. wholesale or VIP) with a percent off the normal price and / or fixed prices for items, then open the customer card and choose «Price list». Choosing that customer at the till, on an invoice or a quotation applies its prices.
Planning → «Recurring invoices» → «New recurring invoice»needs the Accounting plan
name, customer, lines (an item or a service with its price incl. VAT), every how many months, start date and an optional end date. When due it shows in the smart alerts; press «Issue the invoice now» and a real tax invoice is made on the customer's account and the date moves to the next cycle.
Purchases → open the purchase → «Landed costs» → «Add costs»needs the Accounting plan
freight, customs, clearance, insurance before VAT, spread by value or quantity, and how it was paid (bank, cash, card or owed). It is added to the cost of the items still in stock; the share of pieces already sold goes to cost of sales.
Reports → income statement or balance sheetneeds the Accounting plan
choose the period, then tick «Compare with last year»; each line shows the same dates last year, the change and the change %.
Smart accountant alertsneeds the Accounting plan
(accounting plan, on the dashboard, no limits to set — every figure is compared with your own shop history):
Unusual expense: an expense this week (300 or more) at least 3× the average of its account over the last 6 months — check for an extra zero or the wrong account.
Customer later than usual: owes and has not paid for much longer than their usual gap between payments (needs 3+ payments in a year).
Purchase cost went up: the item's latest purchase (last 14 days) cost 8% or more than the one before, so its margin at the current price fell 5 points or more — review the price or the supplier.
Custody receipts waiting: receipts an employee sent from their phone await your approval in Treasury → Custody.
Press the alert to open the right screen.
Treasuryneeds the Accounting plan
accrued expenses (owed, not yet paid), employee custody and its settlement, and cheques received and given with their due dates.
Budget & planningneeds the Accounting plan
the yearly budget per account and month, budget against actual, and recurring journal entries posted every month.
Accounting → Fiscal year-end closeneeds the Accounting plan
first it checks depreciation, prepaid expenses and entries, then closes revenue and expenses into retained earnings and locks the period.
Accounting → Bank reconciliationneeds the Accounting plan
match the bank account with the bank statement and print it. "Import bank statement" matches the lines with the books and posts bank fees.
VAT return with the 16 ZATCA boxes
Reports → VAT return shows sales (standard 15%, zero-rated, exports, exempt, returns) and purchases (standard, imports with VAT paid at customs, reverse charge for services from abroad, zero-rated, exempt) with the VAT of each box and the net — in the order of the ZATCA form so you copy the figures as they are.
The VAT kind is picked on the expense and the purchase invoice: «Automatic» (by the VAT), standard 15%, import, reverse charge, zero-rated, exempt.
Reverse charge (e.g. a software subscription from abroad): enter the amount without VAT and pick «Reverse charge» — 15% is counted in both output and input VAT so the net does not change.
On both plans. Ask me «VAT this quarter».
Attachments on expenses and purchases
(a picture of the bill or receipt, or a PDF):
Expenses: the paperclip 📎 on the expense row → «Add file» (the button shows how many files).
Purchases: open the purchase invoice → «Attachments» → «Add file»; a paperclip shows in the list when there is one.
Pictures are made smaller by themselves; a PDF up to 2 MB. Click the file name to open or download it, ✕ to delete.
On both plans. Manual journal entries have attachments too (Accounting → Journal).
Opening balancesneeds the Accounting plan
(when you start on the system with earlier balances): Accounting → «Opening balances»:
Pick the date (usually the day before you start).
Accounts: a line per account (cash, bank, assets, loans…) with debit or credit. The difference between the totals goes to capital by itself.
Customers and suppliers: add each customer's and supplier's balance — it shows in their statement and the aging.
Stock is not entered here: item quantities and cost come from Inventory / stocktake.
The saved list is below; a line can be deleted and entered again. Same page: the stock costing method (weighted average or FIFO).
Stock costing methodneeds the Accounting plan
Accounting → «Opening balances» → the costing card:
Weighted average (default): each purchase updates the item's average cost.
FIFO (first in, first out): each sale takes its cost from the oldest purchase left, so cost of sales and profit are more exact when prices change.
The change starts today; old sales stay as they are. Items made from ingredients follow the same method.
Approving entries and expensesneeds the Accounting plan
(maker / checker):
Accounting → «Approvals»: tick «Manual entries need approval» and/or «Expenses need approval».
Give the approver the «Accounting: approve» right in Users (the admin can always approve).
Then what others enter is saved as a draft («Sent for approval») and posts nothing until approved; the home page shows «waiting for your approval».
In «Approvals»: Approve (posted at once) or Reject with a reason; whoever entered it can take it back before approval (expenses show under «Waiting for approval»).
FX revaluationneeds the Accounting plan
(supplier balances in dollars or another currency at month / year end): Accounting → «FX revaluation»:
Pick the date and type the closing rate for each currency.
«Preview» lists each supplier: balance in the currency, book value in SAR, value at the new rate and the difference.
«Post» records the exchange difference entry (gain or loss) — listed under «Done».
To undo: reverse the entry from Accounting → Journal.
Cash flow statementneeds the Accounting plan
Reports → Cash flow, pick the period, then switch between:
Direct method: what actually came in and went out of cash and bank, by operating / investing / financing.
Indirect method (what auditors usually ask for): starts from net profit, adds depreciation, gains/losses on asset disposal and the change in stock, customers, suppliers and VAT → operating cash, then investing and financing → net change and closing balance.
The net change is the same both ways.
Easy journal entryneeds the Accounting plan
(Accounting → Journal → «New entry») — no debit or credit:
«What happened?»: purchases & expenses, cash ↔ bank transfer, owner put money in, owner took money out, staff advance, bought an asset, other income, or something else.
«Money came from»: the cash box or the bank.
«Where did it go?»: a line per item (rent, power, repairs, stock…) with its amount; tick «Incl. 15% VAT» when the bill has VAT — it is split off and counted in the VAT return (input VAT). Press Enter after the amount for a new line.
Check «How it is posted» and Save. When Save is greyed out, the reason is written next to it.
A whole month of purchases and expenses in one entry: same thing, a line per item. (For quantities in stock or a supplier balance, use Purchases.)
Need debit/credit yourself or more than one source? «Detailed entry» moves what you typed to the usual entry screen.
Also on the journal:
Search by entry no. (JE-12), amount, memo or account, and a kind filter (manual, sales, purchases, payroll…); each entry shows its kind. «Show more» loads older ones.
«Open the document» opens the invoice, purchase or expense behind the entry.
Attachments (paperclip): a picture of the receipt, contract or transfer, or a PDF (up to 10 per entry).
Copy entry (manual): opens a copy dated today to edit and save. For monthly repeats: Planning → Recurring entries.
Reverse entry (manual): posts a reversing entry today; the original stays, marked «Reversed by». Automatic entries are fixed from their document.
Excel export and Print for the listed entries, or print one from its printer icon.
Leases (IFRS 16)needs the Accounting plan
for a shop, warehouse or car rented for more than a year: Accounting → «Leases»:
«New lease»: name, start, months, monthly payment (yearly contract: rent ÷ 12), payment timing (start or end of month), discount rate (the bank loan rate, usually 5-8%), the paying account and signing costs if any.
The present value is worked out and booked: right-of-use asset 1270 against lease liability 2340. The eye button shows the schedule month by month.
Each month end: «Post lease months» up to the date — depreciation (5820), interest (5830) and the payment. «Undo last month» cancels the last one.
Edit / delete only before any month is posted. Short leases (a year or less) are just a normal expense.
Financial ratiosneeds the Accounting plan
Accounting → «Financial ratios», pick the period (from/to): from the balance sheet and income statement, each with a mark (good / ok / watch) and a short explanation:
Liquidity: current ratio, quick ratio, cash ratio, working capital.
Debt: debt to equity, debt ratio.
Profit: gross and net margin, return on assets and on equity.
Activity: stock turnover and days, collection days, supplier payment days.
Print button. Or ask me «financial ratios for this year».
Notes to the financial statementsneeds the Accounting plan
(auditors and banks ask for them with the statements): Accounting → «FS notes»:
Pick the year ending on.
Write about the business and later events (and basis of preparation / other notes if needed) → «Save». Empty boxes use the usual wording.
The rest is written for you: the accounting policies (revenue, stock by your method, depreciation, the provision with your rates, leases, zakat, end of service) and a numbered note per item (cash, receivables, stock, assets, leases, payables, taxes, equity, revenue and expenses) for this year and last year.
«Print» and print them with the statements.
Printing a chequeneeds the Accounting plan
on the bank's cheque leaf: Treasury → Cheques:
First time: «Cheque print setup» — cheque width and height in mm, font size, the language of the amount in words, and where each part goes (date, pay to, amount in figures, amount in words) in mm from the cheque's top-right corner. «Test print» on plain paper, lay it over a cheque and adjust until it matches → «Save».
Then every issued cheque in the list has a printer button — it prints the date, the payee, the amount #1,234.50# and the amount in words by itself.
Put the cheque leaf in the printer with its top-right corner at the paper's top-right corner.
Accounting books & reports
Reports → the third row «Accounting books & reports», pick the period (from/to) above:
Trial balance (6 columns): opening balance, period movement and closing balance — debit and credit per account, with a balanced / not balanced check.
General journal: every entry by date with its lines (debits then credits).
Changes in equity: for each equity account opening + net profit + year-close transfer + owner additions/drawings = closing (equals the balance sheet).
Income by month: revenue, expenses and net profit, one column per month (up to 24 months).
Expense analysis: each expense, its share of expenses and of revenue, and against the period just before of the same length.
Purchases report: per supplier the bills, VAT, returns, net purchases and how much on credit, with the bills list below.
VAT detail by invoice: every sales invoice and note, every purchase, return and expense with its VAT — to check the VAT return against.
The last two are on every plan, the rest on the Accounting plan. All with Excel and Print.
Chart of accounts (account tree)needs the Accounting plan
Accounting → Chart of accounts:
Accounts show as a tree: each sub-account under its parent with its balance (a parent adds up everything under it); pick «Balance at» any date, search by code or name, export to Excel.
Sub-account: press + beside any account (a second bank under «Bank», a breakdown of an expense) — the code is suggested and the type follows the parent.
Place in the statements: automatic (cash & bank, current / non-current, cost of revenue, selling, administrative, finance, zakat) and can be changed on the account card.
Switch an account off: untick «Account active» on its card — it stays in old entries and reports but is not offered for new ones (its balance must be zero and nothing active under it). Built-in (sys) accounts cannot be deleted or switched off.
Classified statements: the income statement shows operating revenue − cost of revenue = gross profit − selling and admin = operating profit + other income − other expenses − finance = profit before zakat − zakat = net profit; the balance sheet splits assets and liabilities into current and non-current. Cash flow and ratios count every bank sub-account by themselves.
New ready accounts: short / long-term loans, partners current account, dividends payable, statutory reserve, drawings, intangible assets, sales discounts, finance income and costs, telecom, stationery, insurance, professional fees, travel, delivery, software subscriptions, cleaning.
Accountingneeds the Accounting plan
chart of accounts, manual journal entries (per branch too; «New entry» is easy, no debit/credit, with search, reverse, copy and attachments), the ledger, and the period lock that stops changes before a date. Every sale, purchase and expense is posted automatically.
The VAT return
VAT return: Reports → VAT return or Tax file for any period (usually a quarter): the 16 ZATCA boxes (standard, zero-rated, exports, exempt, imports, reverse charge) and the net due. Ask me "VAT this quarter" and I show it.
ZATCA certificate validity
on the ZATCA page, in the green card: «Certificate valid until» and the full date (year-month-day) — the last day ZATCA accepts this device's invoices. 30 days before the end a yellow note shows the days left; once it has ended a red note shows and invoices are not sent. Renewing: generate a new OTP on the Fatoora portal (fatoora.zatca.gov.sa), enter it in «Renew ZATCA certificate» and press «Renew» — invoice numbering carries on. The «Onboard device» form is hidden while linked; you only need it to link again or change the environment, with the «Link the device again» button.
ZATCA on the dashboard
when the device is linked to phase two, a «ZATCA — phase two» card shows at the top of the Dashboard: invoices sent and accepted (and today), pending ones not at ZATCA yet with their value, rejected, accepted with warnings, then the value sent incl. VAT and its VAT (returns taken off), also for today. Green when everything arrived, yellow with pending, red with rejected or waiting over 12 hours; clicking it opens the ZATCA page.
ZATCA results in words
on the ZATCA page and in the invoice details the result is a word, not a code: Accepted, Accepted with warnings (it arrived and counts; fix the warning for next invoices), Rejected, Did not reach ZATCA (internet cut or ZATCA busy — resent by itself or with «Retry pending»), Stopped — certificate expired (link again with a new OTP from the Fatoora portal, then resend). Under it the reason in plain words (address, VAT number, certificate, exemption reason…), with the raw codes under «Technical details». A rejected invoice is not resent: fix the cause, then issue a credit note and a new invoice. When linked, the program stops beforehand what ZATCA would reject, with a clear message: a zero-rated or exempt item without its VATEX code, or a customer VAT number that is not 15 digits starting and ending with 3.
E-Invoicing (ZATCA)
onboarding (phase 2) with the OTP from the Fatoora portal, the environment and the certificate status. Invoices are sent automatically; each invoice's status and resend are in Invoices.
Reports
sales, category sales, products, inventory, seller performance, customers, returns, discounts, sales by hour, payment methods, profit per branch, damaged & lost, debt aging, VAT return, purchases by supplier, VAT detail by invoice — and with the Accounting plan: trial balance (and the 6-column one), general journal, income statement (and income by month), balance sheet, changes in equity, expense analysis, cash flow. All with filters (dates, branch, user, device, payment method, category, product, customer), Excel and print.
«Today's tasks» summary by email and phone
Dashboard → Today panel → gear ⚙ (alert settings): switch on «Daily summary», type the email and pick the hour.
It arrives every day as tasks: «Start with these» (the top 3 things to do today), «Then», and «Today in numbers».
Also by SMS: tick «Also by SMS» and type the owner's mobile — the top 3 tasks arrive as a text. Needs an SMS provider in Settings → SMS. The phone works without an email too.