Every feature, in detail.
Bilti is a complete transport management system for booking agencies and truck owners: bilties at the counter, vouchers on the road, the party khata, fleet, payroll, 14 reports and WhatsApp that fires by itself. Here is the whole list — and the exact workflow of each.
How it all flows
Features are only useful in the order the work actually happens. These are the four workflows the whole system is built around.
A bilty's life — counter to receiver
What happens at each step, and what the system does for you.
-
1
Book (Karachi counter)
Sender brings the goods. The counter books the bilty: parties, goods, weight, freight and charges.
System: issues KHI-000011, marks it Booked, sends the "booked" WhatsApp to the receiver.
-
2
Load
The bilty is put on a voucher — a truck with a driver for the route.
System: status becomes Loaded. The voucher now shows what is on board.
-
3
Dispatch
The truck leaves. One click at the counter.
System: status Dispatched, WhatsApp to the sender with truck and driver details.
-
4
Arrive
The truck reaches the destination office.
System: status Arrived, WhatsApp to the receiver — "your goods have arrived, come collect".
-
5
Deliver
The receiver checks the goods and pays. The counter delivers the bilty.
System: status Delivered. The receiver's ledger gets exactly one charge for the delivery-side total. Cash collected is booked on the spot.
A truck's run — the voucher
Every truck movement is one voucher, from open to commission.
-
1
Open
From office → delivery office, pick the truck and driver. Own truck? A fleet trip is created automatically. Hired truck? Record the owner and the kiraya.
-
2
Load
Load the pending bilties for this route. One bilty can be split across two trucks if needed.
-
3
Dispatch
One click. Senders are notified on WhatsApp.
-
4
Arrive
One click at the destination. Receivers are notified.
-
5
Deliver
Deliver bilties one-by-one or all at once — each delivery posts its charge to the receiver's ledger.
-
6
Expenses
Add the run's costs: tolls, dhakka, labour, loading, unloading.
-
7
Close
Commission is auto-calculated: freight − expenses − kiraya (or enter it manually for negotiated runs). The run is fully accounted for.
How money moves
One bilty = one bill. Money in is applied to the oldest bill first.
-
1
A charge is posted
When a bilty is delivered, its delivery-side total posts to the receiver's ledger as a single charge. Never double entries.
-
2
The receiver pays
Cash, bank transfer or cheque. The receiving is applied FIFO — to the oldest open charges first.
-
3
The balance is always right
Balance = charges − receivings, per party, at all times. No hand totals, no "let me check the register".
-
4
A cheque bounces
One click: the receiving is voided and its allocations removed. The balance returns to where it should be.
-
5
Month end
Statement PDF for any date range, sent by WhatsApp. The ageing report (0–30 / 31–60 / 61–90 / 90+) drives the collection calls.
A day at the counter — by role
Everyone sees only what their job needs.
-
1
Staff (counter)
Book bilties, load them onto vouchers, dispatch, deliver, collect cash, record receivings.
-
2
Manager
Everything the staff do, plus expenses, payments out (kiraya, suppliers) and all reports.
-
3
Owner
Everything — plus staff, payroll, users, offices, settings, support tickets and the QA report.
Every feature
All of it, grouped by module. If you need something that is not here, ask on WhatsApp — a lot of it is already in the roadmap.

Bilties — booking & tracking
8- Book a bilty
- Sender, receiver, goods, quantity, weight, and any mix of charges — freight, labour, loading, godam, local kiraya, delivery, other.
- Charges on either side
- Each charge is collected at the booking office or the delivery office — exactly how the counter works.
- Automatic bilty numbers
- Per-office prefix (KHI-, LHR-), sequential, never reused — even when a bilty is voided.
- Status flow
- Booked → Loaded → Dispatched → Arrived → Delivered, with a full time-stamped timeline on every bilty.
- Split a bilty
- Part of the consignment on one truck, the rest on another: split quantities across two vouchers, both linked to the original.
- Edit & void
- Free editing before loading; limited, audit-logged editing after. Voids keep the number and record the reason.
- Print & PDF
- A5/A6 bilty, driver copy and PDF download — the format your counter already prints.
- Search & filter
- Find any bilty by number, party, date, status or office.

