Real accounting underneath

Accounting software with inventory and point of sale

GrowMore is double-entry accounting for shops and small businesses: sales and purchase invoices with returns, weighted-average inventory with serial numbers and lots across several warehouses, a keyboard-driven point of sale, multi-currency books with the rate exactly as typed, and live reports (trial balance, profit and loss, balance sheet, ageing, tax) exportable to Excel.

Real double entry

Every movement is a balanced entry. A posted entry is never deleted. The trial balance always balances. Your accountant will relax.

  • An entry that does not balance is refused, in the document currency and in the functional one
  • Each invoice, receipt and stock movement writes its own entry through one posting engine
  • Rounding differences go to their own account, within a cap, never silently
  • Balances are updated in the same transaction as the entry
Journal entry JE-00412Posted

From INV-00213, the sale of one iPhone 16 Pro on credit

AccountDebitCredit
1210 Customers: Rami1,199.00
4100 Sales1,199.00
5100 Cost of goods sold1,012.40
1310 Inventory1,012.40
Total2,211.402,211.40

Invoices and returns

Sales and purchases, cash and credit, tax per line. A posted document is corrected by an opposite document, never by deletion.

  • Tax per line, on the rounded line amount, at the rate frozen on the document
  • A return names its original invoice and refunds by the original terms
  • A draft has no number; the number is taken when it posts, with no gaps
  • “Correct” posts the reversal and the corrected copy together, linked to the original
Rami’s documentsLinked
DocumentLinkAmount
INV-00206 Sales invoice1,199.00
RET-00012 Sales returnreturns INV-00206(1,199.00)
INV-00213 Sales invoice1,199.00
Rami owes1,199.00

Serial numbers and weighted-average inventory

Every phone and laptop tracked by serial from purchase to sale. Lots for parts bought in batches. Several warehouses, transfers and stock counts. Cost of goods sold computed for you.

  • A unit’s barcode is scanned on the purchase, or generated when it posts
  • A lot carries its units and its expiry date
  • Moving weighted-average cost, recomputed on every receipt
  • Transfers between warehouses at cost; stock counts post their difference
Samsung A56, item movement
DateDocumentInOutBalanceAvg cost
01/10Opening4040206.40
24/10PUR-000875090208.40
25/1018 invoices4842208.40
Value8,752.80

iPhone 16 Pro

Barcode
PH0140004471
Lot
LOT:20261015-0003
Stock
1 of 1 in stock

Point of sale without a mouse

A fast cashier screen driven by keyboard and scanner. Split payments, thermal receipts, and a cash session closed by counting the drawer.

  • Scan a barcode and the line is in the basket; the whole till runs from the keyboard
  • Held baskets live on the server, so a second customer never waits
  • Several tenders on one sale; a return refunds by the original tenders
  • An 80 mm receipt prints after the sale is saved
Till 1, basketF2 hold F8 pay F10 close
ItemQtyPriceAmount
iPhone 16 Pro case119.0019.00
USB-C charger 20W215.0030.00
Screen protector19.009.00
Total58.00
Cash 40.00Card 18.00Paid

Multi-currency

Buy from the importer in dollars, sell in the local currency, keep the books in either. The exchange rate exactly as you type it. Exchange differences posted automatically.

  • A rate is stored as typed, with its direction: “1 USD = 89,500 LBP” is never inverted
  • Each document freezes its own rate
  • One conversion per document and one rounding
  • Paying at another day’s rate posts the exchange difference
Sales invoice INV-00219Posted
Currency
LBP
Rate
1 USD = 89,500 LBP, as typed
ItemLBPUSD
iPhone 16 Pro107,310,5001,199.00
Total107,310,5001,199.00

Reports you can read

Trial balance, profit and loss, balance sheet, ageing, tax, statements. All printable, all exportable to Excel.

  • Read from the balance tables, never recomputed from scratch
  • Any account’s statement, any customer’s or supplier’s statement
  • Ageing by the same still-owing formula the payments use
  • Every report prints on one frame and exports to Excel, up to 10,000 rows
Profit and loss, OctoberPrintExport Excel
OctoberSeptember
Sales9,248.008,410.00
Cost of goods sold(4,939.30)(4,512.60)
Gross profit4,308.703,897.40
Utilities(300.00)(285.00)
Net profit4,008.703,612.40

Your team and their rights

Owner, accountant, cashier, storekeeper, and custom roles. The cashier sees the till and nothing else.

  • Custom roles from a matrix of capabilities (Professional and up)
  • Only the owner’s role connects an AI agent or hands it a posting key
  • Nobody switches themselves off, and an owner is never switched off
  • Every change recorded: who did what, and when
The four roles, as a new shop has them
OwnerAccountantCashierStorekeeper
Sell at the tillYesNoYesNo
Invoices and stock movementsYesNoNoYes
Vouchers, receipts and paymentsYesYesNoNo
Trial balance and financial reportsYesYesNoNo
Lock a periodYesYesNoNo
Connect an AI agentYesNoNoNo

English and Arabic

A bilingual interface that switches instantly. Your data stays in the one language you type it in.

  • Every screen, menu and report heading in both languages
  • Right to left in Arabic, with Latin digits and accounting parentheses
  • One name per account, item and customer, exactly as you typed it

Customer

Rami

Total

1,199.00

الزبون

Rami

الإجمالي

1,199.00

The same invoice in both interfaces. The labels change; what you typed does not.

Printing and barcode labels

Invoices print on A4 with your logo, receipts on an 80 mm roll, and every tracked unit gets its own barcode sticker.

  • One sticker per unit: the item’s name, its barcode and its lot
  • Three sizes: 50×25 mm, 40×20 mm and 58×40 mm
  • Code 128 barcodes, ready for any scanner
  • Labels print from the document, the lot or the serial register

Samsung A56

SA0560000051

LOT:20261024-0001

  • 50×25 mm
  • 40×20 mm
  • 58×40 mm

Payments, statements and period locks

A receipt settles the oldest invoices first, so you always see what each customer still owes. Close a month, and nothing before the lock date changes.

  • Receipts and supplier payments allocated oldest first, in the payment’s own currency
  • Every customer’s statement, and who owes past 60 days
  • A cash box per account; the till’s session closes by counting the drawer
  • The lock date is checked on every posting and every deletion
Customer receipt RCV-00087Posted
Applied toOpenAppliedStill owing
INV-00198 oldest first800.00800.000.00
INV-002131,199.00400.00799.00
Total1,999.001,200.00799.00

Books locked to 30/09: nothing dated on or before it can be posted, edited or deleted.

And the agent you already use

Every feature above can be drafted by an AI agent from a plain sentence, through an MCP server with 44 documented tools. A person approves. The agent will not delete a posted document, edit a posted entry, change a lock date, or post without a key.

Create your shop. Free, in two minutes.