HarakahTec Help centre العربية

Step 27 · Part 7 — Selling, reporting, going live

Reports, VAT and what ZATCA gets automatically

The dashboard and nine reports, the VAT return and its self-check, the zakat base, and the compliance that happens without you.

Applies to: Everyone. The VAT report has a deadline attached to it.

Everything HarakahTec records comes back out here.

The Reports menu holds nine reports: Sales, Delivery Platforms, Card Payout (only once it is switched on), Purchases, Inventory, Profitability, By cost centre, Tax and Zakat. The dashboard comes first.

#The dashboard

The first screen after signing in, and the one most owners spend most of their time on. It is not a summary page bolted on — it is ten panels that between them answer the questions you would otherwise open ten reports for.

The dashboard with the filter bar, the four headline figures, and the panels below them
Today at a glance. Every panel here is a report somebody would otherwise have gone looking for.

Across the top, four figures: Total sales, Transactions, Average sale and Branches open.

Then the panels:

Panel What it answers
Sales by branch Which shop is carrying the day, with the VAT inside each figure
Sales trend Revenue over time, Daily or Weekly
Top products What is actually selling, by quantity and revenue
Payment methods How the money arrived, and how many payments of each
Cash balances What each open drawer holds right now, and the total
Tax summary (VAT) Net sales before VAT, VAT collected, VAT on purchases, and VAT to pay
Inventory Products, out of stock, low stock, and stock value
Running out The products at or below their reorder level, with what is on hand
Pending bills Supplier invoices, split into Overdue and Upcoming
Profit summary Total revenue, total expenses, net profit and the margin

The filters are the part people miss

Where narrows to All branches or named ones — and only shops are listed, because a warehouse or a kitchen cannot ring a sale. The date filter offers Today, Yesterday, This week and This month.

And there is a filter most dashboards do not have: All day, Mornings, Evenings, or Between these hours. That is what lets you ask is the evening shift actually worth staffing? — a question a daily total cannot answer.

Refresh re-reads everything, and the panel says Last update with the time, so you know whether you are looking at a figure from an hour ago.

Worth knowing: The dashboard is the one screen that is genuinely useful before anything else is set up. The moment sales are being rung, it has something to say — which makes it the right screen to leave open on the office monitor.

#Sales

Reports → Sales. What sold, when, through which till and by whom — and what it came to.

The controls across the top:

Below them, pick-lists narrow it further: Days of the week, Branches, Cashier, Customers, Category, Product — saleable only and Payment.

Two notes the screen makes, and both matter:

What delivery platforms kept as commission is not here — it is in Delivery Platforms, next.

#Delivery platforms

Reports → Delivery Platforms. What each platform sold, what it kept as commission and delivery, and what is left for it to remit. This is where delivery commission lives.

Per platform: orders, what was taken, the commission, the delivery charge, the total taken, the reclaimable VAT on it, and what is left to remit to you.

Careful: If you see Some of this period's fee was recorded before the commission and the delivery charge were split, older orders in the range were recorded before that split existed. The total is right; the breakdown is incomplete for those.

#Card payout

Reports → Card Payout — only if switched on for the business unit (section 12).

This answers the question card-taking businesses actually care about: the machines batched SAR 8,400 — why did the bank pay SAR 8,253?

It shows what the machines batched, the acquirer's cut, the fee excluding VAT, and what is expected in the bank. You then Agree each batch against your bank statement.

Two things it tells you honestly:

#Purchases, Inventory, Profitability

Purchases — what you bought, shown by Day, Supplier, Branch or Product. Only received invoices count unless you tick Include unposted invoices; Only what is still owed narrows it to unpaid ones.

Inventory — a cost-change report: every receipt that moved a product's cost, with the Cost before, the Cost after and the change, and on whose invoice. Filter by supplier and product, and by At least (%) to see only the bigger moves. For what is on the shelves, use Inventory → Stock Report (section 19).

Profitability — the profit and loss: revenue, cost of sales, gross profit, expenses, net profit, each with its margin as a percentage of revenue. It can be narrowed to a branch or to one Cost centre; narrowed to a cost centre it shows one part of the business, and anything recorded without a cost centre is left out — the screen warns you.

