47+ features

Every feature, one platform

From kitchen operations to financial statements — purchasing, inventory, recipes, POS imports, waste, payroll, delivery receivables, and double-entry accounting. Everything connected, nothing manual.

Operations

The daily workflows that keep your restaurant running.

Purchase Tracking

Record vendor invoices with line-item detail. Multi-currency with exchange rates. Tracked items go to stock, expense items hit the P&L. Import purchases from XLSX/CSV.

  • Unlimited inventory items on all plans
  • Line-item quantities, units, and unit prices
  • Multi-currency purchases with exchange rate conversion
  • Auto-link to vendors and payment accounts
  • Stock movements generated automatically
  • Import purchases from BasilBook XLSX/CSV template (Pro)
  • Auto-create vendors during import
Import guide
HangPopokLoyverse
HangPopokLoyversePro

POS Sales Import

Sync sales directly from HangPopok POS or Loyverse POS — or import any XLSX/CSV spreadsheet. Auto-creates sale items, staff, categories, and delivery platforms.

  • One-click Sync HangPopok button on Sales, Sale Items, and Categories pages
  • HangPopok and Loyverse sales sync on a schedule — hourly, every 6 hours or daily
  • HangPopok POS auto-detection (Sales Report + Product Report)
  • BasilBook native XLSX/CSV with 60+ flexible column aliases
  • Auto-creates sale items, staff, categories, delivery platforms
  • Invoice-level + line-item discount handling with proportional distribution
  • Per-channel pricing stored separately (dine-in vs Grab vs FoodPanda)
  • Journal entries auto-generated per invoice
  • Idempotent — duplicate invoices detected and skipped
View import guide
Pro

Sales XLSX/CSV Import

Import sales from any spreadsheet using the BasilBook template. 60+ flexible column aliases, auto-creates sale items and staff.

  • BasilBook native XLSX/CSV with flexible column headers
  • Auto-creates sale items, staff, and delivery platforms
  • Journal entries auto-generated per invoice
  • Downloadable templates in .xlsx and .csv
Import guide

Sales Entry & Corrections

Record a sale by hand, or fix one that came in wrong — POS sales included. The books are corrected by reversing and replacing, never by rewriting history.

  • Enter a sale with its lines and payment method
  • Edit any sale, including ones imported from the POS
  • The old journal entry is reversed and a corrected one posted
  • Stock the old lines consumed is put back first
Pro

Purchase Import

Import purchase invoices from XLSX/CSV. Groups line items by reference number, auto-creates vendors, generates stock movements.

  • One row per purchase line, grouped by referenceNumber
  • Items matched by name (must exist in the system)
  • Vendors auto-created when not found
  • Stock movements generated for tracked inventory items
  • Journal entries auto-generated per purchase
Import guide

Stock Count

Count stock for today or any past day and compare it with the system balance. Save the count as you go, post it when it is done, and correct a single item without a full count.

  • System balance per item, as of the day you count
  • Save a draft as you go — anyone on the team can count
  • Variance calculated automatically
  • Posting records the adjustments as stock movements
  • Variance journal posted according to your costing method
  • Correct one item with a stock adjustment

Waste Tracking

Record waste by reason — spoilage, overcooking, prep waste, unknown loss. Each entry deducts stock and generates a journal entry. Import waste records from XLSX/CSV.

  • Five reasons: spoiled, expired, overcooked, prep waste, unknown loss
  • Links to inventory items with quantities
  • Auto-generates stock movement and journal entry
  • Waste reports by reason, item, and period
  • Import waste records from BasilBook template (Pro)
Pro

Waste Import

Import waste records from XLSX/CSV. Items matched by name, stock movements and journal entries auto-generated for tracked inventory.

  • One row per waste entry with date, item, quantity, reason
  • Items must exist in the system (matched by name)
  • Stock movements auto-generated for tracked items
  • Journal entries auto-generated (Dr Waste Expense, Cr Inventory)
Import guide

Expense Tracking

Record overhead costs like rent, utilities, and cleaning services. Import expenses from XLSX/CSV. Journal entries auto-generated for every expense.

  • Track rent, utilities, services, and other overhead costs
  • Expense categories auto-created with usage: expense
  • Map to expense and payment accounts from your Chart of Accounts
  • Journal entries auto-generated (Dr Expense, Cr Cash/Bank)
  • Import from BasilBook XLSX/CSV template (Pro)
