Skip to content

Customers and tax invoices

Keep customer and supplier records, and understand when a sale becomes a standard tax invoice.

The Customers & suppliers screen holds two lists on separate tabs: customers you sell to and suppliers you buy from. They look similar but they are used for different things.

Adding a customer

The basics are name, phone (the lookup key on a delivery call), email and free-text notes. A customer can keep several addresses (home, work, and so on).

Four more fields matter for business customers:

  • VAT number — their tax registration number.
  • CR number — their commercial registration number.
  • Address — country-mapped for e-invoice: Saudi shops use building (4 digits), street, district/area, city, postal (5 digits) for ZATCA; Bahrain shops use building, road, block, area, city for NBR e-invoice. Required when the customer has a VAT number (standard tax invoice, including On account). City and area come from Settings → Cities & areas. One customer row mirrors street↔road and district↔area so both profiles stay compatible.
  • Credit limit — how much you are willing to let them run up.

The VAT number changes the invoice type

This is the single most important thing on this page.

When a customer with a VAT number is attached to a ticket, that sale is issued as a standard tax invoice. Without one, it is a simplified tax invoice. The app decides this on its own, using nothing but the customer record.

In Bahrain a sale over BD 500 is also a full tax invoice, even for a walk-in ticket. Settle it only after you choose a named customer with building, road, block, area, and city. Walk-in stays available under BD 500 when the buyer has no VAT number.

That has real consequences under ZATCA Phase 2. Standard tax invoices must be cleared by ZATCA before they can be issued, so the printing of one waits for clearance to come back. Simplified invoices are signed and reported afterwards, so they never hold up the queue.

The practical advice: only put a VAT number on a customer if they genuinely need tax invoices. Adding one to a walk-in regular who just wants a loyalty record will slow that customer’s checkout down for no benefit.

Attaching a customer to a sale

At the checkout, assign the customer before taking payment. The receipt then carries their details, and the sale is attached to them in the Documents list.

If you forget, you cannot retrofit a customer onto a completed invoice. You would have to void it and ring it up again, which is exactly the kind of thing the audit log is there to record. It is worth training staff to ask before the payment step, not after.

Credit limits and on-account sales

Set a credit limit on the customer. At the till, choose On account for all or part of the ticket (Cash/Card can cover the rest). A named customer is required — Walk-in cannot charge. The sale is refused when the open balance plus this charge would exceed the limit.

Credit payments (POS menu) collects Cash or Card against open on-account invoices and allocates the money to those bills. Customer list shows Balance due next to the limit. Voiding a sale that already has collections allocated is refused until those allocations are cleared.

Activity (on the Customers & suppliers screen) opens a ledger like stock activity: every sale, customer payment, and credit note in date order with Charge, Paid / credit, and a running Balance due. Use the Find customer/supplier box (typeahead dropdown) to pick a party without loading the whole book. Dates default to the last 7 days; widen with All dates when you need history. Long ledgers load 100 rows per page so the till stays responsive. Summary cards show sales count, totals, and what is still open. Double-click a row to open the invoice or payment. The same screen works for suppliers with purchases, return notes, and payment vouchers.

Tax invoices still post when the charge sale completes (same ZATCA rules as a paid sale).

Suppliers

The Suppliers tab holds name, phone, email, contact person, notes, VAT number, CR number, and the same national address fields as customers (Saudi or Bahrain, depending on your company country). If the supplier has a VAT number, the structured address is required — it keeps purchase tax records aligned with how you record customer tax invoices.

Attach a supplier to a delivery on Purchases. A one-line Stock adjustment (Qty) is still available when there is no supplier bill. See Purchases and receiving.

Keeping the list clean

A customer list full of duplicates is worse than no list, because staff stop trusting it and start creating yet another record. Search before adding, and settle on one convention for phone numbers so that searching by number actually finds people.

Large lists (search, filters, pages)

On Customers & suppliers, the grid no longer loads every row at once. Search matches name, phone, email, VAT, and CR (suppliers also match contact person). Filters narrow to parties with an open balance, with a VAT number, or without VAT. Sort by name or balance; choose 25 / 50 / 100 rows per page and move with Previous / Next. Edit loads that record from the database (including delivery addresses for customers). The account ledger search uses the same server-side lookup, so it stays fast with thousands of parties.