Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

472 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Masaar CRM — Open-Source WhatsApp CRM for the UAE

The self-hosted, Arabic-native CRM built for UAE businesses.

Close deals over WhatsApp · AI thread summaries · Full RTL Arabic UI · PDPL-compliant

License: MIT Version Go PostgreSQL

Live Demo: masaar.dynamicweblab.com  ·  Built by Dynamic Web Lab FZE LLC

Features · Why Masaar · Quick Start · Architecture · API Reference · Contributing


What is Masaar CRM?

Masaar is a free, open-source CRM designed specifically for UAE businesses. Most CRM software was built for Western markets with Arabic added as an afterthought. Masaar is different — WhatsApp-first, Arabic-native, and fully self-hosted so your customer data never leaves the UAE.

Who is it for?

  • UAE SMEs that close deals over WhatsApp
  • Sales teams that need a bilingual (Arabic/English) CRM
  • Businesses subject to UAE PDPL data residency requirements
  • Developers who want a self-hosted alternative to Salesforce, HubSpot, or Zoho

Why Choose Masaar?

Masaar CRM Salesforce / HubSpot / Zoho
Cost Free, open-source. No per-user fees. $25–300+/user/month
Data Residency Self-hosted in UAE. Your data never leaves. Hosted in US/EU. PDPL risk.
Arabic Support Native RTL UI. Built for Arabic first. Arabic bolted on as an afterthought
WhatsApp Integration First-class. Inbound + outbound + AI drafts. Limited or requires third-party add-ons
VAT Compliance Out-of-the-box 5% UAE VAT invoicing. Requires custom configuration
AI Privacy Local Ollama LLM. PII never leaves server. Data sent to external AI providers
Deployment One docker compose up. Any UAE cloud. Vendor lock-in. Complex migration.

Bottom line: Masaar gives you a production-grade CRM without monthly subscriptions, without your customer data leaving the UAE, and without compromising on Arabic language support.


Features

Feature Description
Dashboard Overview Real-time stats: total contacts, active leads, open WhatsApp threads, pipeline value, won revenue
WhatsApp Inbox Receive and manage inbound WhatsApp messages from Meta Cloud API
WhatsApp Outbound Send text, media (images/video/documents), and predefined templates via WhatsApp
AI Draft Reply One-click AI-generated draft replies to WhatsApp threads using local Ollama
AI Buyer Profile Extract structured buyer requirements from WhatsApp conversations
Sales Pipeline Kanban board with drag-and-drop stage management (New → Won/Lost)
Lead Notes Click any pipeline card to view and edit per-lead notes inline
AI Thread Summaries One-click AI summarization via local Ollama LLM — data never leaves your server
Deals & VAT Invoicing Deal tracking with PDF invoice generation including UAE 5% VAT
Contact Management Unified contact profiles linked to WhatsApp numbers and leads
User Settings Per-user password change and language preference (Arabic/English)
Role-Based Access Three roles: Admin, Agent, Viewer — enforced on every API route
Real-time Notifications Personal WebSocket-powered notifications
Full RTL Support Complete Arabic interface — layout, typography, and date direction
Audit Log Immutable activity log for UAE PDPL compliance
Self-Hosted Single Docker binary — deploy to Moro Hub, G42, or any UAE cloud

UAE AI Vision 2031

Masaar CRM is built to align with the UAE's AI Vision 2031 strategy and national data sovereignty goals:

  • Local AI Processing — All AI features (thread summaries, lead scoring, draft replies) run on Ollama, a local LLM that keeps customer data on your infrastructure. No PII is sent to external cloud AI providers.
  • Data Sovereignty — Self-hosted architecture ensures compliance with UAE PDPL and supports the national priority of keeping sensitive data within UAE borders.
  • Arabic-Native AI — Ollama models (llama3, mistral) support Arabic language processing natively, enabling AI-powered CRM features without relying on English-first external services.
  • UAE Cloud Ready — Deploy on Moro Hub, G42, or any UAE-based cloud provider to meet data residency requirements while leveraging local AI infrastructure.

By running AI locally, Masaar contributes to the UAE's goal of building a sovereign AI ecosystem that serves national interests while protecting citizen data.


Real Estate Market Data Integration

Masaar CRM integrates with BuyOrSell24 by Dynamic Web Lab — the UAE's real estate data API — to add market intelligence directly into your CRM workflow.

What You Get

  • Property Search — Natural language queries: "2BR apartments in Marina" returns recent transactions, comparable prices, and market trends
  • Transaction History — Filter by area, property type, price range — see all recent sales/rentals in one click
  • Building Directory — Quick autocomplete for projects, buildings, and nearby amenities (schools, gyms, metro stations)
  • Yield Analysis — Investors get rental vs. sales comparison for ROI calculations
  • Market Intelligence — Price trends, transaction volume, per-sqm analytics

