A humanitarian NGO operating in Lebanon in 2026 is running an operation that no off-the-shelf M&E tool was built for. Cash assistance to Syrian and vulnerable Lebanese beneficiaries flows in fresh USD. Office rent in Beirut is invoiced in lira at a parallel-market rate. Vendor payments in Tripoli or Tyre are split: some in dollars, some in lira, some in a Sayrafa-priced hybrid that depends on which bank still services your account. The UNHCR donor report needs everything reconciled in USD-equivalent at the closing-day rate. The ECHO partner report wants it in EUR. The MoSA submission needs Lebanese-pound totals matching the official rate, not the market one.
The M&E officer is not running M&E. She is running a forex desk.
This is the operational picture across Beirut, Tripoli, Tyre and the Bekaa for the humanitarian INGO and national-NGO ecosystem. Below is what an AI-augmented M&E architecture looks like when it is designed for Lebanon specifically — not retrofitted from a UK-template dashboard.
The Lebanon Humanitarian NGO Landscape
The humanitarian response in Lebanon has been continuous since 2011 and now intersects three overlapping crises: the Syrian refugee response, the post-2019 economic collapse, and the displacement caused by ongoing conflict in the south. The major INGOs operating in country include UNHCR (as agency, not just donor), WFP, UNICEF, NRC, IRC, Mercy Corps, Action Against Hunger, Concern Worldwide and Save the Children. Lebanese national NGOs are equally central: Lebanese Red Cross, Caritas Lebanon, Amel Association, ALPHA, and dozens of local CBOs in each governorate.
Primary donors: UNHCR for refugee response, ECHO for emergency response, USAID/BHA for food security and emergency assistance, the EU Madad fund for protracted refugee programming, GIZ and AFD for stabilization and resilience work, and the Lebanon Humanitarian Fund (LHF) for national-NGO grants.
Regulatory anchor: every NGO is registered with — or operates by notification to — the Ministry of Interior and Municipalities (the famed "ilm wa khabar" notification), and program activities affecting beneficiaries must be coordinated with the Ministry of Social Affairs (MoSA). MoSA expects beneficiary data in templates that have not been updated to handle multi-currency reporting.
What Makes Humanitarian M&E in Lebanon Specifically Painful
Six pain points define the Lebanese context:
- Multi-currency by transaction, not by report. Every cash distribution, every vendor payment, every staff salary involves a currency choice and a rate at a specific timestamp. Reconciling at month-end is impossible without transaction-level rates stored at ingestion.
- Multiple parallel exchange rates. The official BDL rate, Sayrafa, the parallel market rate, the WFP-recognized rate, and the donor's "for-reporting" rate may all differ on the same day. Your indicator architecture must record which rate was used and why.
- Vendor verification fragility. Sanctioned-entity lists change. Lebanese vendors merge, split, and reincorporate. A cash-for-rent program that paid a vendor on day 1 must verify that vendor is still listed on day 90 — and your audit trail needs that verification on file.
- UNHCR ProGres v4 integration. Refugee-status beneficiaries are identified via ProGres v4 case numbers. The integration is not optional but is fragile; every UNHCR Lebanon operation has its own quirks.
- MoSA data submission cadence. MoSA expects periodic submissions but in templates that change without notice. Building a flexible Arabic-language reporting agent that adapts to ministry template updates is a real requirement, not a nice-to-have.
- Data protection under Law 81/2018. Lebanon's data protection law applies to beneficiary data. Cross-border transfers (to a donor's HQ system, to a cloud provider outside Lebanon) require specific safeguards. UNHCR's own protocols add an additional layer.
A Recommended Stack for Lebanese Humanitarian NGOs
Building on our pillar guide to AI M&E dashboards for MENA NGOs, the Lebanon adaptation has three distinctive components:
Multi-currency ingestion at the transaction level
Every transaction stored in Postgres carries five attributes: amount, currency of execution, exchange rate to USD at timestamp, source of that rate (BDL, Sayrafa, parallel, WFP-reference), and an immutable timestamp. The MCP server exposes views that compute USD-equivalent, EUR-equivalent and LBP-equivalent on demand — never as stored values. This pattern is essential for audit and for reissuing reports against a corrected historical rate.
Vendor verification agent
A dedicated agent runs nightly against vendor records, checking:
- OFAC and EU sanctions list status
- Lebanese commercial registry status (active / suspended / dissolved)
- Beneficiary-feedback flags from KoboToolbox post-distribution monitoring
The agent does not block payments — that is a finance system function. It flags vendor records that have changed status since last verification, so the cash-and-voucher officer reviews them before the next distribution cycle.
UNHCR ProGres mirror
Rather than calling the UNHCR API on every query, maintain a daily-synced mirror of the ProGres case numbers and minimal status fields you are authorized to store. The MCP server queries the mirror. This protects you from API rate limits, partial outages, and the inevitable evening when the donor calls and the upstream service is down.
Donor-template agents for ECHO, UNHCR, and MoSA
Three distinct PDF generators:
- UNHCR partner report — English, USD-equivalent, indicator-level disaggregation by case status
- ECHO Single Form report — English/French, EUR-equivalent, results-framework aligned
- MoSA submission — Arabic, LBP totals at official rate, plus a USD-equivalent annex
Each runs from the same underlying Postgres data with different aggregation logic.
Lebanon-Specific Compliance Corners
Four regulatory and donor-compliance considerations that are non-negotiable:
- Law 81/2018 on Electronic Transactions and Personal Data. Articles 87-96 govern personal data processing. Beneficiary data falls squarely under the law. Your data management plan must document the legal basis, retention period, and any cross-border transfer.
- UNHCR Data Protection Policy 2018 and subsequent updates. UNHCR-funded programs follow UNHCR's own protocol, which in some respects is more restrictive than Lebanese law (particularly around protection-status indicators).
- MoSA reporting templates. Templates change without long notice. The MoSA agent must support template-update workflow: load new template, map indicators, regenerate. This is operational reality, not edge case.
- ECHO Single Form compliance. ECHO-funded actions report against the Single Form structure. The Lebanon-specific complication is that EUR-equivalent calculation rules differ between budget reporting (use budgeted rate) and result reporting (use actual disbursement rate).
Cost Model — USD with Lebanon Cost Realities
Honest ranges for a Lebanon-based humanitarian NGO with 3-5 active programs:
- Initial build (donor-funded). $25,000 - $45,000 USD over 12-16 weeks. The multi-currency engine adds roughly $5,000-$8,000 to the regional baseline because the rate-history table and rate-source attribution have to be production-grade from day one.
- Run rate. $1,200 - $1,800 USD/month for cloud hosting outside Lebanon (because in-Lebanon hosting capacity is constrained and donor protocols typically require regional or EU hosting), LLM API budget, and quarterly maintenance.
- Annual maintenance. 15-20% of initial build — higher than the regional baseline because vendor lists, donor templates and exchange-rate sources all change frequently in Lebanon.
- National-NGO alternative. $10,000 - $18,000 initial build with simplified currency handling (USD-only programs with manual LBP reconciliation), hosted on a $100/month VPS, suitable for organizations with $300K-$1M annual program budgets.
The honest tradeoff: a Lebanese cost line is rarely stable. Build the architecture to make the next currency-regime change or donor-template revision a configuration change, not a re-implementation.
Where to Start This Month
If you lead M&E or finance-operations at a Lebanese humanitarian NGO and the picture above looks familiar:
- Map every currency touchpoint. List every place a transaction is recorded in your operation — cash distribution, vendor payment, staff payroll, office costs. For each, document the currency of execution, the rate used, and who decided which rate.
- Inventory donor reporting cycles. Calendar of every donor's reporting deadline for the next 12 months, with the currency and rate-source convention each one requires.
- Identify the single most painful reconciliation. Usually it is UNHCR quarterly with USD-equivalent or ECHO interim with EUR-equivalent. That is the pilot scope.
For complementary patterns, see our KoboToolbox AI dashboard guide which covers field-level data collection discipline, and the AI lab operations dashboard tutorial which adapts well to multi-site humanitarian operations.
If you want a Lebanon-specific architecture review — including a frank conversation about which donor templates we have already built and which ones will require custom work — book a 45-minute session with our M&E team. We will map your donor mix, the currency complexity in your operation, and what a realistic 12-16 week roadmap looks like.
FAQ
Can the dashboard handle a switch from Sayrafa to a new official rate mechanism? Yes — that is exactly why the rate-source attribution exists. When the rate regime changes, you add a new rate-source entry and the reporting agents pick it up. Historical reports remain reproducible against the rate that was used at the time.
How do we handle beneficiaries with both a national ID and a UNHCR case number? The Postgres beneficiary table uses an internal deterministic ID. The national ID and the UNHCR case number are both attributes linked to that internal ID, each stored encrypted at rest. The MCP server exposes only the internal ID to the agents; re-identification is a separately permissioned operation.
What happens to our data if international hosting becomes restricted? The architecture is portable. Postgres, MCP, the AI agents and the templating engine all run identically on a Lebanese-hosted VPS if regulation requires it. The handover protocol is part of the engagement contract.
Will the MoSA Arabic reporting agent keep working when MoSA updates its template? A template update typically requires 4-8 hours of work to remap the indicators and adjust the agent's output schema. The architecture is designed for this — the agent is not hardcoded to one template version.
Can this stack work for a national NGO without an international integrator? Yes, with two caveats: at least one technical lead is needed in-house or on retainer, and the initial donor-template work should focus on one or two donors before expanding. Several Lebanese national NGOs have adopted the simplified version successfully.