POS and accounting integration means every sale, payment, return and expense recorded at the till reaches your books without being typed twice. Retyped figures are where errors and gaps creep in. Before you connect anything, decide which journal entry each POS event should create.
This guide gives that posting map, works through one shop's day in Ugandan shillings, and compares the three ways to connect. It ends with what ArmPOS writes to its own ledger, and what it leaves for you to add.
What should each POS event post to the books?
Each POS event should post one balanced entry: a debit to where the value went and a credit to where it came from. The map below covers the events a shop's till produces every day.
| POS event | Debit | Credit |
|---|---|---|
| Cash sale | Cash in the till | Sales revenue (and tax payable, if you charge VAT) |
| Mobile money sale | The mobile money wallet | Sales revenue |
| Sale on a customer's account | Accounts receivable | Sales revenue |
| Customer pays off their account | Cash or wallet | Accounts receivable |
| Cost of the goods sold | Cost of goods sold | Inventory |
| Customer return, refunded in cash | Sales returns, and inventory for the goods back | Cash, and cost of goods sold |
| Delivery bought on credit | Inventory | Accounts payable |
| Supplier paid | Accounts payable | Bank or cash |
| Expense paid from the till | The expense, such as transport | Cash in the till |
| Mobile money fee | Mobile money charges | The mobile money wallet |
| Cash taken to the bank | Bank | Cash in the till |
| Till short at closing | Cash shortages | Cash in the till |
| Stock damaged or spoiled | Inventory losses | Inventory |
The cost line is the one most often missing. Under IAS 2, the cost of inventory becomes an expense when the goods are sold, in the same period as the sale. A link that sends only sales leaves that entry for someone to rebuild by hand.
Our guides to cost of goods sold and inventory accounting explain the cost side in full.
A worked example: one day in a Kampala shop
A busy till is best posted as one summary journal per day, not one entry per sale. Here is one day for an example shop in Kampala, Uganda, with round, illustrative figures.
For example, the shop sells UGX 1,100,000: UGX 620,000 in cash, UGX 380,000 by MTN MoMo and UGX 100,000 on regulars' accounts. The goods sold cost UGX 880,000. A customer returns goods worth UGX 20,000 (cost UGX 16,000) for a cash refund.
During the day, a regular pays UGX 50,000 off an old debt, the shop pays UGX 30,000 for transport, and UGX 500,000 goes to the bank. The wallet is charged a fee of UGX 3,800, and the till closes UGX 2,000 short.
| Debit | Credit | UGX |
|---|---|---|
| Cash in the till | Sales revenue | 620,000 |
| MTN MoMo wallet | Sales revenue | 380,000 |
| Accounts receivable | Sales revenue | 100,000 |
| Cost of goods sold | Inventory | 880,000 |
| Sales returns | Cash in the till | 20,000 |
| Inventory | Cost of goods sold | 16,000 |
| Cash in the till | Accounts receivable | 50,000 |
| Transport expense | Cash in the till | 30,000 |
| Bank | Cash in the till | 500,000 |
| MoMo charges | MTN MoMo wallet | 3,800 |
| Cash shortages | Cash in the till | 2,000 |
The day's profit is UGX 180,200. That is UGX 1,080,000 of net sales, less UGX 864,000 of net cost, less UGX 35,800 of charges, transport and shortage.
Leave out the two cost lines and the books show UGX 1,044,200 of profit for the same day, nearly six times too much. That is the error a sales-only link builds into every month.
A summary also fits the accounting software's own limits. QuickBooks Online's invoice import takes 100 invoices at a time, with no discounts or credit notes. Its journal entry import takes a CSV with a journal number, date, account, description, debits and credits.
Three ways to connect a POS to accounting software
There are three ways to connect, and each one moves a different amount of work to a different person. Pick by who keeps your books and how many sales you make.
| Way | How it works | Suits | Check before you rely on it |
|---|---|---|---|
| 1. A POS with its own ledger | The POS writes journal entries as you sell, buy and spend | Shops that want one system and an accountant who reviews it | Which events it skips, such as cost of goods |
| 2. A direct link | The POS sends sales to QuickBooks, Xero or another package through a connection | Shops whose accountant already works in that package | What it sends: sales only, or payments, returns and costs too |
| 3. Export and import | You export the day's or week's figures to Excel and import a summary | Any accounting software, and any connection speed | That someone does it on a fixed day, every week |
A direct link sounds simplest, but it is only as good as its list of what it sends. Ask the vendor for that list in writing before you choose.
Mobile money and cash: reconcile before you post
Reconcile each place your money sits before you post the day, or the books carry the till's mistakes. A shop may have three or more: the till, a bank account and one or more mobile money wallets.
- Give each wallet its own account. Treat an MTN MoMo or M-Pesa wallet like a bank account: it has its own balance and its own statement.
- Match the POS to each statement daily. The POS's payments by method should equal the wallet statement and the drawer count.
- Post fees as an expense. Record the wallet's charges on the day they are taken, not as a lower sale.
- Treat banking as a transfer. Cash taken to the bank moves between two of your accounts; it is not income.
Stock costs have to be right for the cost line to be right. Our guide to automating inventory management covers keeping them current.
How to do it in ArmPOS
ArmPOS is a point of sale system with its own ledger, so most of the posting map happens as you sell. Accounting comes with some plans only; these steps set it up, each with its Help center guide.
- Add an account for each place money sits. Till cash, the bank, and a mobile money wallet, each with its opening balance: Bank and cash accounts. Cash taken to the bank is a transfer between two of them.
- Pick the account on each payment. The Payment Checkout window has an Account box. A Default Account fills it at the POS: Take payments and print receipts and Receipt and POS settings.
- Record expenses with a category and an account. Rent, transport, electricity and staff wages: Record an expense. Staff records beyond wages are covered in our HR management tips.
- Let the ledger fill itself. Sales, customer payments, sale returns, purchases, supplier payments and expenses each write a posted journal entry: The chart of accounts and journal entries.
- Add what it leaves out. The cost of goods sold, purchase returns, deposits, transfers and opening balances don't reach the ledger, nor do edits to a sale. Damaged stock books nothing in Accounting either: Record damaged or spoiled stock. Write a journal entry for these, or let your accountant do it.
- Read profit with the cost included. Reports › Profit and Loss takes the cost of goods off, by FIFO or average cost: Reports to check every day.
- Hand over the statements. The trial balance, profit and loss, balance sheet and tax summary come from the ledger. The guide lists two totals to check by hand first: Financial statements.
The QuickBooks link is meant to send each new sale to QuickBooks Online as an invoice, without payments, returns, purchases or expenses. It can't connect yet, so for now export your sales and payments to Excel and import them: Sync with QuickBooks. Our guide to QuickBooks inventory management covers what QuickBooks itself does with stock.
Frequently asked questions
Do I still need an accountant if my POS connects to my accounts?
Yes. The connection moves figures; an accountant checks them, posts the adjustments, and prepares the tax returns and year-end accounts.
Should I post every sale, or one summary a day?
Post one summary a day for a busy till, and keep the sale-by-sale detail in the POS. Customers who buy on account still need their own balances, which the POS keeps.
How do I record mobile money charges?
As an expense paid from the wallet's account, on the day the charge is taken. The sale stays at its full price.
Which accounting software works with a POS?
Any package that imports a spreadsheet works through export and import. A direct link depends on the POS; check what it sends before you rely on it.
See your own day posted before you connect anything. Create a free ArmPOS account, add your till, bank and mobile money accounts, and ring up three test sales paid three ways.