Capital calls · LP reporting · Audit trail

For licensed fund administrators in the GCC and the emerging managers they serve, FundOps is the back-office engine that computes every LP’s figure exactly and drafts every document in English or Arabic — with a human approving every send.

The sandbox needs no account. Upload an LP register as a CSV and see the allocations and draft notices. Your register is not stored.

Three things you can check for yourself

Deterministic money

Every allocation is computed by an integer engine and sums to the call total exactly, to the minor unit — cents, fils or baisa. The AI never computes or invents a number; missing data is flagged, not filled in.

Arabic and jurisdiction templates

Capital call notices and quarterly statements render in English or Arabic from the same figures. The fund’s jurisdiction — DIFC, ADGM, Oman or the UK — sets the notice’s closing statement and the KYC checklist.

Your data, in your own instance

Each client runs on its own single-tenant instance in a UK or EU region of its choice. No custody, no payment rails, no bank connections. The drafting model sees only the context for the task in hand.

The same notice, in English and Arabic

One template, one set of engine figures. The amount due, the commitment and the uncalled balance are identical in both, and the product’s tests check that the figures match byte for byte.

English
Demo capital call notice in English for Blackwood Capital Partners LP: amount due $500,000.00, total commitment $2,500,000.00, remaining uncalled after this call $2,000,000.00.
ArabicRight to left
The same demo notice rendered in Arabic, right to left, with identical figures: $500,000.00 due, $2,500,000.00 committed, $2,000,000.00 uncalled after this call.

Demo data, watermarked as not a real notice. The payment details are cropped from this view. How the Arabic and jurisdiction templates work

How a capital call flows

The engine computes, the agent drafts, your team decides. Every step is written to the audit trail.

  1. Your team

    Set the call

    Choose the percentage of commitments to call, the due date and what the money is for.

  2. Engine

    Compute every LP’s amount

    Integer arithmetic with largest-remainder rounding, so the per-LP amounts add up to the call total exactly. Any LP called beyond its uncalled commitment is flagged.

  3. Agent

    Draft the notices

    One draft per LP, with the engine’s figures passed in as fixed values. The agent drafts wording only; it cannot compute figures, approve or send.

  4. Your team

    Review and approve

    Preview each LP’s draft and approve one by one or in bulk. Nothing is sent without approval.

  5. System

    Send and track

    Each LP gets a PDF notice, a cover email and a private link that expires. Your team confirms wires as they arrive; late payers are flagged and reminder drafts prepared.

  6. Your team

    Close the call

    Close it and keep the close pack: a cover statement, the allocations, the audit trail and every notice.

  1. Draft
  2. Pending approval
  3. Approved
  4. Sent
  5. Partially funded
  6. Funded
  7. Closed

Who it is for

Fund administrators · DIFC and ADGM

More funds per head, with every figure exact

Bilingual notices, a close pack prepared for your auditor, and an audit trail of every action — with your team approving every send.

For administrators

Emerging managers and SPV syndicators

Your first capital call, done right

Exact allocations, approved notices, wire tracking and quarterly reporting that reconciles to NAV. Published prices, with a walk-away clause.

For fund managers

FundOps is software for administrators and managers. It is not a fund administrator, and it never holds or moves money. How your data is handled

Check the arithmetic on your own register

Upload a CSV of LP names and commitments, enter a call amount, pick a currency (USD, GBP, EUR, AED, OMR or SAR) and a jurisdiction. The sandbox returns per-LP allocations that sum exactly to the call, and watermarked draft notices. No account; your register is not stored.