$TOKEN is an operator’s bearer. Record each order first, as in Subscribe and redeem: POST /v1/subscriptions and POST /v1/redemptions.
Tx 1 · The price source prices each order at the strike
The price source acts from its own node, once per order and at the same NAV for every order: it accepts each subscription’s proposal at that NAV (LotProposal_Accept) and signs each claim’s RedemptionPrice.
Tx 2 and 3 · Open the cycle
One call opens the cycle (its record of every leg at the strike, seen by the fund’s issuer and treasury and by no investor), then sends each investor a payment request for its own order. The result names thenet the treasury will move.
curl
strike-mismatch), belong to no other cycle (in-dealing-cycle), and be its investor’s only order in the cycle (investor-twice). Once in a cycle, an order is refused alone.
Tx 4 and 5 · Each investor answers
Each investor’s custodian answers its own request, which names the cycle, in its wallet: it makes a CIP-112 allocation on each registry, then accepts the request.GET /v1/dealing-cycles/cy-0930 shows the cycle’s orders, and which of their allocations are on the ledger.
Tx 6 · Settle the cycle
Settling submits one transaction with every order’s mint or burn and payment, each rounded as if it settled alone, and the treasury’s net. Until every allocation is in, the call submits nothing: its result readsstate: asked and names what is awaiting.
curl
treasury-short. To drop an order, release the cycle and open a new one without it:
curl
Read it back
A cycle that ended stays readable.GET /v1/dealing-cycles/cy-0930 answers it settled or released, with endedAt and endedUpdateId, the ledger time and update that ended it. A settled cycle’s orders are as they settled, and its paidIn, paidOut and net are what the settle moved. The list keeps the open cycles unless asked for others:
curl
iterations it paid, and ?state=closed adds the closed ones, read off their last version.
Back to the workflow: Dealing cycles