How to Enable

Step 1: Get Your API Key

  1. Visit https://dynamicweblab.com/products/real-estate-data-api/
  2. View pricing tiers and features
  3. Contact us to set up your account

Step 2: Configure in Masaar

# In your .env file:
BOS24_API_TOKEN=your-api-token-received-from-setup

Step 3: Start Using

  • Agents search properties directly in leads: "Market data for 2BR Dubai Marina"
  • Auto-enriched lead cards show comparable sales and price insights
  • Investors analyze rental yields in seconds
  • All data stays in your self-hosted Masaar instance

Full API Documentation: https://data.buyorsell24.com/redoc


Ecosystem

Masaar CRM is part of a growing ecosystem of UAE-focused business tools by Dynamic Web Lab:

Product Description
Masaar CRM Open-source WhatsApp-first CRM for UAE businesses
BuyOrSell24 UAE real estate data API — transactions, buildings, yield analysis
Pause POS UAE POS system (coming soon)

Masaar integrates directly with BuyOrSell24 for real estate market intelligence, and future integrations with Pause POS will enable end-to-end property transaction management.


Live Demo

Try it at masaar.dynamicweblab.com

Resets every 24 hours. Do not enter real customer data.


Quick Start

Requirements: Docker and Docker Compose.

git clone https://github.com/Dynamic-Web-Lab/masaar-crm.git
cd masaar-crm
cp .env.example .env
docker compose up
Service URL
Dashboard http://localhost:3000
API http://localhost:8080/api/v1
Swagger UI http://localhost:8080/docs

Default login: admin@masaar.local / changeme


Architecture

┌─────────────────────────────────────────────────────────┐
│                    Your Server (UAE)                     │
│                 Moro Hub / G42 / On-prem                │
│                                                          │
│  ┌──────────┐   ┌──────────┐   ┌──────────────────────┐│
│  │ Next.js  │──▶│  Fiber   │──▶│    PostgreSQL         ││
│  │ (RTL/LTR)│   │  (Go)    │   │                      ││
│  └──────────┘   │          │──▶│    Redis             ││
│                 │          │   └──────────────────────┘│
│  ┌──────────┐   │          │   ┌──────────────────────┐│
│  │ WhatsApp │──▶│ /webhooks│──▶│  Ollama (local LLM)  ││
│  │ Meta API │   │          │   │  llama3 / mistral    ││
│  └──────────┘   └──────────┘   └──────────────────────┘│
│                      │                                   │
│                 ┌────▼─────┐                            │
│                 │  WS Hub  │◀── Real-time Notifications  │
│                 └──────────┘                            │
└─────────────────────────────────────────────────────────┘
         ↑ Single Docker binary — no external dependencies
Layer Technology
Backend Go 1.22 + Fiber
Frontend Next.js 14 + Tailwind CSS
Database PostgreSQL 16 + pgvector
AI Ollama (llama3 / mistral)
Real-time WebSockets (native Fiber)
Cache / Sessions Redis
Migrations goose
Auth JWT (HS256) + bcrypt

Project Structure

masaar-crm/
├── cmd/server/          # Server entry point
├── internal/
│   ├── api/             # HTTP handlers and middleware
│   ├── domain/          # Models and business types
│   ├── repo/            # PostgreSQL repositories
│   ├── ws/              # WebSocket hub
│   └── ai/              # Ollama integration
├── migrations/          # SQL schema (goose)
├── web/
│   ├── app/             # Next.js App Router pages
│   ├── components/      # React UI components
│   ├── store/           # Zustand state management
│   ├── context/         # Language context (AR/EN)
│   └── lib/             # API client, auth helpers
└── docs/                # OpenAPI / Swagger spec

API Reference

All protected routes require Authorization: Bearer <token>. Full interactive docs at /docs.

