Protocol SpecificationStructs Library

Structs Library

Structs are grouped by where they enter the lifecycle: core records, active positions, initial seeding, function inputs, transaction payloads, and IDs. Use the page outline to jump directly to the group you need.

Structs.sol is shared by CapTable, StockLib, TxHelper, and Adjustment.

Core

StructKey fields
Issuerid, legal_name, shares_issued, shares_authorized
StockClassid, class_type, price_per_share, shares_issued, shares_authorized
Stakeholderid, stakeholder_type, current_relationship
StockLegendTemplateid

Positions

StructKey fields
ActivePositionstock_class_id, quantity, share_price, timestamp
ActivePositionsactivePositions[stakeholder_id][security_id]
SecIdsStockClassactiveSecurityIdsByStockClass[stakeholder_id][stock_class_id]

Initial seeding

StructKey fields
IssuerInitialSharesshares_authorized, shares_issued
StockClassInitialSharesid, shares_authorized, shares_issued
InitialSharesissuerInitialShares, stockClassesInitialShares

Inputs

StructUsed byKey fields
ShareNumbersIssuedIssuancestarting_share_number, ending_share_number
StockIssuanceParamsIssuancestock_class_id, quantity, share_price, stakeholder_id, approvals, legends, comments
StockTransferParamsTransfertransferor_stakeholder_id, transferee_stakeholder_id, stock_class_id, is_buyer_verified, quantity, share_price, nonce, custom_id
StockParamsRetraction, reissue, cancellation, repurchasestakeholder_id, stock_class_id, security_id, comments, reason_text
StockParamsQuantityCancellation, repurchasenonce, quantity, stakeholder/security IDs, comments, reason text

Transaction payloads

StructTx typeKey fields
StockIssuanceTX_STOCK_ISSUANCEid, object_type, security_id, params
StockTransferTX_STOCK_TRANSFERid, quantity, security_id, balance_security_id, resulting_security_ids
StockCancellationTX_STOCK_CANCELLATIONid, quantity, security_id, reason_text, balance_security_id
StockRetractionTX_STOCK_RETRACTIONid, security_id, reason_text, comments
StockReissuanceTX_STOCK_REISSUANCEid, security_id, resulting_security_ids, split_transaction_id, reason_text
StockRepurchaseTX_STOCK_REPURCHASEid, security_id, quantity, price, consideration_text, balance_security_id
StockAcceptanceTX_STOCK_ACCEPTANCEid, security_id, comments
IssuerAuthorizedSharesAdjustmentTX_ISSUER_AUTHORIZED_SHARES_ADJUSTMENTid, new_shares_authorized, approvals, comments
StockClassAuthorizedSharesAdjustmentTX_STOCK_CLASS_AUTHORIZED_SHARES_ADJUSTMENTid, new_shares_authorized, approvals, comments

IDs

TypeSolidityAPI
Issuer/stakeholder/class/security IDsbytes16UUID strings converted by server utilities.
Onchain tx IDsbytes16Decoded before MongoDB persistence.
WalletsaddressHex EVM address strings.

Route shapes: API Reference. Lifecycle behavior: Stock Functions.