Worth knowing: A sale with no known cost adds nothing to cost of sales rather than counting as free profit. If your gross margin looks impossibly good, that is the first thing to check — products without costs (section 9).

If the report is empty, it tells you which of the two reasons applies: either the books are not open — Accounting → Settings — or nothing was sold or spent in this period.

#By cost centre

Reports → By cost centre. Each part of the business side by side: what it earned, what it cost, and what is left.

One row per cost centre (section 6), with Revenue, Cost of goods, Wages, Other costs and the Result. A line Not assigned to any cost centre carries whatever was recorded at a place that has no cost centre yet, or with none chosen, and the Total is the whole company's for the period — the same figures the profit and loss shows.

Worth knowing: A large unassigned line usually means a branch with no cost centre set. Branches do not borrow the business unit's centre — set one on each under Settings → Business unit.

#The VAT return

Reports → Tax. The most important report in the system, because something gets filed from it.

The VAT return with the sales and purchases blocks and the ledger agreement banner marked
What was charged, what was paid, and a banner saying whether the two routes agree.

The period

This month, a quarter (the four are named), or the whole year.

This business unit only is available but a return is filed per VAT number, so the whole company is usual.

What was sold

Zero-rated and exempt both charge no tax and are counted apart because a return asks for them separately.

What was bought

Only received invoices count; drafts are not counted. And expenses that carried no VAT are left out, not counted as zero — the screen says how many.

Net due

Due to ZATCA, or Reclaimable from ZATCA, or Nothing due.

The self-check

This is the feature worth understanding. At the top, one of two banners:

These figures agree with the ledger. Worked out twice by different routes — from the invoices here, and from what actually posted.

or

These figures do not agree with the ledger. Charged is out by SAR 42.00, paid by SAR 0.00. Find out why before filing from this.

The report computes the same numbers two independent ways and compares them. Agreement is real evidence. Disagreement is a stop sign.

Careful: The screen is explicit that this is a help with preparing a return, not a return. It reads what was recorded. HarakahTec does not file anything, and it cannot know about anything that never reached it.

#Zakat

Reports → Zakat assembles the figures a zakat calculation starts from.

As at a date — a zakat base is a snapshot on one day, not a total over a period.

It shows what is held, what is owed, and the base (held less owed).

What it deliberately does not do

The screen is careful, and so should you be:

These are the figures a zakat calculation is worked out from — not an amount of zakat.

The rate is not applied. Apply the one your situation calls for.

And it lists what this does not include, because a base that looks complete is how a wrong return gets filed:

Take this to whoever prepares your zakat. It is a starting point, not an answer.

#ZATCA — what happens automatically

You do not configure this. There is no connection to set up and no screen to visit. It happens on every sale.

What Harakah does for you

A QR code on every receipt. Scannable proof of the invoice, in the form ZATCA requires, carrying the seller, the VAT number, the timestamp, the total and the tax.

A sequential invoice counter per device. Every till keeps its own unbroken, never-reused sequence of invoice numbers. Gaps are what an auditor looks for, and there are none.

A chained hash. Each invoice carries a cryptographic link to the one before it on that device, so the sequence cannot be quietly rewritten after the fact. If a till's chain is stale — for instance after an offline spell — the server detects it rather than accepting the sale blindly.

The required fields. Seller name, VAT number, the timestamp, the line detail, the tax charged and the totals — in Arabic and English where both exist.

A simplified tax invoice for a person, a standard one for a company. A company customer needs their VAT number, registration and address, which is why the customer types differ (section 21).

What it does not do

Being straight about this matters more than sounding complete.

Careful: Harakah generates compliant invoices. It does not connect to ZATCA's systems to clear or report them. There is no onboarding, no certificate exchange and no live clearance in the product today. The ZATCA Connection entry you may see in the settings sidebar is a placeholder for that work, not a screen.

If your business is in a phase or a category that requires integration, that is a conversation to have with whoever supplies your software before you go live.

What you must get right

The compliance is only as good as what you typed in section 3:

#Exporting

Most reports export to Excel and PDF. Numbers stay numbers in the spreadsheet — they are not written as "12.00 SAR" — so a column can be summed on arrival rather than cleaned up first.

#What to do next

Section 28 is the go-live checklist.