Colours — who owns the step
Shapes
The whole picture — three service lines
Every enquiry enters one place, is qualified and screened, and becomes a client. It then follows the charter, brokerage or management path — all three drawing on the same operational backbone — and ends in a closed, paid, reported outcome with cross-sell into the other lines.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart TD
E["Enquiry in — website, WhatsApp, phone, email, referral, broker, DMC"]:::client
CH["Channel and yacht basis identified — direct or broker, owned or managed"]:::sys
Q{"Qualified and compliant?"}:::gate
P["Follow-up pool"]:::sales
RG["Client registered — Client ID, KYC and AML"]:::sales
S{"Which service?"}:::gate
A["CHARTER — A1 to A16"]:::ops
B["BROKERAGE — B1 to B11"]:::ops
C["YACHT MANAGEMENT — C1 to C7"]:::ops
BK[("Always-on ERP backbone — fleet, PMS, compliance, crew, stores, accounts, reporting")]:::back
FA["Charter delivered, APA reconciled, profit locked"]:::finance
FB["Sale completed, title transferred, commission settled"]:::finance
FC["Yacht under management — monthly owner statements"]:::finance
AC["Aftercare and cross-sell across all three lines"]:::client
E --> CH --> Q
Q -->|No| P
Q -->|Yes| RG --> S
S -->|Charter| A --> FA
S -->|"Buy or sell"| B --> FB
S -->|Manage| C --> FC
BK --- A
BK --- B
BK --- C
FA --> AC
FB --> AC
FC --> AC
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef crew fill:#efe8f7,stroke:#6b4ea8,color:#3f2e66;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Part A — Charter
Sixteen steps. The charter industry runs on broker channels, owner approvals, MYBA contracts and APA — all of which are built in here, not glossed over.
Enquiry, channel & yacht basis
The first decision: who is the enquiry from — a direct client or a retail charter broker — and is the yacht owned, managed, or a third-party yacht Walidia is placing a client on. This sets the contract, the rate basis and who gets commission.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart LR
IN["Enquiry in"]:::client --> SRC["Source and channel captured — direct client, retail charter broker, DMC, concierge, corporate"]:::sys
SRC --> RB{"Retail broker involved?"}:::gate
RB -->|Yes| NET["Net rate to broker — broker commission recorded, broker is the contact"]:::sales
RB -->|No| GRO["Gross rate — direct client relationship"]:::sales
NET --> YB{"Yacht basis"}:::gate
GRO --> YB
YB -->|Owned| OWN["Owned yacht — full control"]:::ops
YB -->|Managed| MAN["Managed yacht — owner approval will be required at A5"]:::ops
YB -->|"Third party"| TP["Third-party yacht — Walidia acts as retail broker"]:::ops
OWN --> NX(["To A2"]):::sales
MAN --> NX
TP --> NX
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Consultation, qualification & KYC
A consultation using a fixed questionnaire, then qualify. Qualified enquiries become registered clients with KYC and AML started — including sanctions screening and source-of-funds on high-value charters.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart LR
ST(["From A1"]):::sales --> ASG["Advisor assigned — 24-hour response clock"]:::sys
ASG --> CON["Consultation — dates, guests, occasion, budget, cruising area, preferences"]:::sales
CON --> QQ{"Real and workable?"}:::gate
QQ -->|No| POOL["Follow-up pool — automated nurture"]:::sales
QQ -->|Yes| REG["Client registered — Client ID, preferences stored"]:::sales
REG --> KYC["KYC and AML — ID, sanctions screening, source of funds if high value"]:::finance
KYC --> NX(["To A3 — matching"]):::sales
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Matching & availability
Matching reads the fleet register, current maintenance and class status, and — critically for managed yachts — the owner's own-use and blackout calendar, so only genuinely available yachts are shortlisted.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart LR
RQ["Client requirements"]:::sales --> M["Matching engine — budget, guests, dates, cruising area, experience"]:::sys
FL[("Fleet register and availability")]:::back --> M
MS[("Maintenance and class status")]:::back --> M
OC[("Owner use and blackout calendar")]:::back --> M
M --> SH["Shortlist — available yachts only, curated by advisor"]:::sales
SH --> NX(["To A4 — proposal"]):::sales
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Proposal, costing & provisional hold
A provisional option hold with an expiry date is placed on the yacht while the proposal and internal cost/profit sheet are built and sent. If the hold lapses with no response, the yacht is released automatically.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart LR
SH["Selected yacht"]:::sales --> HOLD["Provisional option hold placed — expiry date set, waitlist noted"]:::sys
HOLD --> PR["Proposal built — yacht, itinerary, rate, APA estimate, VAT, inclusions, terms"]:::sys
PR --> CO["Internal cost and offer sheet — fees, costs, broker commission, tips, profit"]:::finance
CO --> SN["Sent to client or broker by private link"]:::sales
SN --> EXP{"Hold expiring with no response?"}:::gate
EXP -->|Yes| REL["Hold released — yacht back to available, waitlist offered"]:::sys
EXP -->|"Response received"| NX(["To A5 — approval"]):::sales
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Approval — client & owner
The client or broker approves. For a managed or third-party yacht, the owner then approves the rate, dates, guest profile and cruising area before the booking can be made.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart TD
RV{"Client or broker response"}:::gate
RV -->|Change| BACK(["Back to A4"]):::sales
RV -->|Declined| LOST["Marked lost — reason logged"]:::sales
RV -->|Approved| OW{"Managed or third-party yacht?"}:::gate
OW -->|"No, owned"| GO["Proceed to booking"]:::ops
OW -->|Yes| OA["Owner approval requested — rate, dates, guest profile, cruising area"]:::sales
OA --> OAP{"Owner approves?"}:::gate
OAP -->|No| BACK
OAP -->|Yes| GO
GO --> NX(["To A6 — booking and contract"]):::ops
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Booking, MYBA agreement & APA
The hold converts to a confirmed booking. The MYBA Charter Agreement (or bespoke contract), the APA schedule and the invoices are generated and sent for signature; the booking cannot confirm until KYC is complete and the agreement is signed.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart LR
AP["Approved"]:::client --> BK["Booking created — provisional hold converts to confirmed"]:::sys
BK --> LK["Yacht locked on calendar"]:::sys
LK --> DC["MYBA Charter Agreement or bespoke contract generated — plus APA schedule and invoices"]:::sys
DC --> SG["Sent for e-signature — client uploads remaining KYC"]:::client
SG --> GT{"KYC complete and agreement signed?"}:::gate
GT -->|No| CHs["Automated reminders — hold protected"]:::sys
CHs --> SG
GT -->|Yes| CF["Booking confirmed — operations notified"]:::ops
CF --> NX(["To A7 — payments"]):::finance
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Payments — fee, APA, deposit
Three separate money streams: the charter fee (deposit then balance), the APA into a dedicated account held apart from company funds, and the security deposit. Operations is only released to spend once these are in.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart TD
SC["Payment schedule — charter fee (deposit then balance), APA, security deposit"]:::finance
SC --> D1["Deposit invoice sent"]:::client
D1 --> P1{"Deposit received?"}:::gate
P1 -->|"No, overdue"| RM["Reminder cadence — booking held"]:::sys
RM --> P1
P1 -->|Yes| RC["Receipt issued — posted to accounts"]:::finance
RC --> BAL["Balance, APA and security deposit invoices scheduled before charter"]:::finance
BAL --> APAr["APA received into a dedicated APA account — held separately"]:::finance
APAr --> REL["Finance approval — operations released to spend"]:::finance
REL --> NX(["To A8 — planning"]):::ops
BCr["Retail broker commission recorded as payable"]:::finance --- RC
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Pre-charter planning & clearances
The guest preference sheet drives provisioning and the galley. For cross-border charters, cruising permits, immigration and customs clearance and port agents are arranged. The plan then branches into crew, procurement and stores.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart TD
OM["Operations manager assigned"]:::ops --> CL["Checklists created from templates"]:::sys
CL --> GP["Guest preference sheet sent and returned — food, allergies, drinks, cabins, celebrations, watersports"]:::client
GP --> IT["Final itinerary confirmed"]:::ops
IT --> XB{"Cross-border cruising?"}:::gate
XB -->|Yes| PMT["Cruising permits, immigration and customs clearance, port agents appointed, courtesy flags"]:::ops
XB -->|No| PLAN["Charter plan finalised — route, marinas, timings, weather check"]:::ops
PMT --> PLAN
PLAN --> CR(["To A9 — crew"]):::ops
PLAN --> VN(["To A10 — procurement"]):::ops
PLAN --> PV(["To A11 — stores and positioning"]):::ops
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Crew
Crew are drawn from the fleet-wide roster, with every certificate checked against the charter dates. The briefing and the preference sheet go out; crew acknowledge on mobile. Gratuity policy is noted for the guests.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart LR
RQ["Crew requirement — captain, officers, engineer, chef, interior, deck"]:::ops --> RS[("Crew roster — certifications, medicals, visas, availability, rotation")]:::back
RS --> AS["Crew assigned to the charter"]:::ops
AS --> CT{"All certificates valid for the dates?"}:::gate
CT -->|No| SW["Reassign or expedite renewal"]:::ops
SW --> AS
CT -->|Yes| BF["Charter briefing plus preference sheet issued — crew acknowledge on mobile"]:::crew
BF --> RD["Crew ready — gratuity policy noted for guests"]:::crew
RD --> NX(["To A12 — readiness gate"]):::ops
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef crew fill:#efe8f7,stroke:#6b4ea8,color:#3f2e66;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Procurement & vendors
Services are ordered from approved vendors with valid documents; purchase orders are raised, vendors confirm, and expected bills are accrued to the charter's cost sheet.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart LR
ND["Services needed — catering, entertainment, watersports, transfers, florist, photographer"]:::ops --> VD[("Vendor database — approved, licence and insurance valid, ratings")]:::back
VD --> PO["Purchase orders raised"]:::finance
PO --> VC{"Vendor confirms?"}:::gate
VC -->|No| AL["Alternate vendor"]:::ops
AL --> PO
VC -->|Yes| SD["Service scheduled for charter day"]:::ops
SD --> BL["Expected vendor bills added to charter cost sheet"]:::finance
BL --> NX(["To A12 — readiness gate"]):::ops
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Stores, provisioning & positioning
The provisioning and water-toy list is checked against stock for that yacht; shortfalls are ordered. The yacht is then positioned — a delivery run to the charter start marina if it is not already there.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart LR
LS["Provisioning and water-toy list from the preference sheet"]:::ops --> ST[("Stores — stock per yacht, reorder points")]:::back
ST --> CK{"In stock?"}:::gate
CK -->|No| OR["Purchase or provisioning order"]:::finance
OR --> RV["Goods received — stock updated"]:::sys
CK -->|Yes| ACc["Allocated to the charter"]:::ops
RV --> ACc
ACc --> POS["Yacht positioning — delivery run to the charter start marina if needed"]:::ops
POS --> NX(["To A12 — readiness gate"]):::ops
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Readiness gate
The three workstreams reconverge. One gate decides whether the charter can proceed — and it will not open until every condition is met.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart TD
C9(["Crew ready"]):::crew --> G
C10(["Vendors confirmed"]):::ops --> G
C11(["Stores aboard, yacht in position"]):::ops --> G
PP["Pre-charter checklist and final inspection"]:::ops --> G
G{"Ready for charter? — crew acknowledged, checklist complete, no expired certificate, clearances in place, weather checked, APA funded"}:::gate
G -->|No| FX["Resolve outstanding items"]:::ops
FX --> G
G -->|Yes| RY["Ready for guest boarding"]:::ops
RY --> NX(["To A13 — charter underway"]):::crew
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef crew fill:#efe8f7,stroke:#6b4ea8,color:#3f2e66;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Charter underway & redelivery
Crew run the charter from a mobile log. The captain manages APA spend with receipts captured as they go. Onboard charges are logged; any incident routes to a report with insurer and flag-state notification as required.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart LR
BD["Guest boarding — welcome, safety briefing, captain introduction"]:::crew --> LV["Charter underway — itinerary run from mobile log"]:::crew
LV --> APAs["Captain manages APA spend — fuel, dockage, provisions — receipts captured"]:::crew
APAs --> EX["Extra requests and onboard charges logged"]:::crew
EX --> IC{"Incident? — damage, injury, grounding, pollution"}:::gate
IC -->|Yes| IR["Incident report — insurer and flag state notified as required"]:::ops
IC -->|No| RD["Redelivery — guest check-out"]:::crew
IR --> RD
RD --> DI["Damage inspection"]:::ops
DI --> NX(["To A14 — financial close"]):::finance
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef crew fill:#efe8f7,stroke:#6b4ea8,color:#3f2e66;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Financial close & APA reconciliation
The APA is reconciled against captured receipts and a statement issued (refund or top-up). The security deposit is settled, crew gratuity distributed, vendors and crew paid, the retail-broker commission paid, and the internal split and company profit calculated and locked.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart TD
FN["Charter completed"]:::ops --> FI["Final onboard-charges invoice issued"]:::finance
FI --> AR["APA reconciliation — receipts vs APA held — statement issued, refund or top-up"]:::finance
AR --> SD["Security deposit released or deducted with statement"]:::finance
SD --> GR["Crew gratuity distributed to crew"]:::finance
GR --> VP["Vendor and crew payments made"]:::finance
VP --> BC["Retail broker commission paid"]:::finance
BC --> CM["Internal commission split — agent, team, referral"]:::finance
CM --> PF["Company profit calculated — charter financial log locked"]:::finance
PF --> PL[("Per-yacht P and L and owner statement updated")]:::back
PF --> NX(["To A15 — aftercare"]):::client
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Aftercare & retention
Thank-you and receipts, then reviews and ratings for the yacht and the crew. Preferred dates are held for next year, and automated follow-ups and cross-sell prompts keep the relationship active.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart LR
TY["Thank-you and receipts"]:::sys --> RW["Review request, survey, yacht and crew ratings"]:::sys
RW --> CP{"Complaint?"}:::gate
CP -->|Yes| RS["Complaint resolution workflow"]:::sales
CP -->|No| LY["Loyalty points or voucher"]:::sys
RS --> LY
LY --> NY["Preferred dates held for next year — repeat charter reminder"]:::sales
NY --> FU["Automated follow-ups — 30 and 90 days, birthday"]:::sys
FU --> UP["Cross-sell — brokerage, yacht management, membership"]:::sales
UP --> CLc(["Booking closed"]):::finance
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Cancellation & postponement
A cancellation or date change can happen at any point after booking. Postponement re-checks availability and the owner calendar; cancellation calculates the penalty from the contract schedule and releases the yacht.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart TD
RQ["Cancellation or postponement request"]:::client --> TY{"Which?"}:::gate
TY -->|Postpone| PP["New dates checked against availability and owner calendar"]:::ops
PP --> PPD{"Dates available?"}:::gate
PPD -->|Yes| RB["Booking re-dated — contract addendum e-signed"]:::sales
PPD -->|No| CAN["Cancellation penalty calculated per contract schedule — days to charter"]:::finance
TY -->|Cancel| CAN
CAN --> RF["Refund processed — retained amount recognised as revenue"]:::finance
RF --> RL["Yacht released back to availability — offered to the waitlist"]:::sys
RB --> DONE(["Resume normal flow"]):::ops
RL --> DONE
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Part B — Brokerage
Eleven steps in the correct industry order: the 10% deposit goes into escrow at the Memorandum of Agreement — before survey — and title, liens and the closing choreography are handled explicitly.
Intake & enhanced due diligence
Buyer or seller is split at the door with its own questionnaire. Before any listing or offer activity, enhanced due diligence screens the parties, their beneficial owners and the vessel for sanctions and checks source of funds.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart TD
IN["Enquiry in"]:::client --> TP{"Buyer or seller?"}:::gate
TP -->|Seller| SQ["Seller questionnaire — yacht, year, price, ownership, mortgage or liens, timeline"]:::sales
TP -->|Buyer| BQ["Buyer questionnaire — purpose, budget, type, length, brand, area, finance need"]:::sales
SQ --> QL{"Qualified?"}:::gate
BQ --> QL
QL -->|No| PP["Follow-up pool"]:::sales
QL -->|Yes| EDD["Enhanced due diligence — ID, beneficial owners, PEP and sanctions screening of parties and vessel, source of funds"]:::finance
EDD --> EG{"Clear?"}:::gate
EG -->|No| STOP["Escalate to compliance — do not proceed"]:::finance
EG -->|Yes| RGb["Client registered and approved"]:::sales
RGb --> NS(["Seller to B2"]):::sales
RGb --> NB(["Buyer to B4"]):::sales
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Listing & valuation
Inspection, then the full documentation set — builder's certificate, title chain, VAT status, flag, class status, and disclosure of any mortgage or lien. Valuation, price agreed, MYBA Central Agency Agreement signed, listing activated.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart LR
IS["Yacht inspection"]:::ops --> DOC["Documentation gathered — builder certificate, title chain, VAT status, flag, class status, insurance history, mortgage and lien disclosure"]:::ops
DOC --> VL["Valuation — market comparison plus broker view"]:::sales
VL --> PR{"Listing price agreed?"}:::gate
PR -->|Adjust| VL
PR -->|Approved| AG["MYBA Central Agency Agreement — central, open or co-central — listing period and commission set, e-signed"]:::sales
AG --> ACl["Listing activated — added to sale inventory"]:::sys
ACl --> RN[("Renewal reminder — 30, 14, 7 days before expiry")]:::back
ACl --> NX(["To B3 — marketing"]):::sales
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Marketing distribution
Published across every channel including boat shows, each tracked with status, link and cost. Enquiries route straight back to B1.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart LR
L["Active listing"]:::sales --> PB["Published — website, yacht portals, social, broker network, boat shows"]:::sys
PB --> TR["Each channel tracked — status, link, cost"]:::sys
TR --> EN["Enquiries captured back as leads and routed to B1"]:::sys
EN --> NX(["Feeds B4 — matching"]):::sales
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Matching & viewing
Buyers are matched to live listings and sent a curated shortlist. A viewing cannot be scheduled until ID is verified, an NDA is signed, and — on higher-value yachts — proof of funds is provided.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart TD
BP["Buyer profile"]:::sales --> MT["Matching engine — budget, length, brand, type, area"]:::sys
IV[("Sale inventory — active listings")]:::back --> MT
MT --> SL["Curated shortlist sent"]:::sales
SL --> FB["Buyer feedback logged"]:::sales
FB --> VR["Viewing requested"]:::client
VR --> VG{"ID verified, NDA signed, proof of funds if high value?"}:::gate
VG -->|No| HD["Held — documents chased"]:::sys
HD --> VG
VG -->|Yes| SC["Senior broker assigned — viewing at the marina"]:::sales
SC --> VW["Viewing conducted — feedback captured"]:::sales
VW --> NX(["To B5 — offer"]):::sales
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Offer
A signed offer is made subject to survey, sea trial and finance. Every offer, counter-offer and response is one linked history until the seller accepts.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart LR
OF["Buyer submits signed offer — subject to survey, sea trial and finance"]:::client --> DS["Offer and draft MOA generated"]:::sys
DS --> LG["Offer logged — buyer, seller, amount, currency, conditions"]:::sales
LG --> RP{"Seller response"}:::gate
RP -->|Counter| CT["Counter-offer — new linked version"]:::sales
CT --> RP
RP -->|Reject| LX["Closed lost"]:::sales
RP -->|Accept| NX(["To B6 — MOA and deposit"]):::finance
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
MOA & deposit into escrow
On acceptance the MYBA Memorandum of Agreement is signed and the buyer pays a 10% deposit into a stakeholder or escrow account — never the seller's account — held pending the survey outcome. The listing is locked.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart LR
ACo["Offer accepted"]:::sales --> MOA["MYBA Memorandum of Agreement signed by both parties"]:::sales
MOA --> DEP["Buyer pays 10 percent deposit into a stakeholder or escrow account — not the seller"]:::finance
DEP --> CLR{"Deposit cleared?"}:::gate
CLR -->|No| WT["Awaiting funds"]:::sys
WT --> CLR
CLR -->|Yes| UO["Yacht under offer — listing locked, other viewings suspended"]:::sys
UO --> LD[("Stakeholder ledger — deposit held pending survey outcome")]:::back
UO --> NX(["To B7 — survey and sea trial"]):::ops
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Survey, sea trial & acceptance
Condition survey, engine survey and sea trial. Within the deadline the buyer issues a Notice of Acceptance or a Notice of Rejection; rejection returns the deposit less agreed costs, acceptance makes it non-refundable.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart TD
SO["Surveys ordered — condition survey, engine survey and oil analysis, sea trial"]:::ops --> SR["Reports issued"]:::ops
SR --> NA{"Buyer notice within the deadline"}:::gate
NA -->|"Notice of Rejection"| RJ["Deposit refunded less agreed costs — yacht back to market"]:::finance
NA -->|"Acceptance subject to work"| NG["Price reduction or remedial works negotiated"]:::sales
NG --> NA
NA -->|"Notice of Acceptance"| ACa["Vessel accepted — deposit becomes non-refundable"]:::finance
ACa --> NX(["To B8 — title and closing prep"]):::finance
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Title, liens & closing prep
Title and lien searches identify any mortgage or debt on the yacht; payoff letters are obtained so these are settled from sale proceeds. VAT and import position and the place of closing are confirmed, and a closing statement is prepared.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart TD
ST["Vessel accepted"]:::finance --> TS["Title and lien search — registry, mortgages, crew wages, marina and supplier debts"]:::finance
TS --> LN{"Encumbrances found?"}:::gate
LN -->|Yes| PO["Payoff letters obtained — to be settled from sale proceeds at completion"]:::finance
LN -->|No| FIN["Buyer finance confirmed if applicable"]:::finance
PO --> FIN
FIN --> VAT["VAT status confirmed — VAT paid, import VAT, or Temporary Admission — place of closing agreed"]:::finance
VAT --> CS["Closing statement prepared — proceeds route: discharge mortgage, then seller, then commissions"]:::finance
CS --> NX(["To B9 — completion"]):::finance
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Completion
The Bill of Sale and the Protocol of Delivery and Acceptance are signed — often with the yacht in international waters — and funds are released from escrow simultaneously: deposit applied, balance paid, mortgage discharged, seller proceeds paid.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart LR
RDl["Closing arranged — often with the yacht in international waters"]:::finance --> BS["Bill of Sale and Protocol of Delivery and Acceptance signed"]:::sales
BS --> FR["Funds released from escrow simultaneously — deposit applied, balance paid, mortgage discharged"]:::finance
FR --> SP["Seller proceeds paid"]:::finance
SP --> NX(["To B10 — registration and handover"]):::ops
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Registration & handover
The yacht is deleted from the old registry and provisionally registered on the new flag; insurance is switched to the new owner; and the physical handover is completed with a full documentation package and a signed delivery certificate.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart LR
STr["Completion done"]:::finance --> DL["Deletion from the old registry — deletion certificate obtained"]:::ops
DL --> RR["Provisional registration on the new flag — permanent registration to follow"]:::ops
RR --> INs["Insurance switched to the new owner"]:::ops
INs --> HO["Physical handover — pre-delivery inspection, documentation package, acceptance form, delivery certificate"]:::client
HO --> NX(["To B11 — commission close"]):::finance
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Commission close & post-sale
Commission is split with any co-broker and referrer, company profit calculated, the deal closed, and post-sale follow-ups begin — including onboarding into charter or full yacht management.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart TD
CFb["Completion and handover confirmed"]:::finance --> CB{"Co-brokered?"}:::gate
CB -->|Yes| SPL["Commission split with co-broker — typically half each of the agreed rate"]:::finance
CB -->|No| FULL["Full commission retained"]:::finance
SPL --> REF["Referral share paid if applicable"]:::finance
FULL --> REF
REF --> PFb["Company profit calculated — deal closed"]:::finance
PFb --> RCb["All receipts issued — financial closure"]:::finance
RCb --> RPb[("Reporting — commission, days on market, list-to-sale ratio, broker performance")]:::back
RCb --> FUb["Follow-ups — 7, 30, 90, 180 days"]:::sys
FUb --> UPb["Cross-sell — charter management or full yacht management onboarding"]:::sales
UPb --> DN(["Deal closed"]):::finance
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Part C — Yacht Management
The third service line, previously only implied. Ongoing management of an owner's yacht — technical, crew, compliance and financial — with monthly owner reporting.
Enquiry & management agreement
Scope is agreed — full, technical only, crew only, or charter management — and whether the yacht will be commercially chartered, which triggers commercial coding and the full compliance regime.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart LR
EN["Owner enquiry — new purchase or existing yacht"]:::client --> SCp["Scope agreed — full, technical only, crew only, or charter management"]:::sales
SCp --> CC{"Commercial charter intended?"}:::gate
CC -->|Yes| CODE["Commercial coding path — MCA or flag equivalent, ISM and MLC required"]:::ops
CC -->|No| PRIV["Private use — lighter compliance"]:::ops
CODE --> MA["Management agreement and fee model set — fixed fee or percentage — e-signed"]:::sales
PRIV --> MA
MA --> NX(["To C2 — onboarding"]):::ops
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Onboarding
A technical and document audit, handover from the previous manager, and setup of the Planned Maintenance System, the Safety Management System (if coded), insurance and the owner's yacht account.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart TD
STc["Management agreement signed"]:::sales --> AUD["Technical and document audit — condition, certificates, class status"]:::ops
AUD --> HOc["Handover from previous manager or new-build delivery pack"]:::ops
HOc --> PMSs["Planned Maintenance System set up — equipment register, running hours, task schedule"]:::sys
PMSs --> ISM{"Commercially coded?"}:::gate
ISM -->|Yes| SMS["Safety Management System, DOC and SMC, drills schedule, ISPS security plan"]:::ops
ISM -->|No| INSc["Insurance placed — hull, P and I, war risk as needed"]:::finance
SMS --> INSc
INSc --> ACCc["Owner yacht account and accounting set up"]:::finance
ACCc --> NX(["To C3 — crew"]):::ops
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Crew management
Recruitment and vetting, MLC-compliant Seafarer Employment Agreements, multi-currency payroll, rotation, travel and visas, and a maintained certificate matrix — feeding the charter crew-assignment step.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart LR
NEED["Crew plan and manning level"]:::ops --> REC["Recruitment and vetting — references, certificates, medicals"]:::ops
REC --> SEA["Seafarer Employment Agreements issued — MLC 2006 compliant"]:::sales
SEA --> PAY["Payroll set up — multi-currency, allotments"]:::finance
PAY --> ROT["Rotation schedule, travel, visas, certificate matrix maintained"]:::ops
ROT --> APR["Appraisals and training tracked"]:::ops
APR --> NX(["Feeds charter crew assignment — A9"]):::ops
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Technical & maintenance
The Planned Maintenance System raises work orders from running hours and the calendar. Defects, spares and warranty are tracked, and class surveys or dry-dock and refit projects are managed as projects with budgets.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart LR
PMSd[("Planned Maintenance System — running hours and calendar tasks")]:::back --> DUE["Tasks fall due — work orders raised"]:::ops
DUE --> DEF["Defects and warranty items logged"]:::ops
DEF --> SPR["Spares checked against inventory — purchase orders raised"]:::finance
SPR --> WRK["Work carried out — crew or contractor"]:::ops
WRK --> CLASS{"Class survey or dry-dock due?"}:::gate
CLASS -->|Yes| REFIT["Dry-dock or refit project — scope, tender, budget, supervision"]:::ops
CLASS -->|No| LOGm["Maintenance log updated — costs to the owner account"]:::finance
REFIT --> LOGm
LOGm --> NX(["Feeds fleet availability and the owner statement"]):::back
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Compliance & safety
Certificate and survey renewals, ISM and ISPS audits and drills, PSC inspection readiness, and incident and near-miss reporting — with flag-state and class liaison. A lapsed mandatory certificate blocks charter.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart TD
REGc[("Certificate and survey register")]:::back --> DUEc["Renewals and audits fall due"]:::sys
DUEc --> ISMc["ISM and ISPS internal audits, drills, PSC inspection readiness"]:::ops
ISMc --> INCc["Incident and near-miss reporting — corrective actions"]:::ops
INCc --> LIA["Flag state and class liaison"]:::ops
LIA --> CERT["Certificates renewed — register updated, reminders reset"]:::sys
CERT --> NX(["Blocks charter if a mandatory certificate lapses"]):::gate
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Financial management
An annual owner budget, running costs tracked against it, charter income and APA accounted (linking to the charter flow), supplier and crew payments from the owner account, VAT filings, and a monthly owner statement.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart LR
BUD["Annual owner budget prepared and approved"]:::finance --> TRK["Running costs tracked against budget — crew, fuel, berth, maintenance, insurance"]:::finance
TRK --> CIN["Charter income accounted, APA handled — links to the charter flow"]:::finance
CIN --> APm["Supplier and crew payments made from the owner account"]:::finance
APm --> VATm["VAT and local filings handled"]:::finance
VATm --> STMT["Monthly owner statement generated"]:::sys
STMT --> NX(["To C7 — owner reporting"]):::finance
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Owner reporting & review
The monthly statement goes to the owner, a quarterly review covers utilisation and upcoming costs, and year-end accounts and the next budget lead into renewal of the management agreement — or a clean offboarding.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart LR
STM["Monthly statement delivered to owner"]:::sys --> QR["Quarterly review — utilisation, costs, upcoming works, next-year outlook"]:::sales
QR --> YE["Year-end accounts and budget for next year"]:::finance
YE --> REN{"Renew management agreement?"}:::gate
REN -->|Yes| CONT(["Continues — next annual cycle"]):::ops
REN -->|No| OFF["Offboarding — handover pack to owner or new manager"]:::ops
classDef client fill:#f6eeda,stroke:#a9822c,color:#5f4715;
classDef sales fill:#e8edfc,stroke:#1a56db,color:#12357f;
classDef finance fill:#e0f0f5,stroke:#0e7ea3,color:#0a4f66;
classDef ops fill:#e1f0eb,stroke:#1f7259,color:#123a2e;
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef gate fill:#ffffff,stroke:#0b1d3a,color:#0b1d3a;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Underneath all three — the always-on ERP backbone
Six functions run continuously. Every step in Parts A, B and C reads from them or writes to them, so information is entered once.
%%{init:{'theme':'base','themeVariables':{'fontFamily':'Inter,sans-serif','lineColor':'#7d92a8','primaryColor':'#eef2f6','primaryTextColor':'#0b1d3a','primaryBorderColor':'#c4d0de'}}}%%
flowchart TD
MN["Maintenance and compliance — PMS, class surveys, certificate and insurance renewals, ISM and MLC"]:::back
FL["Fleet and sale inventory — specs, documents, live availability, VAT and flag status"]:::back
CW["Crew — SEA contracts, payroll, certifications, rotation, availability"]:::back
SR["Stores and suppliers — stock, purchase orders, vendor performance"]:::back
FN["Finance and accounting — ledger, payables and receivables, APA and escrow accounts, VAT, multi-currency, owner accounts"]:::back
RP["Reporting — utilisation, revenue per available day, conversion, days on market, pipeline, per-yacht P and L, owner statements"]:::back
MN -->|"available or not"| FL
FL -->|"feeds"| DEAL["Charter, brokerage and management flows"]:::sys
CW -->|"feeds"| DEAL
SR -->|"feeds"| DEAL
DEAL -->|"purchase orders, consumption, downtime"| SR
DEAL -->|"usage and hours"| MN
DEAL -->|"invoices, payments, commissions, APA, gratuities"| FN
FN -->|"figures"| RP
classDef sys fill:#eef2f6,stroke:#5c6b7e,color:#33404f;
classDef back fill:#0b1d3a,stroke:#0b1d3a,color:#ffffff;
Handled in detailed design
These are on the radar and belong in the build's design phase rather than a meeting diagram:
- Exact MYBA clause handling and the cancellation-penalty schedule
- Full VAT and customs rule matrix by jurisdiction — UAE, Oman, Maldives, Seychelles, EU
- Escrow / stakeholder-account provider and its regulatory basis; the AML programme and screening tool
- Port-agent panel and per-country clearance workflow
- Class-society and flag-state specifics; RCD/CE, tonnage, radio, MCA coding detail
- Planned Maintenance System equipment hierarchy and spares catalogue
- Crew training matrix, rotation rules, payroll structure and allotments
- Owner-approval rules, blackout policy and owner's-use cost accounting
- Insurance programme design — hull, P&I, war risk, charterers' liability
- Document management, retention and e-signature audit standards
- Website and portal integration for listings and enquiry capture
- KPI definitions and management dashboard layouts
What we need from you to begin
A workshop to confirm this flow and settle the decisions that shape it:
- Commission model — internal split, retail-broker commission, co-broker split, referral.
- Payment terms — charter deposit percentage and timing, APA percentage, security deposit; brokerage 10% deposit and the escrow arrangement.
- VAT treatment — charters by departure country; how the vessel's VAT status is handled on a sale.
- Owner rules — approval requirements and blackout policy for managed yachts.
- Cancellation — the penalty schedule by days-to-charter.
- AML policy — screening provider and the thresholds for source-of-funds and proof-of-funds.
- Management fees — the fee models you offer owners.
- Phase 1 scope — which service lines and which yachts go live first, plus team and data to migrate.