← Diwan Integrations · تكاملات

Plays well with your stack.

Honest list. Live means shipped and used by an existing tenant today. Beta means behind a flag for design partners. Planned means on the roadmap with a target. We don’t list aspirations.

29Total
16Live
2Beta
11Planned

Identity & sign-in

How a board member proves who they are.

Email OTP

One-time code delivered to the user's email. No password to phish, no password to reset.

Codes expire in 10 minutes; rate-limited per email + per IP.

Live

WhatsApp OTP

OTP delivered through your WhatsApp Business API number. Faster on mobile, doubles as proof-of-presence.

Powered by Dardasha (BHD Group's WhatsApp engine). Falls back to email automatically.

Live

SAML 2.0 (Microsoft 365, Google Workspace, Okta)

Enterprise tier. SP-initiated SSO with JIT user provisioning and group-to-role mapping.

Target: Phase 9 (Q3 2026). Available on the on-prem build today via reverse-proxy header trust.

Planned

OpenID Connect

For tenants standardised on OIDC (Auth0, Keycloak, Authentik).

Target: Phase 9, alongside SAML.

Planned

Magic-link login

Single-click signed URL emailed to the user. Useful for very low-frequency board members.

Behind feature flag for two design-partner tenants.

Beta

Communication

How Diwan talks to your members.

WhatsApp Business API

Outbound for OTP + meeting reminders + decision broadcasts. Bring your own WABA number or use a Dardasha shared number.

Per-tenant template approval is your responsibility; we ship the request schema.

Live

SMTP relay

Bring your own SMTP (Postfix, SES, Resend, M365 SMTP). DKIM expected at the relay.

Cloud customers use the Diwan shared mail.diwan.om sender by default.

Live

In-app notifications

Bell-icon dropdown in the workspace header, badge on every tab, push to user inbox.

No external service required.

Live

Web push (PWA)

Browser notifications via the Push API for users who install the PWA.

Target: Phase 8.5.

Planned

Payments & billing

How money moves in and out.

Paymob Oman

Card + Apple Pay + Google Pay + OmanNet. Used for subscription renewals and tenant top-ups.

Webhook-verified; idempotent on transaction reference. Same Paymob integration BHD-ERP and Cardify use.

Live

Bank transfer (manual)

For Enterprise + On-Prem customers who pay annually by wire. We send a proforma; you wire; we mark the tenant paid.

Bank Dhofar account; SWIFT BDOFOMRU.

Live

Stripe

For tenants billing in USD/EUR (e.g., GCC family offices with foreign holdings).

Target: Phase 8.5.

Planned

Calendar & scheduling

How meetings reach the rest of the world.

ICS export per meeting

Every meeting page exposes an .ics link. Drops cleanly into Outlook, Google Calendar, Apple Calendar.

Includes attendees, location, agenda link, organiser email.

Live

ICS feed per board

A single subscribable URL for the board's entire meeting calendar.

Auth-token in URL; revocable per user from /my.

Live

Google Calendar two-way sync

OAuth connect and Diwan pushes meetings + accepts RSVPs back.

Target: Phase 9.

Planned

Outlook / Microsoft 365 sync

Same as above using Graph API.

Target: Phase 9.

Planned

API & automation

For partners and internal IT.

Public discovery API

/api/almajlis/sectors.json, /modules.json, /health.json. CORS-open, cacheable, no auth needed.

Powers partner directory pages and the on-prem sizing tool.

Live

Per-tenant REST API

Read-only endpoints for athletes, results, meetings, decisions on the OFC tenant.

Public on fencing.om today. Per-tenant authenticated read+write API ships in Phase 8.

Beta

API keys

Per-tenant keys with scope (read/write/admin) and rotation. Self-serve from /board/settings.

Target: Phase 8 (next two iterations).

Planned

Outbound webhooks

POST to your URL on meeting-created, decision-passed, member-joined, payment-received. HMAC-signed.

Target: Phase 8.

Planned

CSV export

/{entity}.csv on every public list. Members, athletes, results, events, fees.

Same files used by the OFC weekly board pack.

Live

JSON feeds

RSS 2.0 + Atom on news, results, events, changelog. /api/public/feeds.json for discovery.

Auto-discovery via <link rel="alternate"> on every page.

Live

Storage & backup

Where data sits and how it leaves.

Local FS per tenant

data/tenants/<slug>/ on the host. Atomic writes via withFileLock(). Default for both Cloud and On-Prem.

Backed by the host's daily snapshot in Cloud; your own snapshot policy on-prem.

Live

Daily encrypted backup

tar.gz per tenant, encrypted with the operator's public key, written to /backup volume.

30-day retention by default; configurable per tenant.

Live

S3-compatible offsite

Push the encrypted daily tarball to your S3 / R2 / Wasabi bucket.

Target: Phase 8.5.

Planned

Azure Blob offsite

Same as S3, for tenants standardised on Azure.

Target: Phase 9.

Planned

Documents & embeds

How Diwan output reaches non-users.

PDF export (server-rendered)

Meeting minutes, board packs, financial summaries, member statements. Browser-print-quality, header + footer + page numbers.

Powered by headless Chromium; runs in the same Node process.

Live

Public dashboards (iframe-friendly)

Pick which widgets are public, get an embed URL, drop it on your annual report.

Used by OFC for the public results widget at fencing.om.

Live

DOCX export

For boards that still circulate Word documents. Same source-of-truth, different render.

Target: Phase 9.

Planned