Opening a new branch, from the organisation record to the first sale
By the end of this guide GS-KV-13 has taken its first sale, and the money, the stock and the journal have landed where the other twelve Klang Valley shops’ do. It is for the implementer or administrator opening the branch, and the branch manager who inherits whatever was missed. The clicking is an afternoon; the order matters because later steps pick from lists the early ones fill, and a missed row surfaces weeks later as a month of wrong documents.
The branch, at a glance — Steps 2 and 3 feed everything after them:
- Decide that it is a branch, not a company.
- Create the branch with its default location.
- Give its money somewhere to land.
- Tell it what to sell at.
- Tell it what to print.
- Leave the numbering alone, unless you want a chosen first number.
- Register the till.
- Give people branch-scoped access, and test as one of them.
- Stock the shelves by transfer, and count them.
- E-invoice: nothing to add, one flag to leave alone.
- Ring the first sale and run the five checks.
Meet GadgetSphere
GadgetSphere Sdn Bhd (GS) opens its thirteenth Klang Valley shop, a mall unit coded GS-KV-13: one counter, one till, a tiny stockroom, and bulkier lines shipped from the Klang Valley hub. It takes cash, cards, two e-wallets and DuitNow QR.
What GS already has — chart, default GL codes, tax codes, fiscal year, knock-off pairs, e-invoice registration — is the company’s and needs nothing new; items, customers, suppliers and settlement methods are the tenant’s and only get linked. The rest is what a branch owns.
Step 1: Decide that it is a branch
The outcome: one row, not a second set of books.
The test is filing, not size: if the new shop’s sales go into the same return as the other shops’, it is a branch. A branch shares the company’s chart, default GL codes, tax defaults and e-invoice registration; a company is a separate legal entity (a second company, or another branch?). The costly mistake is a company where you wanted a branch (what we recommend).
Step 2: Create the branch with its default location
Organisation › Branch › Create
The outcome: GS-KV-13 exists, with a location of its own recorded as its Main Location.
Type the code as the group writes them: a later change rewrites nothing already printed, and on the screen only an owner or administrator can make it. Leave Create default location ticked: saving creates the branch, then its location, and records it as the Main Location, which every cash bill at the branch is checked against at FINAL. A bill whose location is not the branch’s Main Location is refused with The location does not match the branch’s default location. With no Main Location the check never fires; the refusal arrives the day somebody fills it with a location that is not the till’s.
Two edit-only fields matter. Tax Applicable stays ticked: only the mall tenancy sales report reads it, and unticked it stamps every row of the landlord’s report SST-registered N. Delivery Location is for a branch that sells here and ships from there; a sale checks stock there (branch settings, and what reads each).
Nothing in the product acts on an opening date. Whoever holds the tenancy agreement names it, and the steps below are finished before it, not on it.
Step 3: Give its money somewhere to land
Chart of Account, then Cashbook, then POS General › Settings
The outcome: every payment button at GS-KV-13 posts to the cashbook you meant.
The chain: a GL code CASH-DRAWER-KV13 in GS’s chart; a cashbook on that code; a Cash settlement method pointing at the cashbook; then the branch linked on every method it accepts — the new Cash method and the existing card and wallet methods — from the method’s own Branch tab (link the methods to the branch). The other door, Branch Settings › Settlement › Add, looks the same and saves nothing. Last, POS General’s Default Settlement Method tab pre-selects a method for seven of the nine payment types and adds no buttons (the default methods).
Three failures, in order:
- No buttons on the counter: the branch has no links.
- A bill finalises but does not post, with no message on screen: a method with no cashbook stops the journal and the cashbook line, and a cashbook with no GL code stops the journal, the first time that method posts for the company —
MISSING_CASHBOOK: STL_MTHD [code]orMISSING_GL_CODE: STL_MTHD [code]. Fix the method, then press Resolve on Missing Journal and Missing Cashbook in Financial Report › Error Checking › Trace Document. - Zero-total exchange bills land in the wrong float. A zero bill with no payment line (and no skip-default-settlement flag) is settled against the most recently created cash method linked to the branch — today
GS-KV-13’s own; a regional float created and linked later takes them over (a zero-total bill settles itself).
A cashbook is a record; the bank account behind it is the bank’s. If the branch banks to a new account, whoever opened it confirms the account number before Step 5 prints it.
Step 4: Tell it what to sell at
Organisation › Branch › Edit; POS General › Settings › Branch Settings
The outcome: a scanned item and a picked item both come in at the Retail price.
The branch record’s Default Pricing prices every scanned barcode and, failing an item or customer scheme, every back-office line; the POS Branch Settings › Pricing Scheme list, with its priorities, prices the counter’s Add Item panel only (which scheme each applet and till sells at). Set both to Retail, or the same item arrives at two prices. Copy GS-KV-01’s Item Category Filter if you use one: an item outside it is absent from the item search, which looks like out of stock (why the item search hides things).
Step 5: Tell it what to print
POS General, or Sales Invoice › Settings › Branch Settings › Printable Format
The outcome: the receipt and the invoice printed at GS-KV-13 carry its header, footer and bank account.
One row per branch and per document type, set in the applet whose documents you print, with Header and Footer text carrying the bank details (set the branch’s default). With the applet’s fallback format set, a branch with no default prints the fallback and never looks wrong, so the check is a list of each branch’s format per document type, compared against the screen. The e-invoice PDF (the one with the QR code) is the company’s layout and ignores branch defaults (three layouts, three rules).
Finance reads the footer against the bank’s confirmation before the first print; a copy a customer already holds is not corrected by a fix.
Step 6: Leave the numbering alone, unless you want a chosen first number
The outcome: GS-KV-13’s cash bills number themselves from the first FINAL.
The branch number is drawn at FINAL from a counter keyed on the branch, created the first time it is asked for and starting, by default, at 1,000,000 (the three numbers on every document). A chosen first number is a starting value BigLedger support sets before the first FINAL at the branch: once one bill is numbered the counter exists and the value is ignored; moving it afterwards is support’s job, and up to 500 pooled numbers go out first (start a sequence at a number of your choosing).
Step 7: Register the till
POS General › Settings › Device Settings, Drawer Settings; Personalization › Offline Settings
The outcome: the counter PC, its drawer, its card terminal and its printer work on opening morning, with or without the network.
Register the device (code, name, MAC address via the POS Agent, branch GS-KV-13), each card terminal with its methods, and the drawer; with Device Compulsory on, an unregistered device cannot sell. The POS Agent on the counter PC drives the drawer, pole display, terminal and offline printing (counter hardware and working offline). Then Personalization › Offline Settings, per terminal and per cashier login: Offline Mode, offline print and paper size, a prefix such as {BRANCH_CODE}-{DEVICE_CODE}, and Sync All after Steps 3 to 5 so the layout, prices and device reach the PC (offline settings). Offline print off means no receipt without the network.
Two branch fields the till reads silently: a Notification Template for Email To Customer, with no company fallback, and Rounding Five Cent, carried inside the rounding item’s payload, so the box ticked with no rounding item on branch or company rounds nothing (branch settings — what each tab actually reaches).
Step 8: Give people access scoped to the branch
Tenant Admin › Tenant Roles; Employee
The outcome: the GS-KV-13 cashier sees that branch’s documents and nothing of Penang’s, and can save a bill.
Create the staff as employees with GS-KV-13 as their default branch. For access, copy the existing branch role — Tenant Roles › Copy Permission Set — and on its Branch grid tick GS-KV-13 and untick the old branch in the same save (a new branch manager, from role to first document). Location-scoped listings such as Stock Availability read the Location grid too. The Z Report and Cashier Collection permissions carry a branch target or their branch drop-down opens empty (permissions, including the ones that are targets). Add the role to each person under Tenant Users › Roles and install their applets; installing grants nothing.
A grant with no target is everything, not nothing, and a shorter list is what a working scope and a missing grant both look like (scope each permission to a branch or company). Do not cure an empty Company selector with a company tick on the document code: that shows the role every GS branch’s documents, and which permission fills the selector is settled on neither owner page — test as the cashier, reading the selector and the listing both. A branch target never hides customers, items or prices.
The branch manager signs the access list — who may void and discount — before opening day; it is also what you take back when someone leaves.
Step 9: Stock the shelves, and count them
Inventory › Stock Transfer
The outcome: the opening stock sits in GS-KV-13’s location before the doors open.
Stock reaches a same-company branch by stock transfer: Outbound at the hub, the queue, Inbound at GS-KV-13; FINAL on the inbound moves the stock into the branch’s location (move stock between branches). Until then a stock item finalised at GS-KV-13 is refused — the stock check is on by default — with There’s not enough stock for item …, checked at the line’s delivery location. GSO’s or GSD’s stock is another company’s: it arrives as a sale by that company and a purchase by GS, never as a transfer.
The opening count, the day before trading, is a person’s job: the product freezes nothing and has no blind-count mode, so the branch supervisor stops movement and controls the sheets, a counter who cannot see the expected figure counts, and the area stock controller — not whoever received the transfer — accepts the variance; a second person’s recount is the check (set up the four controls before the count).
Step 10: E-invoice — nothing to add, one flag to leave alone
The outcome: GS-KV-13’s bills enter the same pools as every other GS branch’s.
Registration, environment, status and the PDF layout are GS’s. The branch code is copied onto every individual e-invoice (a by-document consolidated one carries none), and a company that consolidates by branch gets GS-KV-13’s month as its own block (which level each e-invoice fact lives on). The one branch control is Skip E-Invoice: a bill is excluded when its own, its branch’s or its customer’s flag is set, so leave it off unless somebody else reports this outlet’s sales. The branch’s tax registration number plays no part in the e-invoice.
BigLedger holds one tax identity per company and asks nothing about outlets. Whether a new outlet changes your LHDN profile or SST return is your tax adviser’s question, asked before opening day and filed with the opening papers; nothing on these screens raises it.
Step 11: Ring the first sale and run the five checks
Before the doors open, signed in as the test cashier at the registered device:
- Count the payment buttons. One per linked method, no doubles, in name order.
- Scan one unit, note the price, remove it, then add one unit through Add Item. The same Retail price.
- Finalise one small sale per payment method and print one. The receipt carries the branch’s header and footer; with the drawer setting on, the drawer opened.
- Trace each bill. Financial Report › Error Checking › Trace Document: journal and cashbook line both written, the debit on that method’s cashbook subledger (how to tell whether the posting happened).
- Open Stock Availability for a shop-stocked item. One fewer at
GS-KV-13’s location.
Tell the accounts clerk which bills were tests.
What success looks like
At the close of opening day: the Z Report for GS-KV-13 shows the day’s takings by method with the Transaction Queue empty, and float plus Cash row plus cash movements equals the drawer count; Trace Document on the first and last bill shows a posted journal and cashbook line; the test cashier’s sales listing shows GS-KV-13 and no other branch. Next morning the accounts clerk runs the day’s cash-up; at month end the Profit Loss Report grouped by branch has a GS-KV-13 column once you tick it, because a sale’s journal lines carry its branch.
Common mistakes
| Mistake | What you see | What to do instead |
|---|---|---|
| Choose from existing location on create, and a location picked that is not the till’s | Every sale at the till refused: The location does not match the branch’s default location | Set Main Location to the till’s location |
| Linking methods from Branch Settings › Settlement › Add | No payment buttons, no error | The method’s own Branch tab |
| The new Cash method pointing at the hub’s cashbook | The branch’s takings in the hub’s cashbook | Its own cashbook, before the first bill |
| A company tick added to cure an empty Company selector | Penang’s invoices in the GS-KV-13 listing | Test both the selector and the listing as the cashier (Step 8) |
| No branch printable default | The fallback layout prints without the branch’s footer, and nothing looks wrong | One default per document type (Step 5) |