A company’s share register is the official record of who holds what and how they came to hold it. In Opbox that register is not a static list that someone edits and hopes is current. It is built from the underlying ledger of every registrable event - each allotment, transfer, exercise, and capital change - so the register you read is always derivable, always reconcilable, and always reconstructable as of any date you choose. This is the company-secretary face of the equity engine: the registrable record itself, and the governed operations that move it. (For the live ownership analytics - percentages, dilution, what-if rounds - see Equity and cap table.)
What it does
A register built from registrable events, not a maintained list. Every move that affects the register - an allotment of shares, a transfer between holders, an exercise of options into shares, a structural change to the share classes - is recorded as an immutable ledger entry. The register is the projection of those entries, so it carries its own provenance: you can always answer not just “who holds what” but “by which events did they come to hold it.” Nothing is a stored figure that can quietly drift out of step with what actually happened.
The register as of any date. Ask for the register as it stood on a chosen date and it is reconstructed by replaying the ledger up to that moment, rather than read off a row-filtered snapshot. That is what makes the register dependable for a statutory filing, an audit, or a question about what someone held at a point in the past: the answer is rebuilt from the record, not approximated.
Authorised capital at the jurisdiction grain. Set the authorised capital that constrains what may be issued, expressed at the right grain (per class where the jurisdiction works that way). Allotments and pool creation are checked against authorised-versus-issued at that grain, so the register cannot be pushed past the capital the company is actually authorised to issue.
Allotments and the grants programme. New shares enter the register through grants and allotments out of an option plan and its pools. When options are exercised, the outstanding options are re-characterised as shares on the register. When a grant lapses unexercised, or a leaver is terminated, the unexercised shares return to the pool atomically with the state transition, so the register and the pool never disagree about what is outstanding.
Transfers and structural changes recorded as ledger entries. Transfers move shares between holders and conserve the share total exactly - no shares are created or destroyed; reclassifications conserve a holder’s total economic units while the per-class totals shift; subdivisions (for example a 10:1 split) and consolidations re-scale every holding by the ratio, so relative ownership is preserved and the authorised ceiling is scaled to match. Each is recorded as a ledger entry, so the register’s history reads as a continuous, balanced account from the first allotment onward. Money throughout is held as exact integer minor-units, so the figures are the figures.
Modelling a registrable change before you commit it. A change to the register - a new allotment round, a class conversion - can be modelled and pinned as an advisory projection first, then reviewed and revised, and only converted into the live register when it is right. The modelling projections are kept entirely separate from the register itself: saving, archiving, or deleting a model never touches a ledger entry, so you can plan a filing with the numbers in front of you without risking the record of truth.
How you use it
Read the current register. Open the share register for the present picture: holders, classes, and holdings, each traceable back to the events that produced it. Drill into a holder to see the allotments, transfers, and exercises behind their position.
Reconstruct the register as of a date. Pick a date and the register is rebuilt as it stood then by replaying the ledger - the version you would attach to a filing, a board pack, or an audit response for that period.
Set the authorised capital. Record the company’s authorised capital at the right grain before you allot, so every subsequent allotment is checked against it and cannot exceed what is authorised.
Record an allotment or a transfer. Allot shares through a grant out of a plan and its pool, or transfer shares between holders. Each posts an immutable ledger entry, and the register updates as a consequence rather than as a hand edit.
Make a structural change. Subdivide, consolidate, reclassify, or convert a class when the company restructures its capital. A transfer or reclassify conserves the total; a subdivide or consolidate re-scales every holding by the ratio and scales the authorised ceiling to match. The change is added to the register’s history.
Plan a change, then commit it. Model the proposed allotment or conversion, pin it as an advisory projection, review it, and convert it into the live register only when you are ready. Archive or discard a model you do not use without ever touching the record.
Export the register. Pull the register out in the Open Cap Table Format for a filing, an advisor, or another platform.
The kernel verbs behind it
Everything above runs through the kernel’s one front door: each call is permission-checked, scope-checked, and audited before it executes. These are the key register verbs.
equity.register.asof- reconstruct the share register as of any past date by replaying the ledger, not by filtering rows.equity.captable.get- the current register projection, computed live from the ledger and never a stored snapshot.equity.authorisedCapital.set- set authorised capital at the jurisdiction grain, the constraint allotments are checked against.equity.grant.create- allot shares or options out of a plan and pool, entering them on the register.equity.grant.lapse- lapse an unexercised grant, returning the shares to the pool.equity.grant.terminate- handle a leaver termination, with return-to-pool atomic with the state transition.equity.exercise- exercise outstanding options, re-characterising them as shares on the register (net-zero on the class total).equity.transfer- move shares between holders with exact share conservation.equity.subdivide- subdivide a class (for example a 10:1 split), re-scaling every holding by the ratio.equity.consolidate- consolidate a class (reverse split), re-scaling every holding by the ratio.equity.reclassify- reclassify shares from one class to another.equity.convert- convert instruments into shares on the register.equity.plan.create- create an option plan as the source of authorised allotments.equity.pool.create- create a pool, with authorised-versus-issued enforced at the grain.equity.modelling.save- pin a planned register change as an advisory projection, separate from the live register.equity.modelling.get- read a pinned modelling projection.equity.modelling.list- list the modelling projections for a register.equity.modelling.archive- withdraw a modelling projection from active listing, reversibly and without touching the register.equity.modelling.delete- hard-delete a discarded modelling projection (Owner-gated; never a register write).equity.ocf.export- export the register in the Open Cap Table Format.
See the full set in the equity verb reference.