Import guide

Daily Reconciliation

Compare POS totals against cash, bank, QR receipts and delivery receivables every day, on every plan. Close the session when the day is settled.

  • One session per business day, prefilled from POS sales and bank receipts
  • Actual cash counted in several lines — per shift or per drawer
  • Cash variance calculated live and posted to the ledger in one click
  • Close to lock the day; reopen it if something needs changing
  • Days with activity but no session are flagged

Management

Master data that powers your cost control.

Free

Standard Recipes

Define ingredient composition for every menu item. Recipes are versioned — never overwritten. Your December food cost uses December's recipe.

  • Link ingredients with quantities and units
  • Multiple recipe versions per sale item
  • Effective date ranges for seasonal changes
  • Ingredients come off stock as dishes sell, under recipe costing
  • Historical recipes preserved — never overwritten
Learn more
Pro

Recipe Cost Analysis

Know what a plate costs you. Cost per serving from your own ingredient prices, food cost percentage against the menu price, and which ingredient is driving it.

  • Cost per serving calculated from ingredient prices
  • Food cost percentage against the menu price
  • Margin per serving, on the recipe version you are reading
  • Each ingredient's share of the plate cost
Learn more

Inventory Valuation

Choose how stock is valued — latest cost, weighted average or FIFO. Every stock movement carries its value, so the Inventory account and the stock report agree.

  • Latest cost, weighted average or FIFO
  • Every stock movement valued when it is posted
  • Switching method revalues stock on hand in one entry; history is never restated
  • Movement history for every item
  • Inventory valued as of any day in Reports

Built for Your Business Type

Restaurant, retail, service or garage — the chart of accounts, the sidebar and the words on screen follow how the business actually works.

  • Restaurant: recipes, waste and POS sales
  • Retail: what you buy is what you sell, paired in one step
  • Service: invoices, quotes and receivables, nothing to count
  • Garage: labour and parts billed together, parts taken off the shelf
  • Labels follow the kind — Sale Item, Product or Service
Pro

Delivery Platform Management

Configure Grab, FoodPanda, Nham24 and other delivery platforms with commission rates. Track receivables and per-channel pricing per item.

  • Add platforms with name + commission rate
  • Platforms auto-created during POS import, at a 25% default you then adjust
  • Per-channel pricing — each item can have a different price per platform
  • Commission expense recorded at time of sale
  • Net receivable created and cleared on settlement
  • Manage platforms in Settings → Delivery tab
Learn more
Pro

Payroll Management