Method Path Description Roles
POST /api/v1/auth/login Authenticate, get token pair Public
POST /api/v1/auth/refresh Refresh access token Public
DELETE /api/v1/auth/logout Invalidate session Auth
GET /api/v1/stats Dashboard overview metrics Auth
GET /api/v1/users/me Current user profile Auth
PATCH /api/v1/users/me/password Change password Auth
PATCH /api/v1/users/me/lang Update language preference Auth
GET /api/v1/contacts List contacts (search + paginate) Auth
POST /api/v1/contacts Create contact Agent, Admin
PATCH /api/v1/contacts/:id Update contact Agent, Admin
DELETE /api/v1/contacts/:id Delete contact Admin
GET /api/v1/leads Kanban board (all stages) Auth
POST /api/v1/leads Create lead Agent, Admin
PATCH /api/v1/leads/:id/stage Move lead to stage Agent, Admin
PATCH /api/v1/leads/:id/notes Update lead notes Agent, Admin
GET /api/v1/threads List WhatsApp threads Auth
GET /api/v1/threads/:id Get single thread Auth
GET /api/v1/threads/:id/messages Thread messages Auth
POST /api/v1/threads/:id/close Close thread Agent, Admin
POST /api/v1/threads/:id/send-message Send WhatsApp text message Agent, Admin
POST /api/v1/threads/:id/send-template Send WhatsApp template Agent, Admin
POST /api/v1/threads/:id/send-media Send media (image/video/doc) Agent, Admin
GET /api/v1/threads/:id/outbound-messages Sent outbound messages Agent, Admin
POST /api/v1/ai/draft-reply/:thread_id AI-generated draft reply Agent, Admin
POST /api/v1/ai/extract-buyer-profile/:thread_id Extract buyer profile from conversation Agent, Admin
GET /api/v1/deals List deals Auth
POST /api/v1/deals Create deal Agent, Admin
PATCH /api/v1/deals/:id/stage Update deal stage Agent, Admin
GET /api/v1/invoices/:id Get invoice Auth
POST /api/v1/invoices Create VAT invoice Agent, Admin
POST /api/v1/invoices/:id/send Send invoice via WhatsApp Admin
GET /api/v1/notifications List notifications Auth
PATCH /api/v1/notifications/:id/read Mark notification read Auth
POST /api/v1/ai/summarize/:thread_id AI thread summary Agent, Admin
GET /ws/notifications Real-time notification stream Auth (WS)
Real Estate Market Data (Dynamic Web Lab) Optional integration; requires API key
POST /api/v1/properties/search Search properties (natural language) Agent, Admin
GET /api/v1/properties/transactions List transactions with filters Agent, Admin
GET /api/v1/properties/buildings Search/autocomplete buildings Agent, Admin
GET /api/v1/properties/buildings/:id Building details Agent, Admin
GET /api/v1/properties/yield-analysis Rental yield analysis Agent, Admin
GET /api/v1/properties/schools/nearby Nearby schools & amenities Agent, Admin

Contributing

Contributions are welcome. Please open an issue first to discuss significant changes.

High-Value Contributions

We especially welcome contributions that address UAE-specific needs:

  • Payment Gateway Integrations — PayBy, Network International, Stripe UAE, Tabby, Tamara
  • Government Integrations — Ejari registration, DEWA, ADDC, DED trade license verification
  • AI Model Optimization — Arabic language model fine-tuning, local LLM performance improvements
  • WhatsApp Enhancements — Template management, bulk messaging, chatbot workflows
  • Reporting — RERA-compliant reports, FTA VAT exports, custom analytics

Quick Start

# Fork the repo, then:
git clone https://github.com/YOUR_USERNAME/masaar-crm.git
cd masaar-crm
cp .env.example .env
docker compose up -d postgres redis ollama
go run ./cmd/server

Please read CONTRIBUTING.md before submitting a pull request.


Directory Submissions

Masaar CRM is submitted to the following curated directories:


License

Masaar CRM is licensed under the MIT License. Free to use, modify, and self-host.


Enterprise Edition

Need more for your UAE enterprise? The Enterprise edition adds:

Feature Description
Multiple Pipelines Sales, HR, Ops — separate pipelines per team
ZATCA E-Invoicing UAE FTA compliant with QR code & tax signing
AI Automation Auto lead scoring and auto-replies
WhatsApp Bots AI-powered chatbots and auto-replies
Advanced Templates Multi-language template management and analytics
War Room Team live leaderboard dashboard
Semantic Search AI-powered similarity search across conversations
SSO / SAML Enterprise authentication
Emirates ID UAE government ID verification

Contact: dynamicweblab.com · info@dynamicweblab.com


Built by Dynamic Web Lab FZE LLC  ·  UAE 🇦🇪

Keywords: open source CRM UAE · WhatsApp CRM · Arabic CRM software · self-hosted CRM · PDPL compliant CRM · CRM for UAE businesses · Go CRM · bilingual CRM Arabic English

مصنوع بعناية للسوق الإماراتي

About

An open-source, WhatsApp-first CRM built for the UAE market. Features native Arabic RTL support, local AI processing via Ollama, and self-hosted deployment to ensure full UAE PDPL data residency compliance.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages