Features
The fund data ledger, and everything that comes off it.
The numbers already arrive every day. ETFcomply catches them in one ledger per fund, and then everything else is downstream of that. Ask it a question or point your own AI at it. Prefill your recurring reports and the annual 15(c) response. Generate the daily reports and the 13F off it, keep the fund-document library current beside it, run your code of ethics against it, and turn the whole record into an exam bundle on request. One record, captured once, answering everywhere.
Fund data ledger
A living record for every fund.
This is the spine everything else hangs on. Flows, AUM, NAV and market price, performance, creations and redemptions, premium and discount, and holdings, normalized by fund and queryable over any date range.
- Daily series
- Net assets, NAV and closing market price, creations and redemptions, and premium or discount, captured each day and kept as a continuous series you can query by date.
- Flows and performance
- Net flow by day, month, and period sits alongside performance drawn from the same underlying data, so the number you cite and the record behind it never disagree.
- Holdings by date
- Position detail is stored per fund per date, feeding the reports and the 13F without a second data pull or a manual reconstruction.
One fund · daily record
Source docs attachedNet assets
Tracked
NAV / close
Daily
MTD flow
Net + / -
Prem / disc
By day
Creations & redemptions
| Date | Created | Redeemed | Net |
|---|---|---|---|
| 05/14 | 2 units | 0 units | +2 |
| 05/13 | 1 unit | 1 unit | 0 |
| 05/12 | 0 units | 3 units | -3 |
| 05/09 | 4 units | 0 units | +4 |
Document capture & classification
Every provider email and file, captured and filed.
The mail that used to pile up unread files itself instead. Connect email read-only or a direct API, and each document is classified, integrity-checked, and linked to the fund it belongs to.
- Email + API capture
- Ultimus connects by direct API; other administrators, index providers, distributors, and auditors arrive by read-only Gmail or Microsoft 365. Each document lands filed to the right fund.
- Retention classes · Rules 31a-1 / 31a-2
- Most fund records held six years, with the first two easily accessible; charter documents, minutes, and ledgers permanent. The adviser 204-2 five-year class is tracked alongside.
- Integrity
- Every document carries a sha256 hash, its source and message of record, received-versus-document dates, and a confidentiality flag for N-RN, 13F-CTR, and N-PORT months one and two.
Captured & classified · linked to funds
sha256 verified| Document | Category | Status |
|---|---|---|
| Daily NAV + shares email | Daily Ops | Filed to fund |
| Index constituents file | Index & Benchmark | Filed to fund |
| Creation / redemption notice | Daily Ops | Filed to fund |
| Holdings export | Daily Ops | Filed to fund |
Ask the ledger · Connect your AI
Ask your data. Or connect your own AI to it.
The answer to a board question should not wait on a spreadsheet. A built-in question box answers metric questions instantly from the ledger, and for open questions you connect your own AI over MCP to your firm-scoped data with a read-only, revocable token.
- Ask the ledger, no AI required
- Direct data questions, like net redemptions on a fund over a date range, are answered instantly from the ledger with the exact date range and record count cited. Deterministic, and free.
- Connect your AI over MCP
- Point Claude, or any MCP-compatible assistant, at your data with a read-only token scoped to your firm. It answers open questions and helps compile reports from your own captured record, and the tokens are revocable.
- Your subscription, cited numbers
- Your AI runs on the subscription you already have, so there is no new AI bill from us. The assistant reports from your data and cites the figures; it does not give legal advice.
Ask the ledger · or connect your AI
Read-only · your firmNet redemptions across the lineup last quarter?
Net redemptions were negative for the quarter across the funds you track. The figure is summed from daily creations and redemptions in the ledger.
Answered from your data · numbers are cited, not generated
Templates
Your recurring documents, prefilled every period.
The report you rebuild every quarter fills itself instead. Upload your own template as Word or PDF, the system learns its sections, and you map its data slots to ledger metrics once, so every period after, one click prefills a draft with current numbers.
- Learns your sections
- Upload a liquidity program report, a board quarterly, a questionnaire, or a 15(c) request as Word or PDF, and the system reads its structure so you work with your own document, not ours.
- Map data slots once
- Point each slot at a ledger metric, such as AUM, period flows, returns, the holdings table, or premium and discount, a single time. The mapping is reused every period after.
- One click, then export
- Each period, one click prefills the draft with current numbers pulled from the aggregated data. Export the result to Word or Markdown.
Your document · sections learned
One click prefills| Data slot | Mapped to | State |
|---|---|---|
| AUM as of period end | Ledger · net assets | Mapped |
| Net flow, period | Ledger · flows | Mapped |
| Trailing return | Ledger · performance | Mapped |
| Holdings table | Ledger · holdings by date | Mapped |
| Premium / discount | Ledger · prem / disc | Map |
Export · Word or Markdown
Filings · 15(c) response builder
The annual advisory-contract response, assembled.
Built so the response that used to eat a week can take an afternoon. Sections auto-fill from the ledger per fiscal year, and last year's response carries prior text forward section by section before you export a draft.
- Sections from the ledger
- Performance, asset growth, and flows fill from the same record the reports draw on, so the numbers in the response match the numbers everywhere else.
- Carry last year forward
- Upload the prior response and bring its narrative across section by section, so each year builds on the last instead of starting from a blank page.
- Export a draft
- The assembled response exports as a draft document for the advisory-contract file. It is a drafting tool for your record, not legal advice.
Advisory-contract response · this fiscal year
Draft assembled| Section | Source | State |
|---|---|---|
| Performance | From ledger | Filled |
| Asset growth | From ledger | Filled |
| Flows | From ledger | Filled |
| Prior narrative | Last year's response | Carried |
| Board cover memo | Draft | Review |
Launch a new fund
The next fund in the trust, mostly already drafted.
Launching another fund in your trust means a prospectus and SAI that are largely identical to the funds you have already filed. ETFcomply derives the template from your own filed documents, walks you through what changes, and hands counsel a draft to review.
- Template from your own documents
- The system diffs your existing funds to separate the boilerplate that repeats from the fund-specific slots that change, so the template is your trust’s own language, not a generic form.
- A guided launch setup
- Walk the deltas one at a time: objective, strategy description, risk selection from your trust’s own risk library, fees, and portfolio managers. Only the parts that differ from the last fund need your attention.
- Counsel-ready drafts, day-one registration
- Generate a draft prospectus and SAI as Word documents plus a launch checklist for counsel to review, and register the new fund so its ledger and vault are live from day one. ETFcomply does not file with the SEC and is not legal advice.
Step 3 of 7 · Risks
Template from your filingsSelect the risks for this fund from your trust’s own risk library. Carried from the boilerplate your filed funds share; the rest of the prospectus is already drafted.
Next · Fees & portfolio managers
Draft for counsel reviewDaily · quarterly · annual reports
Finished reports, generated from the ledger.
No more retyping numbers that already sit in an email. The reports are built from the captured record, every figure carrying the source document it came from.
- Daily fund report
- Prior-close net assets, NAV and market price, flow, and creations and redemptions per fund, assembled each day from the ledger.
- Quarterly and annual reports
- Period reports roll up the same daily series across the fiscal quarter, calendar quarter, or fiscal year, ready for the board pack or the filing file.
- Source documents linked
- Every figure in a report traces back to the provider document it came from, so the report and its evidence travel together.
Built from the ledger
Source docs linked| Report | Period | State |
|---|---|---|
| Daily fund report | Prior close | Generated |
| Quarterly fund report | Q1 | Generated |
| Annual fund report | FYE | Generated |
| Board data pack | Meeting cycle | Ready |
Filings · 13F
Single-click 13F from the same holdings.
The quarter the aggregate value crosses the line, the filing is already most of the way done. Holdings live in the ledger, so the 13F is an export, not a rebuild.
- Built from tracked holdings
- The filing draws on the position detail already captured per fund, so there is no separate holdings assembly step.
- CUSIP + official-list validation
- Positions are validated against the official 13F list and CUSIP format before the package is produced, surfacing anything that will not pass.
- EDGAR-shaped package
- An EDGAR-shaped XML package is assembled and ready to file when the aggregate 13(f) value crosses the $100M line.
Form 13F-HR · from ledger holdings
ValidatedFund documents library
The fund-document set, always current and at hand.
You should never learn from a client that the fact sheet on your site went stale. Prospectus, summary prospectus, SAI, annual and semi-annual shareholder reports, and fact sheets, auto-filed from email per fund with the current version, its history, and a staleness hint.
- Auto-filed per fund by type
- Each fund-document type is captured from email and filed to the right fund, so the prospectus, summary prospectus, SAI, shareholder reports, and fact sheet sit together per fund.
- Current version + history
- The current version is one click away, with every prior version kept behind it, so you can see what was in effect and when without digging through the inbox.
- Staleness hints
- The set your website has to keep current carries a freshness hint, so a document that looks out of date surfaces before anyone else notices.
Fund documents · current version + history
Auto-filed per fund| Document | Version | Freshness |
|---|---|---|
| Prospectus | Current | Current |
| Summary prospectus | Current | Current |
| Statement of additional information | Current | Current |
| Annual shareholder report | Latest | Current |
| Fact sheet | Prior quarter | Check |
Code of ethics
Personal trading, on the same record as the funds.
Quarterly transaction reports, annual and initial holdings, political contributions, gifts and entertainment, outside business activities, and the annual acknowledgment. Your people file in their own portal, you review in yours, and the whole file exports with everything else when an examiner asks.
- Open a period, not a project
- Pick every attestation you need to run and the period each one covers, assign them to the whole roster or to chosen people, and open them in one action. Migrating from another provider mid-year? Roll straight to the quarter in progress instead of reopening one you already filed.
- Completion, not a calendar
- The board answers the only question a CCO actually has: fourteen of seventeen in, three still open, who they are. Reminders escalate on their own as the deadline approaches and after it passes, and the overdue list reaches you without you chasing it.
- Pre-clearance that knows your funds
- A request is screened against your restricted list and against what your own funds hold that day — the join a standalone personal-trading tool cannot make, because it has no fund ledger. The screen advises; a person decides, and the decision is recorded with the screen that informed it.
- Entry that does not fight the filer
- Type a trade or import a broker CSV from any custodian: the columns are mapped by name, statement preamble and total rows are handled, and anything unreadable is reported back rather than dropped. Someone certifying a report as complete should never be silently missing a row.
- The certification is the record
- Submitting captures the exact language in force, who signed it and when, and freezes all of it in the database. Nothing certified can be rewritten afterwards, and “I had no reportable activity” is an explicit affirmation rather than an empty form.
- A wall between your people and the ledger
- Access persons sign in on a separate surface that reaches their own filings and nothing else. They never see fund data, and they never see each other’s. That separation is structural, not a setting you have to remember to get right.
Open campaigns · completion
Reminders automatic| Attestation | Period | Filed | State |
|---|---|---|---|
| Quarterly transaction report | Q3 | 14 / 17 | 3 open |
| Political contributions | Q3 | 17 / 17 | Complete |
| Gifts & entertainment | Q3 | 16 / 17 | 1 open |
| Annual holdings report | Annual | 17 / 17 | Complete |
| Code of ethics acknowledgment | Annual | 17 / 17 | Complete |
Exam exports
Exam-ready bundles, on request.
When the letter lands with a two-week clock, the answer is a click, not a fire drill. Turn the captured record into an examiner response without rebuilding it by hand.
- Fund data export
- Export the ledger for any date range with the source documents attached, so the answer to a data request goes out with its evidence.
- Books and records by rule cite
- The bundle maps documents to rule cites and flags any coverage gap before you send, so an examiner never finds it before you do.
- Streamed, not size-capped
- Bundles stream to the browser with a hashed manifest, and the download is re-streamable, so a large export does not hit a size cliff.
Exam bundles · hashed manifest
Supporting · data integrity
The record watches itself.
The document that never arrived is the one you find out about at quarter-end. Monitoring runs against the ledger, not a rulebook, and tells you the same morning when the data you rely on stops arriving or stops adding up.
- Expected-document arrival
- Your provider setup defines what should arrive and how often. When a daily administrator report or an index file does not show up, that absence is flagged the same morning.
- Freshness and gaps
- Every fund series carries a last-data date. Stale funds surface on the dashboard, and missing business days are marked in every table and chart rather than papered over.
- Reconciliation
- Figures that should agree are compared as data lands, so a number that does not add up is a morning flag instead of a quarter-end surprise.
Automated checks · as of prior close
| Check | Cite | Value | State |
|---|---|---|---|
| RIC Diversification | IRC §851(b)(3) | 41.2% / 50% | Pass |
| Names Rule 80% test | Rule 35d-1 | 83.6% | Pass |
| Premium/Discount persistence | Rule 6c-11 | 5 days | Watch |
| Missing document detection | Rule 31a-1 | 0 gaps | Pass |
| 13F $100M threshold | §13(f) | Tracked | Near |
Roles & audit
Seats for the whole file, and a trail that cannot be edited.
Owner & member
Full working access for the internal team running the day-to-day fund data.
Read-only viewer
A viewer seat for the trust CCO or an outside auditor to review without changing anything.
Append-only audit trail
Every action recorded in a tamper-evident log, so the history of the record stands on its own.
Get your funds’ data in one place.
Book a conversation. We connect your provider stack, map your funds, and let the ledger fill before your first login.