Bank account management, cash flow forecasting, bank guarantees, insurance policies, fixed deposits, fund requests, letter of credit, and FX hedging.
Treasury Management handles all banking and cash management operations. Bank accounts are maintained across multiple banks with real-time balance tracking. Cash flow forecasting uses committed payments (AP) and expected receipts (AR) to project future balances. Bank Guarantees (BG) and Letters of Credit (LC) are tracked with expiry alerts. Insurance policies cover project assets, workers, and third-party liability. Fixed deposits and fund requests manage short-term investments and inter-entity funding.
| Status | Description | Allowed Actions | Next States |
|---|---|---|---|
| Active | Bank account / BG / Policy active | Transact, Monitor | Expiring |
| Expiring | Within 30 days of expiry | Renew, Extend | Active, Expired |
| Expired | Validity period ended | Renew or Close | Active, Closed |
| Requested | Fund request submitted | Approve, Reject | Approved |
| Approved | Fund request approved for transfer | Execute Transfer | Completed |
| Closed | Account / BG / Policy closed | Archive | — |
account_id — PKtenant_id, entity_id — FK → organizationbank_name, branch, account_number, ifsc_code — Bank detailsaccount_type — current | savings | overdraft | escrowcurrent_balance, currency — Real-time balanceis_primary — Default payment account flagcashflow_id — PKentity_id, project_id — FK → scope referenceforecast_date, amount, direction — Expected date, amount, inflow/outflowsource_type — ap_invoice | ar_invoice | payroll | bg | insurancesource_id — FK → originating documentis_actual — Forecast vs actual flagbg_id — PKproject_id — FK → project.projectbg_type — performance | advance | retention | bidbank_account_id — FK → treasury.bank_accountbg_amount, margin_amount — Guarantee and margin valuesissue_date, expiry_date — Validity periodbeneficiary — Client/employer namestatus — Active / Expiring / Expired / Releasedpolicy_id — PKproject_id — FK → project.projectpolicy_type — car | tpl | wc | marine | professionalinsurer, policy_number — Policy detailssum_insured, premium_amount — Financial detailsstart_date, end_date — Coverage periodstatus — Active / Expiring / Expired / Claimedlc_id — PKvendor_id — FK → vendor.vendor_masterlc_number, lc_amount, currency — LC detailsissuing_bank, advising_bank — Bank referencesexpiry_date, shipment_date — Key datesstatus — Opened / Amended / Utilized / ExpiredConfigure bank accounts with full details. Set primary account for each entity. Enable bank statement import for auto-reconciliation.
System auto-generates 90-day cash flow forecast from: AP invoice due dates (outflows), AR invoice expected receipts (inflows), payroll schedules, BG margin requirements, and insurance premiums.
Track BG lifecycle — issuance, amendment, utilization, and release. System alerts 30 days before expiry. BG margin blocked from available funds. Released BGs free up margin amount.
Maintain project insurance policies — Contractor All Risk (CAR), Third Party Liability (TPL), Workmen Compensation (WC). Track claims against policies. Renewal alerts at 60 days.
Inter-entity or project fund requests flow through approval workflow. Approved requests trigger bank transfer. Reconciled against bank statement import.
-- 30-day cash flow projection SELECT forecast_date, SUM(CASE WHEN direction = 'inflow' THEN amount ELSE 0 END) AS inflows, SUM(CASE WHEN direction = 'outflow' THEN amount ELSE 0 END) AS outflows, SUM(CASE WHEN direction = 'inflow' THEN amount ELSE -amount END) AS net_flow FROM treasury.cash_flow WHERE entity_id = :entity_id AND forecast_date BETWEEN CURRENT_DATE AND CURRENT_DATE + 30 AND is_actual = FALSE GROUP BY forecast_date ORDER BY forecast_date;