Skip to content

Transaction

The Carta API does not expose a single Transaction type. Instead, GET /v1alpha1/issuers/{issuerId}/transactions returns eight parallel arrays, one per security type. Conceptually these are variants of the same Transaction domain concept; the spec models them as sibling fields rather than as a discriminated union.

OCF Equivalent

Carta's ListTransactions returns eight sibling arrays (one per security type), where each array holds a discriminated union of events for that security. OCF models each event type as its own transaction schema under schema/objects/transactions/<category>/. The mapping below lists the security-family → OCF transaction-category correspondences.

  • StockIssuanceissuance tx. Carta CertificateTransactionItem family.
  • ConvertibleIssuanceissuance tx. Carta ConvertibleTransactionItem family.
  • EquityCompensationIssuanceissuance tx. Carta OptionTransactionItem, RsuTransactionItem, RsaTransactionItem, PiuTransactionItem, and SarTransactionItem families all fold into OCF's single EquityCompensationIssuance family (distinguished by compensation type).
  • WarrantIssuanceissuance tx. Carta WarrantTransactionItem family.

Related:

Endpoints

  • GET /v1alpha1/issuers/{issuerId}/transactions — returns all variants in one response

Variants

Response shape

ListTransactionsResponse {
  optionTransactions:      OptionTransactionItem[]
  rsuTransactions:         RsuTransactionItem[]
  rsaTransactions:         RsaTransactionItem[]
  certificateTransactions: CertificateTransactionItem[]
  warrantTransactions:     WarrantTransactionItem[]
  convertibleTransactions: ConvertibleTransactionItem[]
  piuTransactions:         PiuTransactionItem[]
  sarTransactions:         SarTransactionItem[]
}

Modeling note

If you are building a client-side domain model, you will likely want to merge these eight variants into a single polymorphic Transaction type with a discriminator field. The wire format does not provide one.

← Back to Domain Index