← Back to product·Simulmedia VAMOS Docs·Concepts / The object model
Concepts

The object model

Twelve objects carry every transaction on VAMOS. A seller publishes five of them; a buyer sends one; the rest flow back. If you map your systems to these shapes, the whole API follows.

SELLER PUBLISHES THE TRADE FLOWS BACK capability_profile product rate entry avail line item order agreement order_event negotiation delivery_post on a date {product_id}:{date} line_items[] books gates terms locks rate emits, per-order seq counters park here post-air actuals buyer-scoped cards

How to read it

  • The seller publishes. A product is the sellable unit. Its weekly prices are rate entries; its availability statements are avails; its grains say which purchase periods it can be bought at. The capability_profile tells the platform how your systems connect, and the platform never calls what the profile does not advertise.
  • The trade. A line item is the transacted object: one product for one period, at one length and one rate. An order carries line items; each locks its price by citing a rate entry's locked_rate_id, and the units the seller accepts are the line's allocation. So the ladder is product, then line item, then unit. An agreement gates what a buyer sees and unlocks buyer-scoped rate cards.
  • Flows back. Every change emits an order_event with a per-order sequence number. Counters live on a negotiation. After air, the seller's delivery_post carries the actuals that guarantees reconcile against.
The grain rule in one sentence: cards price by week; trades book by period. That is why a product offering the month grain has to price every week of a month alike: a month line locks one rate.

Every object

ObjectWhat it isField referenceConcept
productThe sellable unit: seller-defined, versioned, date-boundedproductProducts
periodA purchase window at one grain: day, week, or monthperiodProducts
line itemOne product for one period: the transacted objectorderOrders
rate entryOne priced cell of a versioned rate card commitrate entryRates
availAn availability statement at the seller's declared grainavailCurrencies
orderThe transaction; price locked at order timeorderOrders
order_eventAppend-only record of every transitionorder_eventWebhooks
negotiationOffer and counter rounds on one ordernegotiationNegotiation
proposal_requestThe buyer's open ask; a plan comes backproposal_requestProposals
delivery_postSeller-supplied actuals; guarantees reconcile against itdelivery_postReconciliation
capability_profileWhat a seller's connection advertisescapability_profileConnections
agreementThe relationship made explicit; functionally a deal IDagreementAgreements

Sellers: your side of the model is the top of the left lane. Start with Map your systems to see where your traffic, billing, and rate systems land. Buyers: your side starts at order; see Map your systems for buyers.