Skip to content
MyStocks Developers
API v1

API v1

Current stable contract

Versioning policyRelease changelog
Sandbox console
Broker API

Customer ownership and omnibus custody

MyStocks Partner API

Define the customer relationship, beneficial ownership, nominee and omnibus custody model, books and records, reconciliation, transfers, and customer-facing disclosures.

Explore endpoints

4 of 4
GET

/report/reconciliation

Report - Reconciliation suite

Full endpoint documentation
Sandbox availablegetReconciliationReport

Daily reconciliation pack for B2B operations. Returns cash ledger, securities ledger, unsettled trades, fees, dividends, corporate actions, and custody position files for the partner master account and all sub-accounts. Add format=csv&section=... to download a section as CSV for finance, SFTP mirroring, or data warehouse ingestion. JSON responses include an explicit cash roll-forward, data-quality controls, and customer-sub-ledger-versus-MyStocks-omnibus proof. A status of EXCEPTIONS identifies unit or invalid-value differences; INCOMPLETE means no MyStocks omnibus positions were available for comparison. Sandbox returns current virtual wallets and holdings for the master and at most 500 sub-accounts, with null custody totals and INCOMPLETE status. Sandbox historical dates and from/to receive 422; section filtering receives 400. Sandbox format=csv exports current account totals. Neither this Sandbox report nor an internal ledger alone proves external settlement.

Parameters

asOfstringquery

Single business date to reconcile. Overrides default today when from/to are omitted.

Example: 2026-06-30

fromstringquery
tostringquery
formatjson | csvquery

Example: json

sectionsummary | cash | securities | unsettled | fees | dividends | corporate_actions | custody_positionsquery

CSV export section.

limitintegerquery

Per-account transaction/order scan limit.

Example: 1000

Headers

AuthorizationstringRequired

Bearer sk_sandbox_<your_key> for sandbox requests.

Response fields

See the response format and API Reference for this endpoint.

Response codes

200Reconciliation report or CSV file.
422Sandbox historical report or account limit unsupported.

Every production launch must answer three questions without ambiguity: whose customer is this, who legally holds the security, and which record proves the end investor's entitlement? The commercial agreement, customer terms, custody agreement, and API implementation must give the same answer.

Contract-first control

The API creates operational records; it does not create a legal trust, nominee appointment, or custody relationship by itself. Obtain jurisdiction-specific advice and execute the required broker, custodian, nominee, and customer agreements before accepting real money.

Operating model

End investor
beneficial owner
↓customer terms
Partner
customer experience + first-line support
↓externalId + subAccountId
MyStocks ledger
sub-account attribution
↓omnibus instruction
Broker / nominee
legal account holder where applicable
↓settled custody
Custodian / CSD
pooled market position

MyStocks maintains the sub-account ledger used to attribute pooled positions. The relevant regulated broker, custodian, nominee, or CSD holds the market-level position under the arrangement approved for that jurisdiction. A portfolio response is therefore an operational entitlement record, not a claim that the end investor has an individually named CSD account.

Responsibility matrix

ControlPartnerMyStocksBroker / custodian
Customer contract and consentOwn and retainProvide required platform disclosuresSupply market-specific terms
Customer identity and authorityVerifyEnforce KYC state received through the APIPerform any required reliance review
Beneficial-owner attributionSupply stable externalIdMaintain subAccountId, holdings, tax lots, and audit historyReconcile pooled position
Order instruction evidenceCapture intent and disclosuresPersist request, idempotency key, quote, and execution stateRetain venue execution record
Asset servicingNotify customer and collect electionsAllocate events to sub-accountsReceive and process issuer/CSD event
Books-and-records requestsCoordinate customer responseExport platform ledger and event evidenceProvide custody and execution statements

Minimum customer record

Keep one durable customer record that connects your identity system to the MyStocks ledger:

FieldControl purpose
externalId and subAccountIdStable cross-system identity; never recycle identifiers
Legal name, date of birth/incorporation, jurisdictionCustomer and regulatory classification
Beneficial owners and controllersNatural persons who ultimately own or control a legal customer
Account authorityPersons permitted to place orders or change instructions
Terms and disclosure versionsEvidence of what the customer accepted and when
Broker/custody market mappingExecuting and custody chain applicable to the account
Restrictions and legal holdsFreeze, deceased estate, court order, sanctions, or dispute status

Do not store passport images, biometrics, or unnecessary source documents in free-text API fields. Keep sensitive evidence in the approved KYC system and send only the structured assertion required by POST /users/{userId}/kyc.

Daily books-and-records control

  1. Reconcile each security's pooled broker/custodian units to the sum of attributed sub-account units.
  2. Reconcile cash, unsettled trades, dividends, fees, and corporate-action allocations.
  3. Classify differences as timing, mapping, external statement, or ledger exceptions.
  4. Prevent silent balancing entries; require an identified owner, evidence, and approval.
  5. Escalate unresolved unit or cash differences before the next trading session.

Use GET /report/reconciliation for the platform view and compare it with the dated broker/CSD statement. The Custody and beneficial ownership page describes the evidence required for GA.

Customer-facing disclosure checklist

  • Identify the contracting entity and the entity providing regulated brokerage or custody.
  • Explain whether securities are held in an omnibus, nominee, or individually named account.
  • State how beneficial ownership is recorded and how customers receive statements and confirmations.
  • Separate execution from legal settlement and explain when cash or securities become withdrawable.
  • Explain the treatment of fractional entitlements, voting rights, dividends, taxes, fees, and FX.
  • Describe transfer-out, account closure, death, incapacity, attachment, and insolvency procedures.
  • Disclose applicable investor-compensation or protection arrangements without implying universal coverage.

Evidence required before production

EvidenceOwnerRelease condition
Executed custody/nominee agreement per marketMyStocks + broker/custodianNames the account structure and asset-protection treatment
Approved customer termsPartner legalMatches the operational model and market disclosures
Ledger-to-custody reconciliationOperationsBALANCED, with external statement date recorded
Transfer and insolvency playbookJoint operationsTested contacts, data export, and authority matrix
Sample statement and trade confirmationPartnerShows beneficial owner, instrument, fees, FX, and settlement state

Reference standards

Canonical customer identifiers

Persist subAccountId from creation. The userId response alias contains the same value and corresponds to the path parameter in /users/{userId}. List, detail and create responses use the same identity mapping. An externalId lookup is scoped to your partner; never substitute another partner's internal ID.

Freeze and close safely

Use PATCH /users/{userId} with { "status": "frozen" } to stop new financial activity. Existing resting orders may be cancelled; a frozen customer cannot receive new simulated or dealing-room-approved fills. Freeze and reactivation record audit evidence and queue account notifications. Freezing does not automatically cancel every order or constitute a legal/regulatory certification.

Use DELETE /users/{userId} only after resolving open orders, positions and settlements. CURRENCY_CLOSE_BLOCKED supplies currencyBlockers with the currency, reason and next action. Non-USD cash, wallet reservations and remaining native funding entitlements must be resolved first. Use native internal transfers to return traceable funds. Legacy transfer_to_partner handles only eligible residual USD cash and does not convert currencies or move native funding entitlements. Closed accounts cannot be reopened.

Was this page useful?

Your signal helps us tighten partner onboarding docs.

Send note

Last updated on

On this page