The street¶
What custodians say an account holds, as a plugin at the edge reports it. This is its data dictionary at contract v24: one entry for every field of its messages a plugin meets, saying what the field is for, what a value means and does not mean, what empty means, who fills it, its bounds and the operations a write must carry it on. Each entry is anchored by its name, the name a refusal's path resolves to and a declaration names, which never changes.
Its messages are declared in meridian/v1/holdings.proto. A field's entry is the same whatever carries it: a typed operation's parameters take the entries of the message they are made from.
Records¶
The messages this store keeps and answers.
| Record | What it is |
|---|---|
CustodialPosition |
what the custodian says an account holds of an instrument on one side, as its statements last stated it |
StatementRecordedEvent |
a completed statement: its account, date, row counts and figures per margin segment |
ActivityRecordedEvent |
an activity as the custodian stated it, kept as reported, on which nothing is derived |
ActivityReResolution |
a later resolution of a recorded activity's instrument, kept beside the activity as first recorded, which it never changes |
SyncStatusRecordedEvent |
a sync status a custody plugin published, kept as published, so a connection needing a person is told apart from data merely old |
UnresolvedHolding |
a holding the deployment received and could not name, kept so nothing a custodian reported is dropped |
CustodialPosition¶
meridian.v1.CustodialPosition, a record.
account_id¶
identifier account · since v2 · stable
Names the account the position is of.
- Means: the deployment's account
- Does not mean: the external account
- Empty: never empty
- Filled: decided, by
street
instrument_id¶
identifier instrument · since v2 · stable
Names the instrument held.
- Means: the deployment's record, whatever its identifier; a record a person merged into another moves onto the one that stays (W3.9)
- Does not mean: an identifier of a scheme
- Empty: never empty
- Filled: decided, by
street
side¶
enum HoldingSide · since v2 · stable
Says which side the position is on.
- Means: keyed by account, instrument and side: an account may hold an instrument long and short at once
- Does not mean: the sign alone
- Empty: never unspecified
- Filled: decided, by
street
| Value | Means |
|---|---|
HOLDING_SIDE_UNSPECIFIED |
not said; never on a position the street answers |
HOLDING_SIDE_LONG |
held long |
HOLDING_SIDE_SHORT |
held short |
quantity¶
Decimal · since v2 · stable
Says the trade-date quantity the custodian says the account holds.
- Means: as the last statement stated it, signed to match side
- Does not mean: the book's position, which is a different number whose disagreement is the subject of reconciliation
- Empty: never unset
- Filled: as-reported, by
custody - Unit: units of the instrument; for cash, the currency's major unit
- Bounds: 0 to 18 decimal places; at most 38 significant digits; past it, refused
settle_date_quantity¶
Decimal · since v2 · stable
Says the settle-date quantity.
- Means: as the last statement stated it
- Does not mean: the trade-date quantity
- Empty: unset where the custodian reported none, which is not zero
- Filled: as-reported, by
custody - Unit: units of the instrument; for cash, the currency's major unit
- Bounds: 0 to 18 decimal places; at most 38 significant digits; past it, refused
market_value¶
Money · since v2 · stable
Carries the custodian's valuation.
- Means: as the last statement stated it
- Does not mean: a value the platform computed
- Empty: unset where the custodian reported no value, which is not zero
- Filled: as-reported, by
custody
last_statement_id¶
text · since v2 · stable
Names the statement that last stated the position.
- Means: the street's statement identifier
- Does not mean: a statement that changed it: one not restated recently is not wrong, and worth showing differently
- Empty: never empty
- Filled: decided, by
street
as_of_date¶
date · since v2 · stable
Says the date the position was last stated as of.
- Means: the last statement's as-of date
- Does not mean: when it was recorded
- Empty: never empty
- Filled: decided, by
street
updated_at_ns¶
moment · since v2 · stable
Records when the street last changed the position.
- Means: the deployment's clock
- Does not mean: the date it is as of
- Empty: never 0
- Filled: decided, by
street - Unit: nanoseconds since the epoch
also_counted_in_cash¶
boolean · since v2 · stable · deprecated in v11
Deprecated in v11
each asset is counted once at the edge; no reader acts on it.
Said, until v11, that the position's value is also in the account's cash as the custodian reports it.
- Means: both are kept as reported
- Does not mean: that the position is cash
- Empty: false when the custodian counts the holding once, and on every position a plugin on v11 stated
- Filled: as-reported, by
custody
cost_basis¶
Money · since v7 · stable
Carries the position's total cost.
- Means: as the custodian reported it on the row that last stated the position
- Does not mean: a cost the platform derived
- Empty: unset where the custodian reported none
- Filled: as-reported, by
custody
lots¶
repeated message ReportedLot · since v7 · stable
Carries the position's lots as the custodian listed them.
- Means: from the row that last stated the position
- Does not mean: the book's lots
- Empty: empty where the custodian listed none
- Filled: as-reported, by
custody
margin_requirement¶
Money · since v7 · stable
Carries the margin the position requires.
- Means: as reported on the row that last stated it
- Does not mean: a figure derived from a rate
- Empty: unset where the custodian reported none, which is not zero
- Filled: as-reported, by
custody
last_change¶
message JournalRef · since v7 · stable
Says where the position's last change sits in the street's record.
- Means: a delivery at or below it is already in it
- Does not mean: the statement that last stated it
- Empty: never unset from v7
- Filled: decided, by
street
removed¶
boolean · since v7 · stable
Marks a position that is gone.
- Means: a tombstone (W2.6, W3.9): returned only to a read since a watermark, and delivered once
- Does not mean: a quantity of zero
- Empty: false for a position that stands
- Filled: decided, by
street
average_cost¶
Money · since v7 · stable
Carries the custodian's average cost per unit.
- Means: as on RecordHoldingRequest, from the row that last stated the position
- Does not mean: a figure anything multiplies by the quantity
- Empty: unset where the custodian reported none
- Filled: as-reported, by
custody
available_quantity¶
Decimal · since v8 · stable
Carries how much the custodian reports available.
- Means: as on RecordHoldingRequest, from the row that last stated the position
- Does not mean: the book's free quantity
- Empty: unset where the custodian gave none: never zero, never the quantity
- Filled: as-reported, by
custody - Unit: units of the instrument
- Bounds: 0 to 18 decimal places; at most 38 significant digits; past it, refused
not_available_quantity¶
Decimal · since v8 · stable
Carries how much the custodian reports not available.
- Means: as on RecordHoldingRequest
- Does not mean: a sum of the encumbrances
- Empty: unset where the custodian gave none, which is not zero
- Filled: as-reported, by
custody - Unit: units of the instrument
- Bounds: 0 to 18 decimal places; at most 38 significant digits; past it, refused
available_basis¶
enum AvailableBasis · since v8 · stable
Says what the available figure is net of.
- Means: as on RecordHoldingRequest
- Does not mean: a basis the platform chose
- Empty: unspecified is not said
- Filled: as-reported, by
custody
| Value | Means |
|---|---|
AVAILABLE_BASIS_UNSPECIFIED |
the custodian does not say |
AVAILABLE_BASIS_SETTLED |
net of what has settled |
AVAILABLE_BASIS_TRADED |
net of what has traded |
AVAILABLE_BASIS_CONTRACTUAL |
net of what is contractually due |
AVAILABLE_BASIS_ORDER_NETTED |
net of the source's open orders |
encumbrances¶
repeated message ReportedEncumbrance · since v8 · stable
Carries the sub-balances the custodian reports encumbered.
- Means: as on RecordHoldingRequest, from the row that last stated the position
- Does not mean: the book's encumbrances
- Empty: empty means none reported, not none held
- Filled: as-reported, by
custody
raw_record¶
message RawRecordRef · since v11 · stable
References the raw record the row that last stated it was converted from.
- Means: the record in the plugin's own storage, which a person follows on that plugin's page; a value derived wholly by the plugin names the record it was derived from
- Does not mean: a record core or another plugin reads: carried, never followed, past the plugin that owns it
- Empty: unset where the row that last stated it carried none
- Filled: as-reported, by
custody
provenance¶
repeated message Provenance · since v11 · stable
Says where each value the plugin closed rather than read came from.
- Means: one per closed value, by its path: derived by a named rule, supplied by a named person, from a second source, or reported from another of the source's records
- Does not mean: a value presented as the source's: a closed value never is
- Empty: empty where every value is the source's, from the raw record
- Filled: as-reported, by
custody - Bounds: at most 32 items; past it, refused
pending¶
repeated message ReportedPending · since v11 · stable
States the quantities not yet settled, each by its value date.
- Means: as the row that last stated the position carried them, with what a backfill added
- Does not mean: the book's pending lines
- Empty: empty where nothing is pending
- Filled: as-reported, by
custody - Bounds: at most 64 items; past it, refused
StatementRecordedEvent¶
meridian.v1.StatementRecordedEvent, a record.
statement_id¶
text · since v2 · stable
Identifies the completed statement.
- Means: the street's statement identifier
- Does not mean: the plugin's external_statement_id
- Empty: never empty
- Filled: minted, by
street
source¶
text · since v2 · stable
Names the statement's source.
- Means: the plugin's scheme for its source
- Does not mean: the institution, which institution is
- Empty: never empty
- Filled: as-reported, by
custody
as_of_date¶
date · since v2 · stable
Says the date the statement's positions reflect.
- Means: an ISO 8601 date, as the statement gave it
- Does not mean: when it was recorded
- Empty: never empty
- Filled: as-reported, by
custody
rows_received¶
integer · since v2 · stable
Counts the statement's rows.
- Means: every row recorded, resolved or not
- Does not mean: positions changed
- Empty: 0 for a statement with no holding
- Filled: derived, by
street - Unit: holding rows
rows_resolved¶
integer · since v2 · stable
Counts the rows that named an instrument.
- Means: rows that updated a position
- Does not mean: positions changed
- Empty: 0 when none resolved
- Filled: derived, by
street - Unit: holding rows
rows_unresolved¶
integer · since v2 · stable
Counts the rows the deployment could not name.
- Means: the number a person watches
- Does not mean: rows refused
- Empty: 0 when every row resolved: the only quiet outcome
- Filled: derived, by
street - Unit: holding rows
recorded_at_ns¶
moment · since v2 · stable
Records when the statement completed.
- Means: the deployment's clock when its last row landed
- Does not mean: when it was read, or the date it reflects
- Empty: never 0
- Filled: decided, by
street - Unit: nanoseconds since the epoch
account_id¶
identifier account · since v7 · stable
Names the account the statement is of.
- Means: its external account's linked account, or, from a plugin before v7, its rows'
- Does not mean: the external account
- Empty: never empty from v7
- Filled: decided, by
street
figures¶
repeated message StatementFigures · since v7 · stable
Carries the statement's figures as recorded.
- Means: one set per segment, as reported
- Does not mean: figures derived from the positions
- Empty: empty where the statement carried none
- Filled: as-reported, by
custody
currency_assumed¶
boolean · since v7 · stable · deprecated in v11
Deprecated in v11
as on the statement. Use meridian.v1.StatementRecordedEvent.provenance instead.
Says the figures' currency is the plugin's assumption.
- Means: as the statement said
- Does not mean: that the figures are wrong
- Empty: false when the source stated the figures' currency
- Filled: as-reported, by
custody
journal¶
message JournalRef · since v7 · stable
Says where the completion sits in the street's record.
- Means: its number in the street's partition, chained per account with the statements before it
- Does not mean: the statement's identifier
- Empty: never unset
- Filled: decided, by
street
cause¶
message ChangeCause · since v7 · stable
Says who caused the completion.
- Means: the row whose landing completed it
- Does not mean: who read the statement
- Empty: never unset
- Filled: decided, by
street
external_account_id¶
identifier external account · since v7 · stable
Names the external account the statement was of.
- Means: as the statement named it: with the source and a segment, what a margin agreement is keyed by and an opening balance names as its source
- Does not mean: an account of the deployment
- Empty: empty from a plugin before v7
- Filled: as-reported, by
custody
institution¶
text · since v7 · stable
Names the institution holding the external account.
- Means: as the statement named it
- Does not mean: the plugin's scheme
- Empty: empty from a plugin before v7, and where the plugin did not say
- Filled: as-reported, by
custody
security_interest¶
boolean · since v8 · stable
Says the account servicer holds a lien or a right of set-off over the account.
- Means: as the statement reported it
- Does not mean: an encumbrance
- Empty: unset where the statement did not say, which is not false
- Filled: as-reported, by
custody
raw_record¶
message RawRecordRef · since v11 · stable
References the raw record the statement's figures was converted from.
- Means: the record in the plugin's own storage, which a person follows on that plugin's page; a value derived wholly by the plugin names the record it was derived from
- Does not mean: a record core or another plugin reads: carried, never followed, past the plugin that owns it
- Empty: unset from a plugin before v11; the custody suite requires it
- Filled: as-reported, by
custody
provenance¶
repeated message Provenance · since v11 · stable
Says where each value the plugin closed rather than read came from.
- Means: one per closed value, by its path: derived by a named rule, supplied by a named person, from a second source, or reported from another of the source's records
- Does not mean: a value presented as the source's: a closed value never is
- Empty: empty where every value is the source's, from the raw record
- Filled: as-reported, by
custody - Bounds: at most 32 items; past it, refused
ActivityRecordedEvent¶
meridian.v1.ActivityRecordedEvent, a record.
activity_id¶
text · since v14 · preview
Identifies the activity recorded.
- Means: the street's identifier, as the record's reply answered it
- Does not mean: the custodian's external_activity_id
- Empty: never empty
- Filled: minted, by
street
account_id¶
identifier account · since v14 · preview
Names the account the activity is on.
- Means: the account the sidecar stamped on the record
- Does not mean: an external account
- Empty: never empty
- Filled: stamped, by
sidecar
external_account_id¶
identifier external account · since v14 · preview
Names the external account the activity is on.
- Means: as the custody plugin reported it
- Does not mean: an account of the deployment
- Empty: never empty
- Filled: as-reported, by
custody
source¶
text · since v14 · preview
Names the source the activity was read from.
- Means: the plugin's scheme for its source, as recorded
- Does not mean: the institution holding the account
- Empty: never empty
- Filled: as-reported, by
custody
activity¶
message CustodialActivity · since v14 · preview
Carries the activity as recorded.
- Means: as the custodian stated it and the plugin sent it, whole
- Does not mean: a position, a lot or a figure: the street derives none from it
- Empty: never unset
- Filled: as-reported, by
custody
recorded_at_ns¶
moment · since v14 · preview
Records when the street recorded the activity.
- Means: the deployment's clock when it was recorded
- Does not mean: when it was traded, or when the plugin read it
- Empty: never 0
- Filled: decided, by
street - Unit: nanoseconds since the epoch
journal¶
message JournalRef · since v14 · preview
Says where the record sits in the street's record.
- Means: its number in the street's partition, chained per account with the activities before it
- Does not mean: the activity's identifier
- Empty: never unset
- Filled: decided, by
street
cause¶
message ChangeCause · since v14 · preview
Says who caused the record.
- Means: the custody plugin's command that recorded it
- Does not mean: who traded
- Empty: never unset
- Filled: decided, by
street
ActivityReResolution¶
meridian.v1.ActivityReResolution, a record.
activity_id¶
text · since v15 · preview
Names the activity this re-resolution sits beside.
- Means: the street's identifier for the activity as first recorded (W2.10)
- Does not mean: an identifier of the re-resolution
- Empty: never empty
- Filled: decided, by
street
instrument_id¶
identifier instrument · since v15 · preview
Names the instrument the activity now resolves to.
- Means: the deployment's record, as the plugin resolved it later
- Does not mean: an identifier of a scheme, or the custodian's own code
- Empty: empty where the link the activity had been resolved by was removed: unresolved again, its code as first reported
- Filled: as-reported, by
custody
provenance¶
message Provenance · since v15 · preview
Says how the instrument was resolved this time.
- Means: supplied by the named person who set the link, or derived by a named rule
- Does not mean: the custodian's word
- Empty: never unset
- Filled: as-reported, by
custody
resolved_at_ns¶
moment · since v15 · preview
Says when what resolves the activity was made.
- Means: when the link was set or the rule resolved it, as the plugin sent it
- Does not mean: when the street recorded it
- Empty: never 0
- Filled: as-reported, by
custody - Unit: nanoseconds since the epoch
recorded_at_ns¶
moment · since v15 · preview
Records when the street recorded the re-resolution.
- Means: the deployment's clock when it was recorded, never back-dated
- Does not mean: when the activity was first recorded, or traded
- Empty: never 0
- Filled: decided, by
street - Unit: nanoseconds since the epoch
journal¶
message JournalRef · since v15 · preview
Says where the re-resolution sits in the street's record.
- Means: its own number in the street's partition, chained per account with the re-resolutions before it, apart from the activities' chain
- Does not mean: the activity's own number
- Empty: never unset
- Filled: decided, by
street
account_id¶
identifier account · since v15 · preview
Names the account the re-resolved activity is on.
- Means: the account the activity was recorded against, so a read since a watermark is applied by account as the event is delivered
- Does not mean: the external account
- Empty: never empty
- Filled: decided, by
street
SyncStatusRecordedEvent¶
meridian.v1.SyncStatusRecordedEvent, a record.
status¶
message SyncStatusEvent · since v14 · preview
Carries the sync status as recorded.
- Means: as the custody plugin published it (W2.1), its account as the sidecar stamped it: empty when the external account is not linked, and then delivered to no plugin
- Does not mean: anything the street concluded about the connection
- Empty: never unset
- Filled: as-reported, by
custody
recorded_at_ns¶
moment · since v14 · preview
Records when the street recorded the sync status.
- Means: the deployment's clock when it was recorded
- Does not mean: when the source last synced, or when the plugin observed it
- Empty: never 0
- Filled: decided, by
street - Unit: nanoseconds since the epoch
journal¶
message JournalRef · since v14 · preview
Says where the record sits in the street's record.
- Means: its number in the street's partition, chained per account with the sync statuses before it
- Does not mean: an identifier of the connection
- Empty: never unset
- Filled: decided, by
street
cause¶
message ChangeCause · since v14 · preview
Says who caused the record.
- Means: the custody plugin whose sync status the street heard
- Does not mean: the rail, or a person
- Empty: never unset
- Filled: decided, by
street
UnresolvedHolding¶
meridian.v1.UnresolvedHolding, a record.
holding_id¶
text · since v2 · stable
Identifies the row that never resolved.
- Means: the street's identifier for the row
- Does not mean: an instrument
- Empty: never empty
- Filled: minted, by
street
account_id¶
identifier account · since v2 · stable
Names the account the row is of.
- Means: the deployment's account
- Does not mean: the external account
- Empty: never empty
- Filled: decided, by
street
identifiers¶
repeated message Identifier · since v2 · stable
Carries what the plugin held for the row.
- Means: every identifier its source gave
- Does not mean: a record
- Empty: never empty
- Filled: as-reported, by
custody
quantity¶
Decimal · since v2 · stable
Says how much the row held.
- Means: signed as the row stated it, negative short
- Does not mean: a position
- Empty: never unset
- Filled: as-reported, by
custody - Unit: units of the unnamed instrument
- Bounds: 0 to 18 decimal places; at most 38 significant digits; past it, refused
market_value¶
Money · since v2 · stable
Carries the custodian's valuation of the row.
- Means: as reported
- Does not mean: a value the platform computed
- Empty: unset where the custodian reported no value, which is not zero
- Filled: as-reported, by
custody
source¶
text · since v2 · stable
Names the row's source.
- Means: the plugin's scheme for its source
- Does not mean: the institution
- Empty: never empty
- Filled: as-reported, by
custody
as_of_date¶
date · since v2 · stable
Says the date the row was as of.
- Means: its statement's as-of date
- Does not mean: when it was recorded
- Empty: never empty
- Filled: as-reported, by
custody
escalated¶
boolean · since v2 · stable
Says an escalation was raised for the row's identifiers.
- Means: so a view can tell what nobody has looked at from what is with the administrator
- Does not mean: that it is resolved
- Empty: false while nobody has raised it
- Filled: decided, by
street
raw_record¶
message RawRecordRef · since v11 · stable
References the raw record the row was converted from.
- Means: as the row carried it
- Does not mean: a record anyone but its plugin reads
- Empty: unset where the row carried none
- Filled: as-reported, by
custody
SyncStatusEvent¶
meridian.v1.SyncStatusEvent, a message.
source¶
text · since v2 · stable
Names the connection's source.
- Means: the plugin's scheme for its source, as on its identifiers
- Does not mean: the institution holding the account
- Empty: never empty
- Filled: as-reported, by
custody
account_id¶
identifier account · since v2 · stable
Names the account the connection's external account is linked to.
- Means: the deployment's account (W6.4)
- Does not mean: anything a plugin sets
- Empty: empty when the external account is not linked: the sidecar sets it from the link, and never refuses this event for want of one
- Filled: stamped, by
sidecar
external_account_id¶
identifier external account · since v2 · stable
Names the external account the freshness is of.
- Means: as the plugin reported it (W2.8)
- Does not mean: an account of the deployment
- Empty: never empty
- Filled: as-reported, by
custody
last_synced_at_ns¶
moment · since v2 · stable
Says when the source last synced the account from the institution.
- Means: when the read succeeded
- Does not mean: when the data is as of: a source late by design syncs today what was true yesterday
- Empty: 0 where the source never said
- Filled: as-reported, by
custody - Unit: nanoseconds since the epoch
connection_healthy¶
boolean · since v2 · stable
Says whether the source considers the connection healthy.
- Means: false with a recent last sync means the data is good and the connection has since broken
- Does not mean: whose fix it is, which state says
- Empty: false is not healthy, state saying why
- Filled: as-reported, by
custody
status_detail¶
text · since v2 · stable
Carries what state does not say.
- Means: the source's words; diagnostic, nothing branches on it
- Does not mean: a code
- Empty: empty for none
- Filled: as-reported, by
custody
observed_at_ns¶
moment · since v2 · stable
Records when the plugin observed the freshness.
- Means: the plugin's clock
- Does not mean: the last sync
- Empty: never 0
- Filled: as-reported, by
custody - Unit: nanoseconds since the epoch
state¶
enum SyncState · since v2 · stable
Says whether the data is current, and if not why, which is whose fix it is.
- Means: one of the ways the sources surveyed fail, each asking something different of a person
- Does not mean: the connection's health alone
- Empty: unspecified is not said
- Filled: as-reported, by
custody
| Value | Means |
|---|---|
SYNC_STATE_UNSPECIFIED |
not said, by a plugin written before states were; shown as connection_healthy says |
SYNC_STATE_CURRENT |
current; nothing to do |
SYNC_STATE_STALE |
still serving, older than it should be since holdings_as_of_ns; usually the source's to recover |
SYNC_STATE_NEEDS_SIGN_IN |
a person must sign in again at the institution before anything new is served |
SYNC_STATE_DISABLED |
the connection is disabled and serves only what it last read; somebody re-enables it |
SYNC_STATE_DELAYED_BY_DESIGN |
late on purpose, by a business day or so; expected, nothing to do |
SYNC_STATE_HOLDINGS_UNAVAILABLE |
the institution does not provide holdings through this connection; waiting changes nothing, and the account is connected another way |
holdings_as_of_ns¶
moment · since v2 · stable
Says when the holdings the source serves are as of.
- Means: kept apart from the history's, since a connection can have one current and not the other
- Does not mean: the last sync
- Empty: 0 where the source does not say
- Filled: as-reported, by
custody - Unit: nanoseconds since the epoch
history_as_of_ns¶
moment · since v2 · stable
Says when the history — transactions — the source serves is as of.
- Means: kept apart from the holdings'
- Does not mean: the last sync
- Empty: 0 where the source does not say
- Filled: as-reported, by
custody - Unit: nanoseconds since the epoch
history_from¶
date · since v14 · stable
Says how far back the account's history reaches.
- Means: the first date the source can read the account's activity from, an ISO 8601 date: how far a backfill of activity reaches (W2.10)
- Does not mean: how fresh the history is, which history_as_of_ns says
- Empty: empty where the source does not say, which is not saying the history is complete
- Filled: as-reported, by
custody
RecordHoldingsStatementRequest¶
meridian.v1.RecordHoldingsStatementRequest, a message.
source¶
text · since v2 · stable
Names the statement's source.
- Means: the plugin's scheme for its source, as on its identifiers
- Does not mean: the institution holding the account, which institution is
- Empty: never empty
- Filled: as-reported, by
custody
external_statement_id¶
text · since v2 · stable
Lets the street recognise the same statement sent twice.
- Means: the plugin's identifier for the snapshot, made from the account it read and when, so the same read sent twice has the same one
- Does not mean: the street's statement identifier
- Empty: never empty
- Filled: as-reported, by
custody
as_of_date¶
date · since v2 · stable
Says the date the positions reflect.
- Means: an ISO 8601 date
- Does not mean: when the plugin read them: a statement read this morning may be as of yesterday's close
- Empty: never empty
- Filled: as-reported, by
custody
read_at_ns¶
moment · since v2 · stable
Records when the plugin read the statement.
- Means: the plugin's clock when it fetched the positions
- Does not mean: the date they reflect
- Empty: never 0
- Filled: as-reported, by
custody - Unit: nanoseconds since the epoch
expected_rows¶
integer · since v2 · stable
Marks the end of a statement.
- Means: how many holding rows follow: the street closes the statement when this many have landed, and one whose rows never all arrive stays open rather than publishing wrong counts
- Does not mean: a page size
- Empty: 0 for a statement with no holding
- Filled: as-reported, by
custody - Unit: holding rows
buying_power¶
Money · since v2 · stable · deprecated in v7
Deprecated in v7
a statement carries a set of figures per margin segment. Use meridian.v1.RecordHoldingsStatementRequest.figures instead.
Carried the account's buying power before figures per segment.
- Means: read from a plugin before v7 as the set with no segment
- Does not mean: a figure a plugin at v7 or later sends here
- Empty: unset; refused from a plugin at v7 or later sent beside figures
- Filled: as-reported, by
custody
margin_requirement¶
Money · since v2 · stable · deprecated in v7
Deprecated in v7
a statement carries a set of figures per margin segment. Use meridian.v1.RecordHoldingsStatementRequest.figures instead.
Carried the account's margin requirement before figures per segment.
- Means: read from a plugin before v7 as the set with no segment
- Does not mean: a figure a plugin at v7 or later sends here
- Empty: unset; refused from a plugin at v7 or later sent beside figures
- Filled: as-reported, by
custody
maintenance_excess¶
Money · since v2 · stable · deprecated in v7
Deprecated in v7
a statement carries a set of figures per margin segment. Use meridian.v1.RecordHoldingsStatementRequest.figures instead.
Carried the account's maintenance excess before figures per segment.
- Means: read from a plugin before v7 as the set with no segment
- Does not mean: a figure a plugin at v7 or later sends here
- Empty: unset; refused from a plugin at v7 or later sent beside figures
- Filled: as-reported, by
custody
currency_assumed¶
boolean · since v2 · stable · deprecated in v11
Deprecated in v11
a currency the source did not state is derived by the plugin's rule, and its provenance says so. Use meridian.v1.RecordHoldingsStatementRequest.provenance instead.
Says the figures' currency is the plugin's assumption.
- Means: the source stated no currency, and the one on every set of figures is the plugin's stated assumption
- Does not mean: that the figures are wrong
- Empty: false when the source stated the figures' currency
- Filled: as-reported, by
custody
external_account_id¶
identifier external account · since v7 · stable
Names the external account the statement is of.
- Means: as the plugin reported it (W2.8); a statement is one account's, and a row naming another is refused
- Does not mean: an account of the deployment
- Empty: never empty: the sidecar refuses a statement whose external account is not linked (REFUSAL_REASON_EXTERNAL_ACCOUNT_NOT_LINKED)
- Filled: as-reported, by
custody
account_id¶
identifier account · since v7 · stable
Names the account the statement is recorded against.
- Means: the deployment's account the external account is linked to (W6.4)
- Does not mean: anything a plugin sets
- Empty: a plugin leaves it empty; the sidecar sets it from the link
- Filled: stamped, by
sidecar
figures¶
repeated message StatementFigures · since v7 · stable
Carries the statement's figures, one set per margin segment.
- Means: as the source reported them; no two name the same segment
- Does not mean: figures computed from the holdings, which would be the platform's presented as the custodian's
- Empty: empty where the source reports no figure
- Filled: as-reported, by
custody
institution¶
text · since v7 · stable
Names the institution holding the external account.
- Means: the institution behind an aggregating source, or the source itself for a direct one, as the plugin names it
- Does not mean: the plugin's scheme, which source is
- Empty: empty where the plugin does not say
- Filled: as-reported, by
custody
security_interest¶
boolean · since v8 · stable
Says the account servicer holds a lien or a right of set-off over the account.
- Means: as the statement reports it
- Does not mean: an encumbrance: it reduces no holding's available quantity
- Empty: unset where the statement does not say, which is not false
- Filled: as-reported, by
custody
raw_record¶
message RawRecordRef · since v11 · stable
References the raw record the statement's figures was converted from.
- Means: the record in the plugin's own storage, which a person follows on that plugin's page; a value derived wholly by the plugin names the record it was derived from
- Does not mean: a record core or another plugin reads: carried, never followed, past the plugin that owns it
- Empty: unset from a plugin before v11; the custody suite requires it
- Filled: as-reported, by
custody
provenance¶
repeated message Provenance · since v11 · stable
Says where each value the plugin closed rather than read came from.
- Means: one per closed value, by its path: derived by a named rule, supplied by a named person, from a second source, or reported from another of the source's records
- Does not mean: a value presented as the source's: a closed value never is
- Empty: empty where every value is the source's, from the raw record
- Filled: as-reported, by
custody - Bounds: at most 32 items; past it, refused
StatementFigures¶
meridian.v1.StatementFigures, a message.
segment¶
text · since v7 · stable
Names the margin segment the figures are for.
- Means: the segment as the source names it, verbatim
- Does not mean: a segment of the platform's vocabulary
- Empty: empty for the account as a whole
- Filled: as-reported, by
custody
buying_power¶
Money · since v7 · stable
Carries the segment's buying power.
- Means: as reported
- Does not mean: a figure derived from the holdings
- Empty: unset where the source reported none, which is not zero
- Filled: as-reported, by
custody
margin_requirement¶
Money · since v7 · stable
Carries the segment's margin requirement.
- Means: as reported
- Does not mean: a figure derived from the holdings
- Empty: unset where the source reported none, which is not zero
- Filled: as-reported, by
custody
maintenance_excess¶
Money · since v7 · stable
Carries the segment's maintenance excess.
- Means: as reported; negative is a deficit
- Does not mean: a figure derived from the holdings
- Empty: unset where the source reported none, which is not zero
- Filled: as-reported, by
custody
initial_margin¶
Money · since v7 · stable
Carries the segment's initial margin.
- Means: as reported
- Does not mean: a figure derived from the holdings
- Empty: unset where the source reported none, which is not zero
- Filled: as-reported, by
custody
variation_margin¶
Money · since v7 · stable
Carries the segment's variation margin.
- Means: as reported
- Does not mean: a figure derived from the holdings
- Empty: unset where the source reported none, which is not zero
- Filled: as-reported, by
custody
net_liquidation¶
Money · since v7 · stable
Carries the institution's own total account value.
- Means: as it reports it
- Does not mean: a sum of the holdings
- Empty: unset where the source reported none, which is not zero
- Filled: as-reported, by
custody
collateral¶
repeated message ReportedCollateral · since v7 · stable
Carries the collateral held under the segment.
- Means: each balance as reported; posted collateral the custodian also lists as a holding is a holding row too
- Does not mean: a holding: a balance moves nothing, and collateral received under a security interest is never one
- Empty: empty where none is reported, which is not none held
- Filled: as-reported, by
custody
ReportedCollateral¶
meridian.v1.ReportedCollateral, a message.
direction¶
enum CollateralDirection · since v7 · stable
Says whether the account posted or received the collateral.
- Means: as reported
- Does not mean: whether the collateral is a holding
- Empty: unspecified is refused, naming its path
- Filled: as-reported, by
custody - Required on:
RecordHoldingsStatementfrom v7
| Value | Means |
|---|---|
COLLATERAL_DIRECTION_UNSPECIFIED |
not said; refused, since collateral is posted or received |
COLLATERAL_DIRECTION_POSTED |
posted by the account |
COLLATERAL_DIRECTION_RECEIVED |
received by the account |
instrument_id¶
identifier instrument · since v7 · stable
Names the collateral's instrument.
- Means: the deployment's record, held or minted, or the currency's cash instrument for cash, resolved as a holding's is (W3.1)
- Does not mean: an identifier of a scheme
- Empty: empty when the resolve was ambiguous, and unresolved_identifiers is set instead: exactly one of the two
- Filled: as-reported, by
custody
unresolved_identifiers¶
repeated message Identifier · since v7 · stable
Carries what the plugin held when the resolve was ambiguous.
- Means: every identifier its source gave
- Does not mean: a record
- Empty: empty when instrument_id is set: exactly one of the two
- Filled: as-reported, by
custody
quantity¶
Decimal · since v7 · stable
Says how much of the instrument the balance is.
- Means: as reported
- Does not mean: its value
- Empty: never unset
- Filled: as-reported, by
custody - Unit: units of the instrument; for cash, the currency's major unit
- Bounds: 0 to 18 decimal places; at most 38 significant digits; past it, refused
- Required on:
RecordHoldingsStatementfrom v7;RecordAccountFiguresfrom v8
value¶
Money · since v7 · stable
Carries the collateral's value.
- Means: as reported, before any haircut
- Does not mean: a value computed from a price
- Empty: unset where the source does not say, which is not zero
- Filled: as-reported, by
custody
haircut¶
Decimal · since v7 · stable
Carries the haircut applied to the collateral.
- Means: the source's percentage written as its fraction
- Does not mean: a percentage
- Empty: unset where the source does not say
- Filled: as-reported, by
custody - Unit: a fraction of the value: 0.15 is 15%
- Bounds: 0 to 18 decimal places; at most 38 significant digits; past it, refused
value_after_haircut¶
Money · since v7 · stable
Carries the collateral's value after its haircut.
- Means: as reported
- Does not mean: the value times the haircut, computed here
- Empty: unset where the source does not say, which is not zero
- Filled: as-reported, by
custody
held_at¶
text · since v7 · stable
Says where the collateral is held.
- Means: the clearing member, the dealer or a third-party custodian, as the source names it
- Does not mean: an identifier any component resolves
- Empty: empty where the source does not say
- Filled: as-reported, by
custody
reusable¶
boolean · since v8 · stable
Says whether the receiver may reuse the collateral.
- Means: as the agreement states and the source reports it
- Does not mean: a position: received collateral is never one, reusable or not
- Empty: unset where the source does not say, which is not false
- Filled: as-reported, by
custody
RecordHoldingsStatementReply¶
meridian.v1.RecordHoldingsStatementReply, a message.
statement_id¶
text · since v2 · stable
Identifies the statement the street recorded.
- Means: minted by the street; every row of the statement names it
- Does not mean: the plugin's external_statement_id
- Empty: never empty
- Filled: minted, by
street
already_recorded¶
boolean · since v2 · stable
Says the statement had already been recorded.
- Means: a redelivery: the existing statement is returned, and nothing is recorded twice
- Does not mean: a refusal
- Empty: false for a statement recorded now
- Filled: decided, by
street
RecordHoldingRequest¶
meridian.v1.RecordHoldingRequest, a message.
statement_id¶
text · since v2 · stable
Names the statement the row belongs to.
- Means: the street's statement identifier
- Does not mean: the plugin's external_statement_id
- Empty: never empty
- Filled: as-reported, by
custody
account_id¶
identifier account · since v2 · stable
Names the account the row is recorded against.
- Means: the deployment's account the external account is linked to (W6.4)
- Does not mean: anything a plugin sets
- Empty: a plugin leaves it empty; the sidecar sets it from the link, and refuses the row when there is none (REFUSAL_REASON_EXTERNAL_ACCOUNT_NOT_LINKED)
- Filled: stamped, by
sidecar
external_account_id¶
identifier external account · since v2 · stable
Names the external account the row is of.
- Means: as the plugin reported it (W2.8); refused is not dropped: the external account is reported unlinked, and the next statement after it is linked records it
- Does not mean: an account of the deployment
- Empty: never empty: a row is of an external account the plugin reported
- Filled: as-reported, by
custody
instrument_id¶
identifier instrument · since v2 · stable
Names the instrument held.
- Means: the deployment's record, held or minted when nothing matched (W3.7); for cash, the currency's cash instrument
- Does not mean: an identifier of a scheme
- Empty: empty when the resolve was ambiguous, and unresolved_identifiers is set instead: never both, never neither, refused otherwise
- Filled: as-reported, by
custody
unresolved_identifiers¶
repeated message Identifier · since v2 · stable
Carries what the plugin held when the resolve was ambiguous, or from v24 not found for a source thinner than an instrument record's minimum.
- Means: everything it held, so a person sees exactly what could not be accounted for; the row is recorded all the same, since a dropped holding is invisible. From v24 also a placeholder for a source stating less than an identifier, a description and a currency, outside the book and flagged on reconciliation as an unrecognized security (W3.7, W9.3)
- Does not mean: a record
- Empty: empty when instrument_id is set: never both, never neither
- Filled: as-reported, by
custody
Changes: v24, clarified: also a holding whose source is thinner than an instrument record's minimum, answered not found (W3.7; the one-ID model, ruled 2026-10-14).
quantity¶
Decimal · since v2 · stable
States the trade-date quantity held.
- Means: what is held counting every trade executed, settled or not; signed to match side, negative short
- Does not mean: the settle-date quantity, or the available quantity
- Empty: never unset: refused, since unset would read as zero
- Filled: as-reported, by
custody - Unit: units of the instrument; for cash, the currency's major unit
- Bounds: 0 to 18 decimal places; at most 38 significant digits; past it, refused
- Required on:
RecordHoldingfrom v2
side¶
enum HoldingSide · since v2 · stable
Says which side of the instrument the holding is on.
- Means: stated, not read off the sign; a source reporting an account's long and short of one instrument apart sends two rows, and one reporting a signed number sends the side its sign means
- Does not mean: the sign alone
- Empty: unspecified is refused
- Filled: as-reported, by
custody - Required on:
RecordHoldingfrom v2
| Value | Means |
|---|---|
HOLDING_SIDE_UNSPECIFIED |
not said; refused by the street |
HOLDING_SIDE_LONG |
held long |
HOLDING_SIDE_SHORT |
held short |
settle_date_quantity¶
Decimal · since v2 · stable
States the settle-date quantity held.
- Means: what is held counting only settled trades; for cash, the settled cash
- Does not mean: the trade-date quantity
- Empty: unset where the source does not report it, which is not zero
- Filled: as-reported, by
custody - Unit: units of the instrument; for cash, the currency's major unit
- Bounds: 0 to 18 decimal places; at most 38 significant digits; past it, refused
market_value¶
Money · since v2 · stable
Carries the source's valuation of the holding.
- Means: as reported, in its currency, never recomputed: the custodian's belief, which a later comparison needs
- Does not mean: a value the platform computed from a price
- Empty: unset where the source reported none, which is not a value of zero
- Filled: as-reported, by
custody
currency_assumed¶
boolean · since v2 · stable · deprecated in v11
Deprecated in v11
a currency the source did not state is derived by the plugin's rule, and its provenance says so. Use meridian.v1.RecordHoldingRequest.provenance instead.
Says the row's currency is the plugin's assumption.
- Means: the source stated none, and the market value's currency — for cash, the currency whose cash instrument the row names — is the plugin's stated assumption
- Does not mean: a pseudo-currency standing for an account's base, which is never one
- Empty: false when the source stated the currency
- Filled: as-reported, by
custody
also_counted_in_cash¶
boolean · since v2 · stable · deprecated in v11
Deprecated in v11
each asset is counted once: the plugin nets the cash at the edge, and the source's gross figure stays in its raw record.
Said, until v11, that the holding's value is also in the account's cash as the source reports it.
- Means: from a plugin before v11 only; from v11 the street counts each asset once, the cash net of the holding at the edge, and no reader acts on it
- Does not mean: that the holding is cash
- Empty: false when the source counts the holding once
- Filled: as-reported, by
custody
cost_basis¶
Money · since v7 · stable
Carries the holding's total cost.
- Means: as the source reports it, never derived
- Does not mean: average cost times quantity
- Empty: unset where the source reports none
- Filled: as-reported, by
custody
lots¶
repeated message ReportedLot · since v7 · stable
Carries the holding's lots as the custodian lists them.
- Means: lots whose quantities do not sum to the holding's are recorded as reported
- Does not mean: the book's lots
- Empty: empty where the source lists none, which is not one lot
- Filled: as-reported, by
custody
margin_requirement¶
Money · since v7 · stable
Carries the margin the holding requires.
- Means: as reported
- Does not mean: a figure derived from a rate
- Empty: unset where the source reports none, which is not zero
- Filled: as-reported, by
custody
average_cost¶
Money · since v7 · stable
Carries the source's average cost per unit.
- Means: in the source's unit, which for an option may be per share while the quantity counts contracts; never computed from cost_basis, nor cost_basis from it
- Does not mean: a figure anything multiplies by the quantity or a multiplier
- Empty: unset where the source reports none
- Filled: as-reported, by
custody
available_quantity¶
Decimal · since v8 · stable
Carries how much of the holding the source reports available.
- Means: as reported, never derived from not_available_quantity or the quantity; available_basis says what it is net of
- Does not mean: the book's free quantity
- Empty: unset where the source gives none: never zero, never the holding's quantity
- Filled: as-reported, by
custody - Unit: units of the instrument
- Bounds: 0 to 18 decimal places; at most 38 significant digits; past it, refused
not_available_quantity¶
Decimal · since v8 · stable
Carries how much of the holding the source reports not available.
- Means: as reported, never derived
- Does not mean: a sum of the encumbrances
- Empty: unset where the source gives none, which is not zero
- Filled: as-reported, by
custody - Unit: units of the instrument
- Bounds: 0 to 18 decimal places; at most 38 significant digits; past it, refused
available_basis¶
enum AvailableBasis · since v8 · stable
Says what the available figure is net of.
- Means: the basis the source states
- Does not mean: a basis the platform chose
- Empty: unspecified is not said
- Filled: as-reported, by
custody
| Value | Means |
|---|---|
AVAILABLE_BASIS_UNSPECIFIED |
the source does not say |
AVAILABLE_BASIS_SETTLED |
net of what has settled |
AVAILABLE_BASIS_TRADED |
net of what has traded |
AVAILABLE_BASIS_CONTRACTUAL |
net of what is contractually due |
AVAILABLE_BASIS_ORDER_NETTED |
net of the source's open orders: the order reservation is the order manager's, never an encumbrance |
encumbrances¶
repeated message ReportedEncumbrance · since v8 · stable
Carries each sub-balance the source reports as encumbered.
- Means: one per kind, location and pledgee
- Does not mean: pending settlement, which stays in the settlement figures
- Empty: empty means none reported, not none held
- Filled: as-reported, by
custody
raw_record¶
message RawRecordRef · since v11 · stable
References the raw record the row was converted from.
- Means: the record in the plugin's own storage, which a person follows on that plugin's page; a value derived wholly by the plugin names the record it was derived from
- Does not mean: a record core or another plugin reads: carried, never followed, past the plugin that owns it
- Empty: unset from a plugin before v11; the custody suite requires it
- Filled: as-reported, by
custody
provenance¶
repeated message Provenance · since v11 · stable
Says where each value the plugin closed rather than read came from.
- Means: one per closed value, by its path: derived by a named rule, supplied by a named person, from a second source, or reported from another of the source's records
- Does not mean: a value presented as the source's: a closed value never is
- Empty: empty where every value is the source's, from the raw record
- Filled: as-reported, by
custody - Bounds: at most 32 items; past it, refused
pending¶
repeated message ReportedPending · since v11 · stable
States the quantities not yet settled, each by its value date.
- Means: with the settle-date quantity they account for the trade-date quantity; as the source reports them, or closed by the plugin with their provenance
- Does not mean: an encumbrance, or the book's pending lines, which the book records itself
- Empty: empty where nothing is pending, or from a plugin before v11
- Filled: as-reported, by
custody - Bounds: at most 64 items; past it, refused
backfill¶
message Backfill · since v11 · stable
Marks the row as a backfill of a row already recorded.
- Means: the street journals the field it names as an amendment beside the row as first recorded (W2.4), its cause the contract version and field; sent again for the same row, version and field, it adds nothing
- Does not mean: a new row, or a correction of a value already recorded
- Empty: unset on a row sent as first read
- Filled: as-reported, by
custody
ReportedPending¶
meridian.v1.ReportedPending, a message.
value_date¶
date · since v11 · stable
Says when a pending quantity is due to settle.
- Means: an ISO 8601 date, as the source reports it or as the plugin derived it
- Does not mean: the trade date
- Empty: never empty: a pending quantity names its date
- Filled: as-reported, by
custody - Required on:
RecordHoldingfrom v11
quantity¶
Decimal · since v11 · stable
States how much settles on the value date.
- Means: signed as the holding's quantity, negative short
- Does not mean: an amount to be paid
- Empty: never unset
- Filled: as-reported, by
custody - Unit: units of the instrument; for cash, the currency's major unit
- Bounds: 0 to 18 decimal places; at most 38 significant digits; past it, refused
- Required on:
RecordHoldingfrom v11
ReportedEncumbrance¶
meridian.v1.ReportedEncumbrance, a message.
kind¶
enum EncumbranceKind · since v8 · stable
Says why some of a holding cannot move.
- Means: the kind the source's code converts to, in the standard's codes
- Does not mean: pending settlement, which stays in the settlement figures
- Empty: unspecified is refused
- Filled: as-reported, by
custody - Required on:
RecordHoldingfrom v8
| Value | Means |
|---|---|
ENCUMBRANCE_KIND_UNSPECIFIED |
not said; refused, since a sub-balance says which it is |
ENCUMBRANCE_KIND_PLEDGED |
pledged in place to a pledgee (PLED) |
ENCUMBRANCE_KIND_POSTED |
delivered to a third party as collateral (COLO) |
ENCUMBRANCE_KIND_ON_LOAN |
lent (LOAN) |
ENCUMBRANCE_KIND_BLOCKED |
blocked for a stated purpose (BLOK, BLCA, BLOT, BLOV) |
ENCUMBRANCE_KIND_RESTRICTED |
movable only under conditions or with documents (RSTR, WDOC) |
ENCUMBRANCE_KIND_IN_TRANSIT |
between depositories, agents or registers (TRAN, REGO, BTRA) |
ENCUMBRANCE_KIND_OTHER |
a sub-balance the plugin cannot map; its source_code then required |
ENCUMBRANCE_KIND_PENDING |
the street's only: as reported, for the statement's own consistency |
ENCUMBRANCE_KIND_REHYPOTHECATED |
the street's only: used by the broker under a right of use; it does not reduce the available quantity |
ENCUMBRANCE_KIND_BORROWED |
the street's only: borrowed, title to the account, with a return obligation |
quantity¶
Decimal · since v8 · stable
Says how much of the holding is encumbered this way.
- Means: signed as the holding's quantity; larger than the holding is recorded as reported, the custodian's data, which the reconciliation flags
- Does not mean: a value
- Empty: never unset
- Filled: as-reported, by
custody - Unit: units of the instrument
- Bounds: 0 to 18 decimal places; at most 38 significant digits; past it, refused
- Required on:
RecordHoldingfrom v8
available¶
boolean · since v8 · stable
Says whether the source reports the sub-balance available.
- Means: as reported
- Does not mean: a value inferred from the kind
- Empty: unset where the source does not say, since the kind does not imply it
- Filled: as-reported, by
custody
source_code¶
text · since v8 · stable
Keeps the source's own code or label for the sub-balance.
- Means: verbatim, as the source wrote it
- Does not mean: a code of the platform's vocabulary
- Empty: empty where the source gives none; required where the kind is OTHER, a rule across the two fields the street refuses in words
- Filled: as-reported, by
custody
pledgee¶
text · since v8 · stable
Says to whom the sub-balance is pledged, posted or lent.
- Means: as reported: a name, a business identifier code or a legal entity identifier
- Does not mean: a party any component resolves
- Empty: empty where not stated
- Filled: as-reported, by
custody
held_at¶
text · since v8 · stable
Says where the sub-balance is held.
- Means: the safekeeping place or third party holding it, as reported
- Does not mean: an identifier any component resolves
- Empty: empty where not stated
- Filled: as-reported, by
custody
segment¶
text · since v8 · stable
Names the margin segment the sub-balance is under.
- Means: as the source names it; with the holding's external account, a margin agreement's key
- Does not mean: a segment of the platform's vocabulary
- Empty: empty where the source names none: a custody statement never does
- Filled: as-reported, by
custody
detail¶
text · since v8 · stable
Keeps the source's narrative for the sub-balance.
- Means: as reported
- Does not mean: anything parsed
- Empty: empty where none
- Filled: as-reported, by
custody
ReportedLot¶
meridian.v1.ReportedLot, a message.
quantity¶
Decimal · since v7 · stable
Says how much the lot holds.
- Means: signed as the holding's quantity, negative short
- Does not mean: what is left of a lot the book opened
- Empty: never unset
- Filled: as-reported, by
custody - Unit: units of the instrument
- Bounds: 0 to 18 decimal places; at most 38 significant digits; past it, refused
- Required on:
RecordHoldingfrom v7
cost¶
Money · since v7 · stable
Carries the lot's total cost.
- Means: as reported, its sign as reported, never flipped
- Does not mean: a unit cost
- Empty: unset where not reported
- Filled: as-reported, by
custody
acquired_date¶
date · since v7 · stable
Says when the lot was acquired.
- Means: an ISO 8601 date, as reported
- Does not mean: when it settled
- Empty: empty where not reported
- Filled: as-reported, by
custody
RecordHoldingReply¶
meridian.v1.RecordHoldingReply, a message.
holding_id¶
text · since v2 · stable
Identifies the row the street recorded.
- Means: minted by the street
- Does not mean: a position's identifier
- Empty: never empty
- Filled: minted, by
street
resolved¶
boolean · since v2 · stable
Says whether the row updated a position.
- Means: true when the row named an instrument; an unresolved row updates nothing until the deployment knows what it holds
- Does not mean: that the row was refused
- Empty: false for an unresolved row, which updates no position
- Filled: decided, by
street
CustodialPositionUpdatedEvent¶
meridian.v1.CustodialPositionUpdatedEvent, a message.
position¶
message CustodialPosition · since v2 · stable
Carries the custodial position that changed.
- Means: its whole new state
- Does not mean: a delta
- Empty: never unset
- Filled: decided, by
street
statement_id¶
text · since v2 · stable
Names the statement that changed the position.
- Means: so a reader can explain any position by what produced it
- Does not mean: the plugin's external_statement_id
- Empty: empty for a change no statement caused, as a record merged into another
- Filled: decided, by
street
previous_quantity¶
Decimal · since v2 · stable
Lets a reader show a change without its own history.
- Means: the trade-date quantity before the change
- Does not mean: the settle-date quantity
- Empty: 0 for a position that is new
- Filled: decided, by
street - Unit: units of the instrument; for cash, the currency's major unit
- Bounds: 0 to 18 decimal places; at most 38 significant digits; past it, refused
journal¶
message JournalRef · since v7 · stable
Says where the change sits in the street's record.
- Means: its number in the street's partition, chained per account with the positions changed before it
- Does not mean: a position in a stream
- Empty: never unset
- Filled: decided, by
street
cause¶
message ChangeCause · since v7 · stable
Says who caused the change.
- Means: the command that changed the position
- Does not mean: who published the event
- Empty: never unset
- Filled: decided, by
street
ListCustodialPositionsRequest¶
meridian.v1.ListCustodialPositionsRequest, a message.
account_id¶
identifier account · since v2 · stable
Names the account to read.
- Means: an account in the plugin's read scope; one outside it is refused before it leaves the sidecar
- Does not mean: an external account
- Empty: empty for every account in the reader's scope (W4.11)
- Filled: as-reported
include_unresolved¶
boolean · since v2 · stable
Asks for the holdings that never resolved beside the positions.
- Means: so one read answers both what the custodian says is held and what could not be accounted for
- Does not mean: positions of unknown instruments
- Empty: false for positions alone
- Filled: as-reported
page_size¶
integer · since v2 · stable
Bounds a page.
- Means: how many positions a page holds at most
- Does not mean: a promise that a page is full
- Empty: 0 is 100; past 500, answered at 500
- Filled: as-reported
- Unit: records
- Bounds: from 0 to 500; past it, answered at the bound
cursor¶
text · since v2 · stable
Asks for the next page.
- Means: opaque: the previous reply's next_cursor; unresolved holdings come with the first page only, so a read across pages sees each once
- Does not mean: anything a reader parses
- Empty: empty for the first page
- Filled: as-reported
since¶
message Watermark · since v7 · stable
Asks only for what changed after a point.
- Means: positions whose last change is above it, tombstones included
- Does not mean: a time
- Empty: unset for every position
- Filled: as-reported
ListCustodialPositionsReply¶
meridian.v1.ListCustodialPositionsReply, a message.
positions¶
repeated message CustodialPosition · since v2 · stable
Answers the positions.
- Means: within the reader's scope, a page at a time
- Does not mean: the book's positions
- Empty: empty when none is in scope
- Filled: decided, by
street
unresolved¶
repeated message UnresolvedHolding · since v2 · stable
Answers the holdings that never resolved.
- Means: within the reader's scope
- Does not mean: positions
- Empty: empty unless include_unresolved was set, and after the first page
- Filled: decided, by
street
next_cursor¶
text · since v2 · stable
Points at the next page.
- Means: opaque, passed back as cursor
- Does not mean: anything a reader parses
- Empty: empty on the last page
- Filled: decided, by
street
as_of¶
message Watermark · since v7 · stable
Says the point in the street's record the page was read at.
- Means: what a reader passes as since to read only what changed after
- Does not mean: a time
- Empty: never unset from v7
- Filled: decided, by
street
ListStatementsRequest¶
meridian.v1.ListStatementsRequest, a message.
account_id¶
identifier account · since v7 · stable
Names the account whose statements to read.
- Means: an account in the plugin's read scope
- Does not mean: an external account
- Empty: empty for every account in the reader's scope
- Filled: as-reported
as_of_date¶
date · since v7 · stable
Narrows to statements as of a date.
- Means: an ISO 8601 date
- Does not mean: when they were recorded
- Empty: empty for any date
- Filled: as-reported
since¶
message Watermark · since v7 · stable
Asks only for statements completed after a point.
- Means: a point in the street's record
- Does not mean: a time
- Empty: unset for every completed statement
- Filled: as-reported
page_size¶
integer · since v7 · stable
Bounds a page.
- Means: how many statements a page holds at most
- Does not mean: a promise that a page is full
- Empty: 0 is 100; past 500, answered at 500
- Filled: as-reported
- Unit: records
- Bounds: from 0 to 500; past it, answered at the bound
cursor¶
text · since v7 · stable
Asks for the next page.
- Means: opaque: the previous reply's next_cursor
- Does not mean: anything a reader parses
- Empty: empty for the first page
- Filled: as-reported
ListStatementsReply¶
meridian.v1.ListStatementsReply, a message.
statements¶
repeated message StatementRecordedEvent · since v7 · stable
Answers completed statements and their figures.
- Means: each as it was announced (W2.5); an open statement is not listed
- Does not mean: statements still receiving rows
- Empty: empty when none is in scope
- Filled: decided, by
street
next_cursor¶
text · since v7 · stable
Points at the next page.
- Means: opaque, passed back as cursor
- Does not mean: anything a reader parses
- Empty: empty on the last page
- Filled: decided, by
street
as_of¶
message Watermark · since v7 · stable
Says the point in the street's record the page was read at.
- Means: what a reader passes as since
- Does not mean: a time
- Empty: never unset
- Filled: decided, by
street
CustodialActivity¶
meridian.v1.CustodialActivity, a message.
external_activity_id¶
text · since v14 · preview
Lets the street recognise the same activity sent twice.
- Means: the custodian's own identifier for the activity, as the plugin read it; with the source and the account, the street's key for it
- Does not mean: the street's activity_id; a custodian restating an activity under a new identifier sends a new activity, never a change to this one
- Empty: never empty: refused, since it is what recognises the activity sent twice
- Filled: as-reported, by
custody - Bounds: 1 to 200 characters; past it, refused
- Required on:
RecordActivityfrom v14
kind¶
enum ActivityKind · since v14 · preview
Says what the activity was, in the platform's own words.
- Means: converted by the plugin from the custodian's own type into the closed list
- Does not mean: a booking: nothing books from it, and the cash-flow class is set by operations and servicing, never inferred
- Empty: unspecified is not known, and then the custodian's type travels as reported
- Filled: derived, by
custody
| Value | Means |
|---|---|
ACTIVITY_KIND_UNSPECIFIED |
not known: the custodian's type converts to none of these; what a plugin sends when conversion fails, with the type as reported beside it |
ACTIVITY_KIND_PURCHASE |
units bought |
ACTIVITY_KIND_SALE |
units sold |
ACTIVITY_KIND_REINVESTMENT |
income the custodian reinvested in units, as a money market fund's monthly dividend is |
ACTIVITY_KIND_DIVIDEND |
a dividend paid in cash |
ACTIVITY_KIND_INTEREST |
interest paid in cash |
ACTIVITY_KIND_FEE |
a fee, in cash or in units |
ACTIVITY_KIND_TAX |
a tax withheld or paid |
ACTIVITY_KIND_SPLIT |
a split: the units it added or removed |
ACTIVITY_KIND_CORPORATE_ACTION |
another corporate action, as the custodian states it |
ACTIVITY_KIND_TRANSFER_IN |
units or cash moved in from another account |
ACTIVITY_KIND_TRANSFER_OUT |
units or cash moved out to another account |
ACTIVITY_KIND_CONTRIBUTION |
cash paid into the account |
ACTIVITY_KIND_WITHDRAWAL |
cash taken out of the account |
ACTIVITY_KIND_JOURNAL |
a movement between the account's own positions or sub-accounts, as the custodian journals it |
kind_as_reported¶
message AsReported · since v14 · preview
Carries the custodian's type that did not convert to a kind.
- Means: for a person to map, and counted as evidence the kinds may need to grow
- Does not mean: a kind any reader may act on: nothing past the plugin interprets it
- Empty: unset whenever the kind is known: set only beside a kind not known
- Filled: as-reported, by
custody
instrument_id¶
identifier instrument · since v14 · preview
Names the instrument the activity concerns.
- Means: the deployment's record, resolved at the edge as a holding's is; for cash, the currency's cash instrument; a plan's own code linked once by a named person carries that person's provenance
- Does not mean: an identifier of a scheme, or the custodian's own code
- Empty: empty where the activity concerns no instrument, or where the custodian's code did not resolve, and instrument_as_reported carries it
- Filled: as-reported, by
custody
instrument_as_reported¶
message AsReported · since v14 · preview
Carries the custodian's code for an instrument that did not resolve.
- Means: a plan's own fund code no person has linked yet, as the custodian sent it, for a person to link in the plugin's settings (W6.11)
- Does not mean: an instrument any reader may act on: nothing past the plugin interprets it
- Empty: unset whenever the instrument resolved, or the activity concerns none
- Filled: as-reported, by
custody
trade_date¶
date · since v14 · preview
Says when the activity was traded or took effect.
- Means: an ISO 8601 date, as the custodian states it; what a read by date range and a lot's acquisition date go by
- Does not mean: when the plugin read it, or when it settles
- Empty: never empty
- Filled: as-reported, by
custody - Required on:
RecordActivityfrom v14
settlement_date¶
date · since v14 · preview
Says when the activity settles or settled.
- Means: an ISO 8601 date, as the custodian states it
- Does not mean: the trade date, or a date the plugin worked out unless its provenance says by which rule
- Empty: empty where the custodian does not state it
- Filled: as-reported, by
custody
units¶
Decimal · since v14 · preview
States the units of the instrument the activity moved.
- Means: signed by what it did to the account: positive added units (a purchase, a reinvestment, the units a split added, a transfer in), negative removed them (a sale, a fee taken in units, a transfer out)
- Does not mean: a quantity held, or a figure anything derives a position or a lot from without a person's confirmation
- Empty: unset where the activity moved no units, a cash dividend's say, which is not zero
- Filled: as-reported, by
custody - Unit: units of the instrument
- Bounds: 0 to 18 decimal places; at most 38 significant digits; past it, refused
price¶
Money · since v14 · preview
Carries the price per unit the custodian states.
- Means: as reported, in its currency
- Does not mean: a price worked out from the amount and the units, which is never done
- Empty: unset where the custodian states no price
- Filled: as-reported, by
custody
amount¶
Money · since v14 · preview
Carries the amount of cash the activity moved.
- Means: in its currency, signed by what it did to the account's cash: positive in (a sale, a dividend, a contribution), negative out (a purchase, a reinvestment, a fee, a withdrawal)
- Does not mean: income booked, or a figure netted against another activity: a reinvested dividend and its dividend are two activities
- Empty: unset where the activity moved no cash, a split's say, which is not zero
- Filled: as-reported, by
custody
description¶
text · since v14 · preview
Carries the custodian's own description of the activity.
- Means: the custodian's words, for a person; diagnostic, nothing branches on it
- Does not mean: a kind or a code: the kind says what it was
- Empty: empty where the custodian gives none
- Filled: as-reported, by
custody - Bounds: at most 500 characters; past it, refused
raw_record¶
message RawRecordRef · since v14 · preview
References the raw record the activity was converted from.
- Means: the record in the plugin's own storage, kept as long as the history it reported, which a person follows on that plugin's page
- Does not mean: a record core or another plugin reads: carried, never followed, past the plugin that owns it
- Empty: never unset: refused, since every record a custody plugin sends references what it was converted from
- Filled: as-reported, by
custody - Required on:
RecordActivityfrom v14
provenance¶
repeated message Provenance · since v14 · preview
Says where each value the plugin closed rather than read came from.
- Means: one per closed value, by its path: an instrument linked once by a named person, a settlement date derived by a named rule
- Does not mean: a value presented as the custodian's: a closed value never is
- Empty: empty where every value is the custodian's, from the raw record
- Filled: as-reported, by
custody - Bounds: at most 32 items; past it, refused
RecordActivityRequest¶
meridian.v1.RecordActivityRequest, a message.
account_id¶
identifier account · since v14 · preview
Names the account the activity is recorded against.
- Means: the deployment's account the external account is linked to (W6.4)
- Does not mean: anything a plugin sets
- Empty: a plugin leaves it empty; the sidecar sets it from the link, and refuses the activity when there is none (REFUSAL_REASON_EXTERNAL_ACCOUNT_NOT_LINKED)
- Filled: stamped, by
sidecar
external_account_id¶
identifier external account · since v14 · preview
Names the external account the activity is on.
- Means: as the plugin reported it (W2.8), which the sidecar translates
- Does not mean: an account of the deployment
- Empty: never empty
- Filled: as-reported, by
custody - Required on:
RecordActivityfrom v14
source¶
text · since v14 · preview
Names the source the activity was read from.
- Means: the plugin's scheme for its source, as on a statement; with the account and the custodian's identifier, the street's key
- Does not mean: the institution holding the account
- Empty: never empty
- Filled: as-reported, by
custody - Required on:
RecordActivityfrom v14
activity¶
message CustodialActivity · since v14 · preview
Carries the activity as the custodian states it.
- Means: one activity
- Does not mean: a batch, or a statement's row
- Empty: never unset
- Filled: as-reported, by
custody - Required on:
RecordActivityfrom v14
RecordActivityReply¶
meridian.v1.RecordActivityReply, a message.
activity_id¶
text · since v14 · preview
Identifies the activity the street recorded.
- Means: minted by the street; what a break's cause and an adjustment name it by
- Does not mean: the custodian's external_activity_id
- Empty: never empty
- Filled: minted, by
street
already_recorded¶
boolean · since v14 · preview
Says the activity had already been recorded.
- Means: a redelivery, by its source, account and the custodian's identifier: the existing activity is returned, and nothing is recorded twice
- Does not mean: a refusal
- Empty: false for an activity recorded now
- Filled: decided, by
street
ListActivitiesRequest¶
meridian.v1.ListActivitiesRequest, a message.
account_id¶
identifier account · since v14 · preview
Names the account whose activity to read.
- Means: an account in the plugin's read scope
- Does not mean: an external account
- Empty: empty for every account in the reader's scope
- Filled: as-reported
trade_date_from¶
date · since v14 · preview
Bounds the read by trade date, from.
- Means: an ISO 8601 date, inclusive
- Does not mean: a point in the street's record, which since is
- Empty: empty for no earliest date
- Filled: as-reported
trade_date_to¶
date · since v14 · preview
Bounds the read by trade date, to.
- Means: an ISO 8601 date, inclusive
- Does not mean: a point in the street's record, which since is
- Empty: empty for no latest date
- Filled: as-reported
since¶
message Watermark · since v14 · preview
Asks only for activities recorded after a point.
- Means: a point in the street's record
- Does not mean: a time, or a trade date
- Empty: unset for every activity recorded
- Filled: as-reported
page_size¶
integer · since v14 · preview
Bounds a page.
- Means: how many activities a page holds at most
- Does not mean: a promise that a page is full
- Empty: 0 is 100; past 500, answered at 500
- Filled: as-reported
- Unit: records
- Bounds: from 0 to 500; past it, answered at the bound
cursor¶
text · since v14 · preview
Asks for the next page.
- Means: opaque: the previous reply's next_cursor
- Does not mean: anything a reader parses
- Empty: empty for the first page
- Filled: as-reported
ListActivitiesReply¶
meridian.v1.ListActivitiesReply, a message.
activities¶
repeated message ActivityRecordedEvent · since v14 · preview
Answers the activities recorded.
- Means: each as it was announced (W2.12), by trade date; read since a watermark, in the order recorded
- Does not mean: positions or lots: the street derives none from them
- Empty: empty when none is in scope and range
- Filled: decided, by
street
next_cursor¶
text · since v14 · preview
Points at the next page.
- Means: opaque, passed back as cursor
- Does not mean: anything a reader parses
- Empty: empty on the last page
- Filled: decided, by
street
as_of¶
message Watermark · since v14 · preview
Says the point in the street's record the page was read at.
- Means: what a reader passes as since
- Does not mean: a time
- Empty: never unset
- Filled: decided, by
street
history_from¶
date · since v14 · preview
Says how far back the named account's history reaches.
- Means: the first date the account's source can read activity from, as its sync status last said (W2.1): an opening balance older than it has no activity to explain it
- Does not mean: the earliest activity listed, or a statement that the history is complete
- Empty: empty where the request names no account, or the account's source has not said
- Filled: decided, by
street
re_resolutions¶
repeated message ActivityReResolution · since v15 · preview
Carries the re-resolutions beside the activities, so a reader sees each activity's first record and its latest resolution.
- Means: the re-resolutions of the activities answered, each naming its activity, in the order recorded; on a read since a watermark, every re-resolution recorded after it, whether or not its activity was
- Does not mean: a change to the activities answered, which stay as first recorded
- Empty: empty where no activity answered was re-resolved, and before v15
- Filled: decided, by
street
ReResolveActivityRequest¶
meridian.v1.ReResolveActivityRequest, a message.
account_id¶
identifier account · since v15 · preview
Names the account the activity is recorded against.
- Means: the deployment's account the external account is linked to (W6.4)
- Does not mean: anything a plugin sets
- Empty: a plugin leaves it empty; the sidecar sets it from the link, and refuses the re-resolution when there is none (REFUSAL_REASON_EXTERNAL_ACCOUNT_NOT_LINKED)
- Filled: stamped, by
sidecar
external_account_id¶
identifier external account · since v15 · preview
Names the external account the activity is on.
- Means: as the plugin reported it (W2.8), which the sidecar translates
- Does not mean: an account of the deployment
- Empty: never empty
- Filled: as-reported, by
custody - Required on:
ReResolveActivityfrom v15
source¶
text · since v15 · preview
Names the source the activity was recorded from.
- Means: the source it was recorded under (W2.10); with the account and the custodian's identifier, the key that names the activity
- Does not mean: the institution holding the account
- Empty: never empty
- Filled: as-reported, by
custody - Required on:
ReResolveActivityfrom v15
external_activity_id¶
text · since v15 · preview
Names the recorded activity by the custodian's identifier.
- Means: the identifier it was recorded under (W2.10); no activity under it is a refusal, naming it
- Does not mean: the street's activity_id
- Empty: never empty
- Filled: as-reported, by
custody - Bounds: 1 to 200 characters; past it, refused
- Required on:
ReResolveActivityfrom v15
instrument_id¶
identifier instrument · since v15 · preview
Names the instrument the activity now resolves to.
- Means: the deployment's record, resolved as a holding's is (W3.1)
- Does not mean: an identifier of a scheme, or the custodian's own code
- Empty: empty where the link the activity had been resolved by was removed: unresolved again, its code as first reported
- Filled: as-reported, by
custody
provenance¶
message Provenance · since v15 · preview
Says how the instrument was resolved this time.
- Means: supplied by the named person who set the link it resolves by, or derived by a named rule
- Does not mean: the custodian's word, which a re-resolution never is
- Empty: never unset
- Filled: as-reported, by
custody - Required on:
ReResolveActivityfrom v15
resolved_at_ns¶
moment · since v15 · preview
Says when what resolves the activity was made.
- Means: when the link was set, a table setting row's changed_at, or when the rule resolved it
- Does not mean: when the street records it, which it stamps
- Empty: never 0
- Filled: as-reported, by
custody - Unit: nanoseconds since the epoch
- Required on:
ReResolveActivityfrom v15
ReResolveActivityReply¶
meridian.v1.ReResolveActivityReply, a message.
activity_id¶
text · since v15 · preview
Names the activity re-resolved.
- Means: the street's identifier for it (W2.10)
- Does not mean: an identifier for the re-resolution
- Empty: never empty
- Filled: decided, by
street
already_recorded¶
boolean · since v15 · preview
Says the activity's latest resolution already named this.
- Means: the instrument and provenance were the latest's, so nothing was recorded
- Does not mean: a refusal
- Empty: false for a re-resolution recorded now
- Filled: decided, by
street
ActivityReResolvedEvent¶
meridian.v1.ActivityReResolvedEvent, a message.
account_id¶
identifier account · since v15 · preview
Names the account the re-resolved activity is on.
- Means: the deployment's account, as its re-resolution names it, by which the event is delivered only to a plugin whose read scope holds it
- Does not mean: the external account
- Empty: never empty
- Filled: decided, by
street
re_resolution¶
message ActivityReResolution · since v15 · preview
Carries the re-resolution as the street recorded it.
- Means: the record kept beside the activity it names
- Does not mean: the activity, which stays as first recorded
- Empty: never unset
- Filled: decided, by
street
cause¶
message ChangeCause · since v15 · preview
Says who caused the re-resolution.
- Means: the custody plugin's command that re-resolved it, and the person it was sent for where there was one
- Does not mean: who set the link, which the provenance names
- Empty: never unset
- Filled: decided, by
street
journal¶
message JournalRef · since v15 · preview
Says where the re-resolution sits in the street's record, at the top of what is delivered.
- Means: the re-resolution's own number, as its record's journal says it: chained per account with the re-resolutions before it, apart from the activities' chain
- Does not mean: the activity's own number
- Empty: never unset
- Filled: decided, by
street
ListSyncStatusesRequest¶
meridian.v1.ListSyncStatusesRequest, a message.
account_id¶
identifier account · since v14 · preview
Names the account whose sync status to read.
- Means: an account in the plugin's read scope
- Does not mean: an external account
- Empty: empty for every account in the reader's scope
- Filled: as-reported
since¶
message Watermark · since v14 · preview
Asks for every sync status recorded after a point.
- Means: a point in the street's record: set, every record after it, in the order recorded, not only the latest
- Does not mean: a time
- Empty: unset for the latest sync status of each account
- Filled: as-reported
page_size¶
integer · since v14 · preview
Bounds a page.
- Means: how many sync statuses a page holds at most
- Does not mean: a promise that a page is full
- Empty: 0 is 100; past 500, answered at 500
- Filled: as-reported
- Unit: records
- Bounds: from 0 to 500; past it, answered at the bound
cursor¶
text · since v14 · preview
Asks for the next page.
- Means: opaque: the previous reply's next_cursor
- Does not mean: anything a reader parses
- Empty: empty for the first page
- Filled: as-reported
ListSyncStatusesReply¶
meridian.v1.ListSyncStatusesReply, a message.
statuses¶
repeated message SyncStatusRecordedEvent · since v14 · preview
Answers the sync statuses recorded.
- Means: each as it was announced (W2.13): the latest per account, or, read since a watermark, every one after it in the order recorded
- Does not mean: a statement that a connection is healthy: an empty page says only that none was heard
- Empty: empty when none was heard for an account in scope
- Filled: decided, by
street
next_cursor¶
text · since v14 · preview
Points at the next page.
- Means: opaque, passed back as cursor
- Does not mean: anything a reader parses
- Empty: empty on the last page
- Filled: decided, by
street
as_of¶
message Watermark · since v14 · preview
Says the point in the street's record the page was read at.
- Means: what a reader passes as since
- Does not mean: a time
- Empty: never unset
- Filled: decided, by
street
ExternalAccountsEvent¶
meridian.v1.ExternalAccountsEvent, a message.
accounts¶
repeated message ExternalAccount · since v2 · stable
Lists every external account a connection reaches, as the plugin sees it now.
- Means: the whole list each time, published before anything is recorded against any of them, so linking one (W6.4) is a choice among those on offer; one missing from it is one the connection no longer reaches
- Does not mean: accounts of the deployment
- Empty: empty when the connection reaches none
- Filled: as-reported, by
custody
ExternalAccount¶
meridian.v1.ExternalAccount, a message.
external_account_id¶
identifier external account · since v2 · stable
Identifies an external account, stably.
- Means: stable across the connection's reconnections, which the plugin makes so where its source does not; the external_account_id the account's rows name; a handle the source wants on each call stays inside the plugin
- Does not mean: an account of the deployment
- Empty: never empty
- Filled: as-reported, by
custody
name¶
text · since v2 · stable
Names the external account as a person there would recognise it.
- Means: the custodian's own name for it
- Does not mean: the deployment's account's name
- Empty: empty where the custodian gives none
- Filled: as-reported, by
custody
venue_account_type¶
text · since v2 · stable · deprecated in v11
Deprecated in v11
the plugin converts the venue's type to the account kind, and sends it as reported only when it does not convert. Use meridian.v1.ExternalAccount.account_kind instead.
Showed, until v11, the custodian's own word for the kind of account.
- Means: verbatim and for display only; accepted from a plugin before v11 for its notice, and shown only where no kind is sent
- Does not mean: what the account may do: nothing reads meaning into it
- Empty: empty where the custodian gives none, and from a plugin on v11
- Filled: as-reported, by
custody
account_kind¶
enum AccountKind · since v11 · stable
Says the account's kind, in the platform's own words.
- Means: converted by the plugin from the custodian's own type; for display and for grouping accounts across plugins
- Does not mean: what the account may do, which is the platform's restriction set when it is ruled; nothing gates on the kind
- Empty: unspecified is not known, and then the custodian's type travels as reported
- Filled: derived, by
custody
| Value | Means |
|---|---|
ACCOUNT_KIND_UNSPECIFIED |
not known: the custodian's type says neither cash nor margin nor retirement; what a plugin sends when the type does not convert, with the type as reported beside it |
ACCOUNT_KIND_CASH |
trades settle in full from the account's own cash, with no borrowing |
ACCOUNT_KIND_MARGIN |
the account may borrow against its holdings under a margin agreement |
ACCOUNT_KIND_RETIREMENT |
a tax-advantaged retirement account, whether or not it allows limited margin |
account_kind_as_reported¶
message AsReported · since v11 · stable
Carries the custodian's type that did not convert to a kind.
- Means: for a person to map, and counted as evidence the kinds may need to grow
- Does not mean: a kind any reader may act on: nothing past the plugin interprets it
- Empty: unset whenever the kind is known: set only beside a kind not known
- Filled: as-reported, by
custody
Generated from boundaries/fields.json in meridian-schema at a6a0af7, contract v24.