# DiveAdmin — Full Documentation > Cloud-based dive school management software for dive centers, dive schools, and liveaboards worldwide. ## About DiveAdmin is a SaaS platform that helps dive schools manage their entire operation: diver databases, dive trip scheduling, course management, invoicing and payments, online booking pages, equipment tracking, staff management, and more. It supports multiple languages, currencies, and integrations with dive training organisations (SSI), payment gateways (Stripe, PayPal, Redsys), and website platforms (WordPress, Wix, Shopify). ## Core Features ### Diver Management - Complete diver database with profiles, certifications, dive logs - QR code self-registration for walk-in divers - Custom forms and digital waivers - GDPR compliance tools (do-not-contact, data export, deletion) - Diver tagging and segmentation ### Dive Trip Management - Schedule and manage dive trips with capacity tracking - Multi-day trip support - Boat assignment and capacity management - Dive site management - Real-time availability status (available, limited, critical, booked) - Staff and captain assignment - Trip manifests and check-in lists ### Course Management - SSI and PADI course templates - Student enrollment and progress tracking - Certification tracking - Course scheduling ### Financial Management - Invoicing with multi-currency support - Point of Sale (POS) system - Expense tracking with supplier management - Payment processing via Stripe, PayPal, Redsys - Payroll and staff commission tracking - Financial reporting (revenue, expenses, profit/loss) - Verifactu compliance (Spain) ### Online Booking Pages - Customisable booking pages per dive school - Category and product organisation - Multiple availability modes (open, specific days, selected trips, schedules, dive sites) - Shopping cart and checkout - Deposit and full payment options - Embeddable on any website via JavaScript widget ### Equipment Management - Equipment inventory tracking - Maintenance scheduling and logging - Rental management - Size and model cataloguing ### Staff Management - Staff profiles and roles - Permission-based access control - Commission tracking - Salary management ### AI Assistant (Coral) - Built-in AI assistant for data queries and task automation - Natural language interface to dive school data - Powered by multiple AI providers (Claude, GPT, Gemini) ## Integrations ### WordPress Plugin Add lead forms, dive trip calendars, and booking embed widgets to your WordPress site. Install from the WordPress plugin directory or download from DiveAdmin. **Shortcodes available:** - `[diveadmin_lead_form]` - Contact/enquiry form - `[diveadmin_trips_calendar]` - Monthly calendar of dive trips - `[diveadmin_trips_list]` - Card list of upcoming trips - `[diveadmin_booking_categories]` - All booking categories - `[diveadmin_booking_category id="12"]` - Single category card - `[diveadmin_booking_product id="5"]` - Single product card - `[diveadmin_booking_cart]` - Cart icon with badge **API endpoint:** `POST /api/v1/wordpress/newlead` **Auth:** API key (created per-school in Settings > Integrations > WordPress) ### Wix App Add booking widgets and lead forms to your Wix site using custom element widgets or HTML embed. **API endpoint:** `POST /api/v1/wix/newlead` **Auth:** API key (created per-school in Settings > Integrations > Wix) ### Shopify Sync Shopify orders as leads with product mapping. **API endpoint:** `POST /api/webhook/shopify/order` **Auth:** API key (created per-school in Settings > Integrations > Shopify) ### Zapier Connect DiveAdmin with 7,000+ apps via Zapier. **Auth endpoint:** `POST /api/v1/zapier/authenticate` **Create lead:** `POST /api/v1/zapier/create-lead` **Auth:** API key (created per-school in Settings > Integrations > Zapier) ### MCP Server (Model Context Protocol) DiveAdmin provides an MCP server enabling AI assistants (Claude, ChatGPT, Gemini) to read and act on dive school data — same tools as the built-in Coral AI assistant, scoped per dive school. **Endpoint:** `POST https://diveadmin.com/api/v1/mcp` **Transport:** Streamable HTTP (JSON-RPC 2.0) **Auth:** Bearer token (created per-school) or OAuth 2.1 access token **Protocol version:** 2024-11-05 **Important:** Authentication tokens are NOT provided automatically. Each dive school creates and controls their own MCP tokens via Settings > Integrations > MCP Server in their DiveAdmin account. This ensures each school maintains full control over what AI assistants can access. **Available tool categories:** - Diver management (search, view, create, update) - Dive trip management (list, view, create) - Course management - Invoice and financial queries - Lead management - Equipment queries ### OAuth 2.1 Full OAuth 2.1 implementation with PKCE, dynamic client registration, and "Login with DiveAdmin" support. **Discovery:** `GET /.well-known/oauth-authorization-server` **Authorize:** `GET /oauth/authorize` **Token:** `POST /oauth/token` **Revoke:** `POST /oauth/revoke` **Register:** `POST /oauth/register` (dynamic client registration) **Grant types:** authorization_code (with PKCE required) **Important:** OAuth client registration is controlled. First-party apps are registered by DiveAdmin staff. Third-party apps can use dynamic client registration but each dive school's users must explicitly authorise access through the consent screen. ### REST API Custom backend integrations via authenticated REST API. **Auth:** API key (created per-school in Settings > Integrations > REST API) **Contact:** https://diveadmin.com/contact for documentation ### Booking Embed System Universal website embedding solution. One JavaScript file per dive school, standardised HTML elements. **Script:** `https://diveadmin.com/embed/{subdomain}/diveadmin-embed.js` **API base:** `https://diveadmin.com/api/v1/embed/{subdomain}/` **Embed API endpoints:** - `GET /categories` - List booking categories - `GET /categories/{id}` - Category detail with products - `GET /products/{id}` - Product detail with options and availability - `GET /cart` - Get cart contents - `POST /cart/add` - Add item to cart - `POST /cart/update` - Update cart item - `POST /cart/remove` - Remove cart item - `POST /checkout` - Process checkout ## Multi-tenancy DiveAdmin is multi-tenant. Each dive school has its own subdomain (e.g., `your-school.diveadmin.com`) or custom whitelabel domain. All data is isolated per school. API keys, MCP tokens, and OAuth authorisations are all scoped to individual dive schools. ## Links - Homepage: https://diveadmin.com - Features: https://diveadmin.com/features - About: https://diveadmin.com/about - Developer docs: https://diveadmin.com/api-documentation - Contact: https://diveadmin.com/contact - Privacy: https://diveadmin.com/privacy - Terms: https://diveadmin.com/terms - Demo: https://diveadmin.com/demo