Calculate payroll using daily wage = monthly salary / 30. Salary is snapshot at payroll time — giving a raise doesn't change past payslips.

  • Daily wage: monthly salary / 30
  • Staff line items with days worked
  • Salary snapshot preserved (raise doesn't change past records)
  • Journal entries generated for each period
  • Auto-fill days worked from DailyBrew attendance
Why snapshots matter
DailyBrew
DailyBrewPro

Attendance Tracking

Sync employee attendance from DailyBrew. Track check-ins, late arrivals, early leaves, and absences with a visual calendar grid. Auto-fill days worked when running payroll.

  • Sync on demand, or on a schedule — hourly, every 6 hours or daily
  • Visual calendar grid — present, late, early, absent
  • Employee summary with hours worked and averages
  • Staff linked by DailyBrew public ID, which survives a rename
  • Unmatched usernames highlighted for easy linking
  • Sync history with detailed stats
  • Auto-fill payroll days from attendance records
DailyBrew

Team Members

Invite staff by email or public ID. Import staff from XLSX/CSV or auto-create from POS imports.

  • Free plan: owner + 1 team member
  • Professional plan: unlimited team members
  • Role-based access (owner, manager, member)
  • Invite by email or shareable public ID
  • Import staff from BasilBook template
  • Staff auto-created from POS import operator names
  • Stable POS username for import matching + editable display name

Telegram Bots

BasilBook works in the Telegram groups your team already uses: send invoices and exports straight to a chat, and ask the bot for the day's takings with /total.

  • Official @BasilBook_bot — add it to a group, nothing to install
  • Send /chatid, or press Detect, to link the group
  • Send invoices and exports to the chat to forward on
  • /total takings snapshot — received, sold and the gap (Professional)
  • Reminders for overdue customer invoices (Professional)
  • Bring your own bot on Professional
How /total works
Pro

Copy from Another Location

Opening a second restaurant? Copy items, vendors, and menu items from an existing location. Today this runs through the REST API — a console screen is still to come.

  • Available today through the REST API — a console screen is on the way
  • POST /api/v1/organizations/copy — items, vendors and sale items in bulk
  • Recipes are not copied yet; master data is, so you do not re-key it
  • Each organization is a separate billing unit

Finance

Accounting-grade reporting without the accounting degree.

Chart of Accounts

Every organization starts with a ready-made chart of accounts sized to its business type — restaurant, retail, service or garage. Revenue is split the way the business earns it: food and beverage for a restaurant, labour and parts for a garage.

  • Assets, liabilities, equity, revenue, expenses
  • System roles: cash, bank, inventory, COGS, payroll, etc.
  • Restaurant revenue split into food and beverage by category
  • Each delivery platform can post to its own receivable account
  • Professional: add unlimited custom accounts
View all accounts

Double-Entry Accounting

Every operational event generates balanced Dr/Cr journal entries, on every plan. The books are correct by design — no manual posting needed.

  • Purchase: Dr Inventory/Expense, Cr Cash/Bank/Payables
  • Waste: Dr Waste Expense, Cr Inventory
  • Cash/Card sale: Dr Cash/Bank, Cr Food Revenue + Cr Beverage Revenue
  • Delivery sale: Dr Receivable + Dr Commission, Cr Delivery Revenue
  • Posted automatically on every plan
How it works

Automated Journal Entries

Purchases, sales, waste, and payroll auto-generate proper Dr/Cr entries. Every entry links to its source transaction for full auditability.

  • All plans: auto-generated entries from purchases, sales, and waste
  • Professional: manual entries, and corrections that reverse and replace
  • Draft / Posted / Reversed status workflow
  • Reference link to source (invoice number, purchase ID)
  • Full audit trail with timestamps
Learn more
Pro

Bank Receipt Capture & Matching

Your bank's Telegram payment alerts become receipts in BasilBook. Each one is matched to the sale it paid, and the deposit posts from Cash on Hand to Cash at Bank when you confirm.

  • ABA, Prassac, ACLEDA and Canadia alerts read in real time
  • Direct bank webhook, or a receipt entered by hand
  • Auto-match by amount and currency, with time and payer as confidence
  • Split and partial payments allocated across sales
  • Settle customer invoices from the deposit
  • /total takings snapshot in the bank group
How capture works
Pro

Customer Invoicing

Bill customers and track what they owe, with accounts-receivable aging. Match incoming bank deposits to open invoices to settle them — built for service work and workshops.

  • Draft, issue, and record payments against an invoice
  • AR aging — current, 1–30, 31–60, 61–90, 90+ days
  • Credit notes, including partial: credit the returned part, keep the labour
  • Recurring invoices generated on a schedule
  • EN 16931 e-invoicing — Factur-X PDF, CII and UBL XML
  • Send a copy to your Telegram chat to forward on
Pro

Customers & Receivables

Know who owes you and for how long. Record customer payments, apply them to invoices and send statements — with an aging report that ties to the ledger.

  • Customer directory with what each one owes
  • One payment applied across one or many invoices
  • Aging: current, 1–30, 31–60, 61–90, 90+ days
  • Customer statements
  • Delivery platform receivables cleared on payout
Pro

Quotations & Job Cards

For service businesses and workshops: send a quote, turn it into an invoice when the customer agrees, and follow a job from booking to billing.

  • Quotes post nothing until they become a draft invoice
  • VAT checked again when a quote is converted
  • Job cards: vehicle, complaint, technician and parts
  • Booked → In progress → Completed → Invoiced
  • Parts on the invoice come off stock automatically

Accounts Payable

What you owe each supplier, from purchases on credit and pay-later expenses. Seeing the balance is free on every plan; recording supplier payments is Professional.

  • Balance per vendor, tied to Accounts Payable in the ledger
  • On-credit purchases and pay-later expenses included
  • Vendor ledger: every purchase, expense and payment
  • Professional: record payments and apply them to the bills they settle
  • Overpayments kept as money on account

Financial Reports

The statements an accountant asks for, for any period: trial balance, general ledger, income statement, balance sheet and cash flow — plus receivables, payables and inventory valued as of any day.

  • Trial balance and general ledger, parent and child accounts nested
  • Income statement, balance sheet and cash flow for any period or date
  • Receivables by customer and delivery platform, payables by vendor
  • Inventory valued as of a day, beside the Inventory accounts
  • Professional: export any report to Excel

Analytics

See what drives the numbers: daily sales, revenue against cost, your best sellers, and sales split by category, channel and payment method — with deposits by bank beside them.

  • Daily sales trend
  • Revenue against cost over time
  • Top-selling items
  • Sales by category and by channel — dine-in or delivery
  • Sales by payment method and deposits by bank
  • Professional: your own layout, saved views, and charts pinned to the dashboard — arrange it in the mobile app too

Multi-Currency Support

Each organization can accept multiple currencies. Currency is snapshot on every transaction — changing your primary currency never rewrites history.

  • Primary currency + accepted currencies per organization
  • Currency snapshot on every sale and purchase
  • Historical accuracy preserved across currency changes
  • Exchange rates kept in Settings and snapshotted on each journal entry
How snapshots preserve currency

Dashboard & KPIs

Your position at a glance for any period: net revenue, cost of goods sold and margin, with the sales and purchases behind them.

  • Period selector: today, yesterday, this week, last week, this month, or any custom range
  • Net revenue, COGS, gross margin and margin %
  • Daily sales chart and payment method breakdown
  • Top 5 selling items and top categories
  • Sales, purchases, active items and open reconciliation sessions
  • Professional: arrange your own dashboard — move, resize, hide and add charts, on the web or in the mobile app

Insights

Your books, watching themselves — by rules, not AI.

Pro

Alerts on your own books

BasilBook compares your purchases, sales, costs and stock with your own history and tells you what stands out. Deterministic rules: no AI, nothing guessed.

  • Buying too often: an item bought more often than usual, or a possible duplicate purchase
  • Sudden cost changes: a supplier’s price jump, an expense spike, food cost off its usual level
  • Sudden income changes: a quiet or busy day for its weekday, missing sales days, a shift in payment mix
  • Profit leakage: discounts, voids, waste, stock shortfalls, dishes sold below cost, delivery deductions, unsettled QR money
  • Every alert says why it was flagged, against which baseline, with links to the records behind it
  • Acknowledge, dismiss or reopen alerts, and mark each one useful or not
Pro

You set the thresholds

Switch each check on or off and decide how unusual something must be before BasilBook tells you.

  • Per-check thresholds, kept within safe bounds
  • The checks that protect the books themselves are always on
  • Owners and managers change them; everyone else can read them
  • Telegram: one message per run, most serious first, with a daily cap — switch it off in Notifications
Pro

Vendor scorecard

Open any vendor and see what you spend with them and how their prices move.

  • Share of your spend and twelve months of spending
  • Documents and the average document
  • Each item’s price against its own usual range
  • Every alert raised about the vendor
Pro

Item profitability

Every dish with a recipe, ranked by what it really earns, with the ingredients eating the margin.

  • Margin, contribution and units sold, sortable
  • How each margin moved since the end of last month
  • The ingredients driving the cost, and what the margin would be if the biggest returned to its usual price
  • Dishes selling below cost stand out

Customization

Every person arranges BasilBook their own way.

Pro

Your own dashboard

Move, resize and hide the dashboard’s cards, and add the widgets and charts you want to see first. Your layout is yours: a colleague’s never moves.

  • Drag and resize cards on a grid; hide the ones you never read
  • Add widgets and charts: expense breakdown, payables by vendor, receivables aging
  • Pin any Analytics chart to the dashboard, drawn on the dashboard’s period
  • Pick the period the dashboard opens on
  • Show, hide and reorder the same widgets in the mobile app
Pro

Analytics your way

Arrange the Analytics page, add the charts you need, and save the views you come back to.

  • Move, resize, hide and add charts
  • Saved views: a name, a layout and a date range
  • Relative ranges such as “this month” stay current every time you open the view
  • Customize Analytics from the mobile app too
Pro

A sidebar in your order

Put the pages you use most at the top, and hide the ones you never open.

  • Reorder pages within each group of the sidebar
  • Hide a page from your own sidebar without taking anyone’s access away
  • Per person and per workspace: each workspace you belong to keeps its own order
  • The same order in the mobile app’s menu, which you can edit there too

Data & Integration

Get your data in and out — no lock-in, no friction.

10 Import Types

Import items, sale items, vendors, staff, categories, sales, purchases, waste, expenses, and stock counts. HangPopok POS auto-detected. BasilBook XLSX/CSV with 60+ flexible column aliases.

  • Sale items, inventory items, vendors, staff and categories: every plan
  • Sales, purchases, expenses, waste and stock counts: Professional
  • HangPopok POS: Product List, Sales Report, Product Report
  • BasilBook native: flexible column headers, case-insensitive
  • Downloadable templates in both .xlsx and .csv
  • Auto-creates categories, staff, vendors, delivery platforms
Full import guide
Pro

Excel Export

Export items, vendors, purchases, sales, waste, journal entries, and more as .xlsx files. Full data workbook for backups and audits.

  • Export any resource individually
  • Full data workbook: every resource as a sheet
  • Download the file, share it, or send it to Telegram
  • Perfect for backups, audits, or migration
Free

Setup Wizard

A guided start: name the business, set its language and currency, add delivery platforms, then bring in your menu and stock — from HangPopok, a spreadsheet or by hand. Replay it any time from the sidebar.

  • Business → Locale → Delivery → Ready
  • Import a HangPopok product list or a BasilBook spreadsheet
  • Add categories, sale items and inventory items as you go
  • The same steps in the mobile app
  • Replay any time from the sidebar
Free

Snapshot Architecture

Data is frozen at transaction time. Rename products, change currencies, update salaries — historical records never change. Audit-ready by design.

  • Product names frozen on sales transactions
  • Currency snapshot on every purchase and sale
  • Salary snapshot on payroll lines
  • Recipe versioning with effective dates
  • Immutable stock ledger with source references
  • Per-channel price isolation
Learn about snapshots

REST API & POS Push

Everything in the console is available over a versioned REST API — it is what the mobile app runs on. On Professional, your POS can push paid orders straight in, signed with HMAC.

  • Versioned /api/v1 for every resource
  • Bearer tokens with refresh, for apps and scripts
  • POS push API with API keys and HMAC signatures (Professional)
  • Orders already received are detected and skipped
  • File imports and exports (Professional)

Mobile App (Coming Soon)

A native app for iPhone, iPad and Android with the same workflows as the console — purchases, sales, stock counts, invoices, reconciliation and settings — on the same account and data.

  • iPhone, iPad and Android
  • Same account, organizations and data as the web
  • Every console workflow except design themes
  • Sign in with Apple, Google or email

Languages & Themes

Use BasilBook in English, French or Khmer and switch at any time. Customer documents follow your organization's language, not the reader's.

  • English, Français, ខ្មែរ
  • Switch language from the top bar
  • Invoices printed in the organization's language
  • Several colour themes, light and dark

Activity Log & Security

See who did what and when, and keep sign-ins safe.

  • Activity log of imports, reconciliation and settings changes
  • Members read; owners and managers make changes
  • Sign-in locked after repeated failed attempts
  • New accounts confirm their email address
  • Delete your account yourself, on web or mobile
HangPopok
HangPopok
POS IntegrationFree + Pro

POS sync, seamless

Connect your HangPopok POS to sync products and categories in one click on the Free plan. Upgrade to Professional to sync sales invoices directly via the GraphQL API — on demand or on a schedule — no more manual Excel exports. Sale items, staff, categories, and delivery platforms are created automatically.

Free
Product sync
Pro
Sales sync
GraphQL
API
Auto
Format detection
Learn more about HangPopok
Loyverse
Loyverse
POS IntegrationPro

Loyverse POS, fully automated

Drop your Loyverse Personal Access Token into Settings → Integrations and BasilBook syncs items and receipts on a schedule. Sale items, staff, categories, and delivery channels are created automatically — invoice-level and line-item discounts handled, journal entries generated.

Pro
Items sync
Pro
Receipts sync
REST
API
Auto
Scheduled sync
Learn more about Loyverse
DailyBrew
DailyBrew
Integration PartnerPro

Staff attendance, automated

DailyBrew tracks when your staff check in and out. BasilBook syncs that data automatically — building a visual calendar of attendance, flagging late arrivals and absences, and pre-filling days worked when you create payroll. No double entry. No spreadsheets.

1-click
Sync
P / L / E / A
Calendar grid
Auto
Payroll days
Every run
Sync history
Learn more about DailyBrew

Ready to take control?

Start free with full operational control. Upgrade to Professional when you need imports, accounting, and delivery management.