Vouchers & delivery
8- Voucher = one truck, one route
- From office to delivery office with truck and driver. An own truck auto-creates a fleet trip; a hired truck records the owner and kiraya.
- Load & unload
- Put pending bilties on a voucher — or unload them if plans change before dispatch.
- Dispatch & arrive
- One click at each end. WhatsApp goes to the sender on dispatch and to the receiver on arrival — automatically.
- Deliver bilties
- Deliver one-by-one or all at once. On delivery, the total posts to the receiver's ledger as exactly one charge.
- Voucher expenses
- Banam, dhakka, labour, loading, unloading, toll, other — attached to the run, not to a bilty.
- Commission
- Auto-calculated at close: freight − expenses − kiraya. Manual override for full-container or negotiated runs.
- Gate pass
- When the party collects locally in their own vehicle — record it and print the gate pass.
- Voucher print & PDF
- Print the voucher or download it as PDF.

Parties & ledger
6- Party records
- Name, phone, city, type (sender / receiver / both) and notes. The same counterparty works on both sides.
- Party ledger
- Charges (auto-posted on delivery), receivings, discounts and a running balance — never a hand-added total again.
- Receivings
- Cash, bank or cheque. Money is applied FIFO — to the oldest open charges first.
- Cheque bounce
- One click voids the cheque and removes its allocations, so the balance goes back to where it should be. No red-ink corrections.
- Statement
- Any date range, rendered to PDF and sent by WhatsApp.
- Outstanding & ageing
- Every open balance bucketed into 0–30 / 31–60 / 61–90 / 90+ days.

Money & cash
4- Cash accounts
- Cash boxes and bank accounts side by side; every rupee in or out touches an account.
- Payments out
- Kiraya to truck owners, staff salaries, driver advances and supplier expenses — each with a reference and date.
- Office expenses
- By category (rent, tea, local petrol, misc), per office.
- Cash position
- Per account and in total, at a glance — and it always reconciles with the ledger.
Fleet & trips
7- Vehicles
- Type, registration, ownership (own / leased), capacity, document expiry and notes.
- Drivers
- Licence, phone, and pay type: fixed, per-trip, per-bilty commission, or any combination.
- Trips
- Auto-created when your own truck runs a voucher; client, route, freight, advance and live status.
- Fuel logs
- Litres and cost per vehicle — feeds the fuel-efficiency report (cost per 100 km).
- Maintenance & tyre logs
- Workshop and tyre history per vehicle, posted against a cash account.
- Driver advances
- Track what you have given out, and have it deducted automatically at pay time.
- Truck summary
- Income vs cost per vehicle — know which truck actually earns.
Payroll
5- Salary types
- Fixed, per-bilty commission, or fixed + commission for each staff member.
- Month computation
- Counts the bilties and trips the staff member booked and applies their rate.
- Advances
- Recorded per staff member and deducted in the pay run.
- Pay run
- Pay staff, deduct advances, move money between cash accounts — in one action.
- Payroll report
- Month, staff, gross, advances, net — paid or pending.

Reports (14)
2- The full set
- Undelivered bilties (days waiting) · party outstanding + ageing · unpaid kiraya per owner · commission & office performance · route analysis · cash position · expense summary · profit & loss · cash flow · fuel efficiency · route profitability · driver performance · volume by office.
- Every report
- Date range, office filter, CSV export and print — the same one screen for all of them.

- Automatic notifications
- Booked, dispatched, arrived, delivered, payment (with amount + balance) and statement — fired by the workflow, not by whoever remembers.
- Manual send
- Pick a party and a template, send.
- Message log
- Everything sent: template, recipient, content, status and cost (Rs 2.8 per message by default).
- Pluggable driver
- Runs on a built-in log driver (stored in the database); switch to the Meta Cloud API with an env change — no code change.
Offices & roles
3- Multiple offices
- Booking, delivery or both — each with its own phone, address and numbering prefix.
- Roles
- Owner: everything. Manager: operations + reports, no settings or payroll. Staff: sees only their own office.
- Staff accounts
- Per office, with salary type — ready for payroll from day one.
Help & support
4- In-app help center
- Task-by-task how-tos inside the app, where the question arises.
- Support tickets
- From the public site or in-app; the owner's inbox tracks open / in progress / done.
- Guides
- Public guides: what a bilty is, party ledgers, how booking agencies work, kiraya, going digital.
- Guest bilty tracking
- The receiver types the bilty number + phone and sees the live status timeline — no login needed.
Security & reliability
5- Login protection
- Session security, CSRF protection and rate-limited logins.
- Security headers
- HSTS, nosniff, referrer policy and permissions policy on every response.
- In-app QA report
- System checks (database, storage, PDF engine, WhatsApp driver) plus a full end-to-end smoke flow — pass/fail report with history.
- Activity log
- Who did what and when — create, edit, void, pay, dispatch.
- Daily backups
- Automated database dump with 14-day retention.
Read is good. Clicking is better.
The live demo has a full month of demo data — bilties in every status, a closed voucher with commission, party ledgers, fuel and payroll. One click and you are inside as the owner.