Finance
The financial ledger engine. Hire accrues per individual pallet ID, and every financial event auto-posts a double-entry journal. The same records feed live TCO to Commercial and export to Krishand as a CSV file, one direction only.
Accrued today
48,920
▲ 3.1% hire posted across 6,240 pallets
Open receivables
1.24M
42 days weighted average age
Overdue invoices
5
▼ RM 96.4k past due terms
Pending Krishand entries
742
Awaiting next CSV export batch
Journal entries ledger
Every financial event auto-posts a balanced double entry · read at individual pallet ID level
| Date | Event type | Debit account | Credit account | Amount | Reference | Export |
|---|---|---|---|---|---|---|
| 13 Jul 08:12 | Payment received | Bank | Accounts Receivable | 184,200.00 | INV-2026-0311 | PENDING |
| 13 Jul 07:48 | Movement fee | Accounts Receivable | Movement Fee Revenue | 12.00 | WD-00RS | PENDING |
| 13 Jul 06:30 | Invoice generated | Accounts Receivable | Rental Revenue | 37,840.00 | INV-2026-0312 | PENDING |
| 12 Jul 16:04 | Damage claim | Accounts Receivable | Damage Recovery Revenue | 1,280.00 | PL-07PS | PENDING |
| 12 Jul 14:22 | Repair completed | Repair Expense | Wages Payable | 44.00 | REP-2026-000221 | EXPORTED |
| 12 Jul 14:22 | Parts consumed | Repair Expense | Raw Materials Inventory | 18.00 | REP-2026-000221 | EXPORTED |
| 11 Jul 10:15 | Loss invoice | Accounts Receivable | Loss Recovery Revenue | 210.00 | WD-0Q4M | EXPORTED |
| 10 Jul 09:38 | Inbound transport | Pallet Asset | Accounts Payable | 576.00 | WD-2026-0148 | EXPORTED |
| 10 Jul 09:38 | Pallet purchased | Pallet Asset | Accounts Payable | 96,000.00 | WD-2026-0148 | EXPORTED |
Showing 9 of 1,204 journal entries · 742 pending export
Ledger balanced · Dr = Cr
Krishand CSV export
File-based hand-off to the accounting system · no live API link
Export selects only entries with export_status = PENDING. Once written to a CSV they are flagged EXPORTED and are never re-exported. There is no API or database link to Krishand, the file is the only hand-off.
Export history
| Date range | Entries | Status |
|---|---|---|
| 01 Jun → 30 Jun | 1,918 | EXPORTED |
| 16 Jun → 30 Jun | 942 | EXPORTED |
| 01 Jun → 15 Jun | 976 | EXPORTED |
Live TCO calculator
Built from real journal entries, never an estimate
| Component | Source pillar | Amount |
|---|---|---|
| Purchase cost | Procurement | 30.00 |
| Inbound transport | Logistics · INBOUND | 2.40 |
| Avg repair cost | Technician | 2.60 |
| Overhead allocation | Finance · monthly | 6.20 |
| Live TCO / pallet | 41.20 | |
Feeds the Commercial rate floor automatically. As journal entries post, TCO recalculates and any rate card below the derived floor of RM 0.073/day is blocked from saving.
Invoices
One invoice per customer billing period · generated from hire accrual
| Invoice ID | Customer | Billing period | Amount | Status |
|---|---|---|---|---|
| INV-2026-0308 | Tenaga Logistics Sdn Bhd | Jun 2026 | 184,200.00 | PAID |
| INV-2026-0309 | Nestlé Malaysia | Jun 2026 | 142,880.00 | SENT |
| INV-2026-0310 | Sime Retail Group | Jun 2026 | 96,420.00 | OVERDUE |
| INV-2026-0311 | CJ Century Logistics | Jun 2026 | 78,640.00 | SENT |
| INV-2026-0312 | Padi Beras Nasional | Jul 2026 | 37,840.00 | DRAFT |
| INV-2026-0313 | Mydin Wholesale | Jul 2026 | 24,910.00 | DRAFT |
6 invoices · 1 overdue · 564,890.00 billed this cycle
Rate cards